Auto Chess Tournament
Eight AI players draft synergies and brawl in an octagonal arena — lightning chains, frost auras, a confetti champion.
What this is
Eight AI players, each with a gold-trimmed board, ring an octagonal tournament dais. Every round they buy units, build synergies, and brawl. Early rounds run as 2×2 mini-stages so four fights play at once; the finals get the big hex grid. Units cast on full mana — ice novas freeze swarms, lightning chains zigzag through clusters, fireballs explode, volleys arc. When the last player remains, expanding gold rings, a name in their signature color, and confetti.
Why this is mind-blowing
This is the structure of an entire genre — TFT, Underlords, Auto Chess — running in one HTML file. The chat picks favorites by synergy ("FROST 4★ is on the rise!"), heckles bad drafts, and clips the moment a 1-HP carry survives a chain bolt. Octagonal stage, 12 unique abilities, real synergy effects, and a clear bracket make it the most stream-friendly demo in the catalog.
Build a single-file HTML page that runs an 8-player auto-chess tournament
in the spirit of Teamfight Tactics. Each player drafts units with class +
origin synergies. Battles play on a 6×6 hex grid with axial coordinates.
Units pathfind toward the nearest enemy, attack on cooldown, cast on full
mana. Lightning chains, frost auras, fireballs, novas. Synergies actually
mutate stats. The losers in early rounds share a 2×2 mini-stage; finals
get the big stage. Champion overlay with confetti, then auto-restart. No
user input — autoplay forever.
Paste this into Claude, Cursor, or Copilot. Change one thing that matters to you.
What I learned shipping it
- Greedy synergy-threshold scoring is enough draft AI to produce visibly themed lineups (Frost-Mage, Knight-Bulwark, Berserker-Frenzy).
- Axial hex coords with cube-distance neighbor checks make pathing toward 'nearest enemy' a one-line distance reduction.
- Abilities that mutate stats (frenzy +30% atk speed, bulwark +30% HP, frost-aura continuous slow) make synergies legible in the fight, not just the badge.