simulators/: persist the survey, and let it shrink two of the three tracks
Eight profiles on a common schema, each marking what was checked against a
source this session and what is background recollection. Three are marked
unverified in full — Machinations, the play substrates, most of RBG — and
say so rather than reading as evaluations. Written straight after three
review rounds whose entire yield was claims outrunning what had been
checked, so the confidence rule is the first thing in the README.
The survey changed the plan, which is what a survey is for.
Track C was described in Positioning as open ground. It is not: 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 becomes adopt, credit
and find the gap. The gap looks real: those measures presume a leader, and
SHARED GROUND has none — Modes.csv gives its tiebreak as "Not applicable".
Track B probably adopts rather than builds. OpenSpiel implements CFR,
best-response and exploitability over games that are simultaneous-move,
imperfect-information and co-operative, which is all four of GROUND's
awkward properties. "Does ATTACK ever pay" is a best-response question,
and we spent three review rounds refining a two-policy sweep for it. The
first Track B task is now one question — is exploitability meaningful for
a co-operative game with a shared threshold — not a build.
The cost of not surveying earlier is therefore measurable, and is recorded
rather than glossed.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 11:56:27 +02:00
|
|
|
# Simulators — profiles of systems adjacent to clay-borg
|
|
|
|
|
|
|
|
|
|
Persisted research, not a link dump. Each profile answers the same
|
|
|
|
|
questions in the same order so the systems can be compared, and each
|
|
|
|
|
carries **what we actually checked**.
|
|
|
|
|
|
|
|
|
|
Written for [`../specs/Positioning.md`](../specs/Positioning.md) §1 and
|
|
|
|
|
§4 — the field we sit in, and the three tracks. Track A (a second game)
|
|
|
|
|
and Track B (game theory as the lens on dynamics) both depend on knowing
|
|
|
|
|
what already exists.
|
|
|
|
|
|
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## The confidence rule
|
|
|
|
|
|
|
|
|
|
> **Every claim in a profile carries its source, and a claim from
|
|
|
|
|
> background knowledge is marked `unverified`.**
|
|
|
|
|
|
|
|
|
|
This directory was written immediately after three adversarial review
|
|
|
|
|
rounds whose entire yield was claims that outran what had been checked
|
|
|
|
|
([`../reviews/`](../reviews)). A profile that quietly mixes a fetched fact
|
|
|
|
|
with a half-remembered one is the same failure in a new place — and here
|
|
|
|
|
it would be worse, because these profiles are meant to inform whether we
|
|
|
|
|
build something or adopt it.
|
|
|
|
|
|
|
|
|
|
| marker | means |
|
|
|
|
|
|---|---|
|
|
|
|
|
| **`checked`** | read from a source this session, cited at the foot of the profile |
|
|
|
|
|
| **`unverified`** | from background knowledge; plausible, **not** confirmed, and must be before it decides anything |
|
|
|
|
|
| **`open`** | a question we want answered and did not answer |
|
|
|
|
|
|
|
|
|
|
## The schema
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
# <name>
|
|
|
|
|
owner · first release · licence · language (checked/unverified)
|
|
|
|
|
## What it optimises for
|
|
|
|
|
## How a game is defined
|
|
|
|
|
## What it can analyse
|
|
|
|
|
## What it does not do
|
|
|
|
|
## Relevance to clay-borg — which track, and how
|
|
|
|
|
## What to steal
|
|
|
|
|
## What to avoid
|
|
|
|
|
## Open questions
|
|
|
|
|
## Sources
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## Index
|
|
|
|
|
|
|
|
|
|
| profile | in one line | track |
|
|
|
|
|
|---|---|---|
|
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
|
|
|
| [`ludii.md`](ludii.md) | the closest relative: ludemes, breadth, speed — **syntax formal, semantics is its Java** | A |
|
simulators/: persist the survey, and let it shrink two of the three tracks
Eight profiles on a common schema, each marking what was checked against a
source this session and what is background recollection. Three are marked
unverified in full — Machinations, the play substrates, most of RBG — and
say so rather than reading as evaluations. Written straight after three
review rounds whose entire yield was claims outrunning what had been
checked, so the confidence rule is the first thing in the README.
The survey changed the plan, which is what a survey is for.
Track C was described in Positioning as open ground. It is not: 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 becomes adopt, credit
and find the gap. The gap looks real: those measures presume a leader, and
SHARED GROUND has none — Modes.csv gives its tiebreak as "Not applicable".
Track B probably adopts rather than builds. OpenSpiel implements CFR,
best-response and exploitability over games that are simultaneous-move,
imperfect-information and co-operative, which is all four of GROUND's
awkward properties. "Does ATTACK ever pay" is a best-response question,
and we spent three review rounds refining a two-policy sweep for it. The
first Track B task is now one question — is exploitability meaningful for
a co-operative game with a shared threshold — not a build.
The cost of not surveying earlier is therefore measurable, and is recorded
rather than glossed.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 11:56:27 +02:00
|
|
|
| [`gdl-ggp.md`](gdl-ggp.md) | the academic ancestor; agent generality over designer support | A |
|
|
|
|
|
| [`rbg.md`](rbg.md) | regular boardgames — a speed-focused rival description language | A |
|
|
|
|
|
| [`ai-ai.md`](ai-ai.md) | **the closest relative for what we want to become**: GGP with designer-facing metrics | A, C |
|
|
|
|
|
| [`openspiel.md`](openspiel.md) | the game-theory workbench: CFR, exploitability, social dilemmas | B |
|
|
|
|
|
| [`browne-criteria.md`](browne-criteria.md) | not a simulator — the canonical attempt to measure whether a game is *good* | C |
|
|
|
|
|
| [`machinations.md`](machinations.md) | economy and feedback loops, diagrammatic | — |
|
|
|
|
|
| [`play-substrates.md`](play-substrates.md) | Tabletop Simulator, boardgame.io — play without analysis | — |
|
|
|
|
|
|
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
|
|
|
## The formal question, answered
|
|
|
|
|
|
|
|
|
|
**Is there a game-theory mapping to Ludii's language, and is that language
|
|
|
|
|
formal enough to derive one from?**
|
|
|
|
|
|
|
|
|
|
**Yes to the first, no to the second, and the second does not matter.**
|
|
|
|
|
Ludii's universality result grounds it in **finite, non-deterministic,
|
|
|
|
|
imperfect-information extensive-form games** — the same object OpenSpiel's
|
|
|
|
|
CFR and exploitability consume. Ludii's *grammar* is formal (derived from
|
|
|
|
|
its class hierarchy) but its *semantics are its Java*, so there is no
|
|
|
|
|
independent calculus to extract.
|
|
|
|
|
|
|
|
|
|
**Conclusion: target the extensive-form game directly, not a language
|
|
|
|
|
derived from Ludii.** Worked through in
|
|
|
|
|
[`../research/CB-RES-0009-extensive-form-is-the-lingua-franca.md`](../research/CB-RES-0009-extensive-form-is-the-lingua-franca.md).
|
|
|
|
|
|
simulators/: persist the survey, and let it shrink two of the three tracks
Eight profiles on a common schema, each marking what was checked against a
source this session and what is background recollection. Three are marked
unverified in full — Machinations, the play substrates, most of RBG — and
say so rather than reading as evaluations. Written straight after three
review rounds whose entire yield was claims outrunning what had been
checked, so the confidence rule is the first thing in the README.
The survey changed the plan, which is what a survey is for.
Track C was described in Positioning as open ground. It is not: 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 becomes adopt, credit
and find the gap. The gap looks real: those measures presume a leader, and
SHARED GROUND has none — Modes.csv gives its tiebreak as "Not applicable".
Track B probably adopts rather than builds. OpenSpiel implements CFR,
best-response and exploitability over games that are simultaneous-move,
imperfect-information and co-operative, which is all four of GROUND's
awkward properties. "Does ATTACK ever pay" is a best-response question,
and we spent three review rounds refining a two-policy sweep for it. The
first Track B task is now one question — is exploitability meaningful for
a co-operative game with a shared threshold — not a build.
The cost of not surveying earlier is therefore measurable, and is recorded
rather than glossed.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-08 11:56:27 +02:00
|
|
|
## What this survey has already changed
|
|
|
|
|
|
|
|
|
|
**Ai Ai and Browne's criteria are the finding.** Track C was written in
|
|
|
|
|
`Positioning.md` as though "assimilate knowledge about why games work"
|
|
|
|
|
were open ground. It is not: **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.
|
|
|
|
|
|
|
|
|
|
That does not close Track C. It moves it from *invent* to *adopt, credit,
|
|
|
|
|
and find the gap*, which is a much better position and a much smaller
|
|
|
|
|
claim than the one we were about to make.
|