EECS 494: Metroid Project
This was a project for a class at the University of Michigan (EECS 494). In this post, I’ll walk through my contributions to the game and the challenges my group faced along the way.
Project Overview
In the EECS 494 class at the University of Michigan, the first big project is re-creating part of a NES game. My group and I chose to re-create the first bit of Metroid.
This post walks through my contributions and the challenges we faced as a group, including coordinating our work, integrating features, and refining the game through testing.
This game was made in Unity using C#
My Contributions
-
Camera
Implemented a camera system that followed the player smoothly as they moved through the level, keeping the action centered while still ensuring the camera stays within the room bounds.
-
Room Transitions
Built the room transition logic so that changing room felt like the original. I used coroutines to manage timing and transitions cleanly, ensuring the player could move between spaces without abrupt scene changes.
-
Player Movement
Helped shape the player movement. This was important for making the character feel accurate and comfortable to control in a Metroid-style platformer.
-
Missile Weapon
Created and integrated the missile weapon and power-up. The feature included handling firing input, projectile behavior, and how the missle doors and power-up.
-
Enemy/Player Damage and Health
Implemented combat effects for both enemies and the player, including health damage and knockback reactions and I-frames. Coroutines helped manage timed invulnerability and hit response so damage feedback felt the original.
Challenges Along the Way
One challenge was making independently developed pieces work together. Integrating features revealed mismatches and bugs that were difficult to spot when working in isolation, so testing the combined game and communicating clearly became essential.
We also had to balance our ideas with the time available for the class project. When something did not work as expected, we worked together to diagnose the issue, adjust our approach, and prioritize the parts that mattered most.
Play the Game
You can play our final product HERE!
Posted by: Aidan Vidal
Posted on: September 29, 2026