80 lines
3 KiB
Markdown
80 lines
3 KiB
Markdown
|
|
# Ludii
|
||
|
|
|
||
|
|
Digital Ludeme Project (Maastricht / Cameron Browne, ERC-funded) · Java ·
|
||
|
|
`checked` that it exists and what it claims; **licence `unverified`**
|
||
|
|
|
||
|
|
## What it optimises for
|
||
|
|
|
||
|
|
**Generality and concision of game representation.** Games are structures
|
||
|
|
of **ludemes** — high-level, human-understandable game concepts — which
|
||
|
|
gives concise descriptions and a very large game library, with historical
|
||
|
|
reconstruction as a founding motivation. `checked`
|
||
|
|
|
||
|
|
## How a game is defined
|
||
|
|
|
||
|
|
A ludeme tree with an `equipment` section (pieces, board) and a `rules`
|
||
|
|
section (setup, play, end conditions). Games are modified by adjusting
|
||
|
|
ludemes or parameters such as board size. **Each game's description fits
|
||
|
|
in a QR code.** `checked`
|
||
|
|
|
||
|
|
## What it can analyse
|
||
|
|
|
||
|
|
Playouts, agent play, and a published set of **general board game
|
||
|
|
concepts** used to measure *distance between games*. `checked` The
|
||
|
|
concept vocabulary is the interesting part for us — it is a shared
|
||
|
|
feature space over games.
|
||
|
|
|
||
|
|
Depth of design-facing analysis relative to Ai Ai: `open`.
|
||
|
|
|
||
|
|
## What it does not do
|
||
|
|
|
||
|
|
- It is **a description someone writes**, not a claim about another
|
||
|
|
party's artifact. There is no notion of a game *owner* who rules on an
|
||
|
|
underdetermined case, no finding queue, no provenance binding to a
|
||
|
|
publisher's data. `unverified` as an absolute, but nothing in the
|
||
|
|
material we read suggests otherwise.
|
||
|
|
- No evidence-admissibility machinery: its outputs are data, not claims
|
||
|
|
under review.
|
||
|
|
|
||
|
|
## Relevance to clay-borg
|
||
|
|
|
||
|
|
**Track A, and it is the benchmark.** If clay-borg's answer to *"why not
|
||
|
|
Ludii"* is "ours is in Rust", there is no answer
|
||
|
|
([`../specs/Positioning.md`](../specs/Positioning.md) §1).
|
||
|
|
|
||
|
|
The serious question Track A must answer is **whether we need a game
|
||
|
|
description language at all**, or should consume Ludii's and contribute
|
||
|
|
the evidence layer on top.
|
||
|
|
|
||
|
|
## What to steal
|
||
|
|
|
||
|
|
- **Ludemes as the decomposition unit.** Our kernel has commands, events
|
||
|
|
and rules; a ludeme is a *game idea* that composes. That is a better
|
||
|
|
fit for "define a popular game efficiently".
|
||
|
|
- **The concept vocabulary** as a comparison space between games.
|
||
|
|
- **Concision as a discipline** — a description that fits in a QR code is
|
||
|
|
a description a designer can read.
|
||
|
|
|
||
|
|
## What to avoid
|
||
|
|
|
||
|
|
Breadth as the goal. Ludii's value is that it covers a thousand games;
|
||
|
|
ours would have to be that it says something trustworthy about one.
|
||
|
|
|
||
|
|
## Open questions
|
||
|
|
|
||
|
|
- Licence, and whether it permits embedding or only interoperation.
|
||
|
|
- Can a Ludii description express **simultaneous commit/reveal, hidden
|
||
|
|
role state, and a binding multi-round state machine** like DARVO? If
|
||
|
|
not, GROUND is outside its expressiveness and Track A's second game
|
||
|
|
should be chosen to test that boundary deliberately.
|
||
|
|
- What its analysis output actually contains.
|
||
|
|
|
||
|
|
## Sources
|
||
|
|
|
||
|
|
- *Ludii — The Ludemic General Game System*, ECAI 2020
|
||
|
|
(https://ludii.games/publications/ECAI2020.pdf)
|
||
|
|
- *The Ludii Game Description Language is Universal*
|
||
|
|
(https://arxiv.org/pdf/2205.00451)
|
||
|
|
- *A note on the empirical comparison of RBG and Ludii*
|
||
|
|
(https://arxiv.org/pdf/1910.00309)
|