A little while ago I dug into Scary Girl for not being a very fun game. This brought up some discussion about what actually makes a good 2D platformer, so I decided to expand on the topic. Below is a list of what I see as three common aspects of many classic platforming titles. These point are not the only things that made those games great, but they're a shared base that appears again and again.
1). The Moveset
The moveset is a nebulous term that encompasses all of the player character's abilities and properties. These include the standard run and jump, but also other mechanics such as sliding, and the rules of various behaviours, e.g., how much time does it take to accelerate to a maximum velocity, how does the character react when he's hit, etc. Temporary powerups such as Mario's Starman and permanent modifiers like Mega Man's boss weapons also fall under this umbrella.
So what makes a great moveset?
Well, let's start at the beginning. First of all -- and it's hard to believe that this needs to be explicitly stated -- the moveset should be very clear and accurate. There's nothing worse than running over a collectible and not picking it up. Well, unless it's getting hit by an enemy that's clearly not touching you. This kind of stuff is incredibly frustrating, and it makes the player feel cheated by the game.
As soon as we're sure that we're not actively pissing off the audience, we can build a connection between the player and the game itself.
To start off, the interface needs to be quick and responsive. Input should have an immediate effect on the character in order to foster a sense of full control. Granularity and different control techniques, i.e., pressing, tapping and holding, are also important as they provide a level of precision to the movement.
It's important to note that the majority of 8-bit and 16-bit games actually ran at 60 frames-per-second. Sure, many of the animations were composed of only 2-5 frames, but the actual motion of the sprites was very smooth. This not only aided the physics, but also created a very dynamic sense of movement.
Now precision in platformers is often associated with pixel-perfect leaps that -- if not properly executed -- result in game death. While that is sometimes the case, precision is an ever-present facet of these titles that's experienced at virtually all times, e.g., jumping up to a moving platform, dashing through a tight tunnel, firing shots at floating enemies, etc.
So how do we actually make the moveset fun?
Well, there's something to be said for vicariously living through a speedy, agile ninja that performs maneuvers one would not likely do in real life. However, what I consider even more important to the "fun factor" is the integration of the moveset with the various facets of level design itself.
2). The Levels
On largely aesthetic level, it helps a great deal if the game is composed of various zones that each have their own unique look. Of course that uniqueness is often accompanied by numerous interactive objects that add variety and help with the pacing, but there's one small detail that occasionally falls through the cracks: the separation of foregrounds and backgrounds.
This might seem like a relatively small issue, but if not handled correctly, it can confuse and frustrate the player. Confusion is rarely a good thing, and pretty art is a poor consolation for jumping on phantom platforms.
Now as far as the environments themselves, it's not a coincidence that they're often filled with all sorts of slides, bridges, trampolines, ladders, etc., In a way, they're simply playgrounds for the player, both literally and figuratively. They cater to the moveset and enhance the flow of the game.
Smart playgrounds also funnel the player into using his various abilities. Once again, this is to provide a wide array of experiences by fully utilizing existing resources. The funneling itself can be subtle -- indicating a path through a series of collectibles -- or forced -- requiring the player to scale a wall in order to proceed.
When designing levels, a guiding approach also helps with creating specific setups for how the player enters and leave a specific area. For example, a path of collectibles can lead to an isolated spot that contains a useful powerup. Getting there requires a series of leaps and wall jumps that take the player through the lines of collectibles and deposit him at the desired destination. On his way back, the collectibles are gone, removing the need to retrace steps and making the descent itself easier and more enjoyable.
3). The States
Picture this scene: your character is jumping through the air, an enemy is homing in on him, and a stray missile explodes and destroys a brick wall. A snapshot of this scene reveals multiple states: jumping, homing in, and exploding/crumbling.
States are basically logical denominations that encompass various behaviours and properties of game objects. They give standard enemies and end-level bosses a rudimentary intelligence, and challenge the player to decipher and exploit their patterns. This imbues them with personality, and once again encourages the use of various techniques to defeat them.
However, states are just as important to the levels themselves as to their inhabitants. Even though it's easy to visually separate enemies and interactive objects, they're largely the same thing. Springs, conveyor belts, swinging vines, breakable walls, etc. fill out the playground, and they do a tremendous job of turning a static image into a living, breathing environment.
On the initial playthrough, states encourage experimentation and improvisation. Despite the fact that they're entirely predictable, they also enhance the replay value. Learning the mechanics and patterns of a game guarantees that the player -- at least to a certain extent -- will continuously get better at it. In some cases, this can even lead to the creation of speed runs.
And if you really doubt how vibrant a game can be largely through its use of states, here's an example.
Now as you start putting all three of these principles together, chances are you'll also foster those intentional and emergant moments that players tend to remember.
What moments, exactly?
Well, it's stuff like using pinball bumpers to dart around in Sonic the Hedgehog while avoiding the boss' attacks. It's exploring all new underground caverns in Super Metroid thanks to a special ability. It's running through a level of Super Mario Bros. without stopping while piranha fish sail above you, but never quite touch you.
The flow created by intelligently combining movesets, levels and state mechanics is a large part of what makes platformers fun.
And as a final point, the combination of all three of these aspects can actually be seen in the intro to Indiana Jones and the Raiders of the Lost Ark, and who didn't like that?