Commit Graph

5 Commits

Author SHA1 Message Date
type-two
a1f4588deb Tier 2: the Trainspotter's Notebook — real records from discogs_full
assets/extract_tunes.py pulls 523 canon tunes (repress-count ranked, club pool
12"-only) into public/tunes.json across shop/fair/club genre pools; top ~8% of
each chunk flagged grail ("CERTIFIED CLASSIC", gold flash, 2000 pts). Level
clear reveals a real record (artist — title, label, year), the announcer speaks
it, and first IDs land in a persistent localStorage notebook (+1000). Title
screen shows notebook progress. Also: overlay/sub text got backgrounds for
readability, and prompt() is guarded for webviews that lack it.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 17:17:34 +10:00
type-two
d903dd57ca Tier 1: classes, themes, pirates/ghouls, score, vibe states, touch
- 4 Gauntlet classes (stat tweaks + tint) with title-screen select (keys 1-4 or tap)
- Level themes cycle shop/fair/club: per-theme tilesets (9 idle sprites wired) and
  weighted enemy spawn tables
- Record Pirate (steals pickups, flees to its bin; kill = loot back + gold bonus)
  and Crate Ghoul (3 HP tank)
- Gold records ('R' tiles + pirate drops), score (kills/gold/clears), local top-5
  high-score table with initials on the title screen
- Vibe states: peak time = faster vinyl, burning out = slower + red vignette
- "Selector shot the espresso" (vinyl destroys food) + new announcer lines
- Mobile: Scale.FIT canvas, twin-stick touch (left = move, right = fire), HORN button

All mechanics regression-tested in browser via engine stepping.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 16:58:25 +10:00
type-two
8341bed22f Sharpen sprites: TILE 32->48, higher-res textures + unsharp pass
Regenerate textures at 48px (chars/walls), 96px floor, with an UnsharpMask to
counter the LANCZOS softening. Bump TILE to 48 so the whole world scales up and
sprites render bigger/crisper; scale movement + range constants x1.5 to keep the
same tiles-per-second feel, and collision bodies to 34px. Mechanics reverified.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-14 23:52:08 +10:00
type-two
9a42e0eaf8 Step 7: wire FLUX sprites into the game
Chroma-key magenta -> alpha, autocrop, downscale (assets/process_sprites.py ->
public/sprites/). GameScene loads image textures instead of drawing primitives:
tiled darkened floor, crate walls, digger/poser/nerd/sound-guy/booth/pickup
sprites. Bodies sized under the 32px sprites so corridors still fit. Mechanics
verified unchanged (combat, trainspot, level flow).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-14 23:39:40 +10:00
type-two
0a71e07078 Vinyl Gauntlet: core game (Gauntlet II re-skin) + FLUX asset queue
Top-down arcade maze shooter in Phaser 3. Steps 1-6 of plan.md complete and
verified: vibe drain, generators/swarm, pooling, combat, Sound Guy, airhorn,
trainspot exit, level flow, announcer. assets/ holds the FLUX prompt manifest
+ MODELBEAST enqueuer for the Step 7 sprite pass.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-14 23:17:19 +10:00