Commit Graph

3 Commits

Author SHA1 Message Date
Brian Fertig 4fe8d0861d refactor: lazy-load per-game assets and enhance Balatro visuals
Introduce lazy loading for game-specific artwork to reduce startup time.
Game assets are now defined in src/data/assetManifest.js and loaded on
first entry via src/services/assetLoader.js, replacing the previous
approach of loading all game art in PreloadScene.

Balatro improvements:
- Add bump/shake animation to chips and mult counters on score changes
- Animate round score flying into the left-bar readout with explosion
- Fix tween cleanup during view swaps to prevent crashes
- Add planetSheet artwork path to balatro-artwork.json
2026-07-11 08:40:23 -06:00
Brian Fertig 271cbfe3da feat(balatro): add CRT post-processing, rounded art rendering, and UI improvements
- Introduce BalatroCrtPipeline for subtle CRT effects (scanlines, grain, glitch bursts)
- Attach CRT pipeline to main camera with event-driven pulse on boss rounds and game over
- Add frameIsBlank check to detect blank/unpainted texture frames and fall back to procedural cards
- Implement roundedArtKey and addRoundedArt for rendering art with rounded corners
- Update joker, tarot, planet, spectral, deck, shop, and voucher rendering to use rounded art
- Increase font sizes across UI elements for better readability
- Add border strokes to joker cards with custom art
- Trigger CRT pulse on high multipliers (x2+) and score announcements
- Reference art image paths in balatro-artwork.json
2026-07-10 20:50:06 -06:00
Brian Fertig 160f6010b1 feat: add Balatro — poker roguelike game
Implement a complete Balatro clone with:
- Pure logic engine (BalatroLogic.js): seeded RNG, ante/blind state machine,
  shop, consumables, boss-blind hooks, save/load, endless mode
- Scoring pipeline (BalatroScoring.js): full poker evaluator (including secret
  hands, wilds, stones, smeared/fourFingers/shortcut passives) and chips×mult
  trace for deterministic scoring animation
- 114 Joker definitions with rich effect hooks (onScored, onHeld, independent,
  cardRetriggers, scaling state, copy via Blueprint/Brainstorm)
- 22 Tarots, 12 Planets, 15 Spectrals, 8 decks, 16 vouchers, 10 booster pack
  types, 20 boss blinds + 3 finishers
- Phaser scene with procedural card/Joker rendering, art-frame drop-in support,
  melty swirl background shader, and trace-based replay animation
- Headless verification suite (tools/verifyBalatro.js) with evaluator table
  tests, scoring goldens, 200-bot smoke test, determinism & mid-run serialize
  round-trip checks, and endless scaling tests
- Tutorial text and sprite-sheet layout documentation
2026-07-09 22:43:36 -06:00