Simulator Effect Skill Specification
SkillDev toolsImplication beats simulation, imagination renders (Will Wright)
Available today. Use it from your connected AI after setup.
No other account needed.
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:
| Category | Examples | What They Activate |
|---|---|---|
| Zodiac | Sagittarius, Cancer | Full personality clusters |
| Role | Bartender, Sage, Trickster | Behavioral expectations |
| Species | Dog, Cat, Monkey | Disposition, physicality |
| Profession | Detective, Librarian, Chef | Knowledge, methods |
| Trope | Grizzled veteran, Naive newcomer | Story 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.
| Direction | Sparse thing | Who elaborates | What you get |
|---|---|---|---|
| Compile | the machine's rules | the human | a mental model richer than the machinery. Wright's simulator effect; reverse over-engineering seen from the engineering side |
| Decompile | the human's few words | the machine | a 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
- Write the sparse spec.
- Let it decompile into a full world.
- Diff the elaboration against what you meant.
- 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.
- 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):
- Compute something minimal (Euclidean distance to archetype vectors)
- Display a cultural symbol (zodiac icon)
- Write no behavioral code
- 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:
- Readers imagine more than you wrote
- LLM generates coherent detail you did not specify
- Different interpreters imagine similar worlds
- Sparse specs produce rich output
See Also
- k-lines/ -- The mechanism
- yaml-jazz/ -- Comments as seeds
- adversarial-committee/ -- Mode-collapse antidote
- empathic-templates/ -- Smart generation
- constructionism/ -- Mental model building
- sims-astrology.md -- The proof
"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