Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 40 additions & 8 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,14 +66,46 @@ The native shim's ABI is tracked separately by `b2Version()` (currently `4`).
(spike-type — hurts from every side). L4's PIRANHA row is now twice as
long (four burrows on staggered timers).
- **Longer, re-spaced levels** (the layout law: widen before squeezing
a beat in), grown across two passes to L1 5568, L2 4032, L3 4800,
L4 4864. Existing verified beats are preserved in place; each level's
walled-door / steps finale shifts as a whole. New classic acts: a L1
"meadow gauntlet" (a one-way cloud over two slimes + a darting fly); a
L2 second machine bay (a third chained crusher + an always-on sweeping
saw); a L3 second snow cloud + a final glacier slime; a L4 "bowling
lane" (a second snail to shell-and-kick + a slime to bowl over). More
decor and a live `awake N/M` body count on the HUD.
a beat in), grown across several passes to L1 7552, L2 5952, L3 6592,
L4 6656. Existing verified beats are preserved in place; each level's
walled-door / steps finale shifts as a whole. Classic acts stacked on:
L1 a "meadow gauntlet" + a "homeward run" (chained thwomp + snail under
a cloud); L2 second and third machine bays (chained crushers + an
always-on saw + a snail); L3 a second snow cloud + a glacier slime,
snail and thwomp; L4 a "bowling lane" plus a snail-heavy finale.
**Snails are now used liberally** (L4 carries four), the **classic
chained-weight thwomps are back** in every level alongside L4's faced
crushers, and there are more clouds, coins, and decor throughout. A
live `awake N/M` body count on the HUD.
- **A marquee CRUSHER ALLEY + cloud hop closes every level** (the latest
pass: "show off the engine with as much pizzazz as possible"). Each
level's homeward stretch is now a row of FOUR tile-block thwomps the
hero times a dash BENEATH, biome-matched so the mechanic reads at a
glance — **green** blocks (L1, L2 grass), **blue** (L3 ice), **red**
(L4 haunted) — followed by a two-cloud HOP to the flag with coins up
top. Powered by a new `pTileFace` parameter on `pfMakeThwomp` (a plain
tile sprite, no mood-face swaps; the same drop/rest/rise/re-arm cycle,
so the alley never blocks the path for good). The four levels each grew
~1280px for the new gauntlets; the walled-door/steps finales shifted as
whole units; coins and their totals self-count as the level builds.
- **A per-frame optimization pass** against the kit's performance
playbook (FFI round-trips are the second-biggest per-frame cost). The
new crusher rows exposed that `pfTickThwomps` read each block's
position over the FFI *every frame even while ARMED* — a static body
resting at a fixed perch that cannot move until triggered — so it now
caches each perch x (`gBlockX`) and gates the armed→falling trigger on
that + the shared hero snapshot, paying `b2kPosition` only for the 0–1
blocks actually in motion (≈8 → ≈1 FFI/frame, identical trigger). Plus
the sliding-shell tick reads its velocity once (not twice) and the HUD
reuses the snapshotted player state and a single camera-scroll read. An
Opus audit confirmed every other per-frame tick was already at the
playbook's standard (O(1) idle gates, hoisted clocks, shared snapshot,
change-gated writes, sleep-friendly).
- **The L3 ice boulder slides ALL THE WAY** in its direction now (per
the user: "it is an ice block/boulder") - lower friction so it coasts
far, and its reset line moved off-screen-left (past the run, below the
camera edge) so a fresh one comes from the source rather than the old
one teleporting back in place.
- **User review fixes:** the SNAIL faced backwards relative to travel
(gotcha 26 — its sheet art is mirrored vs the slimes'); a per-row
`gSlimeFlip` polarity column inverts only its flip. The barrel's
Expand Down
Loading
Loading