clay-borg/specs/Positioning.md
tegwick 55a475b1a9
Some checks failed
ci / check (push) Failing after 4s
CB-RES-0009: extensive form is the lingua franca
Two questions from the maintainer — is there a game-theory mapping to
Ludii's language, and is that language formal enough to derive one from.
Yes, no, and the no does not matter.

The mapping is proven, not to be invented: "The Ludii Game Description
Language is Universal" shows the language can represent an equivalent game
for any finite, non-deterministic, imperfect-information game, extending
earlier work limited to finite deterministic fully-observable
extensive-form games. EFG is also OpenSpiel's object, so the same
formalism connects description to analysis: Ludii -> EFG <- OpenSpiel.

Ludii's syntax is formal and unusually so — a class grammar derived
automatically from its source. Its semantics are its Java: a ludeme means
what its class does, and Ludii effectively makes Java the game description
language. So there is no independent calculus to extract. The formality
lives in the universality RESULT, not in a definition of meaning. GDL has
the semantics and pays for it in speed — six times on Gomoku, twenty on
Amazons and Hex, over two hundred on Chess.

Conclusion: do not derive a language from Ludii; target the EFG directly.

And we are closer than the tracks assumed. The journal is the history,
Outcome is the payoff, legal_commands gives the actions — and
project(Viewer::Player(seat)) IS the information partition, built so a
player is not shown another's hand and unremarked as exactly the machinery
imperfect information needs.

Three gaps: chance is folded into a seed so a game is one realisation
rather than a game with chance nodes; perfect recall is unasserted, which
CFR and exploitability both assume; and commit/reveal is the standard EFG
encoding of simultaneity but is never stated as such. Perfect recall is
checkable from the journal today and is now Track B's first task — if it
fails, every equilibrium concept we might quote is unsound here.

Also re-vendored the catalog twice: ground-game added H2 — scoped problem
stress, applying End Stress by personal/bond/global scope instead of flat
to everyone, which is a direct response to our reading that H1's tax
scales with the Problems while its intended effect does not.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 14:57:25 +02:00

10 KiB

Positioning — what clay-borg is for, and what it does that others do not

Status: draft. A working answer to "where does this sit, and what is the point of it", written against the field rather than in isolation.

Companion to ../INTENT.md (what we are building), Taxonomy.md (the vocabulary), and Ornamentation.md (the boundary). The systems named below have profiles in ../simulators/, each marking what was checked and what is background recollection.

Revised 2026-08-08 after the survey, and §4 changed. Two of the three tracks were described as more open than they are — see §4.0.


1. The field, honestly

There are mature systems here and we are not first.

system what it optimises for what it does not do
Ludii (Digital Ludeme Project) generality of representation. Games as ludemes — composable, human-readable concepts. Fast, broad, a game fits in a QR code it is not built to argue with the designer about the rules, and its evidence is not auditable by a third party
GDL / General Game Playing (Stanford) agent generality — an agent that plays a game it has never seen verbose, slow relative to Ludii, and aimed at AI research rather than design support
Machinations economy and feedback-loop simulation, diagrammatic and immediate not rules-complete; a model of flows, not of a played game
Tabletop Simulator / boardgame.io play, human or networked no analysis; the rules are a script, not a claim
RL self-play stacks strength a strong agent tells you what beats what, not why a rule is undecided

Ludii is the closest relative and the right benchmark. If clay-borg's answer to "why not Ludii" is only "ours is in Rust", there is no answer.

2. What we do differently

Four things, and each is already visible in the repo rather than aspired to.

2.1 The measurement is under suspicion by construction

Every other system in §1 treats its own output as data. This one treats its own output as a claim that has to survive an attempt to break itGameDesign.md §1 admissibility, the finding register, mutation-proof as a condition for a control, and mandatory adversarial review at tier L.

This is not a posture; it is measured. Three review rounds on one measurement found twelve fatal defects, every one in our instrument and none in the game — including two that inverted a verdict already written down. A tool that reports game-design conclusions without that machinery is reporting its own bugs at the same volume as its results.

2.2 Authority is federated, and the simulator is not the authority

The game's owner rules; we report. A rule we cannot execute becomes a finding carried back with the artifact that produced it — never a default we quietly pick.

Ludii's model is a description someone wrote. Ours is a claim about somebody else's artifact, with digests and tripwires against their source of truth, and a queue of open questions that belong to them. That is a different relationship to the designer than any system above has.

2.3 What is not mechanism is modelled too

Ornamentation.md. Materials, ceremony, typography, timing — declared, with falsifiers, and separated from the rules by a test something can run (does the state hash move?).

Every system in §1 either ignores this or treats it as presentation config. We treat "this does not matter" as a claim that can be wrong, because our own register is a list of times it was.

2.4 A hypothesis is a package, not a patch

A design experiment arrives as a selectable variant — a catalog entry, a machine-readable rules_delta, declared success criteria — and is measured against those criteria, with the results reported including the parts that fail. The variant is in the game state, so a recording says which rules it was played under.

3. What that adds up to

Clay-borg is a design-evidence instrument, not a game engine and not a game-playing AI. Its product is an auditable answer to "what does this rule actually do at the table, and how much should you trust that?"

The second half of that sentence is the differentiator. Anyone can produce the number.

4. Where it has to go

Three tracks, in dependency order. None started.

4.0 What the survey changed

Two tracks were overclaimed and are now smaller. Writing the simulators/ profiles found prior art where this document had assumed open ground:

  • Track C is not open ground. Browne published 57 criteria for game quality, and Ai Ai already computes designer-facing measures — drama, lead changes, branching factor, completion, duration — from played games. The track moves from invent a theory of fun to adopt an existing vocabulary, credit it, and locate the gap. The gap is plausibly real (co-operative and hidden-role games), and it is a far smaller and more defensible claim.
  • Track B probably adopts rather than builds. OpenSpiel implements CFR, best-response and exploitability over games that are simultaneous-move, imperfect-information and cooperative — all four of GROUND's awkward properties. "Does ATTACK ever pay" is a best-response question, and we have been answering it with two hand-written policies.

This is what a survey is for, and it is worth noting that the cost of not doing it earlier was measurable: we spent three review rounds refining a two-policy sweep for a question that has a standard instrument.

Track A — a second game

GROUND is an example, and nothing has tested that claim. Every abstraction here has exactly one instance, which by our own rule (GameDesign §2) means it may have been invented rather than observed.

The work is to take a popular, well-understood game — one where the dynamics are already documented, so our output can be checked against something — and build a clay-borg definition efficiently enough that the cost is itself the finding. The measurement that matters is how much of the kernel turns out to be GROUND-shaped.

Ludii's ludeme decomposition is the obvious prior art to steal from, and the honest question is whether we need our own description language at all or should consume theirs.

Track B — game theory as the lens on dynamics

§4 of Taxonomy.md: our panels measure dynamics, and game theory is the science of exactly that. Today we sample the strategy space with two hand-written policies and a rank parameter. That is a crude instrument for questions that have real theory behind them:

  • dominance — is an action dominated? (F17 asks this about ATTACK and answers it with a sweep)
  • equilibrium — what does competent play converge to, and is it the play the designer intended?
  • cooperative solution concepts — GROUND is co-operative with a defection mechanic; the core and the Shapley value are the standard tools for "is this coalition stable" and "what is a seat contributing", which is precisely what GR-E04 is groping at
  • social dilemmas — DARVO is one; the literature on them is large

The proposed shape is a specialised agent, not a library: something that reads a clay-borg game definition and a panel run, and reports what the theory says about the dynamics — with the same admissibility rules as everything else, because a Nash equilibrium quoted without its assumptions is exactly the wrong-subject error in mathematical dress (Taxonomy.md §2.2).

But the first task is not to build it, and the survey narrowed it twice more (../research/CB-RES-0009-extensive-form-is-the-lingua-franca.md).

The formal object is the extensive-form game, proven expressive enough by Ludii's universality result and consumed directly by OpenSpiel — so "Ludii → EFG ← OpenSpiel" is the whole mapping, and there is nothing to invent.

And we already have most of an EFG: the journal is the history, the payoff is Outcome, and project(Viewer::Player(seat)) is the information partition — built so a player is not shown another's hand, and unremarked as the machinery imperfect information needs.

Three gaps, one checkable today:

  1. chance is folded into a seed, so a clay-borg game is one realisation rather than a game with chance nodes;
  2. perfect recall is unasserted — CFR and exploitability assume a player remembers their own past actions and observations, and nobody has checked whether our projection sequence does;
  3. simultaneity is encoded by commit/reveal but never stated as the standard EFG encoding.

Track B's first task is (2), because it is small, checkable from the journal, and if it fails every equilibrium concept we might quote is unsound here. That is a better opening move than a build.

Track C — assimilated knowledge about why games work

The furthest out, and the one the maintainer named as the point: make what is known about game dynamics available to designers.

MDA's aesthetics vocabulary, Browne's criteria, the balance literature, documented failure modes (runaway leader, kingmaking, analysis paralysis, dominant strategy, degenerate equilibrium). The value is not a database — it is that a finding from a panel run can be named as an instance of a known pattern, and the designer told what usually follows.

And the gap is now visible. The criteria that exist assume a leader: lead change and drama are defined against who is ahead. SHARED GROUND has no individual leaderModes.csv gives its tiebreak as "Not applicable" — so the canonical vocabulary does not reach the game we have. Whether these measures extend to co-operative and hidden-role play is the open question, and it is a better Track C than the one this document originally proposed.

The risk is obvious and worth stating now: this track is where a tool starts telling designers what is fun, on the strength of numbers that measure dynamics. §4 of the taxonomy is the guard, and it will be under pressure here.

5. Falsifier

Track A is the falsifier for this whole document. If a second game cannot be defined without reshaping the kernel around it, then "GROUND is an example" was never true, clay-borg is a GROUND engine with ambitions, and §2's differentiators are properties of one bespoke tool rather than of a framework.