top of page
new_background.png

Tower Tanks

Team Size: 8

Game Engine: Unity

Role(s): Programmer, Systems Designer

Tower Tanks is a 2-4 Player Co-Op Management Game where players must work together to crew a multi-story war machine. Advance across the battlefield while fighting off all manner of hazards and enemy tanks. Keep in mind that while you're fighting off enemies, you'll need to work together to maintain your barely-functioning machinery.

Key Contributions

  • Developed a dynamic gameplay system that includes scrap-based building and repairs, interactive tank elements, distinctive player controls like joystick spinning, and local multiplayer support.

  • Engineered enemy behaviors, designing versatile weapon layers like cannons and drills, trigonometric predictions for enemy cannon shell trajectories, and integrating escalating difficulty modifiers.

  • Designed a complete user experience with adaptable UI cues based on device input detection, a full tutorial system, controller haptics, seamless enemy-highlighting camera events, and Wwise audio integration.

tower_tanks_new_banner.png

Game Features

In this game, I developed multiple systems that work together to create a thrilling and chaotic couch co-op experience. The standout mechanic is the tank layer system, where players use scrap to build a tank with layers that have health and interactables. The objective is to protect the tank by fending off enemies aiming to destroy layers. The player can create four types of interactables, including the dumpster, engine, throttle, and cannon, each with unique methods of player input and utility. Enemies gradually increase in difficulty as players progress through rounds, including the cannon tank and drill tank, with different behaviors, such as aggressive or calculated, and an increasing amount of weaponry. Players must strategize and protect their tank as well as possible to avoid losing the game.

Issues and Challenges

The core of Tower Tanks' exceptional quality lies in its dedication to iteration. Transitioning from a school assignment to a passion project posed significant challenges. We shifted our focus from quickly prototyping to crafting a genuinely enjoyable experience, continuously refining systems initially designed for rapid development.

 

One strong example is with the tank's interactables. Originally, we had players reloading the cannon at a shell station, but testing revealed it was a boring task. We transformed it into a cooldown system, where the cannon reloaded automatically after a brief delay. Similarly, the dumpster system was created through iteration. Instead of using scrap as a global resource for constructing layers and interactables, we introduced a mechanic requiring players to retrieve scrap piles from their stash via the dumpster for use around the tank.

 

Managing multiplayer interactions within the tank presented another challenge. Ensuring smooth player maneuverability, without interference, demanded extensive playtesting and feedback to address potential issues, such as simultaneous interaction with the same cannon or building on the same layer.

 

Transitioning our audio system from Unity to Wwise was an additional challenge. Collaborating with our sound team, we recognized the game's appeal was in the integration of numerous sound effects and music. Despite our unfamiliarity with Wwise, we invested time in learning the system and successfully re-integrated our sounds, granting us control over spatialized audio and dynamic layered music in a way we couldn't do previously.

Reflections

​Initially created for a class project, this game has evolved into a passion project that we continue to refine with new features and polish. We presented our work at Visions 2023, a showcase for the best projects of the school year. As the solo programmer for the game, I created every aspect of the game, including interactive elements, layer physics, enemy AI, UI programming, and the local multiplayer aspect. Iterating through the code multiple times shows the versality of my skills as a gameplay programmer. With this project, I also learned new skills such as integrating Unity and Wwise, creating multiplayer systems, and calculating complex mechanics like cannon trajectories. Working with a talented audio team a great producer, and a great artist, I am proud of what we've accomplished so far and can't wait to see what else we have in store for it.

bottom of page