Cross-posted from forum thread: https://crawl.develz.org/tavern/viewtopic.php?f=8&t=237&p=8105#p8105
Rationale: I don't like chunk hunting minigame. For strategical reasons that may or may not become important way later in the game (saving permafood), you eat lots of brown chunks. Usually it's a no-brainer decision, because sickness isn't serious, but it is a small and frequent annoyance. Making sickness serious isn't a fix, because in something that's nominally a heroic fantasy game, the most common decision shouldn't be “should I eat this or not?”
My overall vision: Reduce player hassle, without breaking food clock. Remove most food sickness except from acts of desperation (which are still meaningful tactically, unlike most of today's food choices). Tweak herbivore/carnivore/saprovore to make differences more meaningful and interesting - herbivores should have to dip into permafood more often (instead of just grabbing all 5 yak chunks as today), and carnivore should not be instant gourmand.
Carnivore mutation should be changed to a real gradient: just because you can eat meat doesn't have to mean you can totally stuff yourself with raw meat. One level of carnivore could let you eat until full, two levels until very full, three levels until satiated (as a single level allows today). Herbivorous mutation could work the other way; one level eat only at very hungry or less, two levels at near starving and should always give sickness (act of desperation!), three levels no meat at all. To compensate, herbivores should get more nutrition from non-meat food (I know they get a little more currently, but they'd need a good deal more), and slower digestion - the current benefit from slow digestion mutation should be split between itself and herbivore. Otherwise they'll be practically as dependent on permafood as spriggans, and that's going too far.
Brown chunks should not cause sickness, but count as one worse on this scale (with no mutations, you could eat them at “very hungry” or worse). They should also give less nutrition.
Saprovore could work slightly differently: with no levels, can eat rotted chunks at -1 quality level, but rotted food always gives sickness and 1/3 regular nutrition. With one level, can eat rotted as brown meat, brown as regular.. With two levels, eat rotted and brown chunks like regular. With three levels, brown or rotted count as one better on the quality scale (but still only one better if it's both).
Corpses should produce fewer chunks on max. That will make no difference to most, but will make it slightly harder for carnivore casters to be perpetually stuffed to their limit.
This is how I envision the races under the new system:
Uh, that proposal isn't quite complete or consistent. I intend to work out the kinks in this system to make it consistent. Food suitability should be reduced to a simple function of four variables somehow:
this should return an integer. Depending on which range it falls in, result should be either:
… then increasing into
The idea is that only permafood should push you into the extra nutrition range - carnivores have enough advantages in a replenishable food source.
Poisonous, mutagenic and rot-causing chunks should be handled as today, independently from all of this. Might let them give nutrition when giving their status effects, though - that makes them another act of desperation candidate, and such genuine decisions are fun!
Hear, hear. Passing up Kobold corpses when I am starving and holding a potion of healing makes little sense. This is more interesting.— jejorda2 2011-02-25 16:07
I also want to start working on a patch for this to try it out, unless someone tells me it has no chance of being accepted :) — vintermann 2011-02-25 09:33
Great idea. A patch implementing this proposal definitely has a chance of being accepted, give it a try :) — galehar 2011-04-18 23:39
I think in most of the places where you use “satiated” you actually mean “engorged” (satiated is in between hungry and full, engorged is when you can't eat any more at all). But I like the general idea of the proposal, too, especially in terms of tweaking the carnivore/herbivore/saprovore mutations. I should point out that although sickness is mostly just a minor annoyance, it's somewhat relevant for Deep Dwarves at the very least - although it doesn't stop them regenerating health, they can't recover the stats they lose from it. — marvinpa 2011-02-25 16:53Fixed, thanks! — vintermann 2011-03-08 12:01
I support this! Thanks for moving it over here. The idea to use mutations levels to indicate how far beyond not-hungry you can go is ingenious.
Some comments: the Sick status is interesting, but only tactically, of course. You sometimes see this in a game when you (probably foolishly) try to avoid digging into permafood in hostile territory and run around sickness, hunting for another chunk that might you get off (very) hungry. I like it that the above proposal keeps Sick as a potential food effect because players can get to know it that way. The obvious solution is that certain monster attacks should convey that status (more than now, that is). This will also keep Sick being relevant for Deep Dwarves, by the way. — dpeg 2011-02-27 00:25Offtopic: sickness is already relevant to Deep Dwarves because they do not heal stat loss due to sickness. — jeffqyzt 2011-02-27 17:48
Just re-read it and I still like this a lot. vintermann, are you around?
The one thing I might disagree with is the Saprovore 1 → Carnivore 1 change for Ogres. The reason is that currently, Ogres fare better in a unique way, by being able to hold on longer with chunks from a single corpse. But that's a minor point. — dpeg 2011-04-18 23:36
There's a little problem with the new system and the berserk restriction. Previously, you couldn't berserk when hungry. When a Be was low on the satiated scale and found a chunk, it was better to rest until hungry to be able to eat the chunk rather than exploring and risking being ambushed when hungry. The problem was resolved by reducing the Berserk restriction to Very Hungry. In the new system, the problem will come back for Herbi 1, and normal diet in places where good chunks are rare (orc/elf). I don't think it's a huge problem, as it is quite restricted, but it would be better if we can address it. One possible fix would be to make the amount of nutrition provided by a chunk decay with time. That way, you gain nothing by waiting unless you also have slow digestion, but the gain is small and the case rare enough. It would also smoothen the rotting effect. Decaying is gradual instead of losing 2/3 nutrition value in a single turn. Would make sense if it also depends on the saprovore mutation. Like nutrition = 1000 - (3 - sapro_level) * k * age, for some value of k. — galehar 2011-07-20 17:04
Chunks and permafood are treated differently. The bonuses for preferred permafood are much higher than currently; this is intentional. It is also intentional that the herbivore mutation is more effective.
The type of a given food item depends on the following parameters:
Level | defaults | taste | can eat from/until | nutrition | sickness | example |
---|---|---|---|---|---|---|
-4 | inedible | |||||
-3 | barely edible | from Near Starving or worse | 1/3 | 100% | ||
-2 | brown chunk | strong dislike | from Very Hungry or worse | 2/3 | 20% | |
-1 | white chunk | mild dislike | from Hungry or worse | 1 | ||
0 | no bias | until Full | 1 | |||
1 | mild prefence | until Very Full | 1 | |||
2 | strong preference | until Engorged | 1 |
Effect | modifier to level | condition |
---|---|---|
herbivore | -1 | for each level |
carnivore | +1 | for each level |
gourmand | +1 | if adapted to amulet |
rotted chunk | -1, sick, 1/3 nutrition | if no saprovore mutation |
green chunk | poison, 1/2 nutrition | unless rPois |
magenta chunk | mutation, 1/3 nutrition |
Level | taste | can eat from/until | nutrition | example |
---|---|---|---|---|
-3 | inedible | |||
-2 | strong dislike | from Very Hungry or worse | 2/3 | |
-1 | mild dislike | from Hungry or worse | 3/4 | |
0 | no bias (default) | until Engorged | 1 | |
1 | mild preference | until Engorged | 4/3 | |
2 | strong preference | until Engorged | 5/3 | |
3 | craves | until Engorged | 2 |
Effect | modifier to level |
---|---|
herbivore | -1 for each level |
carnivore | +1 for each level |
Governs effect of rotted chunks.
For a start: corpses which currently generate one chunk should keep doing so; corpses which generate (up to) eight chunks should give (up to) four — i.e. half chunk number, rounding up.
The ' indicates powers (I couldn't use ^ for wiki table syntax reasons). Note that sausage = meat ration for all purposes.
mutation | food type | result | formula | comment |
---|---|---|---|---|
herbivore 3 | apple | 6.75 | 2*(6/4)'3 | craves |
bread | 3.91 | 2*(5/4)'3 | craves | |
honey | 2.00 | 2*(4/4)'3 | craves | |
sausage | 0 | inedible | ||
any chunk | 0 | inedible | ||
herbivore 2 | apple | 3.75 | 5/3*(6/4)'2 | craves |
bread | 2.60 | 5/3*(5/4)'2 | craves | |
honey | 1.67 | 5/3*(4/4)'2 | craves | |
sausage | 0.38 | 2/3*(3/4)'2 | strong dislike | |
white chunk | 0.08 | 1/3*(2/4)'2 | barely edible | |
brown chunk | 0 | inedible | ||
herbivore 1 | apple | 2.00 | 4/3*(6/4)'1 | craves |
bread | 1.67 | 4/3*(5/4)'1 | craves | |
honey | 1.33 | 4/3*(4/4)'1 | craves | |
sausage | 0.56 | 3/4*(3/4)'1 | mild dislike | |
white chunk | 0.38 | 3/4*(2/4)'1 | strong dislike | |
brown chunk | 0.17 | 1/3*(2/4)'1 | barely edible | |
carnivore 1 | apple | 0.50 | 3/4*(4/6)'1 | mild dislike |
bread | 0.63 | 3/4*(5/6)'1 | mild dislike | |
honey | 0.75 | 3/4*(6/6)'1 | mild dislike | |
sausage | 1.56 | 4/3*(7/6)'1 | mild preference | |
white chunk | 1.33 | 1*(8/6)'1 | no bias | |
brown chunk | 1.33 | 1*(8/6)'1 | mild dislike | |
carnivore 2 | apple | 0.30 | 2/3*(4/6)'2 | strong dislike |
bread | 0.46 | 2/3*(5/6)'2 | strong dislike | |
honey | 0.67 | 2/3*(6/6)'2 | strong dislike | |
sausage | 2.27 | 5/3*(7/6)'2 | strong preference | |
white chunk | 1.78 | 1*(8/6)'2 | mild preference | |
brown chunk | 1.78 | 1*(8/6)'2 | no bias | |
carnivore 3 | apple | 0 | inedible | |
bread | 0 | inedible | ||
honey | 0 | inedible | ||
sausage | 3.17 | 2*(7/6)'3 | craves | |
white chunk | 2.37 | 1*(8/6)'3 | mild preference | |
brown chunk | 2.37 | 1*(8/6)'3 | strong preference |
First analysis: Herbivore 2 is much worse than Herbivore 1 (can eat chunks reasonably) or 3 (gets a lot of nutrition out of vegetarion food). Proposal by galehar (and supported by me): make the effect of Herbivore/Carnivore mutations constant (instead of exponential), i.e. apply the given factor if the mutation is present (no matter the level). Note that high levels of the mutations will allow to eat all day (i.e. until Engorged) with Carnivore 3 and have much slower digestion with Herbivore 3.
Another observation: Slow/Fast Digestion are less interesting than Herbivore/Carnivore. They might be removed. — dpeg 2011-09-29 00:01
I've made a spreadsheet to compare the current nutrition values with Vintermann's design and Ryak's implementation. I think the original proposal works pretty well. Herbi 2 is still harsh, but that's the point of a level 2 mutation. I think it meets the goal. — galehar 2011-09-30 15:36
Patch at 4226.
There is only a single scale for food quality
Base values:
Modifiers:
Special rules:
Effects of food quality:
Level | can eat from/until | nutrition | example |
---|---|---|---|
-3 | cannot eat at all | herbivore 2 and dirty chunk | |
-2 | from (Near) Starving | 1/3 | herbivore 1 and dirty chunk |
-1 | from Very Hungry or worse | 2/3 | dirty chunk |
0 | from Hungry or worse | 1 | clean chunk |
1 | until satiated | 1 | herbivore 1 and meat ration |
2 | until Full | 6/5 | permafood |
3 | until Engorged | 7/5 | carnivore 3 and clean chunk |
4 | until Engorged | 8/5 | carnivore 2 and meat ration |
5 | until Engorged | 9/5 | carnivore 3 and meat ration |