Monkey See Monkey Doom Weekly Reflection 3: Setting the Score

Austin Matthew Merritt
IMM at TCNJ Senior Showcase 2018
4 min readFeb 13, 2018

Previous Week’s Work

In my previous post I proposed enemy types that increase the player’s odds of survival instead of limiting them following my implementation of numerous difficult to avoid enemy bullet patterns. In my designs I focused on exploring passive benefits vs active benefits and attempted to prototype A.I that dealt with both of these concepts.

One of the more interesting challenges of the week was figuring out the process of having a player collect an item like a shield after it is shot out from an enemy. First the enemy needed to know to fire a shield shot. Second the player on impact with this shield bullet will collect it, instead of taking damage from it. Once the player has collected the object it should rotate around the player as a shield and only be removed when the player is hit by another bullet, in effect “absorbing” the damage of the impact.

I think there is still some tuning to be done on how many positive bullets the player can shoot/collect in order to ensure the game stays challenging but overall I think these new additions give the game a less monotonous feel as players must now play differently to maximize their potential.

New Helpful Enemies:

Shield Enemy: This enemy’s special bullets act on shields for the player upon impact with said player. Each shield allows the player to take a free hit without losing health.

Drone Enemy: This enemy’s special bullets act as an extra source of bullets for the player upon impact with said player. When the player has collected the drone bullet each shot they shoot will spawn another free shot from the drone circling them.

Friendly Fire Enemy: This enemy’s special bullets simply can kill other enemies within the game.

Blank Enemy: This enemy’s special bullets aren’t bullets at all. On replay each special shot is replaced with the enemy’s gun misfiring saving the player some trouble.

New Harmful Enemies:

Random Enemy: This enemy’s special bullets are randomly chosen each time they are shot from the special bullets of the 14 previous enemy types. This enemy is all about chaos and confusion and makes for a really unpredictable game.

After working out all of the enemy types for my game (I probably won’t add anymore after this week but can definitely seeing my self modify the existing designs continually) I set about organizing a new structure to Monkey See Monkey Doom that introduces players to enemy types through a simple progression of levels. Now, each of the 15–20 levels will have a required round limit to unlock the next level and successful completion of a level will unlock the new enemy types from that level in the survival mode.

What was originally the entirety of the game is being moved to a seperate endgame sort of experience containing all unlocked enemy types. This mode is purely about achieving a high score and learning to master the random nature of the enemy selection.

Finally, I implemented highscore functionally in the game for each level saved to a file. What this means is that players can stop the game and have their highscores remain when they start it up again. While this sort of functionality is a given in most games today I had never attempted this process before this week and spent a good 6+ hours sorting out how to make the scores not override one another or be erased when restarting the game. In the end I figured it out and further implementations of data saved to a file will be a much quicker process to program.

Current State of the Game

The screenshot here is the working (albeit extremely crude) level select screen I mocked up in a few hours that both loads the true highscores for each of the levels and allows players to enter 3 test levels I designed. I’d like the levels to have a name that denotes their content as well as an image to go along with it. The level select screen should also denote the round number needed to unlock the next stage which is currently not implemented and will require a lot of playtesting to get right.

The First Test Levels:

Level 1: Players contend with slow mo enemies and sped up enemies.

Level 2: Players contend with looping enemies and friendly fire enemies.

Level 3: Players contend with exploding enemies and shield enemies.

Looking Ahead

This next week I want to begin working on some of the art assets I have been designing and getting them into unity. I think getting the player character and the monkey sprites done with their animation is a worthy goal that will begin to change the feel of the game towards something that matches my title.

--

--