Unannounced - Big Red Button Ent.

I am currently working as a senior gameplay programmer on unannounced projects in the Unreal and Unity engines.

Seven Miracles - Panogramma

I worked as the lead programmer on Seven Miracles 6DOF, the first feature-length VR film, in the Unity engine. I helped created full 3D scenes, and added support for multiple VR headsets. See more here.

King Tut's Tomb - Experius VR

At Experius VR, I worked on a VR project using photogrammetry assets from King Tut's Tomb. The project is built in Unreal Engine 4 using blueprints and C++. I worked with artists and designers to build gameplay features and improve them based on feedback from designers and our publisher.

Zipliner VR - International Headquarters

A VR game made in the UE4 using blueprints at International Headquarters. I worked as lead programmer, wrote the zipline movement system, optimized for performance and assisted in design work.

Derelict 54 & VR

Derelict 54 is a first-person and VR adventure game I made in the Unreal Engine. It takes my ideas from Terminal 2, and translates them into full 3D, letting the player explore and try to survive a broken down space station. It also includes a VR port/remake for the HTC Vive and Oculus Rift (360-degree tracking and room scale required).
Source Code (Github)
Related Writing
Play Here (VR and First-Person)


Eventide is a first-person, parkour-focused platformer made in the Unreal Engine. Inspired by Mirror's Edge's Pure Time Trials DLC, and indie title Refunct, this game is a speed challenge level that test the player on the game's low-level mechanics. I built the movement system from the ground up using a third-person animation blueprint to add a sense of presence and weight to the player's movements.
Related Writing
Source Code (Github)
Play Here

Rooms One Through Four

An experimental narrative game designed by David Kennedy. I did extra programming work to flesh out some of the systems and optimize the level.
Source Code (Github)

Skyrim Tombs

Using Skyrim's version of the Creation Kit and Payprus, I created three immersive sim-styled tomb maps. I focused on complex level layouts filled with trap and puzzles that moved at a slower pace than the base game.

Here's a zip file of my final maps, with installation instructions included.



DM-LaserTag is a custom map I created for the new Unreal Tournament. In it, I tried to capture the style of all the low-budget laser tag arenas I went to as a kid. It's packed with glowing surfaces, weird, misplaced cover, and entirely too much neon.

How to Play The Map (This is needlessly complicated until Epic figures out a better way of sharing user maps)
Requires Unreal Tournament from the Epic Games Launcher
-Download the map from here (Compiled May 28, 2017)
-Copy it to [Unreal Tournament Install Directory]\UnrealTournament\Content\Paks
-Open Unreal Tournament
-Click "Play", "Start LAN Match", "Custom"
-Under the Maps dropdown, select DM-LaserTag1

Terminal 2

Terminal 2 was my first attempt at capturing a type of game genre that I noticed emerging in first-person adventure games I loved. Soma, Near Death and Alien Isolation all involved trying to fix up a decaying, human-created station, while completing objectives and avoiding hazards. I found these games incredibly engaging, not for their horror elements and puzzles, but instead for the rhythms of play that they created, with players moving from area to area, fixing the power, looking for new objectives, and trying to stay alive. I loved this genre enough that I wrote an entire blog post about how fascinating the ideas are.

Terminal 2 focused on what I think is an underexplored element of those games, namely, the broken computer terminals scattered throughout the environment that the player would struggle with. I tried to keep it localized to a single, diegetic screen, pretending to be the fictional computer terminal the player was interacting with. The puzzles in the game aren't complex or mind-bending, and are mostly about thoroughly searching all available areas and following written directions, which is exactly what made the games that inspired it so appealing.

I wrote this entirely using HTML and JavaScript, instead of something more powerful like Twine, but I tried to get as much substance out of those tools as I could to get across the feeling of games with much larger budgets and scopes.

Play Here


Kroz is a Twine remake of Zork, Infocom's classic text adventure game. I was really interested at the time in the difference between text parser-based adventure games and more contemporary adventure games with clearly communicated inputs.

Kroz works more as an experiment than a satisfying game in and of itself, because it highlights how many of the puzzles that worked so well in Zork are less effective when every option the player can take has to be conveyed to them directly. Still, the less confusing structure of a Twine game, coupled with its use of the widely-know hypertext format, made it more accessible than Zork, which has a well-deserved reputation for impenetrability. Despite having much more advanced tools than Infocom's original team, I left Kroz feeling jealous of the format that they were able to use, with a text parser allowing for much more creative, if difficult to discover, solutions to problems.

I find the experiment to still be valuable, however, because many contemporary adventure games cannot pull off the puzzles and aesthetics of Zork, and learning how to properly adapt and explore them could give designers access to a wealth of underexplored potential.
Note: I later found out that the devs at Infocom actually didn't like the cover I ended up using. However, I lost the original Twine project files, so I can't change it to the objectively better cover, here.
Play Here