More complex satiety calculations #36977
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
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.
The text was updated successfully, but these errors were encountered: