Commit Graph

4 Commits

Author SHA1 Message Date
Brian Fertig 793cb249f9 feat(gootower): add sleeping goo mechanic and redesign levels
feat(zuma): redesign level 7
feat(shift): add 9 new artwork pieces
chore: remove Worms game entirely

- Goo Tower: introduce `asleep` state for pile balls. Asleep balls ignore physics/wandering and cannot be picked up until they gain a clear line of sight to an attached structure. Adds zZzZz visual, editor toggle, auto-play filtering, and logic tests.
- Goo Tower Lvl 9 & Zuma Lvl 7: completely redesigned terrain, ball/pile positions, and pipe placement.
- Shift: register 9 new artwork pieces.
- Worms: remove all source files, assets, verifier, build docs, and game wiring.
2026-07-31 23:37:48 -06:00
Brian Fertig 78c61c1cd5 feat(gootower): make gears lethal hazards; redesign levels 5-6
Replace the "ride the rim" gear mechanic with instant ball destruction on
contact. Update hazardAt(), resolveTerrain(), and all related tests.
Redesign level 5 ("Watch Out") and level 6 with new terrain layouts
featuring gear hazards, updated ball/pipe/pile positions.

feat(shift): paginate artwork selection and reveal on completion

Add page navigation to artwork cards when there are more than one page,
and fade in the completed artwork over the puzzle after winning.

chore: add 9 new Shift artwork entries
2026-07-30 23:09:59 -06:00
Brian Fertig 5b24cc3ad0 Goo Tower Levels 2026-07-26 15:23:18 -06:00
Brian Fertig 386ad3efb7 feat: add Goo Tower game with physics engine, 12 levels, and editor
Implement Waves 0-3 of Goo Tower, a World of Goo-inspired physics
puzzle game. Includes:

- GooTowerLogic.js: Verlet integration with XPBD constraints, terrain
  collision, ball-ball collision, strand breaking, crawling agents,
  and 9 goo types (common, ivy, balloon, bomb, block, pokey, bit,
  skull, anchor)
- GooTowerGame.js: Phaser scene with procedural rendering, drag-and-
  drop placement, pipe collection, and win/OCD tracking
- GooTowerEditor.js: Level editor (/?gootower-editor=1) with terrain
  drawing, ball/pile placement, settle/test/export tools
- 12 hand-tuned levels across 2 chapters (teaching + sandbox)
- verifyGooTower.js: 303-check regression harness
- genGooTower.js: Level bank writer
- GooTowerAuto.js: Greedy reference player (winnability gate)
- Wiring into gamesRegistry, main.js, GameRoomScene, and PreloadScene
2026-07-26 10:22:25 -06:00