A big day with one finding that changes how the whole game feels, so that comes first.
The game ran physics at 50 Hz, not 120
The bootstrap sets the physics timestep to 1/120 of a second, but only in memory. The project's own settings file still held the 0.02 from the January 2025 template. So play mode and every built game ran at 50 Hz, while every reach, apex and clock in every stage builder had been solved at 120.
It surfaced because a new updraught vent lifted the cat 0.33 of a unit short of what it was solved for. The setting is now written to disk, read back in play, and the bootstrap persists it so it cannot be lost again.
| Before | After | |
|---|---|---|
| Physics rate | 50 Hz | 120 Hz |
| Vent lift shortfall (as measured that day) | 0.33 u | 0.11 u |
Every playtest on a pad before this ran at 50 Hz. At 120 input reaches the cat faster and jumps go the height the stages were designed around. Some jumps that felt tight or impossible may simply have been this. The builders' numbers all assume 120, so the fix is expected to make the game match them, not break it. (The 0.11 was later shown to be an artefact of how it was sampled, which is the next post.)
Sugar you pour into a floor
World 4's flare is a mechanic called the Set, built across eight runtime files and checked in play, not just compiled. Walk into a tap to fill up; drops over his head show how many pours he carries. Hold down and press claw to pour. A pour snaps to the spot the stage authored for it, or lands on the floor below him.
A pour is in one of three states:
| State | What it does to the cat |
|---|---|
| Running (golden, a glint slides along it) | He wades at 40% speed and cannot jump. |
| Tacky (matte, darker) | He is held: a slow shuffle, no jump. Three claws and he hops free. |
| Set (hard edge, cracks) | A solid floor. |
Nothing in the Set deals damage. There is a safety rule to match: a slab never turns solid around a cat. If he is standing in it when it sets, it waits until he has walked or clawed out. Verified in play: non-solid while he was inside, solid the moment he was clear.
Landing on set sugar with jump held throws him 4.97 units and breaks the slab, so the stomp becomes an eraser. An enemy caught in tacky sugar is frozen, and when the pour sets it becomes a solid lump with the body inside. Break the lump and it comes back out.
The design document named the verb, "pour while falling", but never a button, and every button was taken. Down plus jump is already the drop-through and a plain claw still scratches, so the pour is down plus claw.
The climb that uses all this is measured on every build. The time to come down onto the next dome is 1.48 s with the air jump, against the shop's 1.2 s set time, 0.28 s to spare. Without the air jump it is 0.94 s, so the air jump stays mandatory, as designed. Elsewhere in the same stage the best jump in the game falls 0.570 u short of the next ledge, which is why the poured domes are required.
Play-testing found four real bugs, among them an enemy check that always came back empty. The project's own notes explain why physics queries miss enemies, so it now uses the same enemy registry the stomp does.
A feature that was one object short
For weeks the build had reported the sewer's soak system as unbuilt. It was not: all four files had shipped, 2,043 lines. What was missing was a single director object in the scene, so no cat ever received a soak component. Installing it in all three stages made a cat crossing the water read Damp on its first try.
Two decisions came with it. Shaking dry is the only way to shed a soak step, and it is now the loudest noise in the room: the sewer's dog hears it at 1.5 times his normal range and ignores his noise cooldown. The dog arrives because you healed yourself. And the dog's own shake now soaks every cat inside the ring by two steps, still with zero damage, ever.
The sewer flows
The stream now carries the cat east at 2.5 units per second, using the same number and the same component as the scree in World 4, so both worlds' moving surfaces speak in one figure. It acts only on the stream's bed; the brick beyond is still. It is a carry, never damage, and in the air he is his own.
The last stage flows against him, because it is the walk upstream. Measured in play:
| Cat | Result |
|---|---|
| Dry, standing still | Drifts back at 2.49 u/s and stops cleanly against a 0.625 step |
| Sodden, walking upstream | Makes 0.91 u/s |
The second figure is exactly the design document's "2.5 against a sodden 3.4". That stage now fails its build if any future retune of walk speed, sodden scale or wade scale would let the flow hold a cat still. Today it passes with 0.91 u/s to spare.
A dryer vent in the first sewer stage is the world's first dry station. A sodden cat standing in the warm air was dry about 6 s later, one step every 2.0 s. The flow also parked the cat on a brick nib by stopping exactly at its face, 0.013 u inside it, so the engine's un-stick pushed him 0.75 up onto the corner where he hung in mid-air. The carry now stops a hair short of any face and refuses any move that would overlap solid ground.
Save files, stars and a meow
Three save files, picked on the title in the style of Super Mario World, with a double confirm before erasing. A file keeps cleared stages, the room you stand in on the map, paw tokens, stars, best times and both cats' lives, shop lives included. A new file starts every cat on 9, and a game over refills them to 9 while keeping everything cleared. Score is not saved. It saves itself at a goal, on reaching the map, on entering a room and after buying something, so there is no prompt to forget.
Every stage now has bronze, silver and gold target times, worth one, two and three stars, shown on the world map under each stage. The targets are estimates worked out from the distance to each goal, not from timed runs, and they will move after playtesting.
Mittens can meow, on a stick click or L. Every recording in the meow folder plays at random, never the same one twice running, forced to mono and normalised to match loudness. Simon meows a little lower. Wind-up mice nearby turn tail and scurry. Three synthesised meows stand in until real recordings arrive.
Smaller fixes
- A boss's web collider sat inside a standing cat. The web top is now 2.0, with the rack hook tied to it so the puzzle keeps its geometry.
- The assert that proves a boss needs the cobweb had a sign error, so it was measuring the wrong thing.
- The results tally now shows the whole picture, and previews the bonus with the exact method that pays it, so the TOTAL on screen is the number the HUD will read.
- Five build reports told the next reader to write code that already exists. They now say what is really missing. A stale seam report is worse than none.
