A constant game design concern of mine is how to mediate the game difficulty for the player. This is no small problem when it is examined closely, as players have wildly different needs in this regard, and the many dimensions of play in a typical game do not actually lend themselves to decomposition - and even if you can break down the elements of play into multiple dimensions, can the player work out how to configure the game to their tastes? And ultimately, can a game be set up to configure itself to the player automatically?
To begin with, let's look at the classic static solution to game difficulty - giving the player a choice between Easy, Normal and Hard. This approach is better than nothing, but it has insurmountable problems. How does the player, who has never played your game before, determine which difficulty level is right for them? One can argue that they can always start playing on one difficulty level and change it if it's wrong - but that could be several hours down the line. If they're playing on the wrong difficulty level, the game may not be fun for them - it's just as likely that they'll give up the game in frustration or boredom as consider changing the difficulty level.
Let me give a concrete example. My wife and I play a lot of games together, and we're not usually in it for the challenge, so we frequently play on Easy. Playing Resident Evil Zero, however, we started on Easy, but this was significantly below our level of challenge. The big problem here was that on Easy you are given plenty of ammo and heals - all of which you feel somewhat compelled to store. You have to drop objects on the floor in this game, and by a third of the way into the game we were just overloaded with kit - we couldn't store it all easily. Furthermore, we didn't feel under pressure - and in a survival-horror game you always want at least the illusion that you are under pressure. So we started again on Normal. It's easy to see how the reverse situation could occur - starting on Normal and then needing to start again on Easy because the game is too hard.
Some games attempt to solve the problem of the player's lack of knowledge about how the game will play by starting the player out in Normal and then offering them the chance to switch to Easy, as happens with Devil May Cry. In my opinion, this is an awful solution. Not only is there a good chance of the player feeling patronised by being offered the lower difficulty in this way, but in this particular case much of the actual gameplay is removed in the Easy setting. The player is left feeling coddled and unsatisfied. I for one gave up at this point, and I know I'm not alone.
Some people believe that dynamic difficulty is the solution to this problem. I used to believe this, but I've lost my faith. There are certain problems with dynamic difficulty that may be impossible to resolve. The premise of dynamic difficulty is that you have some rubric for determining whether the player is struggling, or succeeding too easily. This information is then used to adjust the difficulty of the game to where it should be for that player. Sounds great... except we have no way of knowing where the player actually wants the difficulty to be.
Let's consider this in terms of Csikszentmihalyi's model of Flow. In brief, we have the players skills on one axis, and the degree of challenge on the other axis. The flow channel occurs around the space where the player's skills and the degree of challenge are in step (A1, A4). If the players skills completely outstrip the degree of challenge, the player will (according to the model of Flow) become bored (A2). If the challenges utterly exceed the player's ability, they will suffer anxiety (read: frustration) and stop playing (A3).
So, you might think that this is greatly in support of dynamic difficulty - just keep the player in their flow channel. If your test for the player's performance is accurate, this might work. Hypothetically, you could use an Eyetoy or similar device to monitor the player's facial expressions and detect frustration or boredom this way too. But there's a problem which we can't solve in this way.
Different players appear to enjoy being in different parts of the flow channel:
- Near the top of the flow channel, the player is at the limit of their abilities... the player is frequently frustrated, but conversely the reward in fiero (triumph over adversity) when they do succeed are correspondingly higher. In terms of the DGD1 model, we consider such players to fit the Type 1 Conqueror archetype (Hard Fun in Nicole Lazarro's model).
- Near the middle of the flow channel, the player is comfortably within their abilities. The player is neither frustrated nor bored; they continue to succeed, but do not receive much of a payoff of fiero. (One could argue this fits the Type 2 Manager archetype, although I'd be inclined to say it is the part of the flow channel from the middle to the top which better describes the typical range suited to such a player).
- Near the bottom of the flow channel, the player is completely in control. They do not face frustration very often, although they may risk boredom. Such a player is meeting a minimum degree of resistance, which we associate with the Type 3 Wanderer archetype. (Easy Fun in Nicole Lazarro's model).
Hopefully, the problem is now apparent: you cannot adjust difficulty dynamically with any accuracy if you do not know where in the flow channel the player wishes to be. If you adjust difficulty to keep the player in the centre of the flow channel, players fitting the Type 1 Conqueror archetype will be denied some of the fiero they seek - and potentially annoyed that the game has made itself easier for them. Conversely, the player fitting the Type 3 Wanderer archetype may be denied some of the easy play they seek - and potentially annoyed that the game has made itself harder for them.
Kung Fu Chaos ran into the former problem. When the player failed it's tasks, it made itself easier. Great for Wanderer-style players, lousy for Conqueror-style players. Indeed, many people complained that the game was "too easy", and since a lot of vocal Hardcore players appear to prefer Conqueror type play, the game lacked the Hardcore word-of-mouth support arguably required to drive sales. The team worked very hard to get their dynamic difficulty working, but ultimately I believe it hurt them more than it helped them, as their system factored out fiero - and fiero-seeking players generally need to be supported for a game to succeed in the market place.
I believe this sort of issue was why Capcom experimented with the Mountain Climbing (i.e. fiero seeking) versus Hiking (i.e. experience seeking) decision at the start of the Resident Evil remake. They only did it this once - I'm guessing that market research told them that it confused some players. I still think this approach has some merit, so I'd like to know what dissuaded Capcom from using it again in future titles.
Many arcade racing games already include dynamic difficulty in the form of adaptive handicapping, which changes the velocity or acceleration parameters of computer controlled cars according to how the player is doing. Some call this "cheaty AI". It creates all sorts of problems. Firstly, the optimal strategy in such a game is often to race very poorly, in order to maximally handicap the opposition, then rush to victory at the end. Fiero-seekers are naturally unhappy with this. Secondly, if the player has an outstanding run and performs excellently (beyond their usual performance), rather than enjoying the sense of domination at having left the other racers in their dust, the opposition is still hot on the heels. This is what ultimately made me lose interest in Burnout 2. If I race better than I've ever raced before, I expect to win - not to be pipped at the post by the suddenly dramatically improved opposition.
I no longer believe that dynamic difficulty is a viable solution - at least, not on its own. We need to know where on the flow channel the player wants to be, for a start (which is a very difficult piece of information for a game to glean). But even this may not be enough - as even fiero-seeking players like the occasional experience of totally dominating the opposition every once in a while.
As if the problem wasn't complicated enough, game difficulty is in reality composed of many different dimensions. We see this clearly with Silent Hill 2, which offered the player a choice of Action Difficulty (affecting the fighting) and Puzzle Difficulty (affecting the degree of information supplied to help with riddles). Nice idea - but with players uncertain how to adjust a single difficulty parameter, what hope is there of them controlling multiple parameters?
I am hoping that our research for DGD2 might show up some patterns which could be useful. If, for instance, there are common patterns of skill sets (such as the Strategic, Logistical, Tactical and Diplomatic skill sets suggested by Temperament Theory) these might become four dimensions of difficulty/game parameters: Puzzle Difficulty, Repetition Tolerance, Action Difficulty, Degree of Conflict, say. But even then, the issue of how to read the player's needs is troublesome.
It's not that I don't think that there are solutions, it is rather that I think we are so dramatically short of the knowledge we need in order to devise appropriate solutions to the problem of dynamic difficulty that for the time being we might do better to explore other approaches.