Warning
This project is almost entirely vibe-coded through Claude Code. Proceed with appropriate skepticism.
A browser-based turn-based strategy game built on chess, inspired by Civilization. Chess pieces move according to chess rules, but all units act each turn and can be directed to far-away destinations over multiple turns. The goal is to destroy the enemy King.
Selecting and moving
- Click a unit to select it — valid one-turn moves are highlighted
- Click any tile to set a destination (near or far)
- A dotted line shows the planned route across multiple turns
- Press Space to end your turn — all units advance one step toward their destinations
Building
- Use the bottom bar to construct new pieces (costs resources)
- Resources accumulate each turn
- New pieces spawn near your King
Camera — WASD or arrow keys to pan
Piece set — press Tab to cycle through 38 piece sets
Win condition — capture the enemy King; lose if yours is captured
| Piece | Movement |
|---|---|
| King | 1 tile in any direction |
| Pawn | 1 tile in any direction |
| Knight | L-shape jump (2+1), ignores blocking pieces |
| Bishop | Any number of tiles diagonally |
| Rook | Up to 6 tiles in a cardinal direction |
| Queen | Up to 6 tiles in any direction |
Sliding pieces (rook, bishop, queen) are blocked by other pieces and can capture the first enemy in their path.
Prerequisites: Node.js 18+
npm install
npm run dev # start dev server at http://localhost:5173npm run build # type-check + production build (output in dist/)
npm run preview # serve the production build locallyThere is no test suite yet.
- Phaser 3 — game loop, rendering, input
- TypeScript
- Vite