Role: Gameplay Programmer
Platform: Desktop
Team Size: 6-12
Duration: 9 Months
Contributions:

  • Turn-Based Combat System
  • Deterministic RNG
  • Item/Action Data Pipeline
  • Shader Art

About

And The World Went Dark is a turn-based RPG Rougelike similar to Slay the Spire combined with action-RPG and story elements seen in games like Deltarune.

This game was my Major Qualifying Project (MQP) for my Senior Year of college and was my first full-stack game development project. As such, this game was a learning opportunity to apply industry practices on a large-scale game project.

My main role was to support our lead designer in executing their vision for a turn-based combat system. I had very minimal influence in the decision making on the macro game-design of this project and instead took upon the role of streamlining and executing the complex vision presented to me.

The game was presented with the Audience’s Choice Award during the 2025 WPI Game Development Project Showcase.

Project-Image Project-Image Project-Image
Project_Banner Project_Banner

Planning for 100+ Actions & Abilities

The game was originally planned to include over 100 Abilities by our lead designer, so a very large amount of my time was spent on identifying best practices to support such a high amount of content long-term. As such a very efficient action framework was required in order to be able to carry out this request

Project_Banner

The decision I ultimately made was that all Abilities and Actions were to be implemented as part of the same AbstracItem class.

A general framework was made for what was considered an action that team members hoping on the item implementation task could easily adjust stats, grant properties and targeting to the actions.

Project_Banner

We also decided that the Player Characters and Enemies of the game would also inherit from the same base, which allowed for enemy actions to be implemented the same way. It was entirely possible to give a player item to an enemy and have it be working during development.

This approach saved a very large amount of time it would have taken to implement the enemy-side of the turn cycle, as they were just treated as the same entity as the player but with AI, different actions handcrafted for them and sometimes additional turns or rules.


Tooltip Parsing

But of course there needed to be a system that explained what all of these items would do: so I was responsible for developing a tooltip system that would fit the lead designer's vision. The end result was a robust and complex parser that could assign images, perform calculations, highlight text and more to streamline the flow of information.

Project_Banner

Capstone Presentation & Report

The presentation my team and I gave as part of project presentation day near the end of development. Below is also the full project paper we delivered as part of a post-mortem of the game’s development.

Project_Banner