Hunger interface and starvation (Split from Death Cobs in CYC)


Although the central place for design discussion is ##crawl-dev on freenode, some may find it helpful to discuss requests and suggestions here first.

Dungeon Master

Posts: 388

Joined: Monday, 18th August 2014, 20:04

Post Friday, 21st August 2015, 13:57

Hunger interface and starvation (Split from Death Cobs in CYC)

Rep Henry Clay wrote:So I just died to death cobs in Zot. I feel really really stupid for tabbing through that. I've never died to hunger before and for some stupid reason assumed their attacks wouldn't continue lowering my hunger past starving. Silly me.

Super fast death cobs stacking hunger through armor is bullshit, but maybe I'm just butthurt that I died.


From what I understand their attacks won't derease your hunger past 0. However, any action you take will lower your hunger linearly; it's sort of the same effect as torment + regular damage. Probably, it's very easy for a cob to leave your hunger at <100 or whatever and so any action besides eating will kill you in that state.

From reading crawl-dev (where they are tracking these deaths closely) it seems like many of the cob deaths involve tabbing; I suspect most players just don't know the mechanics of "starving" because it's practically never happened to them before -- I can count the number of times I've been "starving" (edit: in modern crawl) on at most two hands. And also, I suspect death cobs, because of the multiplicative effect, may tend to leave you in a lower hunger state than the usual means of entering "starving". That category is anything lower than satiation 1000. Typically you do have a few turns, I think, and the range of "starving" as a category is actually twice that of "very hungry" (though there's a hidden point at 500 where you start passing out). So people just aren't used to being in version of "starving" that can result in insta-death.

I personally think this mechanic is kind of nuts and not very fun sounding (I don't usually play trunk though so I haven't personally experienced it). I have been playing crawl long enough to remember times where starving to death was a more practical possibility (at least as a bad player back then), and it doesn't really seem like the greatest thing to return to those times. But if it's going to stay in, my suggestions to any devs who might be listening: (i) please provide some better UI guidance to the fact that "starving" can mean, if you do anything but eat you will die (which I don't think it really meant, for practical purposes, before), and (ii) consider putting a lower bound on the hungering effect at something like 1000, or maybe even 1250 (middle of "near starving").

Also, possibly consider providing better cues to how long eating takes -- I didn't know until I just looked it up that fruit/pizza/jerky is 10aut whereas everything else is 30aut (I did know that chunks are 30aut from playing ghouls). I see that it is shown in the item description, but perhaps eating a 30aut item in combat should (optionally) trigger a prompt. This means that it now can be of tactical relevance what you eat during combat, if multiple things are attacking you with a death cob. Actually I'd personally prefer it if everything took 10aut to eat, but that may not be reasonable, and it would be a substantial ghoul buff.

For this message the author advil has received thanks: 3
nago, Rep Henry Clay, Sandman25

Ziggurat Zagger

Posts: 11111

Joined: Friday, 8th February 2013, 12:00

Post Friday, 21st August 2015, 14:18

Re: Death cobs

advil wrote:But if it's going to stay in, my suggestions to any devs who might be listening: (i) please provide some better UI guidance to the fact that "starving" can mean, if you do anything but eat you will die (which I don't think it really meant, for practical purposes, before), and (ii) consider putting a lower bound on the hungering effect at something like 1000, or maybe even 1250 (middle of "near starving").


Indeed, I think those deaths would not happen if UI was not so mysterious, I didn't know about starvation causing passing out, for example. If 500 is a hidden breakpoint, probably status line should contain "Can pass out" instead of standard "Starving". Currently when you are starving and have a death cobe adjacent, you should immediately do something because if it hits you thrice (which is possible to happen before next action of player with cob's speed 25) you will get into "Can pass out" area even from 1000 satiation points but it is not visible in the game: unless spoiled you don't know how Death Cob's attack affect satiation and you don't even know how many satiation points you need to get "Near starving", "Starving", "Can pass out" or "Instant death next turn".

Dungeon Master

Posts: 3160

Joined: Sunday, 5th August 2012, 14:52

Post Friday, 21st August 2015, 14:19

Re: Death cobs

It seems odd to me that you don't see the game printing "Starving" in danger-colored text in a game where characters can die of starvation as being a good warning that you need to eat or you might die. That message seems pretty clear to me.

I think the reason people don't react to the "Starving" message is that they're used to assuming that food will never, ever matter.

Ziggurat Zagger

Posts: 11111

Joined: Friday, 8th February 2013, 12:00

Post Friday, 21st August 2015, 14:24

Re: Death cobs

Lasty wrote:It seems odd to me that you don't see the game printing "Starving" in danger-colored text in a game where characters can die of starvation as being a good warning that you need to eat or you might die. That message seems pretty clear to me.

I think the reason people don't react to the "Starving" message is that they're used to assuming that food will never, ever matter.


People are used to be starving in a battle as melee characters, it takes 3 satiation points to hit with melee weapon and 3 satiation points to "live" so when you hit "Starving" naturally in a fight, you still have 80+ ([1000-500]/6)turns when you can melee without any danger.
I always ate something when got to starving but after spectating some players who ignored the status and continued fighting I did the math and found that they were right. Death Cob changes that of course. (Yes, I know about melee penalty at starving status).

Dungeon Master

Posts: 388

Joined: Monday, 18th August 2014, 20:04

Post Friday, 21st August 2015, 14:50

Re: Death cobs

Lasty wrote:It seems odd to me that you don't see the game printing "Starving" in danger-colored text in a game where characters can die of starvation as being a good warning that you need to eat or you might die. That message seems pretty clear to me.

I think the reason people don't react to the "Starving" message is that they're used to assuming that food will never, ever matter.


I totally agree that, if you are a new player with no crawl experience, this message is actually pretty clear. However, I haven't died of starvation in crawl since like 2008 and I think this is pretty representative, not to mention that the mechanics of satiation and starving are extremely obscured in the UI. I had even forgotten that it's possible to pass out from starvation, though this has happened to me in the distant past. To anyone who's played any crawl at all recently, what I'm pointing out is that "starving" means "eat as soon as possible but you actually have a while, and can probably finish this fight". Sort of like the empty light on a car. And, aside from these new changes, I think anyone who believes this is probably right -- the distance from the top of starving to dead is twice the size of that from the top of very hungry to near starving, and normally if you just get to "starving" by not eating or even berserking, you are pretty close to 1000 and have many turns before even passing out, with a linear drop in satiation. I think every other way of losing satiation is linear, right? Eating in the middle of a fight is something you just never do pre-0.17, especially 30-aut eating. (And in general it is in fact a really stupid thing to do, I say this because I have accidentally done it a bunch while playing ghouls.)

I don't think you should be particularly surprised that experienced players are tabbing in this circumstance because that is exactly what their experience with being "starving" leads them to believe should be possible and perhaps even optimal, and nothing about the UI or feedback from actions tells them otherwise. Do you think any of these players even have a way of realizing that AF_HUNGER is not a linear effect?

For this message the author advil has received thanks: 2
duvessa, Sandman25

Dungeon Master

Posts: 388

Joined: Monday, 18th August 2014, 20:04

Post Friday, 21st August 2015, 17:08

Re: Death cobs

advil wrote:But if it's going to stay in, my suggestions to any devs who might be listening: (i) please provide some better UI guidance to the fact that "starving" can mean, if you do anything but eat you will die (which I don't think it really meant, for practical purposes, before), and (ii) consider putting a lower bound on the hungering effect at something like 1000, or maybe even 1250 (middle of "near starving").


Two more additions: first, I was using satiation numbers from the wiki, which as it turns out, are off by 100 (from an era where death was at 100, not 0). But the basic proportions are the same; you can see the correct numbers here.

Second, it turns out that berserking already has nearly exactly what I was suggesting in (ii): (player-reacts.cc, 902-3)

  Code:
        make_hungry(BERSERK_NUTRITION, true);
        you.hunger = max(HUNGER_STARVING - 100, you.hunger);

Dungeon Master

Posts: 388

Joined: Monday, 18th August 2014, 20:04

Post Friday, 21st August 2015, 20:03

Re: Death cobs

  Code:
15:31:14 <Lasty_> gammafunk: it is really odd to me. There are people on the tavern complaining that it's impossible to guess that because the screen says "Starving", not eating food might kill you


Man, this is such a willful misreading of what I and others are saying here. I appreciate when devs engage here but why bother if this is what you're going to take away from any of this?

  • from somewhere in the mists of time until now, this is absolutely the way starving works in crawl -- in normal circumstances, if you fail to eat food immediately while starving, it won't kill you.
  • To deal with the situation this change has created, one must eat during a fight, which is the absolute opposite of when you should eat in nearly every other situation, including even cases like when you go starving from berserk. (Because of the code I pasted above.) As a side effect the choice of food even has tactical relevance because they take different amounts of time.
  • There is absolutely no interface cue about starving (satiation 900) vs. starving (satiation 400 and below), the latter of which has been practically impossible to get to probably since back when cursed blunt weapons prevented butchering.
  • In consequence, to deal with death cobs (and possibly hungry ghosts, idk), players basically need to guess that now they should eat during a fight. I mean, if nothing changes, this is obviously one of the weird things about crawl that one will have to learn, and people will. (see emiel's comment in his yasd thread about wishing he'd reading trunk changelogs more carefully.) But why not at least make this fact non-spoilery?

For this message the author advil has received thanks: 6
Arrhythmia, bananaken, duvessa, rockygargoyle, Sandman25, ydeve

Dungeon Master

Posts: 585

Joined: Sunday, 9th June 2013, 17:13

Post Friday, 21st August 2015, 21:42

Re: Death cobs

With this commit from neil adding a hunger state of for "fainting from hunger", you'll now know when your nutrition is low enough that you can faint. There's a hunger status light of "Fainting", and a message of "You are fainting from starvation!" (which can be put in force_more_message).

For this message the author gammafunk has received thanks: 3
advil, Sandman25, ydeve

Snake Sneak

Posts: 112

Joined: Wednesday, 28th May 2014, 17:13

Location: California

Post Friday, 21st August 2015, 21:52

Re: Death cobs

There is currently the autofight_stop option, which sets the HP percentage below which you can't use tab for fighting. How about adding an autofight_hunger_stop option that allows setting a limit for hunger as well. This would at least prevent the deaths by starvation due to tabbing. The only problem i see is that hunger isn't a visible number, so one doesn't really know what percentage it's at. Maybe just allow setting it top the status "fainting", "starving", "nearly starving", etc? Or at the very least, have it simply prevent tabbing while at starvation or lower.

For this message the author BugHunter has received thanks: 5
advil, Arrhythmia, neil, rockygargoyle, Sandman25
User avatar

Dungeon Master

Posts: 502

Joined: Wednesday, 7th March 2012, 13:25

Location: Lexington, KY, US

Post Friday, 21st August 2015, 22:07

Re: Death cobs

+1 to bughunter's suggestion re autofight. There is already a clua you.hunger() which returns -1 (fainting), 0 (starving), 1 (near starving), etc., so we could use those numbers in the option.

I also just made a few tweaks so that:
  • You'll never faint on the same turn that you first get the Fainting light; however, if you are in a multi-turn delay (taking stairs for example) you might not actually get to act.
  • You'll never faint or starve to death in the middle of eating, even if it's a multi-turn food like rations or chunks.

For this message the author neil has received thanks: 5
advil, Arrhythmia, Lasty, rockygargoyle, Sandman25

Dungeon Master

Posts: 585

Joined: Sunday, 9th June 2013, 17:13

Post Friday, 21st August 2015, 23:15

Re: Hunger interface and starvation (Split from Death Cobs i

Moderator's Note: Split hunger interface and starvation off into this topic in GDD, since we're making some commits based on various feedback. This topic is about the hunger interface and how starvation works. Please see the AF_HUNGER topic if you want to talk about the hungry ghost / death cob change specifically or the remove hunger topic if you want to talk about removing/replacing the hunger system as a whole.

For this message the author gammafunk has received thanks:
advil

Mines Malingerer

Posts: 30

Joined: Thursday, 19th June 2014, 22:13

Post Saturday, 22nd August 2015, 06:37

Re: Hunger interface and starvation (Split from Death Cobs i

All I can say about this is that using the satiation level as a secondary, non-transparent HP-bar is terrible design and trying to fix the transparency issues just makes the silliness of a secondary HP-bar more apparent.

For this message the author Kolbur has received thanks: 6
Arrhythmia, asdu, bananaken, bel, duvessa, greedo

bel

Cocytus Succeeder

Posts: 2184

Joined: Tuesday, 3rd February 2015, 22:05

Post Saturday, 22nd August 2015, 11:16

Re: Hunger interface and starvation (Split from Death Cobs i

Edit:delete, wrong place

Ziggurat Zagger

Posts: 11111

Joined: Friday, 8th February 2013, 12:00

Post Saturday, 22nd August 2015, 12:44

Re: Hunger interface and starvation (Split from Death Cobs i

Kolbur wrote:All I can say about this is that using the satiation level as a secondary, non-transparent HP-bar is terrible design and trying to fix the transparency issues just makes the silliness of a secondary HP-bar more apparent.


It's fine to have several HP-bars provided they are as transparent as current HP-bar is (anyone having problems with MP "HP-bar"?). I love a game with 3-4 HP-bars, it is great when you die in different ways, it is great when you should pay attention to many factors.

Spoiler: show
The game is called eador. The HP-bars (parts which can be applied to crawl) are:
1) HP
2) stamina - you pass turns and have 50% defense when your stamina is 0, you slowly recover stamina while resting, also there are spells to recover stamina (you cannot spam spells, see 4)
3) morale - you can't attack when your morale is 0, your morale is changed when you kill something or when you get high damage. Also there are spells that change morale
4) spell slots - you have n1 spell slots for level 1 spells, n2 spells slots for level 2 etc. You should fill those slots with spells when you have a chance. When you cast a spell, the slot becomes empty and you can no longer use it until next fight. If a mage had casted all spells it had, now it is a weak character who cannot do much in the same battle (unless it's a hybrid of course).
User avatar

Tomb Titivator

Posts: 802

Joined: Sunday, 30th March 2014, 21:06

Post Saturday, 22nd August 2015, 13:57

Re: Hunger interface and starvation (Split from Death Cobs i

IMO it should be impossible to starve to death with food in the inventory; if your last action would kill you due to starvation, it should instead become an automatic "eat smallest bit of food in inventory" action.
Comborobin Admin
User avatar

Dungeon Master

Posts: 502

Joined: Wednesday, 7th March 2012, 13:25

Location: Lexington, KY, US

Post Saturday, 22nd August 2015, 14:19

Re: Death cobs

BugHunter wrote:There is currently the autofight_stop option, which sets the HP percentage below which you can't use tab for fighting. How about adding an autofight_hunger_stop option that allows setting a limit for hunger as well. This would at least prevent the deaths by starvation due to tabbing. The only problem i see is that hunger isn't a visible number, so one doesn't really know what percentage it's at. Maybe just allow setting it top the status "fainting", "starving", "nearly starving", etc? Or at the very least, have it simply prevent tabbing while at starvation or lower.


This is in, thanks for the suggestion! Currently you must specify the hunger level numerically (-1 = fainting, 0 = starving, 1 = near starving, etc). It doesn't apply to vampires and ghouls by default but can be made to.

Possibly this shouldn't apply to hydra form, since tab is one way to gain nutrition in that form.

For this message the author neil has received thanks: 2
advil, Lasty

Dungeon Master

Posts: 388

Joined: Monday, 18th August 2014, 20:04

Post Saturday, 22nd August 2015, 14:27

Re: Hunger interface and starvation (Split from Death Cobs i

Thanks for moving this back to GDD and for all the changes! Regardless of what one thinks about the substance of AF_HUNGER, I think these fixes will go a long way towards not catching out players who would have had the wrong impression of "starving", probably including a lot of the tab deaths so far.
User avatar

Tartarus Sorceror

Posts: 1891

Joined: Monday, 1st April 2013, 04:41

Location: Toronto, Canada

Post Saturday, 22nd August 2015, 16:08

Re: Hunger interface and starvation (Split from Death Cobs i

Sandman25 wrote:
Kolbur wrote:All I can say about this is that using the satiation level as a secondary, non-transparent HP-bar is terrible design and trying to fix the transparency issues just makes the silliness of a secondary HP-bar more apparent.


It's fine to have several HP-bars provided they are as transparent as current HP-bar is (anyone having problems with MP "HP-bar"?). I love a game with 3-4 HP-bars, it is great when you die in different ways, it is great when you should pay attention to many factors.

Spoiler: show
The game is called eador. The HP-bars (parts which can be applied to crawl) are:
1) HP
2) stamina - you pass turns and have 50% defense when your stamina is 0, you slowly recover stamina while resting, also there are spells to recover stamina (you cannot spam spells, see 4)
3) morale - you can't attack when your morale is 0, your morale is changed when you kill something or when you get high damage. Also there are spells that change morale
4) spell slots - you have n1 spell slots for level 1 spells, n2 spells slots for level 2 etc. You should fill those slots with spells when you have a chance. When you cast a spell, the slot becomes empty and you can no longer use it until next fight. If a mage had casted all spells it had, now it is a weak character who cannot do much in the same battle (unless it's a hybrid of course).


that isn't what he means though, because none of those bars actually kill you like hunger can in crawl.
take it easy

For this message the author Arrhythmia has received thanks: 4
duvessa, Kolbur, rockygargoyle, Sandman25

Shoals Surfer

Posts: 252

Joined: Sunday, 19th May 2013, 21:30

Post Wednesday, 26th August 2015, 19:19

Re: Hunger interface and starvation (Split from Death Cobs i

Sorry, but I strongly dislike the death cob change as it is currently implemented. I am okay overall with the change (though it seems childish to do it in retaliation to the "remove hunger" suggestion), but the satiation drain per hit is totally fucking insane, especially considering movement speed on death cob.

For this message the author MrPlanck has received thanks:
rockygargoyle
User avatar

Barkeep

Posts: 1788

Joined: Saturday, 29th June 2013, 16:52

Post Wednesday, 26th August 2015, 21:42

Re: Hunger interface and starvation (Split from Death Cobs i

MrPlanck wrote:I am okay overall with the change (though it seems childish to do it in retaliation to the "remove hunger" suggestion)

Just as an aside, Lasty specifically said when he made the commit that he had been thinking about doing it long before I ever brought up removing hunger. He joked about it, I joked about it, but the truth as I understand it is that this was just a funny coincidence.

For this message the author archaeo has received thanks: 2
Lasty, MrPlanck

Shoals Surfer

Posts: 252

Joined: Sunday, 19th May 2013, 21:30

Post Thursday, 27th August 2015, 17:32

Re: Hunger interface and starvation (Split from Death Cobs i

archaeo wrote:
MrPlanck wrote:I am okay overall with the change (though it seems childish to do it in retaliation to the "remove hunger" suggestion)

Just as an aside, Lasty specifically said when he made the commit that he had been thinking about doing it long before I ever brought up removing hunger. He joked about it, I joked about it, but the truth as I understand it is that this was just a funny coincidence.


Thank you for clarifying, Archaeo, and apologies to Lasty. But I still think that the hunger penalty is too much, especially for low ev builds.

Return to Game Design Discussion

Who is online

Users browsing this forum: No registered users and 114 guests

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.