Why Light Heroes Went Back Under Construction
The balance uncertainty I flagged at launch turned out to be real, and patching it live, piecemeal, wasn't the honest way to fix it.
Light Heroes is going offline behind an "Under Construction" notice today, less than two weeks after it launched. I want to explain that plainly rather than let it just be a quiet line in the update log, because pulling a shipped, playable game is a bigger call than patching one live, and it deserves an honest reason attached to it.
The balance uncertainty I flagged at launch turned out to be real
When this launched back on August 29, I wrote that it was the game I felt least certain about the balance of, specifically because it had the most simultaneously interacting systems of anything I'd built — five champion kits, a shared economy, a Dojo skill tree, and a magic gauge all leaning on each other at once. That uncertainty didn't stay theoretical. Real play surfaced exactly the kind of problem I'd worried about: interactions between systems that individually seemed fine but combined into balance issues significant enough that patching them piecemeal, live, risked leaving the game in a series of half-fixed states rather than actually resolving the underlying problem.
What specifically broke down between the systems
Without getting into every specific number, the core issue is that currency earned through the between-mission economy and points spent in the Dojo skill tree ended up interacting in a way that let certain champion and skill-path combinations snowball far ahead of others, which the magic-gauge combat balance was never tuned to expect. Each system in isolation behaved roughly as intended when I tested it on its own. It's specifically the compounding interaction between all of them running together, over a longer play session than my own testing sessions typically covered, that produced results meaningfully outside what I'd actually validated before launch.
Why patching live wasn't the right call here
Most balance issues on this site get fixed live, in place, without taking a game offline — a number gets adjusted, a drop rate gets retuned, and play continues uninterrupted. This felt different because the problems weren't isolated to one number I could nudge in place. They traced back to how the systems were designed to interact with each other in the first place, which meant a real fix touches the underlying structure, not just tuning values sitting on top of it. Patching structural problems live, incrementally, in a game people are actively playing risks a confusing string of small changes that never quite resolves the real issue, rather than one clear, deliberate rework landing all at once when it's actually ready.
Achievements and leaderboards make this harder to reverse quietly, too
Complicating this further: achievements and leaderboards both launched site-wide just five days ago, which means real scores and unlocked achievements already exist for this specific game under its current, imbalanced systems. A rework that changes the underlying economy has to reckon with that existing data rather than pretending the game is launching fresh — deciding what happens to scores earned under a balance that's about to change is its own small problem layered on top of the actual rework, one that wouldn't exist if achievements had shipped a week later than they did.
An honest notice beats a silently degraded game
The alternative to pulling it offline was leaving it live with known balance problems and hoping people wouldn't notice or mind, and I don't think that's a defensible choice once the problems are real enough that I already know about them myself. An "Under Construction" notice is a visible admission that something isn't right, which is a much more honest way to handle it than quietly leaving a flawed version live and letting players discover the imbalance themselves without any acknowledgment that it's a known, being-addressed issue rather than the intended experience.
What this means for the site's "ship small, extend later" pattern
This is a different shape of story than Blink's or Perfect Color's recent revamps, where a deliberately small version got extended once it proved itself. Light Heroes shipped large and complex from day one, and today is a step backward, not an extension. I think that's a fair data point in favor of the smaller-first approach I've been leaning on more heavily lately — a simpler initial version of Light Heroes, extended carefully once its core loop had proven out, might well have avoided needing this pause at all.
Taking a game offline is a different kind of decision than shipping one
Every other decision I've written about in this devlog has been about what to build or how to build it. This one is about admitting something already built and shipped isn't ready to keep standing as-is, which is a genuinely different kind of call to make. There's no clean design reasoning that makes this feel good — it's an acknowledgment that the scope taken on at launch outpaced what could be validated and balanced in the time available before real players started relying on it being fair. I'd rather make that acknowledgment directly than dress it up as something more comfortable than it actually is.
What comes next
I don't have a firm timeline for when this comes back, and I'd rather say that honestly than promise a date I might miss. What I do know is that it comes back reworked, not just retuned — the five-kit economy, the Dojo tree, and the magic gauge all need to be looked at together as one connected system rather than patched individually in isolation. It earned its five champions and its atmosphere in the first two weeks. It hasn't yet earned a stable foundation underneath them, and that's the actual work still ahead of it.
I'd rather write this post than skip it. A devlog that only ever covers wins isn't an honest record of how any of this actually gets built, and pulling a game offline two weeks after launch is exactly the kind of thing worth explaining plainly rather than burying in a one-line changelog entry and hoping nobody asks why.
More from the Devlog