[In Ernest Adams' latest Gamasutra column, he digs into difficulty levels in games, interestingly suggesting that player-set difficulty can, in many cases, be preferable to dynamic difficulty settings.]
I just finished reading a book called Interactive Storytelling, by Andrew Glassner. While the first couple of hundred pages contain useful introductions to both storytelling and game design (for the novice, anyway), the book has some serious flaws and I can't really recommend it. But along the way, Glassner digresses into a variety of other subjects, and one of them is settable difficulty levels. He's against them. He thinks they ought to be banned.
This really pulled me up short when I read it. My opinion is exactly the opposite: settable difficulty levels should be mandatory in most game genres. In fact, I regard the lack of a difficulty setting as a Twinkie Denial Condition, except for a few kinds of games where they aren't suitable. Since I feel so strongly about this, I was especially interested in Glassner's objections to them. I'll take a look at, and respond to, his points before I go on to talk about his preferred alternative, dynamic difficulty adjustment (also known as adaptive difficulty).
These are Glassner's complaints about settable difficulty levels.
The player has to decide too early. Games usually ask the player to choose a difficulty level right at the beginning, and at that point the player doesn't actually know how hard the game is going to be because he hasn't played it yet.
My response: This isn't really an argument against difficulty settings. A game could easily give the player an optional training level at medium difficulty, and then allow the player to decide if he wants the rest of the game to be easier, harder, or about the same. But even without that, many players can make an educated guess about how well they'll play based on their experience playing similar games (I know I'm lousy at platformers), or they may choose a difficulty setting for other reasons.
I always start every game on easy mode, because I'm very busy and I want to see as much of the game as I can in as little time as possible. On the other hand, hardcore players carrying a heavy testosterone load routinely put every game on its hardest setting; that's how you get bragging rights.
The options are too coarse. What if medium mode is too easy, but hard mode is too hard? The categories are too widely spaced.
My response: There's no reason that player-settable difficulty has to be limited to three or four options; it can be a slider. Actually, any well-designed game varies its pacing so that regardless of its difficulty setting, it has easy periods and hard periods. Even arcade games give the player a breather now and then.
The difficulty setting isn't intended to determine the difficulty of every single challenge, only the maxima and minima at any given point in the game. I don't feel this is sufficient reason for banning them. I do have one requirement, though: easy mode is supposed to be easy. So easy you can win the game by pounding the keyboard with your forehead while rolling the mouse with your elbow. If it's not, the designer has somehow failed to understand the meaning of "easy."
They're too broad, by which Glassner means that the difficulty settings apply generally across all the different types of challenges in a game, and a player might be good at one kind, such as shooting, but not at another such as driving. Which setting should he choose?
My response:This is definitely Glassner's strongest point, and one that merits serious consideration. First, his objection doesn't necessarily apply to all genres. Many games concentrate on a small number of challenge types -- Tetris, for example. In racing, the key challenge is driving safely and efficiently, and little else is asked of the player. On the other hand, in a complex game like Civilization, the difficulty setting is not associated with any particular challenge, but applies in a general way across the whole game. Your opponents are just smarter, meaner, richer, and faster than you are. In these types of games, the fact that a difficulty setting is broad doesn't hurt anything.
That leaves games with separate heterogeneous challenges. Platformers and third-person shooters provide the most obvious examples. I'm OK at shooting, but when it comes to gymnastic moves like jumping chasms or swinging on ropes, I'm hopeless. So how do we deal with that? Well, for one thing, we can obviously offer different settings for different types of challenges. Weird Worlds: Return to Infinite Space includes two sets of difficulty settings, one for its strategic gameplay mode (traveling around the galaxy) and one for tactical play (starship combat).
But even if we don't want to go to that trouble, I believe a player chooses a difficulty level primarily in order to set the maximum difficulty he will experience across all challenges. When I choose easy mode, I need to know that everything in the game will be easy, that nothing will be harder than a certain maximum. Likewise, players don't expect that all challenges at a given setting will be equally difficult. Nightmare mode doesn't guarantee that everything will be a nightmare, and in fact shooter players would object strenuously if they found that nightmare mode meant they had to hobble around on a cane and take ten seconds to reload.
In short, Glassner's right that we can't guarantee that all the challenges at a given difficulty setting will be similarly difficult for all players. But I don't think the players expect that.
They're too persistent, i.e. a difficulty setting doesn't adjust to the player's rate of improving skill, especially if he's not allowed to change the setting later. The difficulty growth curve, at whatever setting, may prove to be too steep or too shallow for the player.
My response: This is undoubtedly a weakness of all games that don't do dynamic difficulty adjustment, but it's not actually an argument against settable difficulty levels. Settable levels don't create this problem; they help ease it little. Easy mode typically provides a very slow rate of growth in perceived difficulty, while hard mode provides a rapid one (sometimes described as a "steep learning curve"). Players know this and choose accordingly. It's true that the difficulty doesn't adjust itself on the fly, but it's better than nothing.
They're too general, which is another way of restating the "too broad" objection. Glassner points out that many games introduce new player-actions as play goes on, which require new skills. The player may be better at some of them than at others. Because the player doesn't know what skills he will be asked to learn, he may regret his choice of difficulty level when a new action is introduced.
My response: Again, I feel that players mostly want a rough idea of the maximum difficulty they will encounter, not a guarantee that all challenges will be equally difficult. And frankly, this is why we have reviews and strategy guides. If you want to know what will be expected of you at some future point in the game ("Watch out, in level five you'll have to fly a helicopter") there are ways of finding it out.
In short, while some of these objections deserve attention -- and their effects should be ameliorated when possible -- I think that demanding that difficulty levels be "banned" from all games is throwing the baby out with the bathwater.
More importantly, Glassner's objections ignore the most important rule of game design of all: empathize with the player, i.e. provide what he wants. Players want settable difficulty levels, and removing them for purely theoretical reasons is not a good way to serve your audience.
Glassner concludes his discussion by saying, "Games should not ask players to select a difficulty level. Games should adapt themselves during gameplay to offer the player a consistent degree of challenge based on his changing abilities at different tasks." In other words, they should do dynamic difficulty adjustment, which I'll call DDA from now on.
(Because DDA is also called adaptive difficulty, it sometimes gets confused with adaptive artificial intelligence. Adaptive AI is one way of doing DDA, but it's much too complicated a subject for this column.)
DDA has been around for ages. The earliest example I can find is in the 1981 Intellivision game Astrosmash, a clone of the Atari classic Asteroids. Astrosmash got harder and harder in typical arcade style, but it also noticed when you were running out of lives and got easier again for a while. Even beginners could play for quite a long time, which made it hugely popular. Because it wasn't a coin-op game, the designers had no motive to kill the player off quickly.
I like the idea of dynamic difficulty adjustment in principle, because it appeals to me as a programmer. It would be very cool to code a game that was smart enough to adjust its challenges to the player's abilities, so as to guarantee him a good time. But despite Glassner's confidence in DDA, I also recognize that it's not necessarily easy to do.
Let's take a look at some of the problems with DDA:
Some players hate it. This is the number one reason to think twice about implementing DDA, especially if it can't be switched off. Many players feel patronized when they discover that a game is going easy on them when get into trouble, and they don't want the difficulty level to change at all. For them, playing, and beating, a very difficult game is where the fun is, even if it means dying 500 times on the way to eventual success.
Players can learn to exploit DDA by pretending to be worse than they are. It's a bit like hustling pool; you sucker your opponent into thinking you're a novice, then wipe the floor with him when his money's on the table. This is one of the most frequently cited objections to DDA among players and commercial designers. Personally, I don't have a serious problem with this because I don't have an emotional investment in making things hard for my players; but they're right that it warps the game, and can make it actively unfair in multiplayer situations.
DDA doesn't work for all kinds of challenges. If the challenges in a game are based on numeric entities -- health points, money, speed and so on -- then it's fairly easy to dynamically adjust these values to change the difficulty of a challenge. But what about symbolic entities? Most puzzles are just as hard as they were designed to be, and it's not easy to change them on the fly. If I have to figure out the correct sequence of switches to open the door to the treasure room, it would take a heck of a lot of extra code provide multiple different solutions to the same puzzle -- and every other puzzle in the game -- depending on how good the player is at puzzles.
Lateral-thinking challenges, such as the rubber-tire-plus-cactus-equals-slingshot puzzle in one of the Monkey Island games, can only have one correct solution; there's no way to make the puzzle easier except by removing it entirely. This objection applies to manual difficulty settings as well, which is why adventure games seldom have such settings; but it shows why DDA is not the universal solution to the problem of setting game difficulty.
DDA can create absurdities. In some car racing games, if you crash your car, the game slows down the other drivers so as to give you a chance to catch up. Then there's the notorious rubber-band effect: if you get too far ahead your opponents always catch up, and if you get too far behind, they always slow down. It feels as if your car and theirs are connected by rubber bands. This is absurd and players know it. That kind of thing is OK for a lightweight game like Beetle Adventure Racing, but it's out of the question for serious racing sims. A DDA mechanism must operate in a way that is logically and emotionally consistent with the game world.
DDA ruins pacing and obviates good level design. A hypothetically perfect DDA system that always kept all challenges at the same level of perceived difficulty would ruin the pacing of the game. It would be like listening to a Beethoven symphony in which every note is played at exactly the same volume, or walking around an art museum wearing colored sunglasses. A well-designed level, with its varying emotional tones, is a work of art in its own right, and it deserves to be appreciated as such.
I'm not actually opposed to DDA in all circumstances; as with almost everything in game design, it has its strengths and weaknesses. I think it's a great idea for simple, abstract casual games like the aforementioned Astrosmash, but the more heterogeneous a game's challenges are, the more difficult it is to create a DDA system that covers them all.
Any DDA system needs a performance-evaluation mechanism and an adjustment mechanism for each type of challenge that it will work on. The performance-evaluation mechanism determines how successful the player is at overcoming a particular type of challenge, and the adjustment mechanism makes the challenge easier or harder, usually by changing parameters that define the challenge (such as the strength of an enemy).
In Astrosmash, the performance evaluation was very simple: it looked at the number of lives remaining. You can easily do something similar with health points, money, or whatever other resource is critical to survival. Robin Hunicke has done some nice practical research on the subject using a Half-Life mod; see her paper "The Case for Dynamic Difficulty Adjustment in Games." (You'll have to create a free ACM account to download the PDF.)
If you're definitely going to use DDA, consider the following suggestions:
Make the game harder by beefing up the opposition, not by weakening the player. Players rightly feel that any power they have, they earned. Never arbitrarily take something away from a player; if they lose something they've gained, there has to be a reason for it. It's OK to make the AI more lucky, but not OK to make the player less lucky. If he's doing well and then suddenly finds that his sniper rifle no longer shoots straight, he's going to hate you.
Make it optional, as in Lego Star Wars II. That way the players who don't like it can turn it off. Lego Star Wars II actually offered both DDA and settable difficulty levels, but not everyone can afford to put in that much development work.
Make it subtle. I can't emphasize this enough. The same monsters that were easy to beat in level one should not suddenly be tough as nails in level two -- or vice versa. Big changes spoil the player's immersion and create inappropriate spikes or troughs in the perceived-difficulty curve. If at all possible, adjust the difficulty of the game through frequent small changes rather than one large one, so the player doesn't notice it happening.
Keep the details secret. Don't let your players find out exactly what performance-evaluation mechanism you're using, nor what the game will do to make things easier. Without this knowledge the players can't exploit the system so easily.
DDA is difficult to implement, complicates tuning, and your player may not want it at all. Think long and hard before you commit yourself to it.