clone

an endless marble-race generator in the browser; the url is the seed, so every track can be shared

Progress: M10 complete notes + M11 handoff

Dami committed 2cb0eb0
commit
2cb0eb097a0c27610cc0f8389241e3000c679c00
parent
369c9cb17b87b05ac8298cc1a29fa1d509bdce4a
author
Dami <dami.etoile@gmail.com>
1 file changed, +26 -1
Mprogress.md27++++++++++++++++++++++++++-
M progress.md +26 -1
@@ -577,7 +577,32 @@ b3CreateMeshShape/b3World_Step/b3Body_GetPosition); double-precision positions
577577 by default — fits the endless line's unbounded coords; spike .wasm 369 KB.578578 b3MakeOffsetBoxHull is the workhorse for channel proxies.]579579 580-**M10 IMPLEMENTATION PLAN (worked out at M9 close):**580+**M10 — DONE (physics marble + checkpoints + respawn).** The endless marble is a581+Box3D body by default (?phys=0 → kinematic fallback).582+583+- src/gen/endless/proxies.ts: ONE generic collision law — curvature-aware slab584+ sampling of centerlines (floors pitch with slope, sunk 0.035 vs seam ridges;585+ walls are VERTICAL columns to floor+0.55 — pitched walls scissor wedge586+ pockets, taller walls spear stacked decks); drop-stacks = one cup per vertical587+ run (mouth at the cell edge, tight 3-wall tube open toward the receiver, full588+ bottom pan); VERTICAL_LIMIT 0.93 (steep chutes keep floors). Bumps excluded589+ from endless WFC until M11 prices momentum.590+- engine.ts: shared assist law (cruise 3.2, climb carry −g·ty+2.2 sized by RAIL591+ LOOKAHEAD max-slope-ahead, brake >7.5, hands-off on |ty|>0.6); Box3D mass is592+ SI (33.5 kg marble); sleep disabled.593+- endless.ts: per-segment static bodies + dense rails stream with the window;594+ nearest-station progress; checkpoints = segment entries; falls below the595+ co-live window + a 6s stall net respawn; repeated deaths at one checkpoint596+ ESCALATE to the next segment — forward progress guaranteed (user rule). Deaths597+ in HUD/CUA.598+- tests/physics_test.ts: real wasm under Deno; 5 seeds × 5 segments all599+ complete; trajectory hash identical across runs.600+- KNOWN (M11): cua-seed-1 seg 4–5 ramp base cycles even with climb carry (marble601+ slips diagonally; arrives too slow) — escalation nets it; the speed envelope602+ must ensure momentum arrival at steep ramps. Debug loop: scratchpad603+ phys-debug/phys-deep/phys-contact patterns.604+605+**Original M10 plan (for reference):**581606 582607 1. Vendor box3d at the pinned commit (extern/box3d or fetch script) + a build583608 task emitting static/dist/box3d.js+wasm from a hand-written C shim (keep the