Tutorials can be a tricky thing to get right. Before I started working on a real one, I just put a couple of pop ups with basic instructions on the screen when a new player would start.
Nobody would read them.
Even handing it to other developers, they would barely even realise they saw a pop up message. It’s almost like a reaction at this point to just hit ok on a pop up on your phone. They would then ask me how to move, when it was just on screen with a diagram seconds ago.
Now I wasn’t hoping this would be good enough for release or anything, but it’s still something to keep in mind.
I’m currently working on some hand crafted levels that can act as a tutorial, introducing things properly, and forcing the player to complete certain actions to progress, but in a safe environment so they can experiment and figure things out on their own.
For instance, starting them in a level that already has a path in place, with the player spawning in a hole. They can’t do much in the hole but walk back and forth, but it’s possible for the player to jump out of the hole into the main path. I’ve also placed a key where they will have to jump. So they will see that touching the key unlocks the exit for them. A collectable star is placed along the path between the player and the exit, so they must grab it and see that stars are safe, and that you have a counter for collecting them, so you should probably do so in future levels! They can then wander over to the exit and see how to finish a level.
That’s the idea anyway! The next part lets the player create their own path, but also lets them reset the level at any time, even after they start moving. The issue here is that I’m giving them the ability to do something they cannot do in the main game. If I can find a clever way of making absolutely sure their path is a good or bad one, I could just not allow them to progress to controlling the character. For now infinite resets with a polite warning that it’s a tutorial only deal will have to do.
From there they should have the basics, as I mentioned in a previous post, I’ll be slowly adding different enemy types as you progress so hopefully players can see them in action without being overwhelmed by lots of types at once, and internalise behaviours.
Again, all of this will need to be put in peoples hands as many times as possible to see how it actually shakes out
Movement and Mobile Controls
The in-game movement has already gone through a few iterations, from holding to walk and bonking your face against walls to turn around, to clicking on the left/right side of the screen to go in that direction, to a more analogue speed control with an area in the middle allowing you to stop without releasing.
It’s still not where it needs to be though, and right now I’m currently wrestling with it. Some people have suggested on screen buttons, which are nice and simple and will probably make it feel more like a regular platformer, but take up screen real estate and will add clutter. Some games have you hold down a finger around the edge of the screen and the character will travel in that direction, although translating jumps to that sounds difficult. Possibly a flick up gesture to jump? A quick tap? I’m currently looking around and researching any games that have direct movement control on mobile that don’t just use on screen buttons as a fake controller, and am curious if anyone has got a good solution. Actual 2D platforming may just be too precise and feel too sticky/squishy/floaty without actual buttons. We will have to see, as that’s where I am currently at with it!
Thanks for reading! I’m going to try and do these more often instead of dumping a large amount all at once covering months. As well as messing with control schemes I will also be designing and adding a bunch of the character unlocks soon, so maybe a post about pumping those out and through the workflow…