Wednesday, August 25, 2010

Tension, Exploration and IF

I stated in my previous post on NetHack that the game mechanic in Rogue-likes where dying is final, and loses you your character, is a great mechanic to make combat tense. I also stated that part of the fun of the game is to explore the game, learn how everything works, slowly identify all items, and so on.

These two things are partly opposed. The greater the tension, the greater the temptation to look up what every monster, item and dungeon feature does before you interact with it. This opposition can be resolved, or at least lessened, in three ways:
  1. By making the game less deadly, we make exploration more viable.
  2. By randomising that which needs to be explored, we make it impossible to spoil it.
  3. We accept that part of the exploration is done through reading the internet rather than through playing the game.
NetHack chooses the latter two options. The game is quite deadly, and unless you are willing to spend years with it, out-of-game exploration is necessary. But not everything can be explored out-of-game: descriptions of scrolls, potions, and so on, are randomised and they must be re-identified every game.

However, if we wish to implement the combination of deadliness and exploration in interactive fiction, this solution seems to me largely impossible. At least, it becomes largely impossible if we want to tap into that most venerable of IF game elements: puzzles. Puzzles are one of the things IF is really good at, since you can use them to reward the kind of out-of-the-box thinking that can most forcefully be expressed in a game with a parser. Why use IF if you're not going to use its unique abilities to describe anything at all and have the player interact with it in any way she and the author can both imagine? Puzzles can either coexist with tactical combat, by allowing you to win a combat outright if you solve them; or, more interestingly, be integrated with tactical combat, by giving you advantages that you might not otherwise have. For instance, the gnomish inventor might be a lot easier to defeat once you have figured out how to short-circuit his lightning machine.

But here is the problem with puzzles: spoiling them, well, spoils them. Really spoils them. NetHack is still fun with the NetHack wiki at your fingertips; Anchorhead is not much fun if you're constantly looking things up in the walkthrough. So it seems that strategy 3 above is not available to us.

But strategy 2 is problematic as well, since puzzles cannot be randomised in meaningful ways -- at least not puzzles that are worth solving.

So it seems that to lessen the opposition between deadliness and exploration, we must tone down the deadliness. The player must be able to explore the world, and try out different solutions to puzzles, without having a high probability to permanently die. Exploration must be rewarded far more often than it is punished. There are several ways to do this:
  1. The classical solution is to use the save/restore cycle, or its shortcut, the undo-command. You try out some moves, lock yourself out of victory, go back to a previous situation. It solves the problem, but at the cost of almost completely deflating the tension.
  2. Lessen the penalty for failure. Instead of your character dying and being gone, you (a) lose gold, experience, what-have-you, and/or (b) are revived at some distance of the place where you died. You have to strike a fine balance here, because of the penalty is too great, exploration is still discouraged; if it is too small, tension is still deflated. And there is the nagging suspicion that that the "too great" and the "too small" category overlap...
  3. You can make exploration relatively safe while keeping combat dangerous. There are multiple techniques that will achieve this, but it all depends on what kinds of thing you want the player to explore. For instance, you could have the puzzles in rooms without monsters, or in rooms from which the monsters can be first lured away or killed -- but this will not work for puzzles that ought to interact with combat, and it will not allow the player to safely "explore" the special abilities of the monsters. You could have a special mode in which the monsters are passive and invulnerable but the world can be explored -- something like a time stop, or a character who can walk in spirit form, or whatever. Not all puzzles could be easily fitted into this framework, though.
Ideally, then, we would have something of the third category but without the drawbacks of the specific options mentioned there. The best option I can think of right now is this: make combat so that the player will always be able to survive the first several rounds of it, will not be able to kill tough opponents in that time (at least not without using strictly limited resources), but will be able to retreat if things do not go as hoped. This boils down to having a retreat option that is safe as long as you are not in big trouble, and have it take a couple of successful attacks of your enemies before you are in big trouble. This way, you can attempt whatever you wanted to attempt, see that things are going wrong, and retreat before it is too late. I am assuming that you can get back to full strength outside of combat.

All right, but doesn't this deflate the tension as well? No, provided that you need to take risks in order to prevail in combat. If the monster cannot kill you in four turns, but you cannot kill the monster in four turns either, and if the monster heals as quickly as you once you have retreated, then you cannot defeat the monster without running risks. You must at some point fight a more extended battle if you ever want to be victorious.

Let's give an example using a toy combat system that is like ATTACK in one crucial respect: combat becomes deadlier when it goes on for longer. Here is how our toy system works: when you attack, you have a 50% chance of hitting if you are the player, a 40% of hitting if you are the monster. Player and monster both have 20 health. The first hit of the combat deals 1 damage, the second deals 2 damage, and in general the nth hit deals n damage. Finally, when you retreat your enemy gets to make a single attack you which deals double damage if it hits.

In this system, as long as your health is greater than 2 * n, you can retreat without risk. This means that if the player does not attack, she will generally be able to explore for some 7 turns, and still be able to retreat in complete safety. But what if he wants to defeat the monster? Let us take the ideal scenario where the player has delivered the first 5 strikes, dealing a total of 15 damage. Even at this ideal point, the player is no longer safe. If the monster hits now, the player will lose 6 life, and can no longer safely retreat (since 6 + 2 * 7 = 20). Thus, it is impossible in this toy system to kill this monster without running any risks.

ATTACK doesn't quite work that way, but it is certainly possible to implement a good risk/reward-cycle with it. (Remind me to rethink the tension mechanic; this toy example has given me some new ideas.)
So the basic idea is: give the player some time to explore, and to flee if he doesn't like what he sees, but make sure that winning a tough fight requires a commitment to risk. This will give you the best of both worlds.

No comments:

Post a Comment