fertig-classic-games/data
Brian Fertig e7da172896 feat: add Total Annihilation game with campaign, AI, and full engine
Add a complete Total Annihilation clone including:

- TotalAnnihilationGame.js: Main scene with fixed-step loop, input handling,
  camera controls, selection, orders, and match lifecycle
- TAHud.js: Resource strip with flow rates, selection info, build/production
  grid, minimap with fog of war, and toast notifications
- TAScreens.js: Main menu, skirmish setup, campaign list, pause menu, and
  victory/defeat results
- totalannihilation-campaign.json: 6 hand-authored campaign missions with
  escalating difficulty (skill 1→5)
- tools/genTACampaign.js: Campaign generator that bakes terrain from the
  seeded map generator
- tools/verifyTotalAnnihilation.js: 13-section end-to-end test suite covering
  rules integrity, artwork, economy, pathfinding, combat, fog of war,
  map generation, serialization, AI skill ladder, and campaign winnability
- tools/lib/taStubScene.js: Minimal Phaser stub for headless testing

Engine improvements:
- TALogic.js: Swept projectile collision (no tunneling), quadratic AoE
  falloff, manual weapon support (D-Gun), unrecoverable elimination, onTick
  callback for AI stepping
- TAAI.js: Skill-based economy ladders, simultaneous factory+economy growth,
  sticky focus-fire, home defense gating by skill, tune/profile overrides
- TANav.js: fitField dilation for unit clearance, stale fit mask invalidation
- TAWorldView.js: _addWorld for layer ordering, frame-accurate zoom anchor
  math, container depth sorting every frame
- TARules.js: autoRangeOf excludes manual weapons, manual flag compilation

Art & data:
- Mayan civilization artwork added to civilization-artwork.json
- Several opponents switched to mayan citySheet
- totalannihilation-rules.json: balanced unit stats, new commanderlaser weapon,
  restructured AI skill tuning, formatted JSON
- sprites.md: complete art spec for drop-in PNG sheets
- Registered in gamesRegistry, assetManifest, PreloadScene, GameRoomScene,
  and soundtrack service
2026-07-24 20:57:40 -06:00
..
crosswords
wordlists
advancewars-artwork.json
advancewars-campaign.json
advancewars-rules.json
adventure-music.json
arcadedark-music.json
balatro-artwork.json
blockfighter.json
bookwork.json
card-backs.json
civilization-artwork.json feat: add Total Annihilation game with campaign, AI, and full engine 2026-07-24 20:57:40 -06:00
civilization-rules.json feat(civ): AI-initiated diplomacy with frustration escalation 2026-07-23 16:26:15 -06:00
colorado-defense-cities.json
colored-playfields.json
dotlink.json
dungeonboss-artwork.json
hacker-music.json
jewelquest.json
jumble-riddles.json
jumble.json
katamino.json
music.json
nintendo-music.json feat(tetrisattack): add optional character voice reactions and adjust BGM volume 2026-07-22 21:06:03 -06:00
opponents.json feat: add Total Annihilation game with campaign, AI, and full engine 2026-07-24 20:57:40 -06:00
playfields.json
puddingmonsters.json
rushhour.json
shift-artwork.json
slots-artwork.json
spireclimb-artwork.json
star-control-ships.json
superkart-artwork.json
superkart-racers.json
superkart-rules.json feat(superkart): add missed-checkpoint correction for shortcut detection 2026-07-22 13:00:12 -06:00
swdbg-artwork.json
swdbg-cards.json
tetrisattack-artwork.json feat: enhance Advance Wars replay HP display and terrain rendering, add Tetris Attack host backgrounds 2026-07-20 23:20:58 -06:00
tetrisattack-puzzles.json
tetrisattack.json feat(civilization): add japanese city theme and improve world generation 2026-07-22 23:48:41 -06:00
totalannihilation-artwork.json **Update game icons assets** 2026-07-24 16:01:13 -06:00
totalannihilation-campaign.json feat: add Total Annihilation game with campaign, AI, and full engine 2026-07-24 20:57:40 -06:00
totalannihilation-rules.json feat: add Total Annihilation game with campaign, AI, and full engine 2026-07-24 20:57:40 -06:00
zuma.json