Personal Projects

Won't You Come Knocking

GameMaker: Studio 2

Spooky Narrative-Based Game

Apr 2020 - Aug 2020

Won't You Come Knocking is a short game I made in the summer of 2020. I had two goals for this project: I wanted to challenge myself to start, finish, and release a simple, polished game over the course of my four-month summer break, and I wanted to tell a particular story with a particular atmosphere that I'd had bouncing around in my head for a while. I accomplished both of those goals, and I'm very proud of how this little game turned out.

The gameplay loop consists of walking through rooms, inspecting signs and other objects that convey the game's story, and collecting items that are used to get past obstacles. Some notable systems I implemented to support the game include a shader-based lighting system that allows for the creation of multiple light sources, a dialogue system that uses variable text-typing speeds and sound effects to punctuate dialogue text, and a cutscene system that allowed me to quickly and easily script event sequences for in-engine cutscenes.

A few days after I released the game, it was featured in a video on the popular YouTube gaming channel AlphaBetaGamer, which has over 500,000 subscribers. The video has been viewed almost 15,000 times, which makes it one of the highest recognitions I have ever received.



Procedurally-Generated Cave Exploration Game

Mar 2021 - Present

Reservoir is an unfinished project I've been working on in my spare time. My main goal with it is to learn more about techniques for procedural content generation, since I've always been fascinated by that. I've also been using the project to study elegant collision detection and resolution methods, joint physics, and visual polish elements.

Currently, the game is a tech demo where the player can pilot a submarine through an infinite expanse of procedurally-generated caves, which are made up of chunks that are generated, loaded, and unloaded on the fly using multithreading to create the illusion of an endless environment. The game also spawns a white box for the player to play with; they can click on the box to carry it around using elastic rope physics.

Panic Room

GameMaker: Studio 1.4

Single-Room Arcade Platforming Game

2017 - Jul 2019

Panic Room was the first standalone game I ever released. I started it with the desire to prove to myself that I could take a game concept and see it through to completion and release, and after working on it off and on for about two years, I successfully put a bow on the game and published it on

The game follows a simple arcade-like gameplay loop, wherein the player tries to collect as many coins as possible as the environment slowly fills with hazards they must dodge. This project was largely my introduction to gameplay programming, and I learned a lot of fundamental skills like collision resolution, enemy AI, overall game management, animation implementation, and polish implementation over the course of the project. I also conducted a handful of playtests to determine how quickly the game should progress and which types of hazards worked best.