← ChampChase Dev Log

April 14, 2026

PIPELINEPOLISHFEATUREFOUNDER

Dead Between Rounds

Friday, 3PM. Mid-push. The subscription flatlined.

I was right there. 71 passes away from where I am now, grinding toward a testable MVP build, fixing edge cases, wiring achievements, auditing every system in the game — and Claude just stopped. Weekly limit. Done. The pipeline went silent mid-sentence.

But here's the thing — Anthropic had given me €170 in free cloud credits. Just handed them out to subscribers. So I burned through them. Every last cent. Fixing the website, pushing more passes, running deep system audits. The credits evaporated in a couple of hours, six terminals eating tokens like it was nothing. And then those died too.

So I had a choice: sit around until Tuesday's reset, or make the dead time count.

I chose violence.

71 new pipeline passes. 400 to 470. Deep audits on every major system — fight presentation, daily economy, reward pipelines, effects and audio, settings persistence, dialogue safety. The kind of work where you trace every code path from boot to fight 42 and ask "what breaks here?" Companion abilities were dead code — all five of them had JSON definitions and empty stubs but zero gameplay effect. Now Lucky actually gives you +30% event chance, Matilda cuts your training time by 15%, Bartolomeo's "No Fear" gives +20% damage when you're behind. Eleven passive stat bonuses that were display-only are now wired into the fight engine.

Achievement wiring went from 86% to 95%. Ten new requirement types in one pass — glass cannon builds, bare knuckle wins, twelve-round wars, Rocky comebacks. Five more achievements that needed new save data fields: revenge wins, flawless chapters, shop visits, total currency spent, fight retries. All wired.

Sonya got renamed to Anya. The voice files already said "Anya" — the game was just showing the wrong name everywhere. Fourteen files across JSON and C#.

And the loading screens. Every single scene transition in the game now has a branded "CHAMP CHASE" loading screen with a spinning gear icon, a random gameplay tip, and a minimum 3-second display. Before this, half the transitions were hard cuts or invisible crossfades. It took seven passes to get right — I kept finding edge cases where the bootstrap chain hadn't initialized, or the overlay was rendering behind another canvas, or the scene loaded before the screen could even appear. Seven passes. One loading screen.

But the real time-killer — the thing I did when I had nothing left but hours to burn — was the voice line audit.

The announcer and the referee had lines that didn't match their situations. "Knockdown!" when nobody went down. "Get up!" when both fighters were standing. The lines were all generically named from when I first generated them, getting pulled from pools without any context matching. So I sat down with headphones and listened to every single affected voice line. Every announcer clip. Every referee call. Renamed each one so the correct line hooks into the correct event. Now the announcer says "knockdown" when there's actually a knockdown, and the ref counts when someone's actually on the canvas. It should feel a lot smoother.

And since I still had time — three new music packs.

Rally House. Hard Bass. Garage Techno.

I spent the downtime writing all my Suno prompts, getting every genre specification, tempo, mood, and structure ready so the moment I get access I can generate the tracks and clean them up. But I wasn't just going to sit on prompts. I opened Aseprite and drew the pixel art icons myself.

The garage one came out fire — skull with flames, you look at it and you hear distorted bass. The rally house icon is a rally car, simple, gets the point across. The hard bass one... honestly, I didn't know how to represent it, so I drew a tracksuit with a speaker on it. You look at it and you instantly know. It's fine. It works.

Once the tracks are generated and polished, they'll be available on the website too — same music player, three more mood packs to vibe to while you read the devlog.

Today the weekly reset hit. Literally as I was recording this. I'm back online.

The plan for today: finish the website polish pass so it actually loads properly on first visit — icons missing, assets not loading, the usual first-impression killers. Replace the gallery videos with up-to-date static screenshots of the actual current UI. Massive 9-slice polish pass on every panel and button in the game. Make sure every edge case is handled, every button works, every panel uses its allocated space properly.

470 passes. 71 since Friday. Three music packs drawn by hand. Every voice line audited by ear. And a reset that arrived just in time.

The bell just rang. Round 2.

Garage Techno mood pack icon. Hand-drawn in Aseprite. Skull with flames. You look at it and you hear distorted bass.
Garage Techno mood pack icon. Hand-drawn in Aseprite. Skull with flames. You look at it and you hear distorted bass.
Hard Bass mood pack icon. Tracksuit with the speaker. You know exactly what this sounds like.
Hard Bass mood pack icon. Tracksuit with the speaker. You know exactly what this sounds like.
Rally House mood pack icon. Rally car. Three new packs, all prompts ready for Suno.
Rally House mood pack icon. Rally car. Three new packs, all prompts ready for Suno.

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.