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

More complex satiety calculations #36977

Closed
I-am-Erk opened this issue Jan 12, 2020 · 0 comments · Fixed by #40402
Closed

More complex satiety calculations #36977

I-am-Erk opened this issue Jan 12, 2020 · 0 comments · Fixed by #40402
Labels
Game: Balance Balancing of (existing) in-game features. Items: Food / Vitamins Comestibles and drinks Items / Item Actions / Item Qualities Items and how they work and interact <Suggestion / Discussion> Talk it out before implementing
Milestone

Comments

@I-am-Erk
Copy link
Member

I-am-Erk commented Jan 12, 2020

Is your feature request related to a problem? Please describe.
Our current system calculates stomach fullness using food volume alone. This is scientifically based and works really well for vegetables and carb foods, but misses another major satiety trigger, the protein and fat content of food. This leads to issues with very calorie dense foods not filling the stomach as one would expect.

Describe the solution you'd like
It's difficult to work out a system for protein satiety because there's not much research besides just confirmation that protein impacts satiety. On the bright side, this means we don't really need to program macronutrients for everything, because it wouldn't help with any calculations really. On the downside, it means we have to mess with our fine tuned, researched values with some "feels right" tweaks.

The only solution I can see is to sully our nice scientific system with a kludgey fix, where we change a food's effective volume in the stomach based on the ratio of calories to weight:

Food volume in stomach = [food volume outside stomach] * { ([food kcal]/[weight in grams]), min 1 }

Under this formula, non-calorie non dense food, which we currently simulate very well, remain as is. Cooked oatmeal for example has a ratio less than 1, and so remains at its current serving amount to feel full. Bratwurst, however, are 300kcal/100g, so would count for triple their current volume in satiety amount: this means that instead of being able to eat around 20 bratwurst before vomiting you can fit about 7.

Describe alternatives you've considered
Kevin, KorGgenT, and I have talked at length about options. The other solid option would be to have a JSON tag for foods full of particular macronutrients, eg [STARCHY], [FATTY], etc. and these would impact satiety. However I think this formula accounts for pretty much all the same things, and doesn't require going through all our comestibles definitions with flags.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Game: Balance Balancing of (existing) in-game features. Items: Food / Vitamins Comestibles and drinks Items / Item Actions / Item Qualities Items and how they work and interact <Suggestion / Discussion> Talk it out before implementing
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant