Why difficulty? In many games, the player is sucked in by the challenge of making it through the game. The sense of accomplishment that can be derived from actually solving a difficult problem has a serious short-term consequence: it increases the player's confidence, pushing him to continue through the game, or to persist if he fails a few times. But difficulty is a double-edged knife, because if it is not controlled correctly by the designer, it may destroy the player's motivation because the game is too hard, or lose his interest because the game is too hard. Pleasing the player obviously goes through taming the difficulty.
Anyone in the gaming world is more or less familiar with platform games: those games that present the player with a world to explore with an emphasis on movement (such as jumping from platform to platform) rather than the killing of enemies. Some of these games insist on the brain-teasing dimension of their gameplay (such as Oddworld games) while others insist on the dexterity required to artfully dodge the traps, reach the ledges, and make it through the world unharmed (for instance, Crash Bandicoot).
In the former case, the difficulty consists in finding a solution to the puzzles in the game, rather than actually solving them. Once the player figures out what to do, he is usually able to move past the obstacle without problems. In dexterity-based platform games, on the other hand, the solution is usually close at hand, and the difficulty is that of actually implementing the easy solution: a series of well-timed jumps over gaps, traps, pits, and other devious mechanisms. There are, of course, rules that difficulty follows when emerging from such simple construction bricks. And this article is meant to cover these rules.
The typical platform game can be divided in areas, each having its own way of behaving and interacting with the player. Some are neutral ground: nothing happens while you are standing there, so you might as well go and fetch some beer in the fridge without even pausing the game. Others, however, can be as dangerous as killing you instantly when you enter them and returning you to your latest checkpoint or saved game. From a gameplay and programming point of view, these areas are better represented by their behaviour and interaction. From the player's point of view, these areas must be recognizable. Which brings forth our…
There is absolutely no point in surprising the player: if the player does not now how a particular thing reacts, he may either trigger it, which can be frustrating, or avoid it unknowingly - no satisfaction taken in the deed. That's an all-lose situation for the designer, because he cannot amuse the player by doing so. All features should be introduced to the player before being actually used to create difficulty. This introduction can be done in a few ways: some features are simply obvious about the way they function, because the way they are represented in the game strikes a chord in the player's mind that somehow relates it to its behaviour. Some others, again, are not, and the only way the player can actually see what their purpose is, is by actually testing them. Avoid the player an unnecessary frustration, and make that first time easy. It is good, overall, to introduce those new features alone, and make a few variations on them so the player fully understands what they are all about, before moving on to more complex situations. We want the player to know what's expected of him: this way, before making even the first jump in a level, he knows every single way in which he can fail, and this adds to the feeling of satisfaction he gets when overcoming the obstacle. This leads naturally to…
Failure, in turn, implies the loss of something. When the loss increases, so does the overall perceived difficulty. Jumping over a pit is not hard per se, but jumping over a pit knowing that you encountered no checkpoints for an hour or so, makes the whole thing a harder. The loss comes in three flavours:
Difficulty does not only depend on the amount lost by the player should he fail: it also depends on the chances of failure to happen.
Now, what are the actual tools to make the player fail? Each obstacle has two aspects: the triggering method, and the reason. The reason is all about the design and the player: we can't simply tell him "ok, you triggered this obstacle, so you lose one life and move back to the beginning", he has to understand by himself why: the ground falls, a mine explodes, a rock falls, or something similar, which provides the "reason" the character had to die like that. This leads back to our first rule: if the player understands what happened, he won't fall for it again…or will die trying. There are various triggering methods. Some are player-dependent, some are not. Some are dynamic, some are not. I like to put them in a handful categories:
Once these three tools are available, one should wonder how to combine them into devious traps.