2D Gaming Project 2: Simple Scroller

Due Thursday Oct 15 2009

Summary: The class has been divided in half. Half of you will implement a simple side scroller game while the other half will implement a top scroller game.


You will write a scrolling game. The player need only move in one orientation (side to side for the top scroller, up and down for the side scroller). The genre/premise is up to you, but use something that can reasonably fly/hover as the player's representation.

There should be two types of enemies in this game (both of course spawn on the opposite side of the screen from the player. One should take one hit to kill, the other should take at least two (but not more than the user can fire in the time the time it takes this enemy to cross the screen). The enemies should appear in a random place at the far end of the screen.

The enemies should occasionally shoot at the player.

If the enemy shot or the enemy itself hits the player, then the player dies.

In the top scroller occasional powerup should appear. When player picks up (runs into) the powerup, he/she should get a bonus. The type of powerup is up to you. It could be a more powerful shot which kills both enemies in one shot, it could be an extra life. Make sure to discuss this in the writeup.

In the side scroller, occasionally one of the bad guys should drop something (a "prisoner"?) to the ground. If the player picks this up (runs into it) then the players score should go up significantly (at least 3 enemies worth)

The game needs to keep score and display the score to the player throughout the game.

a few things to note:

I suggest you use multiple sprite groups for this one. It will help you manage all of the stuff you will have running around on your screen.

If you don't have images that you want to use already, I encourage you to connsider using The spritelib image library that you book mentions. The license is generous and there are several types of images to use.

Extra Requirements


You need to include a writeup of your lab as a text file. Include in this writeup