Creating an Android App: Blowin Up the Marketplace

Posted on April 4, 2010

My goal is to recreate my very first Flash game, Blowin Up, as an Android application. The premise of the game is that on one fine sunny day people suddenly start blowing up.  Blowing up, like, explosions, not blood splatter.  So anyway, you suspect that it may have to do with an alien ship landing not too far away, so it is your job to make it to the ship without getting yourself blown up by random people running by.  At the end of the level, you face off against a giant alien ship.

So, before I can get started creating this application, it is best that I understand what I am trying to make.  This will help me know what I’m going to need to learn.  So, task #1 is to define the game.

The Logic

The logic is pretty simple.

Basics: You start with X number of lives. You run from the left side of the screen (in horizontal mode) to the right. When you reach the right side of the screen, the screen changes and you start on the left side again. People run out from the right or left side of the screen and explode anywhere on the screen randomly.  Their explosion creates a burst around them.  If you run into or are touched by the burst, you die. When you die, you start back on the same screen on the left side and we subtract a life from the X number of lives. When you run out of lives, the game is over. To win the game, you have to cross X number of screens until you reach an alien ship. Once you reach the ship, it flies above you back and forth and fires down at you. If you survive X amount of time of it shooting at you without running out of lives, then you win.

What we’ll need to know: We’ll need to figure out how to set an interval that will randomly decide wether or not to send out an exploding person.  If the logic decides to send someone out, we need to randomly decide what side of the screen to send it out from. Once it runs out, we need to randomly decide where to explode. Once it explodes, we need to see if its burst comes into contact with the character.  We’ll also need to figure out how to make the alien ship randomly move back and forth and fire down for X amount of time.

Movement: You move your character by clicking on the location you’d like him to run to.  This is his destination point to which he will continue running to until you click someone else or he makes it across the screen.  Once you make it across the screen, the screen changes to a new background, and you start back at the “beginning” of that screen.  In the original Blowin Up, the game worked strictly horizontally, so you could only run right and left.  To help keep this simple, we’re going to keep the side view (like Super Mario Bros).

What we’ll need to know: First, we need to know how to force the app to run in horizontal mode.  The game would be rather short if you only had to run across the vertical screen. Then, we’ll need to figure out how to detect where a user presses on the screen and get the X position and make that the target position.  Finally, we’ll need to know how to make the character move over time from its current X position to the target X position.  There’s a few other things we’ll need to know, like how to animate the character as running when moving, but that’s just gravy for now, and I’m confident we’ll figure it out when we figure out how to move the character over time.  Oh yea, we also need to know how to swap out the background as you get to the other side of the screen, and reset the character back to the left side.

To keep in mind: One of the challenges to the game is the movement control.  You click on the screen anywhere, and your character runs to that point.  If someone blows up in front of you, you’ll have to change your movement by clicking in the opposite direction.  If it was as easy as using the arrow keys to move you (back when it was Flash), then avoiding explosions would have been easy and the game no fun.  I think on the Android platform, it might be cool if character movement was defined by the user holding down the screen.  So, to move back and forth, you just have to slide your finger either in front of back of the character instead of clicking.  This might be really fun and cool and would take advantage of what touch screens offer, but it also might be the equivalent of using the arrow keys on your PC.  It might make it too easy.  So, this is something to keep in mind as I develop the app.  It might make it really fun, but it also might make it lame.  So if we see an opportunity to try it out once the game play has been established, lets try it and see how it affects the game play.

Scoring: The score is going to be based on a few things.  Each person that blows up without killing you will add to your score.  Each screen you complete will add to your score.  If you finish the game, then the number of lives you have left will be used as a multiplier of your score. Also, the amount of time it took you to complete the game will also be taken into consideration (though I’m unsure how at this time).


The Graphics

Game Graphics: I’m going to just throw out that we’ll use 10 screens.  9 screens will be used while running to the alien ship, and 1 screen will be used for the alien ship.  Since the user doesn’t actually interact with the background, the goal is to make them just kind of fun.  The game is going to have a sense of humor to it, so animated backgrounds would be cool. Adding some popular references to action movies will be fun.  We’re also going to need graphics for the main user, along with an animation sequence of him running, and a group of graphics and animations for the people that come running out and blowing up.  Finally we’ll need a graphic for the alien ship. We also could use an animation of the ship crashing or something.

User Interface: For the interface, we’ll need an intro screen where you can start a new game, continue a game, view high scores, and one day, maybe, buy the pro version (help a brotha out!).  During the game play, we’ll need a display for your current score, current screen #, and number of lives left. When the game is over, we’ll need to display a summary of your score, and if you won, a congratulations screen.

Oh yea, we also need an awesome icon.

Summary

I’m sure there’s a ton of stuff not covered here that we should be thinking about.  However, I think this is plenty to get us started.  Next up we’ll tackle downloading and installing the programs and tools needed for Android development.

Share and Enjoy:
  • Digg
  • Facebook
  • del.icio.us
  • Google Bookmarks
  • Print this article!

Categories: Android, Development, Game


Leave a Reply