Home Blog Contact

Building a Full Game in 48 Hours — Global Game Jam 2026

How I designed, engineered, and shipped Fragment of the Mask solo at NAU's Global Game Jam — and what I cut to make it happen.

Global Game Jam 2026 at NAU. 48 hours. Solo. The result: Fragment of the Mask — a complete action-survival game with OOP enemy AI, a 5-mode player transformation system, wave-based difficulty scaling, and adaptive audio. Published on itch.io before the deadline.

Here's exactly how it happened — the decisions I made, what I cut, what I kept, and what I learned.

Hour 0–2: The Theme Drop & Concept

The moment the theme was revealed, I had about 20 minutes to lock in a concept before I started losing time overthinking it. My rule for game jams: pick the first idea that makes you want to build it, not the cleverest one. Clever ideas take too long to explain and even longer to make fun.

Fragment of the Mask came from a simple question: what if your character's power level was a risk-reward decision you made every fight? That led to the transformation system — five combat archetypes with different tradeoffs, all tied to a health mechanic that made switching dangerous.

Game Jam Tip

Scope your core loop in the first 2 hours and write it down. Everything else is optional. For Fragment of the Mask: "player transforms to fight, enemies scale with time, survive as long as possible."

The 5-Mode Transformation System

This was the heart of the game. Each mode changed how the player moved, attacked, and survived:

The transformation was tied to the health system. Switching modes cost health. This meant every transformation was a bet — worth the trade or not? I tuned 12+ gameplay variables through rapid playtesting across the jam weekend to make each mode feel distinct but viable.

The Enemy AI Architecture

I built the enemy system using a parent-child class inheritance structure in GameMaker Studio 2. The parent object defined the shared behavior: pathfinding logic, health management, death handling, and the attack telegraph window (0.3–0.75 seconds depending on enemy type).

Three distinct enemy types inherited from the parent and overrode specific behaviors:

This architecture reduced code duplication by roughly 60% compared to building each enemy type independently, and made it trivial to balance behaviors without touching shared logic.

What I Cut (And Why That Was the Right Call)

By hour 30, I had a working game. But I had also planned 40% more features that weren't going to make it:

The Hard Rule

If a feature isn't in the game by hour 36, it doesn't exist. Scope creep in the last 12 hours kills more game jam entries than bugs do.

Cutting these was the right call. The core loop was fun, the AI was working, the five modes were balanced. Adding more would have introduced bugs I didn't have time to fix. The game shipped clean.

Technical Infrastructure

Beyond the gameplay systems, I built a complete technical foundation:

Performance target was 60 FPS with 30+ simultaneous entities. Hit it. Key was collision optimization — only checking collisions between entities within a certain radius rather than every entity against every other entity.

The Result

Fragment of the Mask shipped on time, published to both itch.io and the Global Game Jam platform. A complete, playable game with depth, built solo in 48 hours.

The real lesson: A game jam isn't about making the best game. It's about shipping a complete experience under pressure. Every decision you make is a trade-off between quality and time. Getting comfortable with that trade-off is what separates people who finish game jams from people who don't.

Play it here:

▶ Play Fragment of the Mask on itch.io
← All Posts Back to Portfolio →