What a sequence is
A sequence is a named, ordered list of steps that execute top to bottom. Each step performs a single action against the table -- drawing tiles, adjusting counters, rolling dice, moving pieces, or prompting players for input.
Sequences are the core building block of automation. They are reusable: a single sequence can be referenced by multiple triggers or called from other sequences using the Run Sequence step.
You create and manage sequences through the Sequences panel in the toolbar.
Step properties
Every step has these common properties regardless of type:
- Enabled -- a toggle that lets you disable a step without deleting it. Disabled steps are skipped during execution.
- Label (optional) -- a human-readable name shown in the step list. If omitted, the step type label is used.
- Only If (optional) -- a condition that gates execution. If the condition evaluates to false, the step is skipped.
- Save Result As (optional) -- a context key that captures the step's output for use by later steps.
- Suppress Triggers (optional) -- prevents the step's side effects from firing reactive triggers. Use this when a step would otherwise cause an infinite trigger loop. For example, a sequence that moves a piece into a space would normally fire that space's Piece Added trigger -- enabling Suppress Triggers on that step prevents the cascade.
Context flow
Steps can produce values and save them to a context bag using the Save Result As property. Later steps can reference those saved values in their configuration. This lets you chain steps together -- for example, prompt a player for a number, then use that number as the amount in an Adjust Counter step.
Context flows forward through the sequence. A step can only reference values saved by steps that came before it.
Conditions
Conditions appear in two places within sequences:
- Step-level Only If -- gates whether a step executes
- Stop If steps -- halts the sequence when a condition is met
Conditions inspect game state using subjects and operators.
Subjects
A subject is what the condition inspects:
| Subject | Description |
|---|---|
| Counter Value | The current numeric value of a counter |
| Stack Count | The number of tiles in a stack |
| Space Occupancy | The number of pieces in a space |
| Die Value | The current face value of a die |
| Timer Status | Whether a timer is stopped, running, or paused |
| Timer Remaining | The remaining time on a timer in milliseconds |
| Is Face Up | Whether a piece is showing its front face |
| Rotation | The rotation angle of a piece in degrees |
| Tags | The tags attached to a piece |
| Color | The color of a piece |
| Token Kind | The kind of a token (block, disc, etc.) |
| Piece in Space | Whether a piece is in a specific space |
| Piece in Hand | Whether a piece is in a specific player's hand |
| Context Entry | A value from the context bag saved by an earlier step |
Operators
An operator is how the condition compares:
| Operator | Description |
|---|---|
| Equals | Value matches exactly |
| Not Equals | Value does not match |
| Greater Than | Numeric value is greater |
| Less Than | Numeric value is less |
| Greater or Equal | Numeric value is greater or equal |
| Less or Equal | Numeric value is less or equal |
| Contains | Collection includes the value |
| Not Contains | Collection does not include the value |
| Is Empty | Collection has no entries |
| Is Not Empty | Collection has at least one entry |
| Is True | Boolean value is true |
| Is False | Boolean value is false |
Conditions compose with logical operators:
- All Of -- all child conditions must be true (AND)
- Any Of -- any child condition can be true (OR)
- Not -- inverts a child condition
Nesting
Sequences can call other sequences using the Run Sequence step, up to 8 levels deep. This lets you compose complex behaviors from small, focused sequences.
Limits
Each sequence can contain up to 30 steps.
Step reference
See Steps for a complete reference of every available step type.