Difficulty in Dexterity-Based Platform Games
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...
[indent] Rule #1: surprise is not difficulty.
[/indent] 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...
[indent] Rule #2: difficulty implies possible and probable failure.
[/indent] 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:
[list] [*]No loss: for instance, trying to jump up on a platform. If the player fails such a move, he can try again very fast. [*]Simple loss: for instance, climbing up a ladder, then another ladder, then jumping on a platform. If the player fails the last move, he falls back down. He has lost the time, and the work, to climb both ladders. [*]Increasing loss: this acts like simple loss, but the amount lost depends on the number of attempts. This is usually implemented using lives and continues. The player resurrects on a checkpoint until he loses all his lives, at which point he spends a "continue", and must start over again at the beginning of the level. If he loses all "continues" he must start from the beginning of the game. [/list] 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.
[indent] Implementing Failure
[/indent] 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:
[indent] [list] [*]The pit. It does not move, does not change, and does not react. It kills players by mere contact. The only way to go past is by avoiding it (jumping over it, dodging it, finding an alternate route). They simply never turn off, and expect the player to walk on them. Pits are the easiest to dodge by the player, because they are completely and easily predictable. Examples: pits, lava lakes, deep water, acid, electrified floor, red-hot steamy pipes, giant fans...
[img]http://images.gamedev.net/features/design/platformdiff/Pit2.JPG[/img] [img]http://images.gamedev.net/features/design/platformdiff/Pit1.JPG[/img] Shinobi 3
this waterfall marks the spot as a dangerous place to go down Sonic The Hedgehog 2
the dreaded spikes claim yet another victim Presenting the pits: this is hard, because the player cannot actually try the feature - his character will die doing so. Therefore, pits should be obvious as to their hostility: long falls, squishing, poison, radioactivity, heat, electricity, sharpness, spikes - why not even a "danger" sign? [*]The pendulum. It keeps moving constantly and with regularity, but seems unaffected by the presence of the player. This means that the areas concerned are sometimes safe, sometimes dangerous, and they switch with clockwork regularity. Examples: razor-sharp pendulums, underfoot lava geysers, fish jumping out of the water, sudden steam bursts, platforms going in and out of a wall above a pit.
[img]http://images.gamedev.net/features/design/platformdiff/Pendulum1.gif[/img] [img]http://images.gamedev.net/features/design/platformdiff/Pendulum2.JPG[/img] Sonic The Hedgehog
deadly fireballs are jumping out of the lava with regularity Crash Bandicoot
menacing stones roll in the jungle, squishing unwary bandicoots Presenting a pendulum: this is made easier by the pendulum's constant movement. This presentation can be achieved by either insisting on the danger of a certain stance of the area, or the safety of the other stance. One could insist on the danger of the area when a fireball bursts, or a laser beam appears, or on the safety of the area when a stepping stone emerges from the cold water. [*]The unstable floor. It seems innocuous at first glance, because it does absolutely nothing. It does, however, react to the player in various ways, and although it can be stepped on for a few moments, it soon becomes hostile and kills the player. It is a good idea to allow this trap to reset itself. This way, if the player jumped back when it triggered, he may be able do start again soon. Examples: platforms that fall when stepped on, floor tiles that trigger traps, carnivorous plants.
[img]http://images.gamedev.net/features/design/platformdiff/Unstable.JPG[/img] [img]http://images.gamedev.net/features/design/platformdiff/Unstable2.JPG[/img] Crash Bandicoot
this floating brick will soon dive into the water Sonic the Hedgehog
as soon as you step on these islands, they start burning Presenting unstable floors: the first occurence of these areas should be encountered alone, as usual. There should be hints to the player, concerning the unstability or unusualness of the situation. The player must be wary the first time he steps on these areas. A brutal change once the player triggers the area should hint of the impending danger, and give the player the good idea to jump back. [/list] [/indent] Once these three tools are available, one should wonder how to combine them into devious traps.
[b]Increasing chances of failiure[/b]
When the player needs to go around an obstacle, he usually requires some dexterity, or time to do so. If the time available decreases, two phenomena appear: first, the player does not have enough time to concentrate on the moves, and the lack of time increases his stress and he can even panic. Both lead to his early demise, which means...
[indent] Rule #3: reducing the time available to go past an obstacle increases the difficulty
Implementing this rule: the time can be reduces through inside or outside means. Outside means include a limited time scheme over the whole level (which implies the possibility of a Time Over), being followed by a boulder, being underwater, or reaching a breakable wall with the "break wall" pickup that lasts only 30 seconds. Inside means are only concerned by the obstacles themselves. Both pendulums and unstable floors reduce the time available, because the player can not stay on them too long.
Example: requiring the player to jump from platform to platform, all of them being unstable.
[img]http://images.gamedev.net/features/design/platformdiff/Water.JPG[/img] [img]http://images.gamedev.net/features/design/platformdiff/Time2.JPG[/img] Sonic the Hedgehog
underwater, you must run from bubbles to bubbles The adventures of Lomax
these evil dudes kill you if you stay still [/indent] Besides, if the player does not have the time to concentrate, neither does he have the time to rest. For each obstacle he must go past without resting, chances are his concentration will break and he will lose control. Therefore...
[indent] Rule #4: the longer a player must act without pause, the greater the difficulty
Implementing this rule: simply chain toegether many obstacles. When alone, they might be trivial, but if the player must do everything without resting for a second, chances are on the fifth he will fall down. Note that the same effect can be attained using repetitive moves such as jumping over identically-sized pits. No player is ever going to rest between the pits. However, this process is tedious and should be restricted!
Example: many pendulums, pits and unstable floors without neutral areas between them.
[/indent] Somewhat equivalent to reducing the available time, is reducing the control the player has over his character. The player will obviously need time to adapt to the new playing conditions, and will often commit deadly mistakes while he's learning. However, one should avoid the 'free control reduction' : if the player can not fail, there is no point in altering his controls. Only use this weapon when it can actually kill him.This leads us to...
[indent] Rule #5: reducing or altering the player's control increases the difficulty of any following obstacles
Implementing this rule: there are many ways of reducing the player's control, which boil down to two categories, static and dynamic alterations. Static alterations don't do anything when the player does not move, but alter his movement once he does something. These include ice patches (uncontrolled sliding), reversed controls or using a jetpack instead of walking. Dynamic alterations move the player when he does not press any key, actually forcing him to fight against the alteration. These include conveyor belts, or tilted ice patches.
Example: a patch of ice just in front of a pendulum, requiring the player to take into account the time needed to start moving.
[img]http://images.gamedev.net/features/design/platformdiff/Ice1.JPG[/img] Crash Bandicoot 2
the rolling stones are back with a vengeance [/indent] Take a small hole. You can jump over it in a dozen ways. Now, take a large hole. There's only one jump possible over it, and it must start on the very edge of it. Similarly, a slowly oscillating pendulum might give you ten seconds to go through, while a faster and harder one will only leave you a few seconds to do the same. Usually, something that requires more precision is harder. This means...
[indent] Rule #6: increasing the required precision to go past an obstacle increases the difficulty
Implementing this rule: pendulums are ideal for the timing part of this rule, while holes are great for the spatial aspect. Combining both elements, there is the moving platform, that requires the player to jump in the right place at the right moment, or he'll miss the platform. Consecutive pendulums are great for reducing the time frame available to the player to go through : you can simply achieve this by placing next to each other two pendulums with different frequency.
Example: two pendulums, one with a two second period, another one with a three second one. The resulting time frame is either one, or two seconds. And it's possible to eliminate the two seconds one using a third, six-second period pendulum.
[/indent] The human brain can analyze and predict the evolution of a repetitive system in a precise and intuitive manner. However, things become more complex when more than one system is concerned, and even more so when both systems have a different change rate. Similarly, strange change patterns, as well as long changing times prevent the brain from predicting correctly the moves. So...
[indent] Rule #7: long and complex patterns increase the difficulty
Implementing this rule: pendulums are the tool of choice, because they switch states with regularity. To achieve interesting complex patterns, combine pendulums that have a different frequency. Not only will they provide a complex pattern, but they will also reduce the time frame where the player can go through, which responds to Rule 6.
Example: a moving leaf and a carnivorous plant. The player must jump when the leaf is close to the plant, but the plant is not about to close yet.
[img]http://images.gamedev.net/features/design/platformdiff/Async.JPG[/img] Crash Bandicoot
a lot of timing required [/indent] When predicting the evolution of a system, only dynamic and independent objects are taken into account. A player can easily know when a pendulum will be passable, or when it will be dangerous. However, there can be a delay between the moment the player leaves the haven where he is, and the moment he reaches that pendulum. It is quite hard to approximate the time this takes. Therefore, even if the player can predict correctly when he can go through something, he will not know when he must start moving towards it.
[indent] Rule #8: the further the obstacle, the harder the prediction becomes, and the difficulty increases
Implementing this rule: force the player to decide when to start moving based on an obstacle that is a second or two away from him. Do the separation between the player and the pendulum using unstable floors, so the player may not get closer to the obstacle.
Example: placing a moving platform behind one that is on the verge of falling.
Of course, anyone can just use the rules. There are however some "special tricks" that can be used, which help making parts of the game harder, or increase the player's tolerance to frustration caused by failure.
The music has an unconscious effect on the player. The faster the tempo, the faster the player wants to move on. Using this trick too often will naturally spoil it. A good way to use this is through playing a slow music throughout the level, and when the player reaches the checkpoint before a critical section, start playing a faster music. The player will almost always start acting faster.
This happened a lot in Crash Bandicoot, for instance. When Crash picks up three "aku-aku" shields in a row, he becomes invulnerable and a special, fast tribal music starts playing. Although sometimes players don't even need that invulnerability to move on (it doesn't prevent you from falling into pits), they usually start moving on faster, misjump, and end up at the previous checkpoint.
[b]The "Almost there" effect[/b]
When the player needs to go through a difficult obstacle, and hasn't encountered checkpoints for a moment, he might feel miserable if he dies and needs to start over again, and even quit the game (I have seen my brother angrily turn off his Playstation many times because of this). But if he saw another checkpoint on the other side of the obstacle just before having to start over again, he'd usually come back asking for more. this is the "almost there" effect.
Besides, the sight of a new checkpoint when the player is desperate for one might make him lose his concentration. The "almost there" effect also makes that last obstacle in a row harder, because the player is thinking more about what is behind the obstacle, than about that spiked wall closing in on him...
[b]Changing the rules[/b]
So, the player has been jumping over similar-looking holes and dodging fireball traps for a while now, and he's getting really good at it. This is bad news for you : your game is becoming easier. The cure? Change the setting : the way obstacles react, the way the player controls his character, the goals, add in some rules or take some away. Why not add homing fireballs? Why not reuse that hole with jumping crocodiles from level 2? Of course, the designer shouldn't be jumping out from behind something shouting "Surprise!" as the player frustratingly discovers things are not the same, but should introduce patiently the new features instead. Returning to previous settings, however, allows the designer to skip this introduction, and hopefully the player might have lost the grasp of this previous setting in time...
Almost all games have distinct game locations (outside, inside a castle, etc...). Sonic The Hedgehog 2 made a great job of having various levels. In zone 2 you had to avoid falling in the water with well-timed jumps, in zone 3 you had to actually go through the water for a moment, in zone 4 you could gamble for rings (and get Time Overs), in zone 5 there was lava and weird jumping, in zone 6 you had to activate levers, in zone 7 you had to slide down ramps, and survive in an oil ocean... However players did not return to previous settings, so the game had to constantly keep introducing new features, leaving less room for actual difficulty.
[b]Removing the tips[/b]
Suppose you, as a player, need to jump on a platform when it's green, but not when it's red. If the platform turns yellow, or emits a sound just before turning green, you'd have a great tip about when to start jumping. If it merely changes from green to red, you have to time the start of your jump yourself. Similarly, if there is a "hint" (something special that happens) at a moment when the player should take an action ( platform B going up when player should jump on platform A) then by taking it away you are making the game harder. Sometimes, jumps are extremely hard to time, and if the hints are removed correctly the player will have a hard time figuring out.
Pitfall : the Mayan Adventure featured stones that went in and out from walls, above a tar pit, where the player had to jump on a stone, then wait for the next stone to go out. The time the stones spent outside of the wall was too long to allow the player to predict when it would be going back in (something like 5 seconds). There was a sound that played just before they retracted, which marked the moment for a new jump. While players could handle the obstacle correctly with this hint, if the sound was turned off they had a real hard time going through it.
It's always a good idea to make the player laugh, especially when he's just been blown to smithereens by a mistimed dodge. Humour is your friend! Add fun-looking things, surprise the player with unusual situations (a killer tiger nicknamed "Tiny") so he'll have a good laugh. Once this is done, he'll try suceeding. If he fails, he will think "I wasn't serious enough" instead of "That game won't let me win".
I provided in this article some of the rules that apply when creating difficulty in a platform game, but by no means could I have listed all of them. Designing a game takes much more than standing by the rules : it requires creativity, imagination, critical sense and above all a true love for games. Making your game have an unique feel is as important as the way it plays, and the general situations I have listed can look like anything you want as long as they retain their functionality.
Create a game you love playing.