Founder & CTO · Nov 2022 — Mar 2023

Overwhelming Studios

An independent game studio where I shipped two Unreal Engine 5 titles end to end: design, systems, engineering, and live devlogs. The work earned direct recognition from Ant Rogers, Head of UI/UX at PlayStation, reaching promotion-support stage with PlayStation Studios before visa constraints halted progression. Cloud auth and cross-device sync served 1,500+ players, with 30% faster load times and 25% better retention.

Packet Patrol — retro CRT-styled network-defense game by Overwhelming Studios

Packet Patrol

Retro network-defense · Unreal Engine 5 · developed & designed solo

A network-security game with a retro terminal soul: you patrol a stream of packets on a CRT-styled interface, spotting and quarantining anomalies before they reach the network. The aesthetic is the mechanic: the vintage-monitor presentation (photographed as a physical CRT prop for the trailer) turns anomaly detection into a period-piece puzzle. The design ran through storyboards and flow diagrams before any Blueprint was written.

Development sizzle video

Challenges & Learnings

  • Making detection gameplay legible: teaching players to read network traffic patterns without a tutorial wall.
  • Keeping the CRT post-processing look performant on mobile hardware budgets.
  • Solo scope discipline: a devlog-driven cadence with a public sizzle video as the forcing function.

Outcomes

  • Shipped as one of the studio's two UE5 titles with cloud auth and cross-device sync.
  • Part of the portfolio that earned PlayStation Studios promotion-support recognition.
  • Design-process artifacts (flow diagrams, storyboards) documented alongside the build.
Vegan Zombie Crop Apocalypse title screen — an Unreal Engine 5 first-person survival game set on an Australian outback road

Vegan Zombie: Crop Apocalypse

First-person survival · Unreal Engine 5 · developed & designed solo

A first-person survival romp set in the Australian outback: zombies want your crops, and you defend the farm shotgun-in-hand while gathering vegetables to complete randomized recipes. The interesting part is the systems work. A procedural recipe system generates a new recipe each run and live-tracks collected ingredients against it (requirements printed in yellow, current inventory state in red, updated every time you bank ingredients), which is what makes each run replayable rather than memorizable. Completing recipes grants randomized buffs (move speed or money) that feed a light economy loop.

Project trailer

Combat got the same systems treatment: a zombie health model (100 HP), tuned hitboxes, aim-detection improvements, health-bar widgets, and a shotgun with realistic spread and distance-based damage falloff on a parabolic curve:

// Shotgun damage: 100 at point-blank, parabolic falloff to a 5-damage floor
damage = (distance <= 50)
  ? 100 * pow(1 - distance / 50, 2)
  : 5;

Presentation-layer details carried the polish: a live vegetable-count 3D widget wired to the in-world collection bucket, a settings menu with functional graphics options, and quality-of-life fixes like vegetables no longer de-spawning in the bucket. Each landed and was documented in a dated devlog.

Systems shipped

  • Procedural recipe system with live ingredient tracking and per-run generation.
  • Parabolic damage falloff with realistic shotgun spread.
  • Zombie health system, tuned hitboxes, and aim detection.
  • In-world 3D widgets: vegetable counts, health bars.
  • Settings menu with functional graphical options.

Challenges & Learnings

  • Randomization needs guardrails to stay fun: recipes are generated, but tracking keeps progress legible.
  • Damage curves are feel, expressed as math: the parabola was tuned by playtest, then frozen as a formula.
  • Public devlogs create accountability: every entry shipped visible progress with screenshots.

From the devlogs

Devlog 1/15/23 — title screen, settings menu, zombie health system
1/15/23
Settings menu, zombie health system (100 HP), shotgun damage-range calculations.
Devlog 1/16/23 — live vegetable count 3D widget and zombie health bars
1/16/23
Better aim detection, fixed hitboxes, live vegetable-count 3D widget.
Devlog 1/18/23 — procedural recipe system with live ingredient tracking
1/18/23
Procedural recipe system: generated recipes with live ingredient tracking.
UC Santa Cruz · Jul — Aug 2022

Isoscapes

A procedurally generated, explorable, isometric 3D low-poly landscape, re-generated with the push of a button. Built in Unity; the project where the procedural-systems thread in my work started.

Iso-Scapes title screen: a procedurally generated isometric low-poly landscape of forests, cliffs, and water, with a Re-Generate button

Iso-Scapes

Procedural generation · Unity / C# · core architecture

Every landscape you see is generated, not authored: Perlin noise produces height values, falloff maps shape islands out of the noise, and an auto-tiling pass (built with my teammate Keenan) turns raw heights into coherent terrain: cliffs, shores, forests, and water. Hit Re-Generate and a new world assembles itself. The terrain algorithm was prototyped in p5.js first, where iteration is fast, then ported to C# for the real renderer.

Core architecture

  • Noise and falloff-map generation over a grid system for dynamic environment creation.
  • Cell, an abstract data structure holding each block object's attributes, keeping generation modular and data management clean.
  • Isometric camera with movement and zoom, tuned for exploring the generated worlds.

Outcomes

  • Released builds for both Windows and Mac.
  • The prototype-in-p5.js, ship-in-C# workflow became a habit: validate the algorithm where iteration is cheap, then port to where performance lives.
  • The procedural thread continued into Raveball Arena's music-driven generation and Vegan Zombie's recipe system.
Earlier Work

More games & experiments

Student and personal projects from UCSC's game design program, where most of my systems instincts were formed.

Raveball Arena

2022

A competitive game where music dictates rhythm and gameplay. I invented a music-information-retrieval algorithm from scratch in Unreal Engine 5 so the game responds to its own soundtrack.

C++UE5Audio MIR

Packet Control

2023

An arcade game for PC, Xbox, and PS5 with a music-reactive spawn system: a beat-matching algorithm syncs anomaly spawns to the soundtrack, with streak-based difficulty scaling.

Beat MatchingConsole

Never Alone

2021

A point-and-click adventure set on an early-2000s desktop, built in Phaser.js: fake popup ads, an in-game email system, simulated web browsing, and an adaptive soundtrack.

Phaser.jsNarrative

WanQuest

2021

A turn-based RPG built in one week with an eight-person team. I led the engineering: systems architecture in C#/Unity, the game-wide UI, and the Agile process, JIRA and Git included.

UnityTeam Lead

The Enigma

2018

An augmented-reality hackerspace game with pixel art, built on the Vuforia SDK with marker-based tracking effective to four meters.

AR / VuforiaC#
← Back to resume