top of page

TROLL STOMP

Troll Stomp is a single-player PC game that I created with five other students at Cornell from January to July 2015. The game started out as a semester-long project for the class Introduction to Computer Game Architecture in Spring 2015, and I worked on it further in that summer. It was showcased in the 2015 Game Design Initiative at Cornell Festival.

I was the lead programmer of the team; in addition to programming gameplay features, I was responsible for designing and maintaining the software architecture, setting technical goals for each milestone and making work division amongst the programmers in the team. I also made most of the sound effects for the game.

We programmed the game in Java using the LibGDX game engine. I made a level editor from scratch using Java's Swing library for the graphical user interface, which we used to design all of our levels. The editor uses JSON serialization for saving and opening levels, supports all of the different object and character types in the game, and allows the user to change gameplay parameters such as projectile speeds, non-playable character health and sensitivity to friendly fire. These features eliminate any need for programmer intervention in integrating the designed levels into the game, and the interface makes it easy to use for anyone who knows how the game works. Below is a screenshot from the editor.

GAMEPLAY

In this game, the player controls a little yellow bird named Twitch who has been entrusted with the mission of saving the forest from the evil trolls. However, Twitch has no attacking power whatsoever, and the trolls are trying to hunt it down with a variety of attacks in each level. The player must dodge the incoming attacks and position Twitch in a way that will allow the trolls to kill each other with friendly fire.

The player has a top down view of the forest in each level and only has two actions: move the bird in eight directions using keyboard arrows and dash towards a point clicked by the mouse. While dashing can be used to move faster, especially when dodging attacks, the player cannot continuously dash as there is a recharge period after the move is used.

Each level has a boss that has its own specialized attack and commands the troll minions in the level. The player’s objective in each level is to kill the boss. There are a total of five bosses, or commanders in the game, and each commander has its respective Tutorial, Scrimmage, and Battle levels that come in different difficulties. There are five bosses in the game:

  • Thimblewick: Blindly charges towards Twitch every few seconds.

  • Crudbane: Throws bombs at Twitch every few seconds.

  • Skrang: Picks up whatever comes in its way to throw at Twitch.

  • Thimblewick – Redux: A smarter version of Thimblewick who charges with higher frequency and greater attention for any minions in the way.

  • Botrongo: Shoots at Twitch with its rifle every few seconds.

 

The minions, on the other hand, come in three types, and multiple types of minions can be found in a single level:

  • Arrow minions: They shoot arrows straight at Twitch.

  • Fireworks minions: They shoot fireworks in the air when Twitch is in their area.

  • Trick shooters: They throw a boomerang at Twitch that follows Twitch’s movement for a short period of time before continuing straight.

 

The minions remain stationary throughout the game, only changing the direction they attack.

 

The only way a commander dies is by coming under fire from its own minions, and the player has two methods to accomplish this. The first method is to position Twitch between the minions and the commander in a way that will cause the minions to hurt the commander when Twitch dodges their attack. The second method is to position Twitch behind the minions as the commander is attacking. If enough minions are killed by the commander’s attacks – that is, if the troop morale bar on the right edge of the screen reaches zero, the minions will mutiny against the commander and start attacking it, eventually killing the commander. In order to prevent the possibility of no minions remaining as a result of friendly fire and to keep the gameplay difficulty stable within levels, minions respawn a few seconds after getting killed.

 

Below is a video that provides a quick run through the game's features.

bottom of page