Skip to content

QuaterniTS

A headless TypeScript rules library for the four-player game Quaternity. It models the rules for embedding and for rules research — it is not a UI, server, AI, board renderer or chess.js clone.

QuaterniTS is an unofficial, community-driven library. It is not affiliated with, sponsored by, or endorsed by the rights holders of the official Quaternity game or project, and it uses no official logos or visual assets. Its MIT LICENSE covers this project’s original work only — not third-party names, rules text, trademarks, artwork or other assets.

A headless TypeScript library that generates and validates legal moves, holds a position and reports game state for the four-player 12 × 12 game. It is intended for applications and for the education and research of the game’s rules.

  • Bounded rules, not a complete engine. Supported outcomes are reported; an unresolved rule edge fails closed rather than inventing a result. Read the supported scope.

  • No notation compatibility. Long coordinates in, typed event records out; there is no FEN, PGN or SAN support.

  • Not a game UI. This site documents the library; the library ships no board, server, clock, opponent or AI.

When a checked controller has an apparent defence but no safe move after a mate and army-transfer cascade, the library rejects the unresolved action with UnresolvedAdjudicationError without changing the game. This software error is not a mate, pass or draw. The official outcome remains unknown; the supported scope explains the bounded contract and links to a concrete position.