A while ago I completed the Udacity Front End Web Developer nanodegree. Two of the projects were to create HTML games. You can see a description of the first of those games in this post. The brief for the second game is that it was to be an action game loosely based on the arcade classic Frogger. I was given a selection of sprites and a basic game loop as a starting point, but had free rein from there.
As this was a course project rather than a complete commercial game I designed and developed just 10 levels. However, even with just a few levels, it’s important to consider player progression and reward.
In this post, I want to explain my design decisions in this respect.
In the first level I want the player to see and experience the fundamental game mechanics but not to be greatly challenged. In this game, the goal is to move the character from the top row to one of the chequered squares on the bottom row. To do this, they must cross four other rows. Some of these have enemies to be avoided. In this game, the car and trucks of the original Frogger are replaced by beetles that scuttle from one side to the other.
As well as the main goal, there are optional secondary goals – in this case a gem that can be collected for extra points. Secondary goals that are a bit more of stretch to attain are important for encouraging the player to come back to the game and try for more reward. In this first level, the pick up doesn’t present any real additional challenge because I just want the player to get used to this mechanic.
Another secondary goal that I introduce from the very first level is the star. This star is placed on a random square in the final row but it starts to fade as soon as the level begins. If the player reaches it before it has faded away completely, they are awarded a massive points boost. This mechanic is similar to the bug in the original Frogger game.
One thing I can do to build the challenge n subsequent levels is increase the number and speed of enemy beetles, but I also introduce the water hazard. In this game, though, the logs and turtles of the original game are replaced with lily pads.
So far the player has been largely free to travel in a straight line to reach the goal, but to increase the challenge on later levels I want to prevent that. To do this, I introduce impassable rocks.
To maintain player interest, it’s not enough to keep ramping up difficulty, the game must also become more complex. I do that in this game by adding a barrier across the top of the goal row. To open it, the player must first collect a key.
After a few levels, it’s a good idea to offer a helping hand for players who might have lost a few lives. This comes in the form of a heart pick-up that will award an extra life if it is collected.
With all the elements introduced, it’s time to combine them in interesting ways. In this example. the design of the level forces the player to backtrack after they have got the key.
You can see the sourcecode for the game here and you can play it here.
Be First to Comment