
Pokémon Emerald: Cathode
A narrative-focused ROM hack rebuilding the story of Pokémon Emerald from scratch — 74 phases shipped, 100+ planned.
Overview
A complete narrative reimagining of Pokémon Emerald. I am the project architect and game master — designing the story, writing dialogue, scripting events, and managing a 74-phase development pipeline.
Scale: The Hoenn region rebuilt. New villain team (Cathode), new story arcs, modified encounter tables, custom trainer AI. Every NPC has rewritten dialogue. Every gym battle has new stakes.
My role
- Architect & Game Master — full creative authority delegated by the project lead
- Developer — C code modifications to the decompiled Pokémon Emerald source
- Writer — all NPC dialogue, story structure, character arcs
- QA — scripted playtest harness using mGBA headless with Lua automation
Stats
| Metric | Value |
|---|---|
| Phases shipped | 74 |
| Lines of C modified | 15,000+ |
| NPCs rewritten | 200+ |
| Playtest commands | 128+ per full playthrough |
| Development time | Ongoing since June 2026 |
Notable design decisions
The Cathode organization replaces Team Magma/Aqua. They’re tech-industrial, not eco-terrorists. Their motivation is control through infrastructure — a metaphor that writes itself in 2026.
Flag management went through three architectural iterations before stabilizing on the engine’s SYSTEM_FLAGS + offset range. Early phases used naive flag IDs that collided with existing trainer data — a bug that would have silently broken post-game content 50 hours in.
The phantom-ship audit caught a critical bug: Phase 15’s commit message claimed a trainer battle script was wired up, but git show revealed the change was never committed. The entire “good ending” climax had been awarded without the player ever fighting the final boss. This led to the audit-subagent pattern now used across all phases.