Go to file
type-two 367e700934 Lane J: workshop editor — drop-in GLB fitting on the real course
Three-panel editor page (editor.html + src/editor/): slot list, the actual
greybox course built from the game's own builders, and fit controls. Drop a
.glb on a slot, nudge offset/rotation/scale, save to IndexedDB so the live
game picks it up with no deploy, export manifest.json to commit it.

Design notes worth keeping:
- A custom asset never replaces the procedural node; it goes into a new
  sibling 'fit' node and the original is hidden. Reset is instant, references
  other systems captured stay alive, and the manifest transform lives on a
  node nobody else writes to (feel.ts, telegraph.ts and the machine parts all
  own transforms of their own).
- The stage creates physics but never steps it: no systems, no world.start(),
  just renderOnce() on a rAF. Nothing here affects gameplay.
- A blob body whose UVs paint cannot stick to is refused outright rather than
  swapped in — silently broken paint is worse than a missing model.

Headless verification: 148 assertions across three node test files
(manifest round-trip, GLB paintability against real parsed glTF, and the
whole drop/save/restore path over an in-memory IndexedDB).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-19 11:40:25 +10:00
.claude Foundation: vite+ts+three+rapier scaffold, frozen contracts, lane docs A-E 2026-07-17 19:55:43 +10:00
assets M0 playable slice: lanes integrated, machine chain staged, hidden-tab hardening 2026-07-17 20:50:16 +10:00
demos Lane J: workshop editor — drop-in GLB fitting on the real course 2026-07-19 11:40:25 +10:00
docs Workshop plan + lane docs I (asset runtime) and J (editor) 2026-07-18 15:30:09 +10:00
lanes Workshop plan + lane docs I (asset runtime) and J (editor) 2026-07-18 15:30:09 +10:00
src Lane J: workshop editor — drop-in GLB fitting on the real course 2026-07-19 11:40:25 +10:00
tools M0 playable slice: lanes integrated, machine chain staged, hidden-tab hardening 2026-07-17 20:50:16 +10:00
.gitignore Untrack node_modules and dist (foundation commit slip) 2026-07-17 20:14:45 +10:00
deploy.sh Deploy to partly.party/blobbo: vite base + deploy.sh (games-doctrine pattern) 2026-07-17 21:32:00 +10:00
editor.html Lane J: workshop editor — drop-in GLB fitting on the real course 2026-07-19 11:40:25 +10:00
GDD.md GDD v0.1: full design doc, idea capture, MODELBEAST farm client + concept wave 1 2026-07-17 18:15:56 +10:00
index.html Foundation: vite+ts+three+rapier scaffold, frozen contracts, lane docs A-E 2026-07-17 19:55:43 +10:00
package-lock.json Foundation: vite+ts+three+rapier scaffold, frozen contracts, lane docs A-E 2026-07-17 19:55:43 +10:00
package.json Foundation: vite+ts+three+rapier scaffold, frozen contracts, lane docs A-E 2026-07-17 19:55:43 +10:00
README.md GDD v0.1: full design doc, idea capture, MODELBEAST farm client + concept wave 1 2026-07-17 18:15:56 +10:00
tsconfig.json Foundation: vite+ts+three+rapier scaffold, frozen contracts, lane docs A-E 2026-07-17 19:55:43 +10:00
vite.config.ts Wave 2 integration: zones staged, fork machines own the district, tuning pass 2026-07-18 12:18:30 +10:00

BLOBBO

Fall Guys × Splatoon × Micro Machines: wobbly blob racers on giant Rube-Goldberg courses where the paint that lands on you is your loadout — relative % coverage per colour = your buffs, weight, and size.

  • GDD.md — the design document (v0.1, in review). Start here.
  • docs/IDEA.md — the original raw idea capture (2026-07-17).
  • tools/mb.py — MODELBEAST farm client (concept art / mesh gen on the local render farm). tools/concept-wave-1.json = first asset wave.
  • assets/concepts/ — generated concept art (review gate for the mesh wave).

Status: pre-production. GDD under review; next step is per-lane execution instructions (see GDD §11) once features are signed off.