- Programming Work -
Explore some of my favorite projects below. Click on any project to learn more.
MI 231 - The Last Route
The Last Route is a roguelike styled combat game where you travel on a bus route through a futuristic city while fighting robots. It was created in Unity for my MI 231 course final.
Role: Solo Developed
The Last Route is a roguelike where you ride an autonomous electric bus that runs
out of
charge at each stop. You must survive at each stop as you collect parts and fight robots
until the bus is fully charged. The gathered parts can be used to upgrade your weapons,
but be careful—the bus will leave without you.
I created The Last Route as a solo project for my MI 231 final. The goal of this
project was to implement the core mechanics of our own unique game idea. I chose to go
with an upgrade based roguelike with a futuristic theme. I was able to implement the
weapons upgrade system, PvE combat, enemy AI, random level system, and an experimental
local split screen co-op that can be played by connecting Xbox controllers. This project
has been bug fixed and expanded upon since I took the class. It can be played at the
Itch.io link below.
Itch.io Link: The Last Route
Sparkle Visualizer
Sparkle is a configurable and customizable audio visualizer for Unity. It can display audio in the form of Spectrograms and Waveforms form a file or microphone.
Role: Solo Developed
Sparkle is a configurable and customizable audio visualizer for Unity. It can
display
audio in the form of spectrograms and waveforms from a file or microphone. I created
this to be easily implemented into other Unity projects that require an audio
visualizer.
An interactive demo of Sparkle can be found on my Itch.io page.
Itch.io Link: Sparkle
Visualizer
Medieval Battles
Medieval Battles is a wave-based combat game with a medieval theme, created for my high school Career Center computer programming class.
Role: Solo Developed
Medieval Battles is a wave-based combat game set in a medieval fantasy
environment. You
will battle as a mage and use your sword and magic to fight through waves of evil mages.
This game was created in Unreal Engine 4 for my high school advanced programming class.
This game stemmed from a basic wave-based combat tutorial we learned in the class. I
assembled and
lit/post-processed the entire level environment using premade models from the Unreal
Marketplace. The character controller and enemy AI were expanded upon by me to add
weapon swapping/inventory, as well as completely redoing how the players, camera control
and inputs are handled.
A video of the gameplay can be found on the second slide above.
Rally Waffle JS
Rally Waffle JS is a item-collecting game where you try to collect all the maple syrups as fast as you can.
Role: Project Lead, Programmer, Web Dev, Backend Server Dev
Rally Waffle JS is a web-based item-collecting game programmed in JavaScript,
where you
try to collect all the maple syrups as fast as you can without running out of fuel or
getting hit by any of the enemy Pancakes. The goal is to get the fastest time with the
least number of deaths.
This game was created for an advanced programming class I took in high school. I
collaborated with a group of three people to create Rally Waffle JS. My focus was on
gameplay programming
and CSS design for the website, as well as the backend leaderboard server.
It is free to play online and has a wordwide leaderboard at the link below.
Rally Waffle JS: Play Here
Matrix Display Simulator
A configurable LED matrix simulator for Unity. It was created to mimic real text-based matrixes.
Role: Solo Developed
This is a configurable simulator of text matrix displays made for Unity. It can
display or scroll messages in the style of real life matrix displays like those found in
busses and at airports. I created this to be easily implemented into other Unity
projects that require a matrix display, for example on a sign or in a vehicle. An
interactive demo of the matrix display can be found on my Itch.io page.
Itch.io Link: Matrix Display
Simulator
CAS 117 - The Space Escape
My modified version of the MSU CAS 117 2D Platformer tutorial that I made for the project.
Role: Solo Developed
The Space Escape is my modified version of the 2D platformer tutorial from the
class CAS
117. I mainly focused on adding additional functionality to the player controller. The
main thing I added were ladders and the ability to climb them, as well as a refuellable
jetpack that you can use to add verticality to the levels. A full list of my
modifications, as well as a link to play it, can be found below.
Modifications:
1: Climbing ladders
2: Flying with a jetpack
3: Fuel pickups for jetpack
4: New Animations / Sprites for flying / Climbing
5: More complex levels
6: Camera shaking effect that occurs in acid
7: Some effects were added to the Main Menu
Itch.io Link: The Space
Escape
MI 231 - Earthbound Beginnings
A Unity-based remake of the core game mechanics found in Earthbound Beginnings that I created for the Classic Games Project in MI 231.
Role: Solo Developed
This is a recreation of the core mechanics of the 1989 NES classic Earthbound
Beginnings.
This game was created for my Classic Game Project in MI 231, where we had to recreate
the
core mechanics of a classic NES game. The game I picked was Earthbound Beginnings
(aka
Mother in Japan). I decided to implement the basics of the overworld system, as well as
the battle system. In this recreation, you are able to move around the first section of
the world, as well as enter Ninten's house. You can also
check items like the sign in front of
Ninten's house and battle random encounters from a pool of enemies. This project has
been cleaned up and bug
fixed since I took the class, and can be played at the Itch.io link below.
Itch.io Link: Earthbound
Beginnings
CAS 117 - Star Invaders
My modified version of the MSU CAS 117 2D Shooter tutorial that I made for the project.
Role: Solo Developed
Star Invaders is my modified version of the 2D shooter tutorial from the class
CAS 117.
I mainly focused on adding multiple different levels, level mechanics, and different
enemy types. A full list of my modifications, as well as a link to play it can
be found below.
Modifications:
1: Live counter
2: Enemies remaining counter
3: Special enemy types
4: Asteroids that move around with physics
5: Many menu tweaks
6: Added multiple levels with custom layouts
7: Added slight UI/Camera changes on some levels
Itch.io Link: Star Invaders
Media Assistant
Media Assistant is a Roku channel that allows you to stream/play local and hosted media on your Roku device through Deeplinks requests.
Role: Solo Developed
Media Assistant is an open-source Roku app that allows you to stream/play local
and
hosted media on your Roku device through cast-style API requests. It was built to easily
work in tandem with other applications, allowing for a simple API to display media on
Roku devices.
I created the app to solve the problem of open-source applications, like Home Assistant
and Music Assistant, not being able to send media to Roku devices.
Both Home Assistant and Music Assistant now natively support media playback on Roku
through the Media Assistant Roku app. Check it out at the link to my GitHub
below.
As of March 2026, The Media Assistant app has around 2,500 active users.
GitHub Link: Media
Assistant
CAS 117 - Solar System
My version of an interactive model of the Solar System made for CAS 117.
Role: Solo Developed
This is my modified version of the Solar System tutorial from the class CAS 117. I
mainly focused on improving the design/lighting of the Solar System model, as well as
making the orbits of the planets fairly accurate. A full list of my modifications, as
well as a link to play it, can be found below.
Modifications:
1: Added all planets
2: Made the model partly to scale
3: Added Zoom with the scroll wheel
4: Added trail lines to indicate planet's orbit
5: Used post processing layers to add a bloom effect
6: Changed out the sky box to use a 360 map of the stars from NASA
7: Changed the camera's default position
8: Added UI to tell what planet you focus on
Itch.io Link: Solar System