Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add paddy field and soil-to-clay constr #4197

Merged
merged 14 commits into from
Feb 9, 2024

Conversation

NappingOcean
Copy link
Contributor

@NappingOcean NappingOcean commented Feb 7, 2024

Purpose of change

Add a paddy field and construction for gathering clay from soil.
Former is expansion of #4120, latter is for QoL.
No more struggles in order to finding clay.

Describe the solution

Construct a paddy field

Unlike a field, the composition of the soil in a paddy field is important. This is because the clay holds water and creates the right environment for crops like rice.
So I made it so that clay is required for construction. Since rice paddies are always planted on lower ground, I had them start with a shallow pit, and finally, just in case, I created a construction to remove it.

Gather more clay

Clay is in unexpectedly high demand.
Especially before you can make a clay crucible, or when you're out in the wild and can't find a pot and need to make a clay pot.
However, many of the methods of obtaining clay rely on luck, so to reduce that dependency for better QoL, I created this construction.
Put 50 unit soil and 64 water, then get your homemade clay terrain.

Describe alternatives you've considered

Testing

Additional context

image

image


I add "iexamine_action": "dirtmound".
It works well, but also allows other seeds which don't need SHALLOW_WATER flag.
I can't decide to remove it or not.

Checklist

@github-actions github-actions bot added the JSON related to game datas in JSON format. label Feb 7, 2024
Copy link
Contributor

autofix-ci bot commented Feb 7, 2024

The Autofix app has found code style violation and automatically formatted this Pull Request.

I locally edit my commits (e.g: git, github desktop)

Please choose following options:

I'd like to accept the automated commit
  1. Run git pull. this will merge the automated commit into your local copy of the PR branch.
  2. Continue working.
I do not want the automated commit
  1. Format your code locally, then commit it.
  2. Run git push --force to force push your branch. This will overwrite the automated commit on remote with your local one.
  3. Continue working.

If you don't do this, your following commits will be based on the old commit, and cause MERGE CONFLICT.

This PR is complete and I don't want to edit it anymore

It's safe to ignore this message.

I edit this PR through web UI

You can ignore this message and continue working.

I have no idea what this message is talking about

You can ignore this message and continue working. If you find any problem, please ask for help and ping @scarf005.

@NappingOcean NappingOcean marked this pull request as ready for review February 7, 2024 22:12
@scarf005 scarf005 changed the title feat:add paddy field and soil-to-clay constr feat: add paddy field and soil-to-clay constr Feb 7, 2024
Copy link
Contributor Author

@NappingOcean NappingOcean left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2 space.

Copy link
Member

@chaosvolt chaosvolt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mostly good but some suggestions mebbe

"required_skills": [ [ "survival", 1 ] ],
"time": "20 m",
"qualities": [ [ { "id": "DIG", "level": 1 } ] ],
"components": [ [ [ "clay_lump", 8 ] ], [ [ "water", 4 ], [ "water_clean", 4 ] ], [ [ "material_sand", 1 ], [ "material_soil", 2 ] ] ],
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 soil is 5 liters, 1 sand is 5 ml. Suggestion here uses the same ratio that "Fill Shallow Water With Dirt" uses, which is still barely any but eh, doesn't have to be exact given that would require 2000 sand:

Suggested change
"components": [ [ [ "clay_lump", 8 ] ], [ [ "water", 4 ], [ "water_clean", 4 ] ], [ [ "material_sand", 1 ], [ "material_soil", 2 ] ] ],
"components": [ [ [ "clay_lump", 8 ] ], [ [ "water", 4 ], [ "water_clean", 4 ] ], [ [ "material_sand", 20 ], [ "material_soil", 2 ] ] ],

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought this construction was about changing the composition of the soil to hold the water that the rice crop needs, but didn't consider volume of sand.

If "Fill Shallow Water With Dirt" requires 10 liters, it would be better to leave out the sand and just fill it with clay and dirt. Of course, to fill 5 liters with clay alone would require 20 clay, so it would need to be mixed with water. Maybe 4 to 6?

Suggested change
"components": [ [ [ "clay_lump", 8 ] ], [ [ "water", 4 ], [ "water_clean", 4 ] ], [ [ "material_sand", 1 ], [ "material_soil", 2 ] ] ],
"components": [ [ [ "clay_lump", 8 ] ], [ [ "water", 12 ], [ "water_clean", 12 ] ], [ [ "material_soil", 1 ] ] ],

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could work then, soil's more reliable to get than sand so.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rice paddies require a hard layer of solid clay to trap water molecules in the pond. Sand is too porous to contain water so you want as much compacted clay as possible. There's a lot of research here but that's the jist of how a paddy field is done.

"required_skills": [ [ "survival", 2 ] ],
"time": "90 m",
"qualities": [ [ { "id": "DIG", "level": 1 } ] ],
"byproducts": [ { "item": "pebble", "charges": [ 2, 16 ] } ],
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This I assume should probably be clay lumps instead of pebbles, and equal the amount of clay you get out of constr_extract_clay?

Suggested change
"byproducts": [ { "item": "pebble", "charges": [ 2, 16 ] } ],
"byproducts": [ { "item": "clay_lump", "charges": [ 6, 12 ] } ],

data/json/construction.json Outdated Show resolved Hide resolved
Copy link
Collaborator

@RoyalFox2140 RoyalFox2140 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

left clarification on rice paddies and on the clay extraction.

"required_skills": [ [ "survival", 1 ] ],
"time": "20 m",
"qualities": [ [ { "id": "DIG", "level": 1 } ] ],
"components": [ [ [ "clay_lump", 8 ] ], [ [ "water", 4 ], [ "water_clean", 4 ] ], [ [ "material_sand", 1 ], [ "material_soil", 2 ] ] ],
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rice paddies require a hard layer of solid clay to trap water molecules in the pond. Sand is too porous to contain water so you want as much compacted clay as possible. There's a lot of research here but that's the jist of how a paddy field is done.

data/json/construction.json Outdated Show resolved Hide resolved
Copy link
Member

@chaosvolt chaosvolt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Forgot one

"byproducts": [ { "item": "clay_lump", "charges": [ 6, 12 ] } ],
"components": [ [ [ "water", 32 ], [ "water_clean", 32 ] ] ],
"pre_terrain": "t_clay_bog",
"post_terrain": "t_clay"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"post_terrain": "t_clay"
"post_terrain": "t_dirt"

Copy link
Contributor Author

@NappingOcean NappingOcean left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Accept to change t_clay to t_dirt, and adjust other things accordingly.

data/json/construction.json Outdated Show resolved Hide resolved
data/json/construction.json Outdated Show resolved Hide resolved
data/json/construction.json Outdated Show resolved Hide resolved
Copy link
Member

@chaosvolt chaosvolt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

:3

@chaosvolt chaosvolt merged commit 5de5cbc into cataclysmbnteam:main Feb 9, 2024
10 checks passed
@NappingOcean NappingOcean deleted the caly-and-paddy branch February 9, 2024 06:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
JSON related to game datas in JSON format.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants