~ Game Programming ~
#1)
Implement multiple completed games, including 3D games, using common tools, languages and
software for web, console, PC or mobile platforms.
Saucer
Date: February 2020
Role: Solo
Type: Class Project
Saucer is an endless 2D bullet hell. It was developed using the P5.js
language, exclusively for web on PC. It is complete with menus and a lose condition, and has 4 different
difficulties, including a hidden difficulty.
World view
Date: March 2023
Role: Programmer | Designer
Type: Game Jam
Jam: UAT Game Design Workshop Jam March 2023
Time-Limit: 48 Hours
Theme: Deception
Awards: Most Technical, Best Audio
World view is a 2D twin-stick shmup with 5 levels, where the final level is
endless. It was developed in Unity with C#, built and tested for Windows, Mac, and Linux systems. My role
included implementing all menus, including a pause and settings menu, programming audio, and general
bug-fixing. There is full controller support.
Magna Fisher
Date: March 2024
Role: Programmer | Designer
Type: Game Jam
Jam: Mini Jam 153, March 2024
Time-Limit: 72 Hours
Theme: Fishing
Limitation: No water
Magna Fisher is a 2D magnet fishing adventure game. It was developed in
Godot using GDScript, built and tested for web, and Windows and Linux systems. My role included implementing
the shop menus, inventory, scene transitions, pickups, and the base for upgrades. I was also involved in
prototyping the magnet with another programmer who would do the final implementation of it. There is full
controller support.
Tanks
Date: May 2022 - August 2022
Role: Solo (Not Art)
Type: Class Project
Tanks is a top-down 3D PvE tank shooter. It was developed in Unity using C#
for GPE205. It is complete with pause, settings, and main menus, audio, and lose and win conditions.
Mazes
Date: May 2023 - August 2023
Role: Solo (Not Art)
Type: Class Project
Mazes is a third person stealth maze game. It was developed in Unreal
Engine using C++ and Blueprints for GPE230. It is complete with pause, settings, and main menus, audio,
particles, and lose and win conditions. It also has several levels and pickups.
#2)
Design, develop and implement the architecture and infrastructure needed to support a
complete game project.
World view
Date: March 2023
Role: Programmer | Designer
Type: Game Jam
Jam: UAT Game Design Workshop Jam March 2023
Time-Limit: 48 Hours
Theme: Deception
Awards: Most Technical, Best Audio
World view is a 2D twin-stick shmup with 5 levels, where the final level is
endless. It was developed in Unity with C#, built and tested for Windows, Mac, and Linux systems. My role
included implementing all menus, including a pause and settings menu, programming audio, and general
bug-fixing. There is full controller support.
Magna Fisher
Date: March 2024
Role: Programmer | Designer
Type: Game Jam
Jam: Mini Jam 153, March 2024
Time-Limit: 72 Hours
Theme: Fishing
Limitation: No water
Magna Fisher is a 2D magnet fishing adventure game. It was developed in
Godot using GDScript, built and tested for web, and Windows and Linux systems. My role included implementing
the shop menus, inventory, scene transitions, pickups, and the base for upgrades. I was also involved in
prototyping the magnet with another programmer who would do the final implementation of it. There is full
controller support.
Buzz Off Beezwax!
Date: October 2022 - November 2022
Role: Solo (Not all art, No SFX)
Type: Game Jam
Jams: Game-a-Week Jam x3
Time-Limit: 10 Hours x3
Themes: Bees, Sequel, polish
Buzz Off Beezwax! is a game of chicken where you collect honey and run from
bees; with two game modes originally developed as separate titles. It was developed in Unity using C#. It is
complete with pause, settings, and main menus, audio, and multiple win and lose conditions.
Tanks
Date: May 2022 - August 2022
Role: Solo (Not Art)
Type: Class Project
Tanks is a top-down 3D PvE tank shooter. It was developed in Unity using C#
for GPE205. It is complete with pause, settings, and main menus, audio, and lose and win conditions.
Mazes
Date: May 2023 - August 2023
Role: Solo (Not Art)
Type: Class Project
Mazes is a third person stealth maze game. It was developed in Unreal
Engine using C++ and Blueprints for GPE230. It is complete with pause, settings, and main menus, audio,
particles, and lose and win conditions. It also has several levels and pickups.
#3)
Implement and analyze fundamental data structures and algorithms associated with game
applications supporting gameplay mechanics.
Firefighter Thingy
Date: October 2022
Role: Programmer
Jam: Game Design Workshop Jam
Time-Limit: 48 Hours
Theme: Liquid
Award: Most Technical
Firefighter Thingy is a twin-stick firefighting game where you put out
fires throughout an apartment building with a hose. It was developed in Unity with C#.
My role
included providing the foundation for another programmer to write procedural generation, teaching yet
another programmer how to do object pooling for the water. I wrote the audio system, including the ability
for dynamic fire volume based on the distance to the nearest fire, as well as a finite state machine for
game-state management, procedural generation for fire, the player using the pawn-controller pattern, and
generally debugged a lot of everything.
Desiree's Lab - Deltarune Level
Date: August 2023 - October 2023
Role: Level Design
Type: Class Project
Desiree's Lab is a Deltarune level built using the Kristal engine, which
itself is built on top of the LÖVE2D engine, which uses Lua. I found it a huge pain to write bullet patterns
featuring common… well, patterns, so I wrote a couple classes that extend Bullet that I would eventually
package as a library for Kristal. It implements bullets that can shoot bullets, including in sine-wave
patterns, as well as bullets that are actually a generated circle of bullets that move like a single bullet
and can optionally face inwards.
World view
Date: March 2023
Role: Programmer | Designer
Type: Game Jam
Jam: UAT Game Design Workshop Jam March 2023
Time-Limit: 48 Hours
Theme: Deception
Awards: Most Technical, Best Audio
World view is a 2D twin-stick shmup with 5 levels, where the final level is
endless. It was developed in Unity with C#. My role included implementing the title-sequence using
coroutines and lerp, the credits using coroutines, a timer for an object spawner, a singleton for the game
and audio managers, and linear volume changing.
Magna Fisher
Date: March 2024
Role: Programmer | Designer
Type: Game Jam
Jam: Mini Jam 153, March 2024
Time-Limit: 72 Hours
Theme: Fishing
Limitation: No water
Magna Fisher is a 2D magnet fishing adventure game. It was developed in
Godot using GDScript. My role included implementing the shop, which uses events for purchasing items that UI
and inventory functions listen for following the Observer pattern. I also implemented singleton managers to
track pickups and player upgrades, which themselves are resource files.
Tanks
Date: May 2022 - August 2022
Role: Solo (Not Art)
Type: Class Project
Tanks is a top-down 3D PvE tank shooter. It was developed in Unity using C#
for GPE205. It uses object pooling for projectiles, a finite state machine for game-state management,
singletons for game and pickup managers, the pawn-controller pattern for the player, procedural generation
over a 2D matrix for a random level, uses distance formula to calculate hearing of NoiseMakers, and queues
deletion of powerups over a timer.
Mazes
Date: May 2023 - August 2023
Role: Solo (Not Art)
Type: Class Project
Mazes is a third person stealth maze game. It was developed in Unreal
Engine using C++ and Blueprints for GPE230. It notably implements a health component that works with an
IKillable interface and spheretrace at the location of the fist socket on a punching animation for
hit-detection.
#4)
Use software development processes to analyze a project problem and to design, build and
test a corresponding software solution.
Desiree's Lab - Deltarune Level
Date: August 2023 - October 2023
Role: Level Design
Type: Class Project
Desiree's Lab is a Deltarune level built using the Kristal engine, which
itself is built on top of the LÖVE2D engine, which uses Lua. I found it a huge pain to write bullet patterns
featuring common… well, patterns, so I wrote a couple classes that extend Bullet that I would eventually
package as a library for Kristal. It implements bullets that can shoot bullets, including in sine-wave
patterns, as well as bullets that are actually a generated circle of bullets that move like a single bullet
and can optionally face inwards. When designing the feature implementation, I knew it should be easy to do
as much as possible when scripting bullet-patterns, using as little as possible. Additionally, since it's a
bullet-hell, it should be efficient. For example; circles of bullets move as one, utilizing parentage to the
center point and a list to keep track of which bullets are in the circle, preventing the need to manually
calculate on a pivot for each bullet when rotating or adjusting the circle. All features were tested as test
bullet-patterns in a test scene built to allow swapping bullet-patterns to be tested in and out with ease.
Magna Fisher
Date: March 2024
Role: Programmer | Designer
Type: Game Jam
Jam: Mini Jam 153, March 2024
Time-Limit: 72 Hours
Theme: Fishing
Limitation: No water
Magna Fisher is a 2D magnet fishing adventure game. It was developed in
Godot using GDScript. My role included implementing the shop, which uses events for purchasing items that UI
and inventory functions listen for following the Observer pattern. I also implemented singleton managers to
track pickups and player upgrades, which themselves are resource files. Since this was a game jam game,
features needed to be implemented quick, and since there was no tutorial, it needed to be as intuitive as
possible. Since Godot's Hbox Control auto-aligns its children when they're removed, the shop implementation
instead hides children, makes them un-interactible, and highlights a 'pedestal' so the player understands
where their cursor is when an upgrade isn't in stock. The features were tested directly in the scene, with
keyboard and controller, taking scene transitions into account separately.
#5)
Demonstrate development skills using multiple programming languages, development
environments and platforms, including advanced and/or experimental topics in game programming.
Project Wardog
Date: May 2022 - May 2023
Role: Project Lead | Lead Designer -> Lead Programmer
Type: Professional Project
Company: Goat On A Rock Studios
Status: Cancelled
Project Wardog is a serious management game where you buy and sell to two
sides of the same war, trying to keep it going as long as possible in order to turn a profit. It started
very early development in Unity using C#, and was later moved to Ren'Py using the Ren'Py language and
Python. When moved to Ren'Py, I implemented loading screens, the faction system, and the groundwork for the
purchase phase and moving between the 3 main phases.
Saucer
Date: Feb 2020
Role: Solo
Type: Class Project
Saucer is an endless 2D bullet hell. It was developed using the P5.js
language, exclusively for web on PC. It was developed via openprocessing.org in a college computer lab.
While simple, it implements it's own collision detection for the player, enemies, and the menu buttons, as
well as uses some basic trigonometry to set the velocities of newly-spawned enemies. The player can
accelerate and decelerate, and there's a basic state machine for managing game-state.
Tanks
Date: May 2022 - August 2022
Role: Solo (Not Art)
Type: Class Project
Tanks is a top-down 3D PvE tank shooter. It was developed in Unity using C#
for GPE205. It uses object pooling for projectiles, a finite state machine for game-state management,
singletons for game and pickup managers, the pawn-controller pattern for the player, procedural generation
over a 2D matrix for a random level, uses distance formula to calculate hearing of noisemakers, and queues
deletion of powerups over a timer.
Magna Fisher
Date: March 2024
Role: Programmer | Designer
Type: Game Jam
Jam: Mini Jam 153, March 2024
Time-Limit: 72 Hours
Theme: Fishing
Limitation: No water
Magna Fisher is a 2D magnet fishing adventure game. It was developed in
Godot using GDScript. My role included implementing the shop, which uses events for purchasing items that UI
and inventory functions listen for following the Observer pattern. I also implemented singleton managers to
track pickups and player upgrades, which themselves are resource files.
Mazes
Date: May 2023 - August 2023
Role: Solo (Not Art)
Type: Class Project
Mazes is a third person stealth maze game. It was developed in Unreal
Engine using C++ and Blueprints for GPE230. It notably implements a health component that works with an
IKillable interface and spheretrace at the location of the fist socket on a punching animation for
hit-detection.
Desiree's Lab - Deltarune Level
Date: August 2023 - October 2023
Role: Level Design
Type: Class Project
Desiree's Lab is a Deltarune level built using the Kristal engine, which
itself is built on top of the LÖVE2D engine, which uses Lua. I found it a huge pain to write bullet patterns
featuring common… well, patterns, so I wrote a couple classes that extend Bullet that I would eventually
package as a library for Kristal. It implements bullets that can shoot bullets, including in sine-wave
patterns, as well as bullets that are actually a generated circle of bullets that move like a single bullet
and can optionally face inwards.
#6)
Establish collaboration, mentorship and professional leadership skills by working with
other disciplines to deliver highly polished and completed projects.
Project Wardog
Date: May 2022 - May 2023
Role: Project Lead | Lead Designer -> Lead Programmer
Type: Professional Project
Company: Goat On A Rock Studios
Status: Cancelled
Project Wardog is a serious management game where you buy and sell to two
sides of the same war, trying to keep it going as long as possible in order to turn a profit. I led the team
first as Project Lead and Lead Designer, before eventually relinquishing Lead Designer to become Lead
Programmer myself. I also acted in-place of missing leads; notably for the art team. To this day (March
13th, 2024), I still act as a regular mentor for several former members of this team.
World view
Date: March 2023
Role: Programmer | Designer
Type: Game Jam
Jam: UAT Game Design Workshop Jam March 2023
Time-Limit: 48 Hours
Theme: Deception
Awards: Most Technical, Best Audio
World view is a 2D twin-stick shmup with 5 levels, where the final level is
endless. It was developed in Unity with C#. Aside from brainstorming and UX Design, I was mostly a
programmer here, where the other programmer and I communicated when we were touching certain files to avoid
any merge conflicts, particularly with prefabs and scenes. On the final day of the jam, we were just
implementing finishing touches and trading the controller as a team, making adjustments to various
parameters as necessary, resulting in a very polished jam project.
Magna Fisher
Date: March 2024
Role: Programmer | Designer
Type: Game Jam
Jam: Mini Jam 153, March 2024
Time-Limit: 72 Hours
Theme: Fishing
Limitation: No water
Magna Fisher is a 2D magnet fishing adventure game. It was developed in
Godot using GDScript. The game features a controllable magnet on a rope as its main mechanic. Brainstorming
happened over a virtual whiteboard, before moving to attempting several different prototypes for both the
rope and the magnet. For the first full day of the jam, it was me and another programmer prototyping the
magnet and rope respectively, with the other guy eventually joining me on the magnet when we thought the
rope was good. For days two and three, I split off to program the other important unimplemented pieces of
the game to ensure we had something while he continued to build off the ideas from our prototypes and make
tweaks based on mine and another designer's testing and vice versa.
~ Game Design ~
#1)
Prototype and complete original games for multiple platforms following the full game
production pipeline.
Saucer
Date: February 2020
Role: Solo
Type: Class Project
Saucer is an endless 2D bullet hell. It was developed using the P5js
language, exclusively for web on PC. It is complete with menus and a lose condition, and has 4 different
difficulties, including a hidden difficulty. I started with prototyping movement methods, before eventually
creating a vertical slice using the method I decided upon. From there, I started polishing the rougher
parts, and added two difficulties, while getting playtesting from friends during lunch period. Emergent
fierce lunch-time competition would encourage me to add a secret “Hell” difficulty mode later, along with
bug-fixes.
Magna Fisher
Date: March 2024
Role: Programmer | Designer
Type: Game Jam
Jam: Mini Jam 153, March 2024
Time-Limit: 72 Hours
Theme: Fishing
Limitation: No water
Magna Fisher is a 2D magnet fishing adventure game. It was developed in
Godot using GDScript, built and tested for web, and Windows and Linux systems. My role included implementing
the shop menus, inventory, scene transitions, pickups, and the base for upgrades. There is full controller
support. We initially met over a Discord call and digital whiteboard to brainstorm and plan, moving to
Trello once we had something solidified to then use Kanban for the rest of the jam.
World view
Date: March 2023
Role: Programmer | Designer
Type: Game Jam
Jam: UAT Game Design Workshop Jam March 2023
Time-Limit: 48 Hours
Theme: Deception
Awards: Most Technical, Best Audio
World view is a 2D twin-stick shmup with 5 levels, where the final level is
endless. It was developed in Unity with C#, built and tested for Windows, Mac, and Linux systems. My role
included implementing all menus, including a pause and settings menu, programming audio, and bug-fixing the
main game. There is full controller support. We initially met in a computer lab with a large whiteboard to
brainstorm and plan our production workflow, setting up a repository and Trello as we solidified a
backlog.
#2)
Create and implement game elements, systems and play mechanics using industry standard
tools, techniques and production methods, including art and scripting/programming applications.
World view
Date: March 2023
Role: Programmer | Designer
Type: Game Jam
Jam: UAT Game Design Workshop Jam March 2023
Time-Limit: 48 Hours
Theme: Deception
Awards: Most Technical, Best Audio
World view is a 2D twin-stick shmup with 5 levels, where the final level is
endless. It was developed in Unity with C#, using Git for version control. My role included implementing the
title-sequence using coroutines and lerp, the credits using coroutines, a timer for an object spawner, a
singleton for the game and audio managers, and linear volume changing.
Magna Fisher
Date: March 2024
Role: Programmer | Designer
Type: Game Jam
Jam: Mini Jam 153, March 2024
Time-Limit: 72 Hours
Theme: Fishing
Limitation: No water
Magna Fisher is a 2D magnet fishing adventure game. It was developed in
Godot using GDScript, built and tested for web, and Windows and Linux systems. My role included implementing
the shop menus, inventory, scene transitions, pickups, and the base for upgrades. There is full controller
support. We initially met over a Discord call and digital whiteboard to brainstorm and plan, moving to
Trello once we had something solidified to then use Kanban for the rest of the jam.
Project Wardog
Date: May 2022 - May 2023
Role: Project Lead | Lead Designer -> Lead Programmer
Type: Professional Project
Company: Goat On A Rock Studios
Status: Cancelled
Project Wardog is a serious management game where you buy and sell to two
sides of the same war, trying to keep it going as long as possible in order to turn a profit. It started
very early development in Unity using C#, and was later moved to Ren'Py using the Ren'Py language and
Python. When moved to Ren'Py, I implemented loading screens, the faction system, and the groundwork for the
purchase phase and moving between the 3 main phases. We used a mixture of Scrumban and Waterfall
methodologies, along with Google Docs for documentation and Google Drive for sharing files.
Phantasmagoria '42
Date: September 2022
Role: Artist / Designer
Jam: UAT Founder's Game Jam
Time-Limit: 45 Hours
Theme: Spring
Award: Most Technical, Best Design
Phantasmagoria '42 is a phantasmagorical shmup, where with each 5 enemies
downed, a new thought appears from a pool of over 100 possible thoughts, often alluding to the true nature
of what is going on. Before the jam; I sought out a particular programmer I knew would let me focus solely
on art so that I could do a jam as a solo-artist, which is what I did here using Aseprite.
Etiam
Date: November 2017 - March 2019
Role: Artist
Type: Hobby Project
Etiam is a space shmup developed using Lua in LÖVE2D, though I was a
solo-artist here and had no part in the programming. Over the course of a couple months; I would develop
hundreds of sprites and animations, many of which would go unimplemented. I started with the Piskel web-app,
before eventually moving to Aseprite.
Desiree's Lab - Deltarune Level
Date: August 2023 - October 2023
Role: Level Design
Type: Class Project
Desiree's Lab is a Deltarune fan-level built using the Kristal engine,
which itself is built on top of the LÖVE2D engine, which uses Lua. I found it a huge pain to write bullet
patterns featuring common… well, patterns, so I wrote a couple classes that extend Bullet that I would
eventually package as a library for Kristal. It implements bullets that can shoot bullets, including in
sine-wave patterns, as well as bullets that are actually a generated circle of bullets that move like a
single bullet and can optionally face inwards. Additionally; I worked with LÖVE2D's GLSL-like shader
language to create several shaders to create interesting backgrounds and a blizzard effect.
Mazes
Date: May 2023 - August 2023
Role: Solo (Not Art)
Type: Class Project
Mazes is a third person stealth maze game. It was developed in Unreal
Engine using C++ and Blueprints for GPE230. It notably implements a health component that works with an
IKillable interface and spheretrace at the location of the fist socket on a punching animation for
hit-detection.
#3)
Demonstrate effective game design practices and techniques within the project scope and
context, such as genre, style, platform and audience.
Project Wardog
Date: May 2022 - May 2023
Role: Project Lead | Lead Designer -> Lead Programmer
Type: Professional Project
Company: Goat On A Rock Studios
Status: Cancelled
Project Wardog is a serious management game where you buy and sell to two
sides of the same war, trying to keep it going as long as possible in order to turn a profit. The serious
goal of the project was to create an anti-war game where all proceeds would go to charity to support
humanitarian efforts for Ukraine in their war with Russia. It was imperative that no character offend anyone
around the globe, despite the necessity that ill-mannered and ill-intentioned characters would need to exist
given the subject matter, and so research was done to diversify characters as much as possible, and
outsiders from a variety of backgrounds were brought in to read over dialogue and give feedback on assets as
soon as we were able. Additionally; I personally did lots of marketing and market research, and strongly
pushed the use of a variety of compositional techniques to achieve our targeted emotions.
World view
Date: March 2023
Role: Programmer | Designer
Type: Game Jam
Jam: UAT Game Design Workshop Jam March 2023
Time-Limit: 48 Hours
Theme: Deception
Awards: Most Technical, Best Audio
World view is a 2D twin-stick shmup with 5 levels, where the final level is
endless. It was developed in Unity with C#. Aside from brainstorming and UX Design, I was mostly a
programmer here, where the other programmer and I communicated when we were touching certain files to avoid
Unity merge conflicts in Git. On the final day of the jam, we were just implementing finishing touches and
trading the controller as a team, making adjustments to various parameters as necessary, resulting in a very
polished jam project.
Super Meat Boy Level Collection
Date: May 2023 - August 2023
Role: Level Design
Type: Class Project
My Super Meat Boy Level Collection is a collection of 4 levels, spanning the first
4/6 worlds of Super Meat Boy. The process of creating each level consisted of a run-through of the
target world to give myself an idea of how difficult the level should be for me to complete, followed by a
run-through for mass-screenshots and analysis. Since the ideas in the set design and each mechanic is used
in tend to repeat or otherwise be simple chains of other ideas, I take note of what stands out to me during
this run as well. My next step was to actually block out the level, based loosely on sketches of chains of
the aforementioned level design idea notes, but also with the context of jump distance, speed, and pacing,
as well as making sure multiple paths existed, including a more difficult path for acquiring a collectible
bandage. Once everything felt right regarding pacing, I would go through and start plotting out the set
design, being careful to stay within object-count limits and use the limited layers to their fullest
capacity.
VVRequited - VVVVVV Level
Date: November 2023 - December 2023
Role: Level Design
Type: Class Project
VVRequited is a level made for VVVVVV that effectively has 4
stages within it, totaling at 55 unique rooms and around a dozen cutscenes. Thematically; the level was to
tie up loose ends left by the main game in regards to a mutual unrequited love between two crew-members, who
ask their captain for romantic advice at separate points during the main game. My process involved playing
through part of the game while taking screenshots at inspirational points, similar to what I did for the
Super Meat Boy Level Collection. The biggest difference is that I had to take into account differing lengths
of stages compared to the main game, and that my “overworld” was only 3 rooms so I could focus my time on
the platforming challenges of each stage.
Desiree's Lab - Deltarune Level
Date: August 2023 - October 2023
Role: Level Design
Type: Class Project
Desiree's Lab is a Deltarune level focusing on a custom secret
boss. I developed this alongside a friend as they were doing their own Deltarune level, so we could
exchange information and both accomplish more with the time we had. I focused mostly on the boss fight
itself, but also made sure the ambiance building up to the fight felt right. I dove into writing shader-code
in LÖVE2D's GLSL-like shader-language as a way to make whacky backgrounds that hint towards the phases of
the fight, each of which has different affects on boss and player stats as the flashy secret boss gimmick
that Deltarune secret bosses have. The backgrounds themselves were Earthbound-inspired,
taking from Deltarune's own inspiration, and since it was meant to be difficult, I additionally
decided to lean into Deltarune's Touhou inspiration for bullet-pattern inspiration.
#4)
Demonstrate the ability to evaluate game designs for a variety of gameplay mechanics,
game applications and game genres.
What Makes A Good Game?
Date: January 2024
Type: Analysis/Evaluation
What Makes A Good Game? is a short, general analysis of the medium that
makes a statement on three core pieces that every game needs, and uses many examples spanning several genres
to make each point. The three core pieces can be summed up as; interesting and consistent art, a fun core
concept, and good feedback. An example of elaboration for “interesting and consistent art” could be how the
simple geometric shapes from Thomas Was Alone, the stylistic choices of any Nintendo game, or how
the beautifully composed Metal Gear Solid series supports their gameplay, narrative, and everything
else about what each respective game's identity is.
Rethinking Death
Date: March 2024
Type: Analysis/Evaluation
Rethinking Death is a short write-up on removing death from three games
from different genres. Specifically; rhythm game, Muse Dash, the shmup, Freedom Finger,
and the turn-based JRPG, Persona 5. As an example, the basic idea behind rethinking death in
Freedom Finger involves implementing immortality, but a damageable ship that slowly removes
fingers, along with abilities such as the ability to grab or punch. This means less opportunity for points
and more opportunity for failing the mission in other ways, but also more opportunity for practicing and
listening to the music (it has rhythm game elements) and not having to redo several-minute auto-scrollers in
a rather difficult, but otherwise interesting, narrative game.
Analysis: Sonic Adventure 2: Battle - City Escape
Date: May 2023
Type: Analysis/Evaluation
A 2-page analysis of the first level of largely linear 3D platformer adventure game,
Sonic Adventure 2: Battle, City Escape. It largely goes into how the level teaches the player what
they can do, starting with the assumption that they don't even know how to move. It also goes into how the
level leads the player along and presents options and objectives throughout the level, and how it provides
feedback to the player.
#5)
Effectively articulate game design elements and mechanics across disciplines utilizing
written and verbal communication skills.
Project Wardog
Date: May 2022 - May 2023
Role: Project Lead | Lead Designer -> Lead Programmer
Type: Professional Project
Company: Goat On A Rock Studios
Status: Cancelled
Project Wardog is a serious management game where you buy and sell to two
sides of the same war, trying to keep it going as long as possible in order to turn a profit. I led the team
first as Team Lead / Lead Design, before eventually relinquishing Lead Designer to become Lead Programmer
myself. I also acted in-place of missing leads; notably for the art team. To this day (March 13th, 2024), I
still act as a mentor for former members of this team, and am advising on one of their current Production
Studio projects. Additionally; I wrote the initial Game Design Document, and as Team Lead created and
encouraged the use of dedicated feedback channels for each discipline, giving transparency to the whole team
on how things were going in each disciplinary team, as well as the ability for others across the team to
give feedback of their own.
Magna Fisher
Date: March 2024
Role: Programmer | Designer
Type: Game Jam
Jam: Mini Jam 153, March 2024
Time-Limit: 72 Hours
Theme: Fishing
Limitation: No water
Magna Fisher is a 2D magnet fishing adventure game. It was developed in
Godot using GDScript, built and tested for web, and Windows and Linux systems. My role included implementing
the shop menus, inventory, scene transitions, pickups, and the base for upgrades. Additionally; as a
programmer and designer I would become a central point of communication when artists split off to do their
work and come back to check in or ask about deliverable requirements for implementation that may have been
missed on our Trello. We initially met over a Discord call and digital whiteboard to brainstorm and plan,
moving to Trello once we had something solidified to then use Kanban for the rest of the jam.
Firefighter Thingy
Date: October 2022
Role: Programmer
Jam: Game Design Workshop Jam
Time-Limit: 48 Hours
Theme: Liquid
Award: Most Technical
Firefighter Thingy is a twin-stick firefighting game where you put out
fires throughout an apartment building with a hose. It was developed in Unity with C#. My role included
providing the foundation for another programmer to write procedural generation, including how it needed to
function to be passed off to designers to create rooms, and teaching yet another programmer how to do object
pooling for the water, including a description of how said water should appear and interact with the
environment.
World view
Date: March 2023
Role: Programmer | Designer
Type: Game Jam
Jam: UAT Game Design Workshop Jam March 2023
Time-Limit: 48 Hours
Theme: Deception
Awards: Most Technical, Best Audio
World view is a 2D twin-stick shmup with 5 levels, where the final level is
endless. It was developed in Unity with C#. Aside from brainstorming and UX Design, where I pitched the idea
of utilizing arcade graphics as a way to “deceive” the player, slowly guiding them to an understanding of
where they are, while also guiding them to false interpretations along the way (Unknown → Space→ Underwater
→ Deep Sea → Snow Globe). I was mostly a programmer here, where the other programmer and I communicated when
we were touching certain files to avoid Unity merge conflicts in Git. On the final day of the jam, we were
just implementing finishing touches and trading the controller as a team, making adjustments to various
parameters as necessary, resulting in a very polished jam project.
#6)
Establish collaboration, mentorship and professional leadership skills by working with
other disciplines to deliver highly polished and completed projects.
Project Wardog
Date: May 2022 - May 2023
Role: Project Lead | Lead Designer -> Lead Programmer
Type: Professional Project
Company: Goat On A Rock Studios
Status: Cancelled
Project Wardog is a serious management game where you buy and sell to two
sides of the same war, trying to keep it going as long as possible in order to turn a profit. I led the team
first as Project Lead and Lead Designer, before eventually relinquishing Lead Designer to become Lead
Programmer myself. I also acted in-place of missing leads; notably for the art team. To this day (March
13th, 2024), I still act as a regular mentor for several former members of this team.
World view
Date: March 2023
Role: Programmer | Designer
Type: Game Jam
Jam: UAT Game Design Workshop Jam March 2023
Time-Limit: 48 Hours
Theme: Deception
Awards: Most Technical, Best Audio
World view is a 2D twin-stick shmup with 5 levels, where the final level is
endless. It was developed in Unity with C#. Aside from brainstorming and UX Design, I was mostly a
programmer here, where the other programmer and I communicated when we were touching certain files to avoid
any merge conflicts, particularly with prefabs and scenes. On the final day of the jam, we were just
implementing finishing touches and trading the controller as a team, making adjustments to various
parameters as necessary, resulting in a very polished jam project.
Magna Fisher
Date: March 2024
Role: Programmer | Designer
Type: Game Jam
Jam: Mini Jam 153, March 2024
Time-Limit: 72 Hours
Theme: Fishing
Limitation: No water
Magna Fisher is a 2D magnet fishing adventure game. It was developed in
Godot using GDScript. The game features a controllable magnet on a rope as its main mechanic. Brainstorming
happened over a virtual whiteboard, before moving to attempting several different prototypes for both the
rope and the magnet. For the first full day of the jam, it was me and another programmer prototyping the
magnet and rope respectively, with the other guy eventually joining me on the magnet when we thought the
rope was good. For days two and three, I split off to program the other important unimplemented pieces of
the game to ensure we had something while he continued to build off the ideas from our prototypes and make
tweaks based on mine and another designer's testing and vice versa.