Goals for this homework

  • Gain experience designing new features for games
  • Gain experience adding features to games.

Welcome to Part 2!

This is Part 2 of the homework assignment! Make sure you complete Part 1 before starting this section. In this part, you'll be designing new features to add to the game, and implementing them on your own. These features will not be described in the textbook, so you'll have more freedom for how to implement them but also less guidance to do so.

New Enemies

At this point, your code should contain enemies Enemy_0, Enemy_1, and either Enemy_2 or Enemy_3. For the two remaining enemy slots (Enemy_2/3 and Enemy_4), we'll have you pick two new types of enemies to implement. You should NOT implement Enemy_4 as described in the book, though it would likely be helpful to read. Here are a few potential ideas:

  • Enemy can fire a weapon at the main character.
  • Enemy follows the main character around.
  • Enemy can only be damaged by a certain type of weapon.
  • Enemy damages the main character when shot.

Feel free to come up with your own ideas as well! Your two ideas should be reasonably different from one another. If you're not sure whether your ideas are appropriate for this assignment, please ask someone on course staff before proceeding.

New Collectibles

Next, we'll have you add new powerups to the game. From Part 1, you should have experience coding powerups in, including ones that aren't directly related to a weapon. As with the prior section, you should pick two ideas that are relatively different from one another. Note that powerups technically don't have to be good for the player - you can make some of them bad! Here are a few potential ideas:

  • New Weapon (At the end of the chapter, there are a few examples of new weapons to implement, if needed)
  • Enemy Control (e.g. all enemies move slower/faster for a set period of time)
  • Ship change (e.g. speed, size)

Motivation Increase

Finally, add an feature to the game that will increase player motivation, with justification from your readings for why it may motivate a player to continue playing the game.

Submission

In the gradescope assignment for this part, you'll be asked to describe each of the improvements you made. Then, as with before, you'll need to make a video demonstrating each of these features. Then, we'll once again have you submit all of your scripts.