The declared default on the rules option is now Tablut, listed first, and the engine plays it when no rules are given, so the hall's still, the preferences' table default and a bare createGame agree. Tests that read Copenhagen positions ask for Copenhagen; the Tablut layout test pins the default. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GwFKMuQnPAEHJ5yA1q4orh
21 lines
997 B
Markdown
21 lines
997 B
Markdown
# Hnefatafl
|
|
|
|
The Viking board game, in the browser: the attackers must take the king, the
|
|
king must reach the edge. Tablut, the nine-by-nine game Linnaeus wrote down in
|
|
1732, by default, on a board that shows its age; Copenhagen rules on the
|
|
eleven-by-eleven board, where the king needs a corner, as an option.
|
|
|
|
Built on the game kit: `src/lib/game/` is the game (rules as data in
|
|
`rules.ts`, the board's mechanics in `board.ts`, the engine in `index.ts`,
|
|
a short alpha-beta bot in `bot.ts`), `src/lib/components/Board.svelte` is
|
|
the board, and everything else is the kit's hall, tables, gallery, ledgers,
|
|
reports desk and ops tools. `docs/conventions.md` is the house style; the
|
|
guide here departs from it in one way, walking the page in words and one
|
|
drawn figure rather than screenshots.
|
|
|
|
npm install && (cd server && npm install)
|
|
npm run server # the game server on port 8789
|
|
npm run dev -- --host
|
|
|
|
Tests: `npm test`. Deploy: `deploy/deploy.sh <ip>` after `deploy/README.md`.
|