Sequences

Ordered lists of steps that automate gameplay actions on the table.

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:

SubjectDescription
Counter ValueThe current numeric value of a counter
Stack CountThe number of tiles in a stack
Space OccupancyThe number of pieces in a space
Die ValueThe current face value of a die
Timer StatusWhether a timer is stopped, running, or paused
Timer RemainingThe remaining time on a timer in milliseconds
Is Face UpWhether a piece is showing its front face
RotationThe rotation angle of a piece in degrees
TagsThe tags attached to a piece
ColorThe color of a piece
Token KindThe kind of a token (block, disc, etc.)
Piece in SpaceWhether a piece is in a specific space
Piece in HandWhether a piece is in a specific player's hand
Context EntryA value from the context bag saved by an earlier step

Operators

An operator is how the condition compares:

OperatorDescription
EqualsValue matches exactly
Not EqualsValue does not match
Greater ThanNumeric value is greater
Less ThanNumeric value is less
Greater or EqualNumeric value is greater or equal
Less or EqualNumeric value is less or equal
ContainsCollection includes the value
Not ContainsCollection does not include the value
Is EmptyCollection has no entries
Is Not EmptyCollection has at least one entry
Is TrueBoolean value is true
Is FalseBoolean 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.