init: scaffold duplicate_chess project and design spec
Local browser sandbox for "duplicate chess" — a four-player coupled-board chess variant invented by Andrew Freiberg. Scaffold per CREATE_PROJECT.md plus the approved design spec from this session's brainstorming. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
# IDEA.md — Duplicate Chess
|
||||
|
||||
## What is this?
|
||||
|
||||
A local, browser-based sandbox/visualizer for **"duplicate chess"** — a four-player
|
||||
chess variant invented by Andrew Freiberg (Seth's father). This project is to
|
||||
duplicate chess what the sibling `blind_chess` project is to blind chess: a
|
||||
digitization that lets an otherwise hard-to-play variant actually be played and
|
||||
studied.
|
||||
|
||||
Duplicate chess: four players — North, South, East, West — and four chessboards set
|
||||
up between adjacent compass points (NW, NE, SW, SE). North and South play White;
|
||||
East and West play Black. Each player controls one colour on **two** boards (North =
|
||||
White on NW and NE; West = Black on NW and SW; and so on). Turn order is N → S → E → W.
|
||||
|
||||
The defining rule: on your turn you make the **identical algebraic move on both of
|
||||
your boards**. A move is legal only if it is legal on both. When one of your pieces
|
||||
is captured on one board, its twin on your other board freezes into a **"ghost"** —
|
||||
it can never move again (no synchronized move exists for it), but it still occupies
|
||||
its square, blocks lines, can give discovered check, and can itself be captured.
|
||||
Every individual board always remains a legal game of orthodox chess.
|
||||
|
||||
## Problem it solves
|
||||
|
||||
In the inventor's own words, the variant can't be grasped from prose: "this is not
|
||||
really a variant that can be understood verbally after a certain point ... diagrams
|
||||
are probably essential." The physical game is fiddly to set up and play. This tool
|
||||
puts all four boards on one screen, enforces the synchronized-move coupling, renders
|
||||
ghosts, and shows *why* a move is or isn't legal — so the variant can be seen.
|
||||
|
||||
## Constraints / preferences
|
||||
|
||||
- Local, single-operator tool. No server, no networking, no accounts — duplicate
|
||||
chess is perfect-information, so one screen shows the whole game truthfully.
|
||||
- Stack: Vite + Svelte 5 + TypeScript, `chess.js` per board. Single package.
|
||||
- Sibling project to `blind_chess`; same homelab conventions.
|
||||
- v1 is a visualizer/sandbox. Networked four-player play and AI opponents are
|
||||
explicitly out of scope for now.
|
||||
|
||||
See `docs/superpowers/specs/2026-05-19-duplicate-chess-design.md` for the full design,
|
||||
and `USERFILES/4-person-chess.txt` in the `blind_chess` repo for the original
|
||||
inventor conversation this is based on.
|
||||
Reference in New Issue
Block a user