Thursday, September 26, 2013

Stick Man Trampoline : Designing the Mechanics

So in my previous post about multi-platform programming, I mentioned that I was planning on doing a small game to practice/test my theory on multi-platform programming.  That game is called Stick Man Trampoline!

To start off, I wanted to keep the gameplay simple.  I wanted the actual implementation to be basic, so that I could easily test how it worked on multiple platforms.  I decided to take the old game Breakout, and simplify it.

So, we start off with the paddle, and a "ball" that will bounce on it.  In Breakout, the skill comes from controlling the ball in different ways to hit and destroy all the bricks.  As the amount of bricks get reduced, you have to aim in different directions to hit the remainders.  With my game, I wanted there to be one target or goal, and the entire level is focused on reaching that goal.  I decided to put a hole in the roof, and make that the target.  Hitting the walls, floor, or anywhere on the roof that isn't the hole results in a loss.

Next step is how you control, or work towards this goal.  I knew I wanted to give the player a level of control as to which direction (left or right) they can fling their character, so the further from the center of the trampoline the character hits, the more 'in that direction' they'll fly as they go up.  This is cumulative, so if you've hit the left edge twice, you'll have to hit the right edge twice to equal it out to 'straight up'.  The other option was to reset the horizontal movement each time you hit  the tramp, giving the player more control.  I decided this was too forgiving, however, and wanted the player to have to think about every jump.  The last part is how long it takes to get to the goal.  Basically, there's a set number of 'jumps' it takes to get to the roof, and you have that many 'jumps' to get the character oriented correctly to make it through the hole.

Next step is how difficulty increases across levels.  One way to vary difficulty is to affect the goal.  I decided to randomly place the hole in the roof, to give some variance to each level.  On top of this, as you progress in levels, the hole will get smaller.

Next, I wanted to make the game a little more intense with each level, so as the level increases so does the amount of horizontal motion you get from the trampoline.  As levels progress, the player has to be more careful about where they place the tramp.  A slight nudge in one direction early on, becomes a mistake that will fling you straight into the wall in later levels.

The last area of gameplay I wanted to vary with difficulty was the number of jumps required to reach the top.  There were two options here, each of which would change the feel of the game.  First, was to decrease the amount of jumps with each level.  This would create a sense of urgency, and focus the player on small, discrete movements of the trampoline.  The other option, is to increase the required number of jumps.  This would give the player more time to line up to the hole, but also allow more room for mistakes.  I decided to go with the second option, favoring the thought of the player frantically trying to fix an erratic 'bad jump' before they hit the roof.

Well, I feel like that explains all the mechanics that went into Stick Man Trampoline.  My next post will be going more into the graphical elements of the game, focusing on making it "Juicy".

No comments:

Post a Comment