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

Granularize cured hides and pelts #32671

Closed
wants to merge 8 commits into from

Conversation

Podesta
Copy link
Contributor

@Podesta Podesta commented Jul 27, 2019

Summary

SUMMARY: Balance "Granularize cured hides and pelts"

Purpose of change

After the introduction of granular pieces of raw hides and pelts in #27399 a common problem is that you often don't get the required amount (50) of raw bits to craft a cured hide. Since the raw bits spoil, you often end up wasting massive amounts of hides. More often than not, you end up with nothing. This tries to mitigate the issue.

Describe the solution

  • Granularize the curing part of process. Instead of 50 raw bits for 1 cured item, now you need 1 raw bit to create 1 cured bit, and 50 cured bits to 1 tanning bit. It only moves the granular aspect one step further, so the hides and pelts don't spoil.

  • Since there is no way to scale the amount of salt based on the current recipe, I didn't change the salt recipe (it still takes the 50 raw bits), and instead mainlined the recipe from the More Survival Tools, that requires an open fire instead, and can be easily scaled. The problem is that now, the recipes that uses salt uses the "result_mult": 50, which is very spammy. A better solution would be great.

  • Remove the raw human hide (raw_hleather) from the couple of recipes that had it, since humans seems to be dropping regular raw hides anyways.

Describe alternatives you've considered

Make so that raw pelts and hides no longer spoil, so the user can have enought time to gather the necessary amount.

Additional context

The objective of this PR is to mitigate the problems and confusion that the new granular system introduced. I made no changes to the amount of hide butchering gives, how reasonable the crafting process is, how long it should take, if other recipes that used the cured hide are reasonable, etc, since my knowledge of the area is very lacking. I kept the same proportions that were already in place, and simply re scaled them.

IMPORTANT: Since all cured hides and pelts now weight and have a volume that is 1/50 of what they used to be, and since now you require 50 of them to craft a single tanning piece, if you have multiple cured hides waiting to be tanned, you will essentially lose most of them. You can fix this in two ways:

  1. Use the debug menu and spawn yourself 49 cured hides or pelts for each cured hide you currently have.

  2. Not update until you started tanning all of the cured hides/pelts you have.

Podesta added 3 commits July 27, 2019 15:27
Also remove human leather from recipes that use it, since humans now
give normal raw hide.
@kevingranade
Copy link
Member

This pull request has been mentioned on Cataclysm: Dark Days Ahead. There might be relevant details there:

https://discourse.cataclysmdda.org/t/bug-with-cured-pelt-recipe-in-build-9374/20890/7

@ZhilkinSerg ZhilkinSerg added [JSON] Changes (can be) made in JSON Crafting / Construction / Recipes Includes: Uncrafting / Disassembling Items / Item Actions / Item Qualities Items and how they work and interact labels Jul 28, 2019
Podesta added 2 commits July 28, 2019 07:23
- Separate the curing from the cleaning process.

- New recipe to cure hides by air drying.

- Update ancient tanning recipe.
@Podesta
Copy link
Contributor Author

Podesta commented Jul 28, 2019

Fair enough. I believe the mod was abstracting the process of letting it dry in the air by using fire. Here are the changes I'll make:

  • Separate the curing from the cleaning process. You now must clean the skin before curing it, and curing is no longer mandatory for further processing. It has no water requirements because there is no way to sanely scale it. The water requirements is pushed to the tanning process.

  • Add new recipe for air curing a leather hide. Has no real requirements, other than waiting the time it takes to process (a few days). I removed the recipe that used fire as abstraction to this process.

  • Salt curing recipe now scaled for 5 units of raw hides instead of 50.

  • You can now tan the hide with either cured or clean hides. The process now takes 6 days instead of the current 8 hours to complete. Salt is not needed for tanning. The fat requirements is now part of the "OR" with the other tannins. The tools required now are containing and hammering. The recipe that uses lye remains unchanged (other than adding the clean hides).

    • Not sure if it is preferable to have the transformation time in turns or the new hours system. What scales better with non default season length?

@kevingranade I'm not sure about the formatting. Do you want me to change it back to the components on the same line, like your commit? I believe the style guide is outdated, and the formatting tool didn't help much. And the file itself is a mixture of both the more readable multiple lines, and the single line format.

@kevingranade
Copy link
Member

Please put that in a new PR, the current one is about granularity, let's just get that done and worry about all this new stuff later.
The formatting isn't just a general style it is precisely what the tool outputs.

@Podesta
Copy link
Contributor Author

Podesta commented Jul 28, 2019

The problem is that you can't go to a one to one granular recipe without a new recipe. Since the curing process is currently mandatory for tanning a leather in the game, you would need 5 grams of salt to cure 15 grams of raw leather, which becomes 12 grams of cured leather.

The real problem I'm trying to fix is the fact that currently you waste pretty much all of the leather you get in the game. Even if you kill and butcher a full deer you are unable to do anything with the leather you get from it. Granularization is part of the fix, but not the whole fix. If you prefer I can change the summary and the title.

As for the formatting tool, if I put this into the tool:

  {
    "type": "recipe",
    "result": "tanning_hide",
    "category": "CC_OTHER",
    "subcategory": "CSC_OTHER_MATERIALS",
    "skill_used": "survival",
    "difficulty": 3,
    "time": "48 m",
    "batch_time_factors": [ 20, 3 ],
    "autolearn": true,
    "qualities": [
      { "id": "HAMMER", "level": 1 },
      { "id": "CONTAIN", "level": 1 }
    ],
    "components": [
      [ [ "water_clean", 2 ], [ "water", 2 ] ],
      [ [ "tanbark", 1 ], [ "acorns", 2 ], [ "hops", 2 ], [ "pine_bough", 6 ], [ "tallow", 1 ], [ "tallow_tainted", 1 ], [ "lard", 1 ] ],
      [ [ "clean_hide", 50 ], [ "cured_hide", 50 ] ]
    ]
  }

The output I get is this:


{
  "type": "recipe",
  "result": "tanning_hide",
  "category": "CC_OTHER",
  "subcategory": "CSC_OTHER_MATERIALS",
  "skill_used": "survival",
  "difficulty": 3,
  "time": "48 m",
  "batch_time_factors": [
    20,
    3
  ],
  "autolearn": true,
  "qualities": [
    { "id": "HAMMER", "level": 1 },
    { "id": "CONTAIN", "level": 1 }
  ],
  "components": [
    [ [ "water_clean", 2 ], [ "water", 2 ] ],
    [
      [ "tanbark", 1 ],
      [ "acorns", 2 ],
      [ "hops", 2 ],
      [ "pine_bough", 6 ],
      [ "tallow", 1 ],
      [ "tallow_tainted", 1 ],
      [ "lard", 1 ]
    ],
    [ [ "clean_hide", 50 ], [ "cured_hide", 50 ] ]
  ]
}

And trying to add more than a recipe at a time I get a syntax error.

@kevingranade
Copy link
Member

This pull request has been mentioned on Cataclysm: Dark Days Ahead. There might be relevant details there:

https://discourse.cataclysmdda.org/t/fix-pelts-already/21400/2

@anothersimulacrum
Copy link
Member

You need to lint the entire file at the same time - you don't lint each recipe individually, you put all the recipes in the file, then copy and paste the entire file into the tool and lint it.

"material": [ "flesh" ],
"flags": [ "NO_SALVAGE" ],
"weight": 600,
"volume": 3,
"weight": 12,
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
"weight": 12,
"weight": "12 g",

"material": [ "fur", "flesh" ],
"flags": [ "NO_SALVAGE" ],
"weight": 684,
"volume": 4,
"weight": 14,
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
"weight": 14,
"weight": "14 g",

@@ -2283,7 +2301,7 @@
"description": "A folded sheet of leather made from carefully tanned animal hide, with the fur still intact. Can be cut up or used as is.",
"price": 5000,
"material": [ "fur" ],
"weight": 684,
"weight": 700,
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
"weight": 700,
"weight": "700 g",

"name": "air drying leather hide",
"name_plural": "air drying leather hides",
"description": "A clean animal hide which is being left to dry to prevent decay. Keep it away from the rain and water. You will be able to activate it when it has finished drying.",
"weight": 12,
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
"weight": 12,
"weight": "12 g",

"name": "air drying pelt",
"name_plural": "air drying pelts",
"description": "A clean animal fur which is being left to dry to prevent decay. Keep it away from the rain and water. You will be able to activate it when it has finished drying.",
"weight": 12,
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
"weight": 12,
"weight": "12 g",

@ZhilkinSerg
Copy link
Contributor

Probably obsoleted by #34291.

@ZhilkinSerg ZhilkinSerg closed this Oct 3, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Crafting / Construction / Recipes Includes: Uncrafting / Disassembling Items / Item Actions / Item Qualities Items and how they work and interact [JSON] Changes (can be) made in JSON
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants