Skip to content

Work / Chess / Wiki / Entities

rules

Entitycanonicalverified 2026-10-12

RULES.CHESS

Summary

The rules the engine enforces, and the ways a game ends.

Canonical values

Key Value Last changed
CASTLING both sides. King and rook unmoved, squares between empty, king not in check, not through or onto an attacked square 2026-10-04
EN-PASSANT yes, on the move straight after the two-square pawn move 2026-10-04
PROMOTION.ENGINE accepts queen, rook, bishop or knight 2026-10-04
PROMOTION.TODAY always a queen — nothing asks the player 2026-10-04
PROMOTION.DESIGN the player chooses, every time 2026-10-04
END.CHECKMATE yes 2026-10-04
END.STALEMATE yes — a draw 2026-10-04
END.FIFTY-MOVE yes — 100 half-moves with no capture and no pawn move 2026-10-04
END.INSUFFICIENT king against king; king against king and one bishop or one knight; bishops only, all on one square colour 2026-10-12
END.THREEFOLD yes — a draw when the same position, side to move, castling rights and en passant square occur three times. Declared automatically, no claim 2026-10-12
END.RESIGN yes — from the pause sheet, behind a confirm dialog 2026-10-12
END.TIME yes — with a clock on, the player whose time reaches 0:00 loses; a draw if the other side has only a king. Drawn in game/timeout.html 2026-10-12
UNDO every move can be taken back, to the first. Against the computer, Undo takes back your move and its reply. Undo does not give back clock time or the 15+10 increment: the time was spent 2026-10-12

Rules

  • A rule the engine does not have is not shown to the player. How to play lists what is in this table and nothing else.
  • A draw names its rule. Today both draw rules end in "Game Over!".
  • A game lost on time has its own result. timeout. It was missing until 2026-10-12.

Related

Sources

  • src/lib/game.ts, src/store/gameStore.ts