genre

Use when

You want optimization play over a self-running economy or institution.

What it is. You author a system — a factory, a park, a colony, a household — then tune its inputs, throughput, and demand until it runs without you. The verbs are place, connect, price, staff, cut. Play is diagnosis and adjustment, not reflexes.

Player fantasy / why it’s fun. The dopamine is legibility earned: a mess of red numbers you slowly turn green, then watch tick over on its own. You are the invisible hand that finally understands its own machine.

Pillars (exactly 3)

  1. Legible systems. Every number traces to a cause the player can see and touch. If a queue backs up, the bottleneck is findable. Opacity is the enemy — see pattern-readability.
  2. Meaningful optimization. There is always a better configuration, and the delta is felt. Choices trade off, not dominate — dodge antipattern-boring-optimal where one build wins forever.
  3. Escalating load. Demand, complexity, or scale ratchets up so a solved layout becomes tomorrow’s bottleneck. Pressure, not a plateau.

The loop stack

LayerBeat
MomentRead a gauge, place/reprice one node, see the number move.
EncounterDiagnose one bottleneck or shortfall and rebalance around it.
SessionAbsorb a demand spike or unlock; re-plan the whole flow to hold margin.
MetaMaster the system’s shape — the intuitions that make the next map trivial.

The loop is observe → hypothesize → adjust → watch it settle. Keep the settle-time short enough to close the feedback fast; see pattern-feedback-loops and pattern-mastery-and-flow.

Essential systems

Content & difficulty model

Signature-mechanic seeds

Common pitfalls

Anchors

Neighbors worth studying: genre-city-builder, genre-incremental (the demand curve without the map), genre-4x (management at civilizational scale).

Verify

Prove the loop against design/FUN.md#17-·-city-builder — is the bottleneck findable, does the demand curve keep the target moving, does a tuned system visibly run itself? Judge looks via process-refine-and-handoff.

This module rendersthe repo's markdowndirectly — edit it there, it changes here.