The Role of Hunger in Roguelikes
Jump to navigation
Jump to search
"Do you have hunger in your roguelike?" "Not yet." "Excellent! I hate that!" The dislike of starving to death in roguelikes seems, in my experience, to dwarf the dislike of permament death. And yet Roguelike authors continue to rush to implement starvation. The following is a collection of thoughts on hunger, largely derived from discussions I have read & roguelikes I have played. I look forward to any expansion people can make. Section 1: Why is it that hunger is considered a benefit? Here is a list I have gleaned from the wise words of others. I look forward to more entries. B1) Hunger as a Resource Hunger provides another dimension of resource management. Like Hitpoints, Magic points, and Gold, Satiation is another resource that must be managed. Since many roguelikes are largely about balancing resources, removing hunger from the equation would make it easier for the player to min/max, and thus less challenging, and less fun. Examples: - A ring of sustanence uses up a ring slot which the player could use for another purpose. - Casting spells consumes hunger, thus having a long term (hunger) and short term (magic point) cost. - Food rations take space/weight in inventory, leading to more careful packing and/or stashing. B2) Hunger as a Timelimit The inexorable tick of the Hungry time bomb provides a sort of urgency to the adventure. You *must* delve deeper searching for food rations. You can't just lock yourself in a room for 2000 turns to heal/study/etc. Many aspects of Roguelikes encourage safe & careful play. Hunger is often listed as a drive for action rather than inaction. Examples: - Cutting trees in ADOM would be a nearly free action if not for going from Full->Hungry in a single user-turn. - In the early Nethack game, I personally tend to dive quickly if I'm running low on food in hopes of getting a yummy corpse. (Note: This is not directly encouraged as some note that one can always use a hunger prayer instead) B3) Hunger as Realism We have to eat in real life, right? Of course, we have to breathe in real life, and few would suggest a "breathe" command be added to roguelikes. (It would make an interesting death message though - "forgot to breathe") Hunger could always be fully abstracted. It could be assumed the adventurer is foraging and eating, much as it is assumed the adventurer is sleeping regularly in most roguelikes. I don't consider this much of a benefit, and merely leave it here completeness. Section 2: What use is eating? Why have eating at all in the game? Another way of looking at this, is why would a player want to eat in your roguelike? U1) Prevent Death This is the most commonly implemented use. And, IMO, is the source of most of the aggravation with Hunger in Roguelikes. No food for long enough implies death. This use strengthens B1, as any resource which causes death on expiry (such as hitpoints) tends to be more carefully managed. However, Magic Points are another carefully managed resource, and usually hitting 0 MP doesn't directly result in death. Thus, to gain B1, one must merely ensure being Hungry causes sufficient negative properties that one will be encouraged to manage it. B2 is more susceptable to the removal of the death penalty. Hunger-as-timelimit is well displayed by Ultima III. In Ultima III, your party members each had a Food counter. Each action decremented that counter. If it hit 0, the character would take damage until death. You had a very good idea about what your time-to-live was by the counter. On the other hand, if Hunger has only non-fatal effects, say preventing magic regeneration, there is no sense of time-to-live. One could let one's hunger bottom out, spend an arbitrary amount of time goofing around, and then have a couple cram rations to resatiate oneself. (Removing the floor on hunger may avoid this, but IMO would be an artificial fix) U2) Allow Healing Often eating is implemented as a form of instant-healing. A sandwhich may give +5HP & +5MP. One's hunger level is more of a satiation level, and it is ironically better to be hungry than full as one can then take advantage of food. This, however, turns food into YAWTH (Yet another way to heal), as there are plenty of insta-heal methods in the Roguelike genre already. This system does not provide B1 nor B2. U3) Allow Regeneration The natural regeneration of hit points and magic points can be tied to the hunger level. This keeps food as a method-of-healing, but it doesn't change an apple into a different looking potion of healing. This system only weakly drives B1 and B2. Regeneration is nice (one gets hp/mp while wandering around, rather than having to consume turns and items), but can be ignored by uninjured players and high level players. Thus, one may find people only eating before major fights and falling to Starving! whilst moving stuff between their caches. U4) Allow Special Actions Actions, such as SpellCasting, or going Beserk, may be limitted to those who are not hungry. This has a strong B1 component. The strength of B2 depends on how pervasive the requirement is. (If I can research spells while Starving!, the hunger system does not contribute to the balancing of the time taking to research spells) U5) Gain Intrinsics You are what you eat. This benefit for eating is similar to U2, except usually is not just a clone of another existant process. It has serious balance issues, however. Being able to gain an intrinsic means not having to use an item slot to fulfill that intrinsic. One must be careful not to nerf rings of fire resistance (as I personally think they have been in Nethack). There are multiple solutions to this: 1) Balance with it in mind 2) Have different levels of resistance. Thus, maximum resistance requires the item + the eaten intrinsic 3) Only grant temporary resistances through eating. U6) Add atmosphere Being able to bake a cake adds to the sense of the completeness of the world. One should be cautioned that the powergamers will immediately clamour for it to be "useful". Section 3: What are things to keep in mind when implementing hunger? I1) Does hunger bottom out? Even in U1, this is not easily answered. Ultima III, for example, does bottom out at 0 food, so as soon as you buy more food you stop starving. However, they could have tracked arbitrarily large negative food. By not letting hunger bottom out, one can strengthen B2. While one may research that spell while Starving!, one can't then just have a slice of pizza and be back at 100%, you have to eat yourself out of a very deep hole. I think such a system would have serious representational problems. I2) Is there a maximum that you can eat? In either U2 or U5, I think this is mandatory. For the other cases, it is entirely optional. Note that removing a maximum cap removes the inventory management aspect of food in B1. The other portions of B1 remain, of course. Note that if one can eat corpses, having no limit lets you stock up from a room of kills. Most extant roguelikes require you to kill-when-hungry. I3) How does hunger increase? This is a whole range of possibilities. One or more of: - Time. Every game tick, you grow hungrier. - Turns. Every time you do an action, you hunger (possibly relating to the strenuousness of the action) - Regeneration. When you regenerate due to U3, you hunger. - Special Abilities. When you use special abilities due to U4, you hunger. - Intrinsics. Possession of certain items/intrinsics/whatever which are too strong can be balanced with hunger. Eg, ring of conflict in Nethack, being invisible in Nethack, etc. I4) Does one explicitly eat? In aforementioned Ultima III, one never has to "eat" something - it is done automatically. Eating can quickly become a micro management issue. However, if one wants U6, one had better have explicit eating. I5) How is hunger level expressed? This comes down to a question of granularity: - A numeric value: This strongly reinforces B2. One sees the ticking of the clock in front of one's face. - A hunger bar: Simpler to reference, feels less fiction-breaking than the numeric value, but still allows one to watch the slow ticking. - Hunger Status Line: "Hungry" type status line entries. Hides the time limit aspect of hunger. Often results in newbies being surprised and starving. - No Output: Best for systems such as U6 or U2. Definitely not suggested for U1. This avoids spamming the user with something they may not care about. It will downplay the role of food in your game. Ultima Online, for example, used this system (It maybe categorized as U6 + theoritical U3, with I1, I2, I3(time only), and I4). Section 4: Why do people hate hunger? H1) It is micro management. If no non-newbies should ever starve to death, then the hunger system is just requiring the player to periodically perform extra keypresses. If the player doesn't find these key presses interesting, it seems like meaningless micro management. H2) It is a time limit. This is less often expressed, but I think lies at the heart. People feel the constant tick of time and know there is only a finite number of turns before they must get the next food ration. This may add excitement to some players, but others are turned off. Roguelike's are turn based, after all, so often played by people who want to think about their moves. Knowing a wasted diagonal movement may cause starvation will worry many players needlessly. H3) Interrupts the Heroic Fantasy Worrying about food whilst engaged in an awesome task seems petty. This is tied to B3, of course, and both are as relevant to the whole discussion. Section 5: What about POWDER? The About section of the POWDER website originally said that "Sorry, hunger will be coming eventually - it is required to prevent conservative play". I eventually second guessed myself and changed it to the current: "I had planned on adding hunger. I'm not too sure any more - corpses that would add intrinsics would mess up my current intrinsic balance. And hunger is annoying. The reason for it - to prevent people playing too conservatively - I don't consider an adequate cause. If people want to play too conservatively, it is their loss :>" That being said, I have switched again. Release 032 has added rudimentary hunger. However, my plans are, vaguelly: No U1: Hunger will not cause death. Thus, the ticking time limit of H2 will be removed. Super powerful players leaving the dungeon don't need to much around with eating. No U2: I think this just makes food a different type of heal potion, so dislike it. U3: Primary purpose of being fed will be to regenerate. The hyper-conservative player will thus soon stop regenerating while hiding behind the magic-locked door, and thus stop being rewarded for hyper-conservative play. U4: Probably. I like the idea of balancing long term and short term attributes, such as magic points vs hunger. U5: I'm very happy with the balance of my worn intrinsics, so am wary of granting permament intrinsics. I'm testing with temporary intrinsics in 033. I1: Yes. Otherwise one will end up at a point where one will just give up entirely on ever eating again as the hunger debt is too large. I2: Yes. With U5, I think this is pretty important. I3: Time, usage, regeneration. I4: Yes. What you eat is rather important - a red dragon corpse is not just a large food ration. I5: Currently I am using the status indicators. I do like the idea of a hunger bar, especially as I'm working in a graphical environment so can do it without cost. - Jeff Lait (POWDER: http://www.zincland.com/powder)