← ChampChase Dev Log

March 18, 2026

PIPELINEFEATURE

The Nuclear Rebuild Pattern

By Day 2 of the March sprint, I had a problem. Every screen in the game had broken serialized references. Unity scenes store component references by GUID, and after weeks of rapid iteration — adding fields, removing fields, restructuring hierarchies — those GUIDs were pointing at ghosts.

The fix was radical: the Nuclear Rebuild pattern.

1. SuppressSceneChildren() — disable everything Unity serialized. Don't destroy (that causes MissingReferenceException), just turn it all off.
2. NuclearRebuild() — create the entire UI from code. Every panel, every button, every text field.
3. Reassign all field references to the runtime objects. Downstream code doesn't know the difference.

Applied it to all 13 screens. The AchievementsPopup was the worst — 11 failed fix attempts before we went nuclear. Before: 1,713 lines. After: 913 lines. Cleaner, faster, and actually worked.

The Hub after nuclear rebuild — runtime-built UI, pixel-perfect layout
The Hub after nuclear rebuild — runtime-built UI, pixel-perfect layout
Shop screen — entirely runtime-built. 2-column grid, tabs, inline inspector.
Shop screen — entirely runtime-built. 2-column grid, tabs, inline inspector.
204 achievements after the nuclear rewrite. The AchievementsPopup was the worst — 11 failed fixes before going nuclear.
204 achievements after the nuclear rewrite. The AchievementsPopup was the worst — 11 failed fixes before going nuclear.

Read this in the full interactive devlog →

ChampChase — a story-driven boxing RPG. Climb from nothing to the belt. Free in the beta on iPhone and Android.