During the past 3 months we worked on two different endless runners games at GILP, Upside Down and Zoic Adventures -provisory title- (both are still under development). Although they have different mechanics, both share the same principle: run as far as you can avoiding obstacles.
As this was my first time designing a runner, I’ve made some research on popular runner games and created a basic chart on their gameplay progression. Here is how the chart looks like:
Now, let’s talk about each block:
1. Warm up
Players need some time to process what’s going on. They need time to adapt their brain to the movement speed, their eyes to the art and color palette, their ears to the music beat. They also need some time to experiment what they can do; time to play around before engaging with any real challenge. In other words, the warm up block is a safe zone, no way to fail, just discovery, adaptation and enjoyment.
This part usually lasts around 7-12 seconds (increasing this time frame can make players bored, shortening it may make the game start too promptly). You can let the player run freely this entire time, use a counter plus some running time, whatever fits your game better, just make sure players have some time to prepare for what is coming!
A short list of things that can/should be done during this block:
Emphasize game core mechanic
Show secondary missions
Now that players know what is going on, it’s time to “calibrate” their reaction times. Usually this translates into a very basic challenge, one that is almost impossible to fail at. When players die and restart the game, they are used to a different play speed*, implying in different reaction times. It’s necessary to let players readapt to the new speed.
Also, this is the first time players face an obstacle, so it’s important to make clear that what is coming to them (holes, rocks, lasers, saws, cars, etc.) are actually obstacles. If possible, the first obstacle should not be in the player expected path, this way it will only alert players about obstacles and not kill them.
*Considering that the game's speed increases with time as most runners do.
Example of how we used an calibrate block on Zoic Adventures
C’mon, the player survived all this crazy and hard challenges so far, it’s time to reward them with some cool stuff! Although this sounds a bit ridiculous, it is likely that players had failed 20 seconds ago in your game, so it’s nice to reward them for trying it again before giving a real challenge.
Depending on the game, this is a good time to do things like:
Introduce special items players can collect
Change art (colors, background…)
Some random Wow moment
This block should emphasize how cool the game is, so why not present collectables in a cool pattern? Something that fits with the game’s core mechanic. Make the player move. Make the player have fun collecting stuff without failing. Actually, this just reminded me, it is a good idea to make this a safe zone as well.
Now that the introduction is over, let’s get to the real business! There is nothing much to talk here, this is the time to challenge players in different ways according to your game mechanic.
For both Upside Down and Zoic Adventures we wanted to use blocks with incremental difficulty and spawn them according to the playtime. But later we decided that increasing the game speed was already enough. So we just randomly selected challenge blocks in a list avoiding repetition. If your game doesn’t increase speed over time, or if this increment is not considerable, I would recommend working with challenges organized by difficulty (always think about the flow).
Wow, that was hard! Now we really need to give players some time to rest and celebrate how far they have come. Rest blocks are safe zones (again, no failing allowed) between chunks of challenges blocks.
To avoid the unpredictable randomness of random numbers, we used a pseudo-random distribution (more info on the matter here). This way we guaranteed that the player would randomly get a rest block before a maximum number of challenges.
Rest blocks are very similar to reward blocks, where players should be rewarded by how far they have come.Use collectibles, items, wow moments, special vehicles, or anything that makes this relaxing moment more outstanding and creates a bit of anxiety. The major difference compared to a reward block, would be their length. Rest blocks could probably be 2-3 times longer than a reward block, as players are under heavier stress levels compared to when they entered a reward block.
Example of how we used an rest block on Upside Down
After a rest block, it’s cool to give players a challenge different than the usual ones, something harder or just funnier to overcome. As an example, at Zoic Adventures there is a unique kind of “enemy” that only appears after rest blocks.
We just need to be careful on this unique challenge difficulty progression. As players will be rested, it is a good idea to warm them up with something like a basic obstacle before the big show.
Extra life are pretty popular in modern mobile endless runners as they present a good way to monetize. When players use an extra-life (watching an ad, using their hard earned coins, etc.), it is a nice idea to reward them for doing that. So it’s a nice idea to restart the game with a reward block and then move to the game core loop again.
Don't forget that the game was interrupted before using an extra life, so even if you don't want to reward the player, it is essential to give them some time to readapt to the game speed before introducing challenges.
This is only a basic analysis on the matter, something to use as a starting point. For each one of our games, we ended up adding some different blocks to better satisfy the game’s core mechanic, but always trying to stay true to the facts presented here.
Pseudo-random distribution - http://dota2.gamepedia.com/Pseudo-random_distribution
Depth in Simplicity: The Making of Jetpack Joyride