Tutorials done right

“It appears you are trying to write a document without being disturbed. Would you like some help with that?”

-Clippy, probably

When the player first boots up your game and starts playing, a lot of time the developers feel like they have to explain everything that the player should know about. You want to make sure they’re armed with the knowledge of every single key binding there is, combinations, enemy types, strategies, and why not a bunch of hints while we’re at it… But you see, that’s the developer’s version of being a mother hen.

“Do you know how to jump?”
“Yes mom”
“Do you remember that pits kill you?”
“Yeees mooom”
“You be careful about the spikes to.”
“I will”
“Oh and don’t forget you can press start to access the map!”
“[sigh] Got iiiit”
“And what does the B button do?”
“Jump. Told you I already know”
“Yeah yeah, just wanted to make sure. Have fun now!”

That’s you. That’s how you sound to the player when you force tutorials and interruptions on them. Don’t be that kind of developer.

Here are a few basic ideas you can use in order to teach your players about your game in a way that is fun, rewarding and effective.

Let them loose

The first way you can ensure your players won’t get discouraged by any tutorial is this: don’t put any. This means no tutorials, no interruptions, no frustrating comments from some NPC that exists for the sole purpose of telling us about every single thing that finds its way unto the screen…

The main reason someone plays your game is—and this will certainly surprise you—to PLAY your game. Nobody wants to spend a lot of time learning a bunch of stuff just so they can get to the first tiny bits of gameplay. What people want is to play. We want the fun part right away, we want to get a first impression on the game and decide if it’s worth to keep playing or not.

Don’t hold the player back with explanations and tutorials, let them play as soon as possible, and let them figure things out by themselves.

Think about games for older consoles; nobody ever told the player “Press B to jump” or anything. You just started the game, landed on the first stage and tried the buttons! Within just a few seconds you already knew what the buttons did, and not only did you not require any time-wasting explanation, but you figured it out yourself and it felt good!

Of course this cannot be directly applied to every game out there. Some designs are inherently more complex than others. In some cases, this might have been avoided if the design had been done better, but in other cases the game is simply too complex for someone to figure out on their own without any help at all. See if it can work with your game, and if not, try and see if this is something that cannot be avoided or if it is only the result of poor design choices.

It won’t always be the case, but if your game really requires a long tutorials before anyone can pick it up, you might doing something wrong. Could you be using unfamiliar controls? For example, on the PC most of people are used to WASD, space for jumping, E or F for interacting, or the mouse for moving the cursor of moving around for example. Using existing knowledge allows you to lighten the learning burden of your game.

Whatever you do, resist the urge to state the obvious such as telling the player how to move, how to jump or how to look around. If you want a perfect example of how such hand-holding feels, try the Far Cry 3:Blood Dragon tutorials with its tutorial gems such as “Press A to confirm your ability to read” or “To look around… look around.”

It’s possible that your game simply has to far too many controls and dynamics for the player to possibly discover by himself. Even if that is the case, you should still  strive to make it so that the basics of your game be easy to learn. Someone who picks up your game should be able to figure out everything he has to know in a matter of minutes if no second, and from there get to actual gameplay without going through any tutorial. You may not be able to afford removing all tutorials from your game entirely, but you can perhaps remove some of them.

Let them try

Letting the player loose means that you let them play with no information and no help at all. It will work great with some games, but there are many occasions when lacking a single piece of information might completely ruin the game or prevent someone from playing it. A solution to this problem is to let them try first, and add explanations if need be.

This means that there may be a tutorial accessible or information that can be had somehow when the player feels like he needs help, but the game force interruptions on him. This gives the player both the occasion to play the game uninterrupted and to figure things out on his own, which by itself can be a strong motivator for some people. And if someone doesn’t feel like experimenting or if they can’t figure something out, help is always around the corner.

The main idea is this: the player should be able to try things without being presented with any instructions right away. You let them loose, but you stay nearby.

If your game allows it and is properly designed, the majority of players should be able to figure out the basic controls by themselves. The remaining players will easily have access to the information they need if they want to, but you won’t be getting in the way of the entirety of your playerbase because someone might need help.

Don’t interrupt your players, let people try and experiment with your game, let them have fun figuring things out, and if they decide they want instructions, let them access it. Which takes us to the next point…

Make it skippable

There’s no avoiding it; you determined that your game will need a tutorial of some sort. In that case, you should be very careful not to interrupt the flow and let the player return to the game as soon as possible, or better yet never leave it.

The obvious and lazy solution is to simply add a skip button to your tutorials. Doing only this will make your tutorial go from painful to mildly annoying. It’s far from the best solution, but it’s a very easy-to-implement one that can also be slapped unto existing designs without much trouble. One issue you might run into is that nearly everyone will skip the tutorials, but what happens if they missed some crucial piece of information? Whatever you state in a tutorial should be accessible later through the game, either by re-triggering the tutorial or by other means.

The next—and much better—solution is to make the tutorial low-profile and without forced interruptions. This can be for example a “Press X to see the tutorial about jumping”, or it can be an explanation that only appears after the player performs—or doesn’t perform—certain actions; for example standing still for 5 seconds, falling into the first pit 3 times or not attacking after 20 seconds. This is what we just talked about in “Let them try.” If the player can figure it out, the tutorial is effectively skipped; if not, the tutorial is there to be used.

Another alternative is to make the explanations “part of the stage”; many games did this with some success by having the tutorials literally written on the walls in the game, or by having floating explanation bubbles that come and go as you progress through the level. This is truly an interesting method because there is no interruption at all. The tutorial and the game are one-and-the-same, there is no switching between reading and playing, or listening and acting. If you know what to do, the tutorials are virtually invisible. If you’re having trouble, the information is right there without you having to open any menu, talk to anyone or actually do anything at all.

A similar method we used to see quite a lot was to have “post signs” near places that might require some explaining. The advantage here is that the player is allowed to try things out by himself, but has something to fall back to should he fail to figure it out. There is an interruption, but it is skipped by default.

The idea is that the learning should as seamless as possible and should above all else not get in the way of the player trying to play them game.

The controlled environment

By far the best way that you can teach the player about your game is to have them figure things out by themselves. This however can be hard to execute at times, and since not everyone will figure things out at the same pace, you have to be careful not to make the game too punishing to those who require a little more time.

The best solution to all these problems is the controlled environment. The idea is that you force the player to figure things out in an environment where he cannot fail or where failure has no consequences. A very basic example for a platformer would be to have the player fall into a pit with no enemy; he won’t get out of there until he learns how to jump out of it. Simple, no interruption of gameplay, and the player will certainly figure it out by himself. A much better solution than giving players a tutorial about jumping.

In a similar manner, new concepts such as special moves or new enemies should be introduced in a controlled environment. It doesn’t always have to be a completely bare setup; if the player already knows how to defeat “enemy A” by the dozen, you can then introduce a bunch of “enemy A” with a single “enemy B” that stands out of the group. The player will notice it and be both curious and cautious about this new element. Once they’ve learned—by themselves—how this new enemy behaves, then can then carry on playing normally; and there never was any need for any interruption or explanation. Again, much better and seamless than having someone explain to you every enemy that you encounter and how to defeat them.

You can also build upon already acquired knowledge by recreating an existing setup that the player already saw, but with a slight variation. For example the player already know how to jump up platforms, but they are presented with one that is just out of reach, forcing them to figure out if maybe the can wall-jump or double-jump or something.

Another way to explain slightly more complicated concepts to the player can be to show them instead of telling them. Have them follow another character that suddenly performs a move the player didn’t know he could do. A very interesting example to me happened in Super Metroid where you were stuck in a long corridor with only a bird that ran to the right end, crouched, and the flew off to the top of a long tunnel going up. I thought it was a very interesting idea to have a critter show the player what they were supposed to do.

In the end, you should simply pay attention to moments where you feel like you have to interrupt gameplay to give the player a vital piece of information now; this if probably a sign that you should have let them learn about something in a more controlled, less critical environment.

If you’re interested, Egoraptor did an interesting episode of Sequelitis on youtube titled “Sequelitis – Mega Man Classic vs. Mega Man X” where he explains how the Megaman series and the Megaman X intro stages teach everything about the game to the player without ever resorting to tutorials, much of it taking place through controlled environments.

The isolation principle

Taken straight from the strength training world, the isolation principle means “to isolate only one targeted muscle group at a time, and consciously leave the other muscle groups out of the exercise.” The idea is that you can see better progress and focus your efforts by isolating the muscles you work in your exercises.

Of course we’re not talking about isolating muscle groups here, but the concept remains untouched; when trying to teach something to the player, you should isolate that teaching from other aspects. This means 2 things. First, use a controlled environment like we just talked about. It’s hard to teach the player how a specific type of enemy behaves when he’s facing 47 different enemies. Second, and this is what this principle is really about, teach one thing and one thing only.

The human brain is really bad at multi-tasking, and learning something new definitely requires some brain-power. For these reasons, when teaching the player some new skill of element of your game, you should put extra care into making sure that you are allowing them to focus solely on this new aspect they’re presented with.

This principle reveals something that is inherently flawed with most tutorials out there; the developers tries to stuff the player’s mind with dozens of new elements at once hoping that they will retain all that information. To much information not only is counter-productive, but is causes fatigue and anxiety in the player.

It’s a simple advice really, but it is also easy to overlook while designing your game. When you teach something to the player, teach them one single thing at a time. Present the player with more challenges only once they have understood what you were trying to show them.

Make it fun

I really shouldn’t have to write this down, but so many developers out there trying to make fun and engaging games seems to completely forget what this means when comes tutorial time.

When you design a certain part of your game as a teaching tool for the player to acquire knowledge about your game, you should make sure that it is enjoyable and that it does not break engagement. The best way to verify this is to have people try it out. See how people act when presented with the teaching bits of your game, watch if they’re mashing buttons trying desperately to skip it, or if they’re bored by too easy or repetitive tasks, or if on the other end of things they are overwhelmed by the challenge they’re faced with and can’t figure out how they are supposed to make it through.

A good way to achieve this is to not only use the isolation principle and teach the player how to play bit by bit, but to have actual gameplay happen at the same time. You could for example first teach the player how to move and jump, and then base the entire first stage on moving and jumping alone. Stage 2 could teach about enemies and be about moving, jumping and avoiding enemies. Stage 3 could introduce weapons and so on… The core concept is that the player plays and experience victories during the learning process. This approach is much more engaging that being presented with a “tutorial stage” which presents no real challenge and doesn’t feel like play.

Remember that your game is supposed to be fun and engaging; the last thing you want is to add elements which work completely against the core aesthetics. Having to learn how to play your game should never have to be painful; if it is, you will have to work some more on your design.