Tutorials are a bit enigmatic. We know developers need to put them into games, but we're never quite sure how to do it. Tutorials also offer more to the player than just popups about how to move, they offer motivation, and incentive to keep playing the game. As an excerpt from my book, Learn to Play: Designing Tutorials for Video Games, I'm here to offer a quick five hints.
Offer Learning Support
You should always offer some kind of expert behavior for the players to model. The easiest way to get this in without it feeling artificial is through an NPC. You should always offer optional help if the player needs to look it up. Where possible, mandatory help should be done with sound rather than text. Through proper learning support we attempt to minimize cognitive load so that learners can emphasize learning to play over having to parse redundant information. If you really are keen on offering amazing learning support to your players, there exists a wealth further reading on this topic that will make you a better teacher, and I hope, a happier game designer.
Let Skilled Players be Skillful as Fast as Possible
There is definitely a demographic of your audience that is not going to appreciate being taught how to walk over and over again. It’s extremely important that you let them get to being amazing as quick as possible. So to that end, it is very important that you detect skilled play as fast as possible. This might mean detecting if players move with WASD before telling them they need to move with WASD. It might mean automatically adjusting their Y-Axis based on the way they aim at people. It's very important not to overinstruct your super-skilled players.
...a certain type of failures, as opposed to unwanted behaviors. The failure we want to reward is the failure that occurs when we attempt to do something for the first time, or with very little training, and do it poorly. This should be rewarded because we tried, and to some extent hopefully learned something. On the other hand, an unwanted behavior is something like being unable to dodge bullets, return fire, use the cover mechanic, manage the inventory, and so on - after having previously done it successfully. In order to execute any punishment, we have to be sure that our learners have learned how to perform the task. It’s pretty useless, for example, punishing an infant for babbling.
No Small Rewards
One of the strongest contributors to learning is getting amazing feedback in such a way that you have a great time, or an explosion of awesomeness immediately after a desired behavior. This should be amazingly easy in games, after all, games are designed to make people have a good time! Unfortunately we sometimes dole rewards out bit by bit. We’ll show the player a badass amazing character really early on that they’re intended to emulate, but then make them play the entire game to get to that point. Worse still we sometimes let the character play that badass version of themselves, then artificially strip their power away, making them effectively play the entire game to get back to the power level they had at the beginning of the game. Why not let the players emulate that character and then surpass them?
Immediate Feedback on All Inputs
It’s generally accepted that in order for a behavioral lesson to work, you need to either reinforce or correct a behavior within about three seconds of it happening. That might even be too large a window for games. I’ll go ahead and say that for games, anything more than a second is too long. I’ll fall back on the dog training analogy: when the dog does something good, you either pet him, praise him, or give him a treat immediately. Contrarily, if you don’t catch him in the act of pooping in your bed, there’s no point in punishing him - he’s already lost the cognitive trace. This is especially true of games. Players have to connect something they’ve done with something that happened in the game. In games, this means making sure that victories are rewarded instantly and shortcomings are punished equally rapidly.
Hopefully by following a few of these tips, you'll be able to implement better learning in your games, and engage more players!