- Leaderboard at MOST '#PLACE/N' — very simple ui, no strips. - Toasts read as web; restyle from the user's UI asset library (kennygames/UI assets — Sci-fi pack candidate). - Gravity pitch clarified: the intended feature is island-to-island 90/180-degree GRAVITY DIRECTION CHANGES (wall/ceiling riding); camera-lean idea subsumed. - Fans become interactive directional-force elements (force volumes tied to fan placements). - Audio parked entirely: user hated the procedural ambient; future samples from the game assets library.
- commit
- d16b36267744182c14f8d545b65b2477955f9d59
- parent
- 9ce417398d381fa7867d060685981d3920be504e
- author
- Dami <dami.etoile@gmail.com>
| M | progress.md | 45 | ++++++++++++++++++++++++------ |
@@ -10,13 +10,14 @@ finite inspection bench. 116 tests green.
1010 1111 ## Race presentation1212 13-- **Race HUD**: leaderboard strip (top ranks + hero rank), name labels14- over nearby marbles (racer identities exist — `racerIdentity`), maybe15- a fuel gauge for the camera subject. The CUA `race` telemetry already16- carries everything the HUD needs.17-- **Contact audio cues**: marble-marble hits for the camera subject.18- Needs the shim to expose contact events (Box3D has them; the shim19- currently exposes none).13+- **Leaderboard HUD (USER SPEC — minimal)**: at MOST `#{PLACE}/{N}`14+ (hero's place out of peers+1). We have a very simple ui — no strips,15+ no lists. The CUA `race` telemetry already carries place data.16+- **Game-feel UI skin (USER)**: the toast system reads as WEB, not17+ game. Source UI library assets from the user's game assets folder:18+ `/Users/dami/Documents/Game Dev Asset Packs/kennygames/UI assets/`19+ (candidates: "UI Pack", "UI Pack - Sci-fi" for the void aesthetic,20+ "Fantasy UI Borders"). Restyle toasts/HUD from those.2021 - **Respawn spawn-in envelope**: respawned racers pop into place — give2122 them the streamAnim-style scale-in (the decorative peer ring had one;2223 real racers don't).@@ -45,13 +46,30 @@ finite inspection bench. 116 tests green.
4546 transparent shells (only opaques land in the transmission buffer).4647 Escalation if close-ups demand it: port a MeshTransmissionMaterial-4748 style shared-buffer material (drei-vanilla reference).48-- **Camera pitch during gravity zones**: the void's gravity leans — the49- camera could lean with it (deeper spectacle).5049 - **Follow-cam island clipping polish**: occluder raycast exists; edge5150 cases remain when the cam trails past island masses.5251 5352 ## Generation5453 54+- **GRAVITY REORIENTATION BETWEEN ISLANDS (USER HIGHLIGHT — the real55+ gravity feature)**: island A connects to island B where island B is a56+ 90° or 180° GRAVITY DIRECTION CHANGE — riding walls/ceilings, not the57+ current subtle forward tilt. Machinery notes: per-marble gravity is58+ already a delta force against a fixed world vector59+ (stationGravityDelta), so arbitrary per-station gravity directions60+ are one rail-mod away; the real work is generation (planning island-B61+ runs on reoriented planes + collision channels on walls/ceilings),62+ the autopilot's ground-plane math (currently assumes +y up in the63+ corridor/normal projections), and the camera up-vector following the64+ local gravity. The old "camera pitch during gravity zones" idea is65+ subsumed by this.66+- **FANS AS INTERACTIVE ELEMENTS (USER)**: fans were always meant to be67+ something marbles INTERACT with — a directional force with many68+ unexplored uses (cross-wind zones pushing marbles laterally, updraft69+ columns for lift/jump assists, blockading gusts, fan-powered70+ boost corridors). Fan placements + spin animation exist71+ (track.ts spinners); the missing piece is a force field volume tied72+ to fan placements, fed into the per-marble force pass.5573 - **Endless stream goldens**: pin per-segment hashes for fixed seeds so5674 planner refactors can't silently reshuffle streams (seed freeze itself5775 stays OFF per user).@@ -69,6 +87,15 @@ finite inspection bench. 116 tests green.
6987 - **Bumper density tuning**: after watching feedback (pins currently7088 only on wide island decks).7189 90+## Audio (PARKED — user rule)91+92+- IGNORE audio for now. The user HATED the procedural ambient sound.93+ TODO when picked back up: source real samples from the game assets94+ library (`/Users/dami/Documents/Game Dev Asset Packs/audio/` and95+ `.../kennygames/Audio/` — Interface Sounds, Impact Sounds, Music96+ Loops, RPG Audio); contact-hit cues (needs shim contact events) also97+ wait for this.98+7299 ## Housekeeping73100 74101 - Scenario pins move whenever a planner clause changes the weighted