top of page

MetalMorphosis

Fight to survive against a dying world and your own dying body in this high-octane roguelike.
 
2025-04-2821-19-09-ezgif.com-optimize.gif

Roles: Game Designer, Narrative Designer, Writer, Programmer, Level Designer.

Tools used: Unity (using a pre-made asset kit), Google Drive, Trello.

Group project – 5 members, including me.

 

MetalMorphosis is a game we created in our 3rd year of studies at Sheridan College. It’s a fast-paced isometric rogue-like in a cyberpunk dystopia where players must choose between upgrading themselves at the cost of others' lives, or leaving them alone at the player's own expense.

Play it here!

Roles
Game Designer

I designed many of the upgrades the player can find, known as "Augments". Due to our limited time and scope, there weren't many we could have in the game, so I focused on designing them to synergize with certain other Augments. Additionally, I conceived the Withering system, where the player's max health decreases after going long enough without acquiring an Augment. This helps the game maintain the quick pace we had in mind.

AugBible1.webp
2025-04-2920-15-22-ezgif.com-optimize.gif
Narrative Designer

The theme of our game was amortality (living agelessly in denial of mortality), and so we wanted it to ask what lengths people would go to just to prolong their lifespans. This led to the idea of getting Augments by killing non-hostile NPCs, which when combined with the Withering system, makes each upgrade an organic moral choice. Will the player be selfish and succumb to desperation, or will they hold onto their dignity even if it leaves them worse off?​

2025-04-0617-58-46-ezgif.com-optimize.gif
VideoToGif2-ezgif.com-video-to-gif-converter.gif
Writer

I was one of the two main writers for the project. Together, we created the lore for our game's world, its characters, and the story happening in the present day. Early on, we thought the backstory was too similar to Arcane, so I created a new draft that went in a more original direction. We were both much happier with this new version, and it became the base that all future story iterations would build off of.​

Challenges and Lessons Learned

This was our first time tackling a project of this scope. We were caught off-guard with how difficult making even a small game of this caliber could be. While trying our best to make sure everything was ready for the minimum viable product by our deadline, there were a lot of bugs that we unfortunately had to ignore to focus on bigger priorities. The whole experience taught us to scope more reasonably in future large-scale projects going forward.

I was assigned to program the randomization of both environments and upgrades needed for a rogue-like, and prevent them from outputting the same environment or Augment type twice in a single run. I did this by randomly selecting either a room or Augment from their associated Lists in C#, loading them, then removing them so that they couldn't be picked again. For Augments, I needed to use this technique on 2D Lists. I hadn't worked with arrays or lists like this in some time, so the experience was valuable in getting me more familiar with them for potential applications in the future.

OptimizedCodeVisualized.webp

Since all of us acted as level designers for the game, creating environments that could be randomly loaded in, we needed a way to maintain consistency across them all. I solved this by creating the Level Design Bible, a document outlining conventions we all needed to follow when making rooms. It also served as documentation for how to use recurring props and assets found throughout the levels, such as entrance and exit doors. Because of this, I always try to document proper use of my code or conventions to follow for other team members if I believe they'll be working with them at some point.

LDD1.webp
LDD2.webp
bottom of page