// 01
Purpose
Shattered Melodies is the first shipped title from Ayo Games Studios, completed during my Master's program at Full Sail University. The project brought together over 20 developers across programming, design, art, and audio — all working toward a single shippable game on Steam.
As a gameplay programmer, my focus was building the systems that made the world feel interactive and alive — puzzles that rewarded curiosity, AI that reacted believably, UI that added immersion, and economy systems that gave players meaningful choices. Each system had to be modular enough to be handed off or extended by teammates on a live production schedule.
The project was my first experience shipping a game as part of a real multi-disciplinary team, managing code in a shared environment, and building systems to a production standard rather than a prototype standard.
// 02
Implementation
Each system below was designed, built, and iterated on as part of the production pipeline. Click any play button to watch the system in action.
-
Key-Based Color Puzzle System Interacting with crystals cycles them through four colors. A loop checks each crystal's alignment against required keys — correct alignment triggers a ballad and opens the door, while incorrect input flashes the crystals white three times and plays a siren before resetting. Provides a puzzle challenge that doubles as a musical narrative element.Watch Clip
-
Spline Pathfinding with Player Toggle Built using a spline that follows line traces for pathfinding, avoiding unwalkable areas. A toggle system lets players switch between a visual spline with VFX, a simple HUD marker, or navigation off entirely. Quests tie to collision events, enabling cutscene triggers and objective completion logic.Watch Clip
-
Array-Based Economy System Built using arrays to handle item storage, transfers, and removals. The Shopkeeper Actor prompts a UI shop interface with modular item pools defined per level — ranging from low- to high-potency items. Items sell at reduced value, and the system includes a working in-game currency with full buy/sell logic.Watch Clip
-
Live Character Preview via Scene Capture Spawned a separate player actor beneath the map when the pause menu opens, rendered via a UI scene capture component into a render target. The actor remains tickable during pause for smooth rotation, and is destroyed once the game resumes — similar in presentation to Kingdom Hearts' pause menu character display.Watch Clip
-
Dynamic Material Parameter via Struct Used a dynamic material parameter stored in the Muse struct. When the player switches companions, the system calls the struct and updates the material parameter to reflect the correct floating note color — all handled through a single reusable material, reducing asset overhead while delivering clear visual feedback.Watch Clip
-
Interactive Object with Health & VFX Built from a static mesh with connected lights, collision, smoke VFX, zap SFX, and a health component. When struck by the player's weapon, the machine takes damage, rotates via a timeline for hit reaction, and dispenses items until its health is depleted — at which point it shuts down with flashing lights, smoke, and zap effects.Watch Clip
-
Concert-Style Randomized Light Arrays Built using point lights paired with cone meshes, linked through arrays to synchronize their colors. Array indexes are randomized to create dynamic light shifts, while a timeline rotates the lights by 45 degrees to simulate theater-style motion — elevating the boss fight with performance-inspired atmosphere.Watch Clip
-
Behavior Trees with EQS Strafing Built with Behavior Trees using line traces for target detection and capsule collisions for weapon and body hit registration. Integrated EQS for strafing behavior and added sheath/unsheath mechanics by spawning and destroying Weapon Actors with synced animations, creating tactical, cinematic enemies.Watch Clip
-
In-World Item Consumption Handles item use directly from the inventory — applying stat effects, triggering animations, and removing the consumed item from the array. Designed to be modular so any item type can define its own use behavior without modifying the core system.Watch Clip
-
Runtime Camera Collision Fix Diagnosed and resolved a camera clipping issue where the spring arm would pass through geometry in tight spaces. Adjusted collision channel responses and spring arm settings to prevent clipping while maintaining smooth camera behavior during combat and exploration.Watch Clip
-
Sequencer-Driven Intro Cinematic Built using UE5's Sequencer to choreograph the opening cinematic — camera movement, character animations, and timed audio events. Triggered on game start with proper input lock and handoff back to gameplay on completion.Watch Clip
-
Prototype AI — Iteration Before Classical Knights The first pass at enemy AI before the Classical Knights system was built. Documents the iteration process — initial behavior logic, early detection issues, and what informed the final Behavior Tree architecture used in production.Watch Clip
// 03
Impact
Shattered Melodies shipped on Steam as a complete, playable title — the result of coordinated production across a 20+ person team. My contributions spanned gameplay systems, AI, UI, economy, and environmental systems.
20+
Team Members
12
Systems Built
Steam
Publicly Shipped
M.S.
Master's Capstone
// 04
Media Gallery
Gameplay Footage
System Clips
// 05
Takeaway
Shattered Melodies was my first experience shipping a game as part of a real multi-disciplinary production team. Working alongside 20+ people across programming, design, art, and audio taught me something that solo projects can't — how to write code that someone else can read, extend, and depend on.
Every system I built had to integrate cleanly with work I didn't control. The shopkeeper needed to respect the inventory system built by another programmer. The quest system had to fire events that the cutscene team was waiting on. That constraint pushed me to think about interfaces and modularity in ways that prototype work never demands.
The iteration visible in the AI work — from the first prototype attempt to the final Classical Knights system — reflects how production actually works. The first pass wasn't wrong, it was information. The final system was better because of what we learned from the prototype.
Shipping on Steam as a capstone project is something I'm genuinely proud of. It's not a demo or a vertical slice — it's a game that players can download and play today. That standard shapes how I approach every project since.