one dataset · paper, tables, graph, wiki
simgrammar the grammar of simulation

watch

2 shorts with this record on screen
Short 3: A border post and a daughter, opening frameplay · 0:36
rendered · short-03.mp4 · drawn from the dataset

short 3 0:36

A border post and a daughter

transcript

A border-checkpoint game from 2013 and a daughter-raising game from 1993 belong to the same family.

We grouped 179 simulation games by the parts they're built from, then redid the grouping on 1000 random subsets of the catalog. These two land together almost every time.

Both give you time in fixed slots: a shift at the border, three slots a month for your daughter. Both keep money tight. Both keep sending authored events at you.

Princess Maker 2 is filed as a life sim, and it lands far from The Sims.

also on the pages for

Short 8: City builders don't tell stories, opening frameplay · 0:38
rendered · short-08.mp4 · drawn from the dataset

short 8 0:38

City builders don't tell stories

transcript

Only one game in our catalog lets you place buildings and also runs chains of story events: 77 games do the first, 17 the second.

In Cities: Skylines, a district built all at once grows old all at once. Decades later its residents die in a wave, and the hearses back up. The game treats it as a services problem. Nothing tells you a story about any of them.

The exception is Surviving Mars, which lays authored mysteries like plagues and AI revolts over a colony you lay out yourself. Even there, the mysteries are layered on top of the colony.

also on the pages for

definition

Each template holds a trigger predicate over state, a selection weight or mean time to happen, an immediate effect block, options with effects, and calls that schedule follow-up events with delays. Hooks such as yearly pulses, births, or deaths evaluate eligible templates and fire them. In Crusader Kings III, events do not fire on their own: on_actions, decisions, or interactions call them; an on_action can fire a list of events, weighted random_events, or the first valid one; and trigger_event schedules a follow-up such as days = { 7 14 } later, so a chain carries saved scopes and flags across months. Europa Universalis IV and Stellaris use the same Paradox script family; Frostpunk and Banished use simpler condition-fired events. Unlike a storyteller director, which paces generic incidents, chains carry authored story state forward. Inputs: state predicates and flags. Outputs: effects, flags, and scheduled events.

player experience

The simulation seems to notice what the player did. A rival's illness leads to a succession dispute, which leads to a war invitation. Players feel stories unfolding from their situation, learn to set up conditions for chains they want, and dread chains they recognize.

design levers

  • trigger specificity: broad pulses versus narrow state predicates
  • weights, mean time to happen, and random delay ranges between links
  • branching factor and how many chain steps carry state forward
  • whether follow-ups re-check conditions so chains can fail when the world changes
  • cooldowns and once-per-game flags that limit repetition

failure modes

  • Players see the same chains every playthrough once the event pool is exhausted.
  • Chains ignore world changes made between links, producing contradictions such as an event about a ruler who has died.
  • Broad iteration in frequent pulses (the CK3 modding wiki warns against every_living_character in pulse on_actions) causes late-game slowdown.
  • Authored text quality caps depth, because each branch must be written by hand.

dynamics

  • Chains link otherwise separate systems, such as health, inheritance, and war, into multi-year storylines.
  • Overlapping chains on the same characters produce compound situations that no single template described.
  • Modders extend event pools until mods conflict on shared hooks.

open questions

  • Can a language model write follow-up links conditioned on the actual state reached, keeping chains coherent with world changes?
  • What fraction of authored chain content could be replaced by generated text while keeping effects hand-tuned?

appears in

the paper, 3 sections · 4 chapters · 4 episodes · 2 shorts
paper

4. A grammar of simulation games

linked in this section of the paper

paper
paper

5. The structure of the design space

linked in this section of the paper

paper
paper

8. Where the techniques land

linked in this section of the paper

paper
glossary

Glossary of mechanics

listed under narrative & generation, with its summary

book
ch 3

Chapter 3. Old parts

named in the text

book
ch 6

Chapter 6. Five ceilings

named in the text

book
ch 8

Chapter 8. Where AI lands

linked from the text

book
ch 9

Chapter 9. Vacant lots

linked from the text

book
ep 3

Families across genres

on screen at 2:31 odd couples

episode
ep 5

The five ceilings

on screen at 1:29 content made by hand

episode
ep 7

Where AI lands

on screen at 4:15 what they'd change

episode
ep 8

Vacant lots

on screen at 0:21 the missing story

episode
short 3

A border post and a daughter

0:36 · on screen in the short

short
short 8

City builders don't tell stories

0:38 · on screen in the short

short

sources

1
CK3 Wiki contributors (2026). Event modding (Crusader Kings III). Crusader Kings III Wiki (paradoxwikis.com)

provenance

runs in log/runs
2026-10-24
created2026-10-24-taxonomy-m7taxonomy