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

Cooking improperly shows rotten ingredient as usable. #38471

Open
sharkfinsouperman opened this issue Feb 29, 2020 · 8 comments
Open

Cooking improperly shows rotten ingredient as usable. #38471

sharkfinsouperman opened this issue Feb 29, 2020 · 8 comments
Labels
<Bug> This needs to be fixed Crafting / Construction / Recipes Includes: Uncrafting / Disassembling Items: Food / Vitamins Comestibles and drinks

Comments

@sharkfinsouperman
Copy link

Describe the bug

When cooking, some rotten ingredients are shown as candidates, though they are correctly not given as options when selecting the final ingredients.

This may be related to issue #38271 and/or a number of others involving rotten ingredients.

Steps To Reproduce

In my case, have numerous usable ingredients and one or more rotten ones, and then proceed to cook the meal.

Expected behavior

The unusable candidate should not be shown, or it should be browned out to indicate rot.

Screenshots

I'm making "cullen skink" with a gallon of rotten milk in the freezer. Note that it is in green as a candidate, though not in the list of choices.
image

Versions and configuration

  • OS: Windows
    • OS Version: MINGW/CYGWIN/MSYS2 on unknown Windows version
  • Game Version: 0.D-12648-g63d3fb8 [64-bit]
  • Graphics Version: Tiles
  • Mods loaded: [
    Dark Days Ahead [dda],
    No Fungal Monsters [No_Fungi]
    ]
@jkraybill
Copy link
Contributor

Definitely related to #38271 / #38295 and #38392 but may be a different issue. I will take a look at this after #38295 gets merged.

@sharkfinsouperman
Copy link
Author

There are a few closed PRs that implemented the use of rotten ingredients and I'm wondering if one of those started this series of bugs.

I'd take a look at the PRs myself, but its been more than a decade since I last coded any C++, so I doubt it would do any good. "Skill rust", don't ya know?

@sharkfinsouperman sharkfinsouperman changed the title Cooking shows improperly rotten ingredient as usable. Cooking improperly shows rotten ingredient as usable. Mar 1, 2020
@jkraybill
Copy link
Contributor

Just re-tested with the merged PR's noted, and it's still an issue.

@jkraybill
Copy link
Contributor

jkraybill commented Mar 2, 2020

I've looked at this, I don't have a great solution and I think this should be considered working as designed. Fixing this is not as simple as filtering out rotten ingredients from the list of possible ingredients, because when you do batch-crafting, you can "dip into" the rotten ingredients, and you get properly warned this is going to happen (in this case, the 2 shelf stable milk are OK, the normal milk is not):

image

There's a more basic repro case, which is if you have a mix of rotten scraps of meat and non-rotten scraps of meat, and go to craft "cooked scrap of meat", you see both the rotten and non-rotten in the count: (here I have 10 rotten and 11 non-rotten):

image

Cooking a single batch will always use the non-rotten scrap, but if you go to batch view, you do correctly see the rotten/non-rotten item border:

image

So, I think I've talked myself into "this is working as designed" because I don't see a great way to break out combinations of rotten and non-rotten ingredients in the components menu, and when you see this, it is correct to show those in the "potential ingredients" list because those ingredients will be used if you dip past the non-rotten components.

If anything, maybe there could be a new color code for "using all of this stack will result in rotten components being used" but I can't think of a way to do that which wouldn't be confusing?

@kevingranade
Copy link
Member

I'm not sure it's WAI, does cooking this recipe with rotten ingredients yield a usable result? If not, then they should be filtered out.

I'm also questioning more and more whether the use case of obscure crafting recipes that accept rotten ingredients is worth all the trouble this causes. What's the ACTUAL impact of just removing the rotten ingredients as options?

@kevingranade kevingranade added (S1 - Need confirmation) Report waiting on confirmation of reproducibility <Bug> This needs to be fixed and removed (S1 - Need confirmation) Report waiting on confirmation of reproducibility labels Mar 4, 2020
@KorGgenT KorGgenT added Crafting / Construction / Recipes Includes: Uncrafting / Disassembling Items: Food / Vitamins Comestibles and drinks labels Mar 5, 2020
@sharkfinsouperman
Copy link
Author

Is the use of rotten ingredients intentional? If so, for which recipe(s)?

The only two I found in the game that could use them in RL are cheese and cured hides/pelts, and those are a stretch. As I've said before, there are places that do use rotting milk in dairy fermentation such Belgium and Mongolia, but those are not typical U.S. "hard cheeses". You can also tan a rotting hide or pelt, but that would result in a weak, low quality end product suited for very little.

IMO, neither fresh milk or sources of leather and fur are nearly as difficult to find as they once were, so I see no reason why the use of rotting ingredients can't be removed all together without causing any major impact.

@kevingranade
Copy link
Member

I think it was even more obscure things like some weird chemical thing, or possibly cooking rotten ingredients allowed if the cook is capable of eating rotted food.

@sharkfinsouperman
Copy link
Author

If it was intended to enable the ability cook with and eat rotted food, it failed because it results in several exploits that include "fresh" food from spoiled and the ability to turn rotting hides and pelts into quality leather and fur.

I was unable to find the PR the implemented it, and I've no idea which chemical reaction is so important that rotted ingredients need to be allowed.

IMO, the whole rotted ingredient thing should be axed so, maybe, these exploits and bugs can be fixed, and if the need arises that it needs to be re-implemented again, it should be done a different way to prevent these issue from happening again.

Does anyone even know where the code allows the use of rotted ingredients?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
<Bug> This needs to be fixed Crafting / Construction / Recipes Includes: Uncrafting / Disassembling Items: Food / Vitamins Comestibles and drinks
Projects
None yet
Development

No branches or pull requests

4 participants