A · Design-element catalog 100 rows · M001–M135
Version 1.1.0 ·
This catalog is an idea source, not a checklist. You will find three kinds of entries:
- Rules the player uses to build.
- Effects that can emerge when rules interact.
- Tools for specifying, explaining, testing, or scoring a machine.
One mechanic in §2 may use several rows here. Choose only the entries that strengthen the game's central pressure and one another.
IDs never change. When a row is removed, its number stays unused, so gaps such as those in M011–M029 are intentional.
Ratings and game examples are prompts, not measurements. Some examples come from open factory games rather than specification-driven puzzles, so their ideas may not transfer directly. Inspect a game before you borrow from it, then test the rule against the five questions in §2.
Start with the combines with column. It suggests pairs worth testing, although a pair may appear in only one of its two rows.
Emergence scale. Low: results follow directly from an action. Medium: several rules must be considered together. High: local rules can create surprising system-wide behaviour or failures.
A · Specification & verification M001–M010
Can the player infer a fair spec and test against it? M103 and M113 belong here by subject; they sit in G and H by number.
| Element | Description | Player action | Constraints | Optimization axes | Emerg. (editorial) | Examples to inspect | Combines with |
|---|---|---|---|---|---|---|---|
| M001 Specification-driven I/O target | A level defines valid input-output behavior rather than a prescribed construction. | Infer the transformation and build any system that satisfies it. | Exact semantics; hidden or generated cases may apply | Correctness; robustness; simplicity | Low | SpaceChem, TIS-100, SHENZHEN I/O, EXAPUNKS, Manufactoria, HRM | M002, M003, M008, M105 |
| M002 Multiple or adversarial test cases | A solution is replayed against varied inputs to prevent hard-coded answers. | Generalize logic and test edge cases. | Unknown future cases; one failure invalidates the program | Robustness; cycles across worst case; code size | Medium | TIS-100, SHENZHEN I/O, EXAPUNKS, Manufactoria, HRM | M001, M009, M113, M126 |
| M003 Exact structural output matching | The produced object must match a target topology, orientation, ordering, or constrained graph. | Assemble, transform, and orient components precisely. | No extra parts; orientation and connectivity matter | Parts; area; cycles; damage | Low | Opus Magnum, SpaceChem, Infinifactory, shapez | M035, M036, M045, M060 |
| M005 Open-ended construction grammar | A small component set permits many topologically different valid solutions. | Invent a system rather than select a canned answer. | Only component semantics and level specification constrain design | Elegance; cost; speed; area; originality | Medium | Factorio, Opus Magnum, SpaceChem, shapez | M001, M105, M114, M126 |
| M006 Bounded workspace | Construction must fit inside a fixed board, reactor, circuit, dome, or node grid. | Pack components and route around obstacles. | Fixed dimensions; blocked cells; edge ports | Area; wire length; component count | Medium | SpaceChem, Opus Magnum, TIS-100, SHENZHEN I/O | M047, M051, M108, M127 |
| M007 Restricted component palette | Each puzzle offers only selected parts, commands, or system types. | Compose a solution from the permitted vocabulary. | Missing conveniences; limited counts; locked technologies | Part count; workaround complexity | Low | SHENZHEN I/O, Opus Magnum, The Incredible Machine, HRM | M005, M059, M119, M117 |
| M008 Edit–run–reset loop | Construction alternates rapidly between editing and deterministic simulation. | Run, pause, inspect, rewind or reset, then modify. | Simulation usually starts from a clean state | Iteration time; cognitive load | Low | SpaceChem, Opus Magnum, TIS-100, HRM (and every Zachtronics title) | M009, M010, M126, M129 |
| M009 Step-through execution trace | The game exposes state changes one tick, instruction, or object movement at a time. | Pause and inspect registers, paths, signals, queues, or actors. | May require selecting one actor or node among many | Debug time; observability | Low | TIS-100, SHENZHEN I/O, EXAPUNKS, HRM, Turing Complete | M065, M072, M073, M113 |
| M010 Explicit failure predicates | The simulation detects invalid states such as collisions, deadlocks, malformed outputs, forbidden transitions, or unmet goals. | Diagnose which invariant was violated. | Some games reveal only the first failure | Reliability; avoidance margin | Low | Opus Magnum, SpaceChem, Infinifactory, Factorio | M003, M051, M073 |
B · Flow & capacity networks M011–M029
How do topology, capacity, and timing make movement a design problem?
| Element | Description | Player action | Constraints | Optimization axes | Emerg. (editorial) | Examples to inspect | Combines with |
|---|---|---|---|---|---|---|---|
| M011 Directed channel transport | Discrete entities move automatically along player-defined directed channels. | Place and orient channels between sources, processors, buffers, and sinks. | Direction, speed, occupancy, corners | Length; throughput; area; crossings | Medium | Factorio, shapez, Satisfactory, Infinifactory, Mindustry | M013, M017 |
| M013 Split, merge, and balance flows | Junctions divide or combine streams, often with ratios or priority. | Place splitters, mergers, balancers, or junction logic. | Finite throughput; fairness or priority semantics | Balance; throughput; footprint | High | Factorio, shapez, Satisfactory | M018 |
| M014 Filtering and sorting | A junction routes entities by type, value, attribute, destination, or signal. | Configure filters or build a classifier. | Filter slots; unknown types; timing and capacity | Accuracy; throughput; filter count | Medium | Factorio, shapez, Manufactoria, Cosmic Express | M070, M089, M103 |
| M016 Buffering and storage | Inventory absorbs timing mismatch between producers and consumers. | Insert chests, tanks, registers, queues, or waiting bays. | Finite capacity; access rules; spoilage in some games | Buffer size; latency; resilience | Medium | Factorio, Satisfactory, ONI | M017, M018, M072 |
| M017 Backpressure, starvation, and jamming | Downstream blockage propagates upstream; empty inputs idle consumers. | Identify and remove the limiting constraint. | Finite buffers and transfer rates | Uptime; buffer occupancy; bottleneck rate | High | Factorio, shapez, Satisfactory | M016, M018, M073 |
| M018 Throughput ratio matching | Processing stages have rates that must be proportioned for steady state. | Calculate or empirically tune system counts and channel capacity. | Discrete system counts; speed modifiers; channel caps | Throughput; system count; power; buffer size | High | Factorio, Satisfactory, shapez 2, Mindustry | M013 |
| M026 Tunnels, portals, and nonlocal links | A path disappears and reappears elsewhere, bypassing surface conflicts. | Pair endpoints and reason about hidden connectivity. | Endpoint pairing; direction; capacity; hidden segment | Space; crossings; latency | Low | Factorio, shapez, Cosmic Express | M027, M091, M101 |
| M027 Crossing and grade-separation constraints | Routes may not cross freely, or crossings require special pieces, timing, or layers. | Reroute, bridge, tunnel, or schedule conflicts. | Limited crossings, bridge inventory, collision rules | Area; piece count; delay | Medium | Factorio, shapez, Manufactoria, Cosmic Express | M026 |
| M029 Hierarchical long-distance transport | Local systems connect through slower or higher-capacity transport layers. | Build hubs and routes between regions or scales. | Travel time, fuel/energy, schedules, launch cost | Latency; payload; energy; hub count | High | Factorio, Satisfactory, Mindustry | M011, M016, M018 |
C · Transformation grammars M030–M044
Can a small vocabulary of operations compose into several routes from input to output?
| Element | Description | Player action | Constraints | Optimization axes | Emerg. (editorial) | Examples to inspect | Combines with |
|---|---|---|---|---|---|---|---|
| M030 Multi-input transformation process | A process consumes a defined combination of inputs over time and produces one or more outputs. | Select transformation rules and supply inputs at compatible rates. | Transformation rule stoichiometry, craft time, system compatibility | Components; time; energy; yield | High | Factorio, Satisfactory, Mindustry, shapez | M018, M118 |
| M031 Cutting or partitioning | An object is divided into pieces or quadrants that retain identity or position. | Orient the object and route desired fragments. | Cut axis; fragment order; waste behavior | Cutter count; waste; throughput | Low | shapez, Infinifactory | M032, M033, M039 |
| M032 Rotation and orientation | Components or outputs are rotated to align interfaces or target orientation. | Place rotators, program manipulator turns, or manually orient parts. | Discrete angles; handedness; collision envelope | Rotator count; cycles; space | Low | shapez, Opus Magnum, Factorio, Infinifactory | M003, M047, M049, M060 |
| M033 Layer stacking and composition | Separate pieces are superimposed or stacked into a composite object. | Align layers and feed them to a stacker or assembly step. | Layer order, maximum depth, support/collapse rules | Stacker count; layers per second; waste | Medium | shapez, Infinifactory | M031, M045, M060 |
| M035 Permanent joining | Separate entities become one connected structure or logical unit. | Align compatible interfaces and trigger a permanent join. | Adjacency, orientation, material compatibility | Join count; time; error rate | Medium | Opus Magnum, SpaceChem, Infinifactory | M003, M036, M040, M051 |
| M036 Constrained graph construction | Nodes and edges are transformed until their topology and labels match a target graph. | Create, remove, redirect, or relabel edges and nodes. | Degree limits, allowed edge types, topology, and workspace | Operations; area; node count; edge count | Medium | SpaceChem, Opus Magnum, MOLEK-SYNTEZ | M035, M038, M075 |
| M038 Type or state conversion | An operation changes an entity’s type or state while preserving selected structure or identity. | Route entities through converters or apply state-transition operators. | Allowed conversion graph; cost; position requirements | Conversion count; resource cost; cycle time | Low | Opus Magnum, shapez, Factorio | M030, M036, M118 |
| M039 Irreversible subtraction | Material, structure, or state is irreversibly removed to reach a target. | Position subtractive operators and remove only unwanted parts. | Tool reach, irreversible removal, collision | Waste; tool moves; time | Medium | shapez, Infinifactory | M031, M049, M060 |
| M040 Ordered construction dependency | A final structure can be produced only if operations occur in an order that preserves access and prerequisites. | Plan a feasible sequence around occlusion and tool reach. | Access, collision, irreversibility, support | Steps; repositioning; tool count | Medium | Opus Magnum, Infinifactory | M035, M045, M051, M063 |
| M044 Auto-replenishing sources | Puzzle inputs respawn automatically so design focuses on transformation rather than extraction. | Connect source ports and manage cadence. | Spawn rate, orientation, port position | Cycles; throughput; buffer need | Low | SpaceChem, Opus Magnum, Manufactoria | M017, M118 |
D · Spatial construction M045–M060
Does geometry create real access, routing, and timing decisions?
| Element | Description | Player action | Constraints | Optimization axes | Emerg. (editorial) | Examples to inspect | Combines with |
|---|---|---|---|---|---|---|---|
| M045 Structural support and stability | Assemblies may fall, collapse, detach, or depend on support topology. | Sequence construction and add supports or exploit gravity. | Gravity, connection strength, platform rules | Support count; mass; stability margin | High | Poly Bridge, Besiege, The Incredible Machine, Infinifactory | M033, M035 |
| M046 Discrete grid placement | Components snap to cells, making topology and distance countable. | Place, rotate, and connect pieces on a grid. | One component per cell; adjacency rules | Area; path length; symmetry | Low | SpaceChem, Opus Magnum, Factorio, shapez, TIS-100 (near-universal) | M006, M047, M108, M127 |
| M047 Hexagonal geometry | Six-neighbor geometry changes reach, rotation, packing, and collision patterns. | Plan around 60-degree directions and radial reach. | Six axes; different parity and ring distances | Area; manipulator count; rotational symmetry | Medium | Opus Magnum, MOLEK-SYNTEZ | M032, M049, M051, M108 |
| M048 3D cell construction and removal | The environment and constructed objects are composed of addressable three-dimensional cells. | Build in volume and manipulate block structures. | Grid adjacency; gravity or welding; tool reach | Volume; operations; travel distance | Medium | Infinifactory | M035, M039, M127 |
| M049 Reach-constrained programmable manipulators | A manipulator grasps, rotates, translates, and releases entities within a geometric reach. | Place manipulators and program timed manipulations. | Reach, pivot, holding state, collision | Manipulators; cycles; area; cost | High | Opus Magnum, MOLEK-SYNTEZ | M050, M051, M061, M063 |
| M050 Mobile and extensible manipulators | Manipulators extend, retract, or translate along guide paths, increasing reach at temporal or spatial cost. | Program translation and coordinate it with rotation and grabbing. | Track path, extension limit, collision envelope | Cost; cycles; reach; track length | Medium | Opus Magnum | M049, M051, M067, M108 |
| M051 Collision exclusion | Moving bodies cannot occupy the same space or intersect forbidden geometry. | Phase motions, reroute paths, or compact safely. | Body envelopes, simultaneous ticks, static obstacles | Area; cycles; clearance | High | Opus Magnum, SpaceChem, Infinifactory | M040, M049, M061, M072 |
| M059 Finite part inventory | Only a limited number of each component may be used. | Budget scarce pieces and substitute alternatives. | Hard component limits | Parts used; leftovers; area | Low | The Incredible Machine, Contraption Maker | M007, M108, M117 |
| M060 Target pose and orientation | An object must reach a specific position, orientation, or docking relation. | Manipulate pose through rotations, pushes, and constrained paths. | Collision, reach, discrete rotations | Moves; tools; clearance | Low | Opus Magnum, Infinifactory | M003, M032, M040, M051 |
E · Time & concurrency M061–M073
Can the player understand how local schedules produce global behaviour?
| Element | Description | Player action | Constraints | Optimization axes | Emerg. (editorial) | Examples to inspect | Combines with |
|---|---|---|---|---|---|---|---|
| M061 Global discrete ticks | All active components advance in synchronized time steps. | Align actions across devices and reason cycle by cycle. | Simultaneous update semantics | Cycles; latency; idle time | Medium | SpaceChem, TIS-100, Opus Magnum, Manufactoria, HRM (and every Zachtronics title) | M063, M064, M066, M072 |
| M062 Per-device timelines | Each system or manipulator receives a sequenced row of commands aligned to time. | Place commands on timelines and synchronize rows. | One command per slot; repeating program; collision | Cycles; command count; parallelism | Medium | Opus Magnum, MOLEK-SYNTEZ | M049, M061, M063, M066 |
| M063 Automatic looping programs | A finite instruction sequence repeats to create continuous behavior. | Design a loop with a stable return state. | Program counter wraps; state persists unless reset | Loop length; throughput; state complexity | Medium | SpaceChem, Opus Magnum, TIS-100 | M061, M068, M113 |
| M064 Synchronous parallel execution | Multiple actors or nodes execute concurrently under a shared clock. | Partition work and coordinate simultaneous operations. | Lockstep ticks; communication or collision constraints | Cycles; actor count; utilization | High | TIS-100, SHENZHEN I/O, 7 Billion Humans, SpaceChem | M061, M065, M066, M083 |
| M065 Blocking communication | A send or receive waits until the counterpart is ready, coupling execution timing. | Pair communication operations and avoid circular waits. | Synchronous rendezvous; port direction or locality | Cycles; communication count; deadlock risk | High | TIS-100, SHENZHEN I/O, EXAPUNKS | M064, M073, M078 |
| M066 Explicit synchronization primitives | Signals, sync points, waits, or barriers coordinate independent processes. | Insert synchronization at phase boundaries. | All required participants or conditions must align | Cycles; wait time; sync count | Medium | SpaceChem, SHENZHEN I/O, TIS-100 | M061, M064, M065, M072 |
| M067 Delay, sleep, and timer control | An actor deliberately waits or a device activates after a fixed interval. | Insert waits, tune phases, or build timers. | Discrete durations; power-state semantics | Latency; power; cycle alignment | Low | SHENZHEN I/O, TIS-100, Factorio | M062, M066, M071, M110 |
| M068 Counters and finite-state control | Stored state tracks quantities, phases, or modes across cycles. | Increment, reset, compare, and branch on state. | Finite storage; overflow; initialization | Memory; instructions; response time | Medium | SHENZHEN I/O, TIS-100, Manufactoria, Factorio | M070, M071, M074 |
| M069 Sensors and actuators | Sensors convert world state into signals; actuators convert signals into physical actions. | Place, connect, configure, and test a control loop. | Sensor range; update rate; actuator delay | Response time; sensor count; power | Medium | Factorio, SHENZHEN I/O, ONI | M070, M071 |
| M070 Conditional execution and gates | Actions occur only when a comparison or predicate is true. | Write branches or configure gates and filters. | Limited predicates; evaluation timing | Instructions; gates; latency | Low | TIS-100, SHENZHEN I/O, HRM, Manufactoria, Factorio | M014, M068, M086, M100 |
| M071 Event-triggered activation | A discrete event starts a device or chain rather than continuous polling. | Wire triggers, switches, sensors, or one-shot events. | Trigger polarity, one-shot/reset behavior, propagation delay | Latency; trigger count; reliability | Medium | Factorio, The Incredible Machine, Mindustry | M067, M069 |
| M072 Race conditions and timing hazards | Correctness depends on relative arrival or execution order among independent processes. | Eliminate nondeterminism or engineer safe timing margins. | Scheduling semantics; variable latency; shared access | Worst-case latency; margin; determinism | High | TIS-100, SHENZHEN I/O, EXAPUNKS, Factorio | M009, M065, M073 |
| M073 Deadlock and livelock | Processes wait cyclically or keep moving without making progress. | Detect wait cycles and redesign resource acquisition or routing. | Blocking channels, finite buffers, exclusive blocks | Liveness; buffer count; protocol simplicity | High | TIS-100, SHENZHEN I/O, Factorio (rail deadlocks) | M017, M065, M113 |
F · Programming & information M074–M093
How much behaviour can the player express with a deliberately poor language?
| Element | Description | Player action | Constraints | Optimization axes | Emerg. (editorial) | Examples to inspect | Combines with |
|---|---|---|---|---|---|---|---|
| M074 Minimal instruction vocabulary | Programs use a compact set of moves, arithmetic, jumps, and I/O operations. | Write or drag instructions and manage low-level state. | Few instructions; explicit state; no high-level data structures | Instruction count; cycles; nodes | Low | TIS-100, SHENZHEN I/O, EXAPUNKS, HRM, 7 Billion Humans | M076, M085, M086, M109 |
| M075 Spatially encoded control flow | An execution token moves through placed commands, so geometry encodes control flow. | Lay command paths, loops, branches, and crossings. | Grid space; path continuity; simultaneous tokens | Area; path length; cycles | High | SpaceChem, Manufactoria, Opus Magnum | M011, M046, M063, M088 |
| M076 Limited local state | Programs have only a few registers, cells, or local storage slots. | Reuse state, encode values compactly, and spill to the environment. | Fixed registers, destructive reads, address limits | Memory cells; instructions; cycles | Medium | TIS-100, SHENZHEN I/O, EXAPUNKS, HRM | M074, M077, M080, M109 |
| M077 Environment as persistent state | Values are stored in floor tiles, objects, channels, queues, or spatial positions. | Write, retrieve, and organize data physically. | Addressability, travel time, occupancy | Space; movement; access latency | Medium | HRM, 7 Billion Humans, EXAPUNKS | M016, M076, M083, M088 |
| M078 Neighbor-to-neighbor message passing | Nodes communicate only through local ports to adjacent nodes. | Route values across a network of processors. | Topology, blocking semantics, no global memory | Cycles; hops; nodes; congestion | High | TIS-100, SHENZHEN I/O | M065, M079, M090 |
| M079 Local versus global communication channels | Different channels have different scope, addressing, or contention rules. | Choose where to communicate and isolate protocols. | Scope, collision/contention, endpoint count | Traffic; latency; channel count | Medium | SHENZHEN I/O, TIS-100 | M065, M078, M081 |
| M080 Sequential data objects and cursors | Data exists as objects with sequences, cursors, ownership, or host location. | Open, read, write, seek, move, copy, or delete data. | Capacity, access rights, location, cursor semantics | Instructions; movement; file size | Low | EXAPUNKS, TIS-100 | M076, M081, M082, M103 |
| M081 Mobile agents in a network | Programs inhabit hosts and move between them to act on local data or devices. | Program movement, coordination, and local operations. | Host capacity, link topology, local visibility | Cycles; movement; agents; code size | High | EXAPUNKS | M079, M080, M082 |
| M082 Agent replication or spawning | A running process creates a copy that continues independently from a defined state. | Fork workers and assign parallel roles. | Spawn limits, shared resources, termination, inherited instruction pointer | Cycles; agent count; code size | High | EXAPUNKS | M064, M081, M083 |
| M083 Shared policy across many agents | A homogeneous program controls many agents, each branching from local state. | Write a universal policy instead of scripting individuals. | No per-agent code; collisions; limited communication | Seconds/cycles; instructions; workers used | High | 7 Billion Humans, EXAPUNKS | M064, M077, M084, M100 |
| M084 Local perception and neighborhood queries | Actors sense nearby tiles, values, obstacles, or peers rather than a global map. | Branch on local surroundings and navigate. | Range, orientation, partial observability | Instructions; sensing steps; robustness | Medium | 7 Billion Humans | M069, M083, M101, M113 |
| M085 Jumps, loops, and control flow | Program-counter changes implement repetition and branching. | Create labels, jumps, loops, and termination paths. | Label limits; no structured syntax; fall-through | Instructions; cycles; branch count | Low | HRM, TIS-100, EXAPUNKS, 7 Billion Humans | M063, M070, M074, M087 |
| M086 Arithmetic, comparison, and data transformation | Operations transform numeric or symbolic values and test relations. | Compute, normalize, compare, encode, or decode values. | Token size, instruction set, overflow, destructive operations | Cycles; instruction count; range | Low | TIS-100, SHENZHEN I/O, EXAPUNKS, HRM | M068, M070, M074, M103 |
| M087 Subroutines, modules, and reusable macros | A solved transformation is encapsulated and reused as a component. | Define interfaces, call modules, or stamp blueprints. | Port count, call semantics, blueprint cost, hidden internals | Reuse; area; code duplication; scalability | Medium | HRM, EXAPUNKS, Factorio (blueprints) | M001, M126 |
| M088 Routing graph as finite-state machine | An entity’s path through readers, branches, and loops encodes automaton state. | Build a routing graph that accepts, rejects, or transforms sequences. | Reader semantics; path geometry; finite routing states | Area; parts; steps | Medium | Manufactoria, EXAPUNKS | M075, M089, M103, M104 |
| M089 Sequential symbol read/consume/write | A sequence carried by an entity can be inspected, consumed, and appended. | Route through readers and printers to manipulate the sequence. | Reader may consume; writer appends; queue order | Steps; components; string robustness | Medium | Manufactoria, TIS-100, EXAPUNKS | M014, M080, M088, M103 |
| M090 Primitive logic-network construction | Primitive logical operators, memory elements, and links are arranged into a functioning network. | Place primitives and route connections. | Port compatibility, connection topology, propagation, and component limits | Area; gates; delay; power | High | Turing Complete, Silicon Zeroes, Factorio (combinators), MHRD | M006, M078, M091, M109 |
| M091 Heterogeneous signal interfaces | Signals differ in width, encoding, direction, timing, or electrical behavior. | Select ports, convert formats, and coordinate sender/receiver roles. | Range, direction, blocking, pin count | Pins; conversion parts; latency | Low | SHENZHEN I/O, Turing Complete | M065, M079, M090 |
| M093 User-authored scripting or programmable devices | The game exposes a language or editor for custom logic beyond fixed puzzle pieces. | Write scripts, define chips, or author control programs. | Sandbox security, instruction limits, API scope | Code size; performance; reuse | Medium | Factorio (mods), EXAPUNKS (Redshift) | M087, M090, M126, M128 |
G · Rule manipulation & deduction M094–M104
Is the player manipulating objects, or the rules themselves? This can be powerful, but it attacks the stable core the player relies on. Make it foundational or leave it out.
| Element | Description | Player action | Constraints | Optimization axes | Emerg. (editorial) | Examples to inspect | Combines with |
|---|---|---|---|---|---|---|---|
| M094 Movable rule tokens | Rule tokens are spatial objects that can be moved to alter active rules. | Rearrange rule tokens while navigating the same space. | Rule tokens may be movable; grammar must remain valid | Moves; rule count; accessibility | High | Baba Is You | M095, M097, M101, M104 |
| M095 Grammar-driven rule activation | Only grammatically valid arrangements of rule tokens become active rules. | Construct or break clauses using entity, relation, property, connector, and condition tokens. | Grammar, reading direction, connectors, overlap | Moves; clauses; rule economy | High | Baba Is You | M094, M096, M100, M101 |
| M096 Dynamic property assignment | Rules assign behaviors or interaction properties to entity classes. | Assign or remove properties by editing rules. | Conflicting properties, rule precedence, object existence | Moves; number of active properties | High | Baba Is You | M095, M098, M099, M100 |
| M097 Rule-driven entity transformation | A rule transforms all matching entities or classes, possibly recursively. | Create, sequence, or prevent transformations. | Simultaneous replacement; cycles; object spawning/destruction | Moves; object count; stability | High | Baba Is You | M038, M094, M101 |
| M098 Reassignable control identity | The set of directly controlled entities is determined by rules rather than fixed identity. | Assign control to one or more entity classes. | At least one controllable object needed; simultaneous movement | Moves; controllable count | Medium | Baba Is You | M096, M099, M101, M113 |
| M099 Reassignable objective and failure semantics | Objective, failure, blocking, removal, or interaction semantics can be reassigned among entities. | Redefine which states or interactions count as success, failure, or hazard. | Rules must be spatially reachable and remain valid | Moves; rule edits | High | Baba Is You | M095, M096, M100, M101 |
| M100 Rule conjunction, negation, and conditions | Rules combine classes and properties or apply only under relational conditions. | Build compound clauses and reason about exceptions. | Grammar and precedence; potentially global scope | Moves; clause count; generality | High | Baba Is You | M070, M095, M101, M104 |
| M101 Self-reference and meta-level manipulation | Rules or objects can refer to the level, text, groups, or themselves, changing the puzzle’s representational layer. | Exploit self-reference, nesting, or world-as-object operations. | Paradox prevention; recursion semantics; level boundaries | Moves; rule depth; representation layers | High | Baba Is You | M026, M094, M097, M127 |
| M102 Numeric-clue spatial deduction | Row, column, region, or adjacency clues constrain which cells contain objects. | Mark cells and propagate forced consequences. | Global consistency; limited object counts; local rules | Mistakes; hints; deduction depth | Medium | Last Call BBS | M103, M104, M117, M119 |
| M103 Accept/reject classifier | Inputs are routed to success or failure outputs according to a predicate. | Build a recognizer or classifier that handles all examples. | No false positives/negatives; finite system resources | Accuracy; steps; area; generality | Medium | Manufactoria, TIS-100, EXAPUNKS | M002, M014, M088, M104 |
| M104 Constraint propagation and search | Local restrictions interact until choices become forced or a branch must be explored. | Derive consequences, backtrack, and preserve invariants. | Finite domains; global consistency; irreversible moves in some games | Moves; guesses; deduction depth | High | Cosmic Express, Baba Is You | M008, M102, M113 |
H · Optimization & architecture M105–M117
Do different priorities produce visibly different machines?
| Element | Description | Player action | Constraints | Optimization axes | Emerg. (editorial) | Examples to inspect | Combines with |
|---|---|---|---|---|---|---|---|
| M105 Multi-objective benchmark distributions | Solutions are plotted against community or benchmark distributions on several axes. | Compare, redesign, and choose which metric to optimize. | Metrics often conflict; no single total score | Cost; cycles; area; instructions; power | Low | Opus Magnum, TIS-100, SHENZHEN I/O, SpaceChem, EXAPUNKS | M106, M107, M108, M114 |
| M106 Speed, latency, or cycle minimization | Players reduce time from input to completion or increase rate. | Parallelize work, shorten paths, remove waits, pipeline stages. | Correctness must remain; resource budget may increase | Cycles; latency; rate | Low | Opus Magnum, SpaceChem, TIS-100 | M061, M064, M113 |
| M107 Component cost minimization | Parts, components, manipulators, chips, or materials have explicit or implicit costs. | Replace expensive components and share resources. | Cost table; fixed infrastructure; trade-off with speed | Currency; parts; system tiers | Low | SHENZHEN I/O, Opus Magnum | M059, M108, M110 |
| M108 Area, volume, and footprint minimization | The occupied bounding box or build area is scored or constrained. | Pack components, share paths, and exploit geometry. | Collision, wire routing, access, bounded board | Area; volume; width/height | Low | Opus Magnum, TIS-100, SpaceChem | M006, M027, M047 |
| M109 Instruction-count minimization | Programs are scored by source instructions or programmed slots. | Factor repeated logic, exploit semantics, and remove redundancy. | Limited instruction set; labels may count differently | Instructions; symbols; nodes | Low | TIS-100, SHENZHEN I/O, EXAPUNKS, HRM | M074, M085, M087, M114 |
| M110 Energy and power optimization | Devices consume energy during operation, sleep, movement, or idle time. | Choose efficient devices, schedule sleep, and balance generation. | Generation capacity, peak load, battery/storage, heat | Energy per item; peak power; generation footprint | Medium | SHENZHEN I/O, Factorio, ONI | M067 |
| M113 Robustness and correctness margin | A solution is valued for handling varied timing, inputs, or disturbances without failure. | Add buffering, synchronization, redundancy, and generalized logic. | Worst-case timing, hidden cases, finite resources | Worst-case cycles; buffer margin; success rate | Medium | TIS-100, SHENZHEN I/O, EXAPUNKS | M002, M016, M072 |
| M114 Elegance, legibility, and aesthetic optimization | Players pursue symmetry, choreography, simplicity, or shareable visual appeal beyond formal score. | Polish layout, timing, and presentation. | Subjective audience norms; sometimes GIF export | Symmetry; clarity; choreography; originality | Low | Opus Magnum, Factorio, Poly Bridge | M005, M105, M126 |
| M117 Optional optimization challenges | A level can be completed for correctness, with extra thresholds for size, speed, or elegance. | Return to refine a working solution. | Thresholds may be mutually incompatible | Any selected metric | Low | HRM, 7 Billion Humans, EXAPUNKS | M105, M106, M109, M120 |
I · Progression, pressure & meta M118–M135
Does this deepen construction, or compete with it? These rows pace, frame, and contextualize construction rather than extend it. Several sit at the presentation boundary the guide draws up front, so include them deliberately.
| Element | Description | Player action | Constraints | Optimization axes | Emerg. (editorial) | Examples to inspect | Combines with |
|---|---|---|---|---|---|---|---|
| M118 Capability unlock graph | New components, operations, interfaces, or scale layers unlock through milestones. | Meet prerequisites, choose unlock paths, and integrate new capabilities. | Prerequisites, research cost, branch choices | Unlock order; research throughput; opportunity cost | Low | Factorio, Satisfactory, Mindustry | M030, M119 |
| M119 Mechanic-isolating curriculum | Levels introduce one concept, then combine it with earlier mechanics. | Solve scaffolded tasks of increasing composition depth. | Ordered progression; gated content | Learning efficiency; hint use | Low | SpaceChem, HRM, Baba Is You, Manufactoria (and every Zachtronics title) | M007, M102, M117, M120 |
| M120 Branching and optional puzzle progression | Players choose among problems or skip advanced challenges while still advancing. | Select a route through the campaign. | Prerequisites; optional nodes; narrative gates | Completion; optional mastery | Low | Opus Magnum, Cosmic Express, Baba Is You | M117, M118, M119, M129 |
| M126 Sandbox, editor, and community sharing | Players author levels, export solutions, share blueprints, or build without campaign constraints. | Create, publish, import, remix, and compare. | Editor limits, version compatibility, moderation | Originality; clarity; adoption | Low | Factorio, Opus Magnum, shapez, Baba Is You | M005, M087, M114 |
| M127 Embodied inspection and construction | The player occupies a position in the simulated space and must move to inspect, construct, or repair systems. | Navigate, place tools, inspect local state, and access components. | Travel time, line of sight, reach, hazards | Build time; travel; accessibility; aesthetics | Low | Satisfactory, Infinifactory | M048, M114 |
| M128 Embedded reference documentation | Rules and interfaces are learned through embedded reference material rather than exhaustive tutorialization. | Read documentation and translate it into experiments. | Incomplete examples; terminology; cross-referencing | Lookup time; retained understanding | Low | SHENZHEN I/O, TIS-100, EXAPUNKS | M009, M093, M119, M129 |
| M129 Context-framed progression and delayed access | Capabilities are presented through a contextual interface and may become available gradually. | Explore the interface, inspect messages or status, and progress toward access. | Time gates, story sequence, framed interface | Discovery; completion | Low | EXAPUNKS, Last Call BBS, SHENZHEN I/O | M120, M128, M126 |
| M131 Continuous ambient dataflow animation | Entities and values are rendered continuously moving through the system, so a running system explains itself without stepping. | Watch the system run and spot anomalies visually. | Rendering fidelity; visual density at scale | Legibility; observability | Low | Factorio, shapez, Opus Magnum, SpaceChem, Manufactoria | M008, M009, M011 |
| M133 In-world diversion / minigame pacing | Built-in secondary minigames (card, solitaire, idle) sit beside the main puzzles as in-fiction rest. | Take an in-world break at a self-contained minigame. | The minigame's own rules | Streaks (soft) | Low | SHENZHEN I/O, Opus Magnum, Last Call BBS, EXAPUNKS | M129, M134 |
| M134 Diegetic multi-game shell | The product is a fictional device or OS containing several distinct sub-games the player moves between. | Switch context between toys within a framed console/OS. | Each sub-game's own rules | Per-sub-game | Low | Last Call BBS, EXAPUNKS (Redshift) | M128, M129, M133 |
| M135 Assembly-into-world narrative payoff | The player’s solved machines and products visibly feed the game world or story, answering “why am I building this?” | Solve, then watch products appear in the world or cutscenes. | Authoring cost | Not applicable | Low | Infinifactory, shapez, Factorio, Opus Magnum | M118, M129 |