Simulator Effect Skill Specification

SkillDev tools

Implication beats simulation, imagination renders (Will Wright)

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Simulator Effect Skill Specification skill

What this skill tells your AI

The instructions your AI receives, as published by simhacker/moollm in skills/simulator-effect/SKILL.md and read by ahel’s review.

Implication is more efficient (and richer) than simulation.

Purpose

The Simulator Effect skill provides principles and methods for leveraging imagination -- human or LLM -- to fill gaps in sparse specifications. Instead of exhaustive simulation, provide seeds that activate rich mental models.


Core Methods

IMPLY

Instead of simulating, imply.

Input: Minimal specification (name, archetype, sensory details) Output: Rich interpretation filling gaps coherently

# Input
character:
  archetype: "grizzled bartender"

# LLM interprets as
bartender:
  name: Grim
  appearance: weathered face, salt-and-pepper beard
  manner: laconic, speaks in short sentences
  knowledge: has seen every adventurer who passed through
  secrets: knows where the treasure is, will not say

SEED

Provide imagination seeds rather than exhaustive specification.

Seed types:

  • Archetype -- "bartender", "sage", "trickster"
  • Sensory detail -- "smells of woodsmoke"
  • Mystery -- "the locked door no one mentions"
  • Tension -- "she avoided his gaze"
  • K-line -- "Sagittarius", "melancholy", "playful"
room:
  seeds:
    archetype: "mysterious pub"
    sensory: "warm despite the draft, old ale smell"
    mystery: "the back room that requires proving yourself"
    tension: "regulars glance at newcomers, then away"

SPARSE

Deliberately omit details to invite imagination.

Anti-pattern:

# Over-specified -- leaves nothing to imagine
room:
  name: The Gezelligheid Grotto
  tables: 12 oak tables, 3 round, 9 rectangular
  chairs: 48 chairs, mix of styles
  bar: 15 feet long, mahogany with brass rail
  taps: 8 beer taps, 2 cider, 1 mead
  lighting: 6 candelabras, 12 wall sconces
  floor: wide oak planks, worn in traffic paths
  # ... 50 more lines

Pattern:

# Sparse -- imagination fills the rest
room:
  name: The Gezelligheid Grotto
  atmosphere: warm despite the draft
  smell: woodsmoke and old ale
  notable: the back room no one talks about

ARCHETYPE

Use cultural archetypes as shorthand for personality packages.

Archetype categories:

CategoryExamplesWhat They Activate
ZodiacSagittarius, CancerFull personality clusters
RoleBartender, Sage, TricksterBehavioral expectations
SpeciesDog, Cat, MonkeyDisposition, physicality
ProfessionDetective, Librarian, ChefKnowledge, methods
TropeGrizzled veteran, Naive newcomerStory function
# One word does the work of a personality matrix
character:
  archetype: sagittarius_explorer
  # Implies: adventurous, philosophical, blunt, optimistic

JAZZ

Use YAML comments as imagination seeds (per yaml-jazz).

playful: 9
# not born playful -- BECAME playful by choice
# 122 years of grim taught me joy is rebellion

melancholy: 6
# higher than I first admitted
# the silver streaks glow when I am sad

Comments are read by the LLM. They shape interpretation. They are not documentation -- they are code.


The Two Directions, and the Round Trip

The effect runs both ways, and it is one mechanism with two hosts rather than two effects. Wright named the human direction. The machine direction is the same prior supplying structure the signal did not contain, which is how NOISY-CHANNEL.md identifies a recognizer hearing "Sådan gaves" for "Shannon gave us": the same mechanism as the simulator effect, running in a transcription pipeline with nobody steering.

Do not coin a second noun for the second direction. Name the direction.

DirectionSparse thingWho elaboratesWhat you get
Compilethe machine's rulesthe humana mental model richer than the machinery. Wright's simulator effect; reverse over-engineering seen from the engineering side
Decompilethe human's few wordsthe machinea world richer than the spec, including names for things you never named

Both words are Wright's and Don's, not new: "The computer game is just a compiler for that mental model" (Long Now, 2006, t=5665), and "Science compresses the world into rules; games decompress simple rules into worlds."

Decompilation is the right frame for the machine direction because it carries its own warning. A decompiler takes a stripped binary, returns plausible source that behaves like the original, and invents every name that was missing from the symbol table. That is what four words of spec get back: coherent, useful, not what you wrote, and full of confident nouns you never chose. Nobody ships decompiler output unread.

DIFF

The round trip is the method, and it is Wright's own answer to the open-source question (t=3929): when players start arguing with the simulation's assumptions the game has succeeded, because building a model and comparing it against their own viewpoint makes their previously tacit assumptions coalesce.

Input: your sparse spec, plus the elaboration it produced Output: the list of places you had not decided anything

  1. Write the sparse spec.
  2. Let it decompile into a full world.
  3. Diff the elaboration against what you meant.
  4. Every invented detail marks a gap. The ones that feel wrong are the gaps where you did hold a tacit commitment, and now you can state it.
  5. Put the ones worth keeping into the spec as seeds. Leave the rest open on purpose.

The diff localizes your under-specification. That is the constructionist loop with a measuring instrument instead of a vibe, and it is why sparse specs are a working method rather than laziness.

The hazard, which is the mirror of the human one

In the human direction the risk is imagining machinery that is not there. In the machine direction the risk is being credited with a specification you never wrote. When an agent does something surprising, the usual cause is that it decompiled a gap you did not know you had left, and then acted as though you had asked.

In a game that is the medium. In a room full of your real files it is an unlogged decision attributed to you. The fix is not less elaboration, it is Eager's green pixel: show the interpolation before acting on it, so the inference is visible while it is still cheap to correct. See AXES-NOT-CAMPS.md on where responsibility lands, and I-Beam's constitution for the same rule stated as a refusal.


The Astrillogical Pattern

Named after The Sims' zodiac implementation (1997):

  1. Compute something minimal (Euclidean distance to archetype vectors)
  2. Display a cultural symbol (zodiac icon)
  3. Write no behavioral code
  4. Let imagination do the rest

Result: Testers reported the zodiac was "too influential" -- but there was no influence to tune. The effect was purely imagined.

Application:

# Minimal computation
character:
  personality_vector: [neat: 7, outgoing: 3, playful: 9]
  # Display nearest archetype
  archetype: sagittarius  # Computed, not assigned

# No behavioral code referencing 'sagittarius'
# Player/LLM imagines Sagittarius behavior

Integration with Other Skills

With k-lines/

Names activate clusters. Simulator Effect explains why.

# K-line activation IS Simulator Effect
character:
  name: Palm  # Activates: open hand, tropical, reaching

With adversarial-committee/

Mode-collapse is Simulator Effect in reverse -- LLM collapses to mean when constraints are absent. Adversarial committee provides constraints through opposing propensities.

committee:
  - propensity: paranoid_realism   # Different lens
  - propensity: idealism           # Different lens
  - propensity: evidence_prosecutor # Different lens

# Same topic, three different Simulator Effects
# Cross-examination finds robust interpretations

With speed-of-light/

One LLM call, many turns. Imagination fills the "rendering" for each turn. Sparse state, rich narrative.

With needs/

Sims motives are imagination seeds, not behavior code.

needs:
  hunger: 30  # Seed
  # LLM imagines: "distracted by stomach growling"
  # Not: deterministic eat() behavior

With empathic-templates/

Templates leverage Simulator Effect -- provide structure, let LLM fill content.

template: |
  [CHARACTER] enters [ROOM] and notices [NOTABLE_DETAIL].
  They feel [EMOTION] because [REASON].

# LLM generates coherent fill based on context

Failure Modes

Over-Specification

Too much detail leaves nothing to imagine. The simulation feels mechanical.

Symptom: Output feels like a checklist, not a story. Fix: Remove 80% of specification. Keep seeds.

Under-Seeding

Not enough anchors for imagination to grip.

Symptom: Output is generic, could be anyone/anywhere. Fix: Add archetype, sensory detail, or mystery.

Wrong Archetype

Archetype conflicts with intended behavior.

Symptom: Character behaves "off" despite correct specs. Fix: The archetype K-line is overriding your specs. Change the archetype or add explicit counters.

Mode-Collapse

Single-agent LLM with weak constraints collapses to bland mean.

Symptom: Output is safe, inoffensive, boring. Fix: Use adversarial-committee or add tension/conflict seeds.


Metrics

The Simulator Effect is working when:

  1. Readers imagine more than you wrote
  2. LLM generates coherent detail you did not specify
  3. Different interpreters imagine similar worlds
  4. Sparse specs produce rich output

See Also


"The game provides scaffolding. Imagination does the rendering."

Signals

GitHub stars
53
Forks
5
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
simulator-effect
Source
github.com/simhacker/moollm