Friday, 3 August 2007

An analysis of healing in Angband

For those of you coming from the newsgroup and can't be bothered reading the long article, here's a summary of my recommendations.

There's quite a bit of discussion going on in the Angband newsgroup about the rebalancing of items, in particular focusing on the role, or lack of role, for the minor healing potions like Cure Light Wounds. Within the game, this particular potion is almost never used, and is in fact almost immediately superseded by Cure Critical Wounds (CCW) potions purchased from the shop. Angband, as I've discussed previously, is a game focused on good inventory management, where each inventory slot is a valuable resource, and Eddie Grove makes the good point that any item that is superseded by a better item is going to be less than worthless when the better item puts in an appearance. Angband does this frequently to the point where the acronym tmj gets used on a regular basis to discuss this phenomenon (literally too much junk).

Firstly, a brief history. 'Cure Light Wounds' is a rpg trope that comes direct from the 1st level Dungeons & Dragons spell. In fact, as a spell, 'Cure Light Wounds' gets used all the time. Its a perfect low level healer for fast recovery in a tight spot by a priest or mage who needs to escape low level monsters. As a spell, it doesn't have the same issues that an item has. Spell book items hold multiple spells and the lower cost spells can be more mana efficient per hit point recovered, which gives a nice mana / time trade off which ensures that the the 'light' version of the spell remains useful even with Cure Serious and Cure Critical just around the corner.

However, as a potion, its not at all useful. While better potions are available from the shops, money is (rarely) an important enough a resource to require a significant trade off, so its invariably better buying a CCW potion than a CLW one. And CCW recovers a whole lot of 'status' effects, like cuts, poison, confusion (the real killer) and so on, that ensure that CCW is almost always carried deeper in the dungeon as well. Andrew Sidwell has tried to improve the usefulness of CLW potions by ensuring that they always heal a percentage of the player's hit points to ensure that they scale up and remain useful-ish, but inventory slots are so important in Angband, that its unlikely to be the case.

So, my first recommendation is eliminate cure light wounds and cure serious wound potions (and staffs), but keep the spells.

So what should be created in their place (if anything)?

To see this, its probably worth discussing the role of healing in roguelikes (and games in general). Basically, healing exists to reset the player state to a safer one. If you're in the middle of a fight, and its not going your way, you can use a healing effect to 'reset' the fight (or at least your side of it) to tip the balance in your favour. Angband is interesting, in that it contains a number of other resets that do not exist in other games. For instance, you can reset your location (Teleport Self) or the location of an enemy (Teleport Other). You can reset the layout of the dungeon in the local area (Destruction) or across the whole level (Alter Reality). And you can reset your hit points (Healing) or remove various 'status' effects as I've discussed (Curing, Restoration, some status effects for Healing and so on).

What is interesting about the Angband resets, is they are not necessarily reliable. Teleport Self can fail because other parts of the dungeon are less safe than the current one. Most of the other resets can fail because the source of the reset is unreliable. Scrolls can't be used if you are blind or confused, staffs have a failure rate that increases because of these effects, and requires a magic device check, spells are the most restrictive of all, as in addition they require drawing from a shared pool of mana.

But healing potions are (almost) always reliable. There is no status effect that prevents you from using a potion and they are light, so that you can carry multiple potions at the same time, which statistically ensures that if you are hit by the attack that can destroy them (frost), some will survive the attack.

I say almost reliable, because it is possible to end up in a situation where you have the most powerful healing potion (Life), use it, and then die the following turn because you are in a position to receive more damage than your maximum hit points. Which is why maximum hit points is such an important factor overall in Angband.

So, to provide a wider variety of healing potions, which do not supersede each other, is to provide a wider variety of resets, which do not supersede each other, without unbalancing the central (deliberate) design weakness of healing potions vs other items (e.g. don't create potions of teleportation for instance).

Andrew Sidwell is working on this already: he's added various magical mushrooms that cover combinations of status effect resets, that potions do not cover.

But status reset combinations are boring, and not necessarily easy to distinguish one from the other (which of Mending and Curing cures confusion: you can't tell from the name).

So what other (interesting) resets can we do?

Firstly, there's a reset that the game doesn't do, which I find a little surprising: healing 100% health, but no status effects. There's a precedent for the potion of Restore Mana, which restores 100% of mana, so my next recommendation is to create a potion of Restore Health, which cures 100% of hit points, but nothing else.

Now where in the dungeon should it be positioned? Restore Health is great because it scales 100% with the character's hit points. We could put Restore Health potions on level 1, because they're useful there, without being unbalancing. We already have a precedent with potions of Speed, which are useful throughout the game and appear throughout the dungeon. But Restore Health might be a little unbalancing being collectable so early, because its a great end game item. So I suggest putting it between Cure Critical Wounds, and Healing. Maybe at the same level as Restore Mana?

Note that because Restore Health doesn't cure any status effects, there'll definitely be times where CCW or Healing is a better choice. But because these effects don't restore 100% of the player's health, Restore Health remains a useful alternative (I'll talk about high level healing potions later).

So what other resets might be interesting?

Well, for a warrior, its actually a case of 'what's uninteresting'. A warrior doesn't rely on status resets as much as a mage or priest, because they don't use spells, and tend not to use magical items, because of their poor magic device skill. But they have really high hit points, so anything that cures a percentage of hit points will be more useful for them. Conveniently for this argument, there's already a couple of warrior-like potions with minor healing effects: Heroism and Berserk Strength. My next recommendation is to make these two potions do a percentage heal (20% and 30% respectively). That will make them heaps more useful for warriors, to the point where a warrior may consider not carrying CCW or Healing ahead of these.

There's also a couple of scenarios where a status effect reset is not that useful. The first one is paralysis. Paralysis prevents you from acting, which prevents you from using anything to cure it. But a potion of Free Action which prevent paralysis and magical slowing for a timed period and cures the slowness status is a good idea.

The second one is Cure Confusion, when surrounded by monsters that cause confusion by melee attack. This is the primary reason for carrying CCW. However, you can easily end up with a confusion-lock, where you heal the confusion, then get confused next round, then heal the confusion, etc. So instead of making the player carry hundreds of CCW potions, howabout having a potion that cures confusion, and does a timed resist confusion to allow the player to use an escape. Throw in resist hallucination or chaos for free as they are 'related' attacks.

Note, I could argue the same for resist blindness, resist stun etc. But I won't. Stun is a cumulative attack, so the player can't get 'locked on the first turn', unless they are unlucky. And if they get locked, they won't have the opportunity to use a potion anyway, so there's no point using it. With resist blindness, I think Andrew Sidwell has done something really smart. He's done a cure blindess & telepathy combined effect in a mushroom. So if you're fighting a monster that blinds you, you can eat the mushroom, and then telepathically see where the monster is if it continues to blind you. Good for warriors and magic device users. Bad for spell casters. Boo hoo. They should be carrying CCW (and it has a nasty weakness against melee blinding monsters with empty minds, which is good as well).

My next suggestion is a potion of Regeneration, which massively increases your healing and mana recovery speed for a timed period (plus heal cuts and stun faster). This is for several reasons: firstly, it'd be useful to have a low-level healing replacement for Cure Light Wounds, for those lucky recovery finds in the dungeon. Secondly, these low level healing magics tend to be macro'ed and used repeatedly to recover while engaging (or just out of sight of) a dangerous enemy. So Regeneration could be something useful during a fight to give you a little extra buffer zone.

Finally, I'd like to go back and see what we've achieved, and make a suggestion that evokes some of Angband's history from the original rogue.

I've eliminated 2 potions, improved 2 for warriors and added 4 (Restore Health, Free Action, Resist Confusion/Chaos and Regeneration). There are now 7 'healing' potions 'balanced' against each other a little better: CCW, Heroism, Berserk Strength, Restore Health, Free Action, Resist Confusion/Chaos and Regeneration, plus the various other restore status effect items that Andrew has designed.

And there are 3 that are still horribly unbalanced: Healing, *Healing* and Life.

Remember I said that there shouldn't be any potion that supersedes any other. Well, I'll make a consession. There should be 1 blanket, reset everything potion, and Life is perfect for that. I'm not so enamoured about *Healing* though, and I think it should be dropped. If you want hit points, go with Restore Health. If you want status recovery, go with CCW. If you want a mix... and that's where I'll be a little cheeky. My next suggestion (which I didn't put in the summary because its too controversial), is that Healing and CCW should be differentiated from each other, so that one is not better than the other. I'll suggest that CCW should be focused on status effects, and Healing should be focused on hit points. 300 hit points, plus complete recovery of Cuts, Stun and Poison feels about right for Healing. CCW is about right at the moment (it adds Cure Confusion and Cure Blindness, but cures less hit points). So making Healing slightly weaker and dropping *Healing* completely is my next suggestion.

Now imagine a hypothetical character, who is tossing up between Life potions and anything else for the final fight. How do we make this choice tough for them?

Howabout by learning a little roguelike history.

In the original Rogue, healing potions had a second function, when you had maximum hit points. In this instance, drinking a healing potion would actually increase your hit points by a small amount. Its not something I advocate doing for every healing potion, because buying hit points from the shop feels like a dumb game-balance idea.

But Life potions are sufficiently deep and rare and damn useful. So I'll suggest giving the player a tough choice when he finds them. Make potions of Life, when used when the character is at maximum hit points, reroll the character's life total, and use the new values, if they are higher than the current character's life total. That means the trade off is between guaranteed recovery, and a gamble on getting those precious maximum hit points increased.

And that's the kind of decision, as a game-designer, I like.


dagitj said...

Allowing you to get max hit points seems fair to me. Especially considering that you can max your int and then have max mana that way.

I also like the idea of adding regeneration effects. This would also help make big fights feel less cheap and tedious. The one time I faced Morgoth (and lost), I spent most turns spamming teleport other and drinking healing potions.

Actually, World of Warcraft gives me a bit of inspiration here. In that game a shaman can lay down totems that do area of effect healing or regeneration (and lots of other effects). Spells or items which are anchored but change the rules within their area could add interesting new strategies to Angband.

zireael07 said...

'Critical Critical' in the beginning of the article should be 'cure critical' :)