2026-06-01

Diagnosing the Old Version Before Tearing the Rabbit Hole Apart

I decided to rebuild after playing the old version one more time.
The screen was rolling along, but I was left holding nothing.

The biggest problem was that there was no physics.
The rabbit was pinned to a fixed point on a path laid out with a Catmull-Rom curve, and the camera just followed that point at a constant speed.
No gravity, no jumping, no inertia, no acceleration or deceleration.
Pressing A/D instantly snapped the angle of the wall the rabbit was stuck to.
There was nowhere for any sense of weight to live.

The visuals were the exact opposite of what I intended.
A Stanford Bunny scan model (bunny.obj), flat white, zero animations.
The background was nearly black, and the walls were painted with a "dirty wall" PBR texture.
A game that was supposed to be a cozy fairy tale had turned into horror.

The clincher was the game's structure.
No obstacles, no fail condition.
You just hit 500m and it's over.
You'd pick up falling carrots, but missing them did absolutely nothing.
In a word, it was a "carrot-picking simulator."

Old version screen

The code wasn't honest either. tunnelGenerator.ts and collision.ts were built but never used, and the values in constants.ts didn't match the hardcoded values in the components.
The rapier dependency was declared but never actually ran.

Once I laid out all the symptoms, there was only one conclusion: this wasn't something a partial repair could fix.
In the next post I'll write about deciding what to use as the yardstick for drawing it all over again.

Next: Deciding the redesign direction →