Sequences
A define sequence is a scripted timeline: a named list of steps, each
anchored to when it fires and carrying a body of ordinary statements.
It replaces the hand-rolled turn-counting daemons of the old platform
with one declarative block. There are three anchor forms, and this
story uses all three across three sequences.
The first two anchors are clock-based. at turn N fires at an absolute
turn counted from the story's start; N turns later fires relative to
the previous step, so you can chain a timeline without arithmetic:
define sequence gathering storm
at turn 2
phrase storm-distant
Thunder mutters somewhere beyond the wall.
3 turns later
phrase storm-near
The light goes pewter, and the first fat drops crater the dust.
2 turns later
phrase storm-breaks
The storm breaks all at once, rain hammering the gravel.
change the story to raining
end sequence
The steps here land on turns 2, 5, and 7. A step body is ordinary
statements: the last step both speaks and moves the story into its
raining state.
The third anchor is state-based. when <name> becomes <state> fires the
step when that owner transitions into the named state: the story
itself, or any entity. This lets one sequence react to another's effect.
The storm above moved the story to raining; a second sequence waits on
exactly that:
define sequence take shelter
when the story becomes raining
phrase shelter-note
Anywhere with a roof suddenly seems like a very good idea.
end sequence
The same anchor works on an entity's own states. When the bonfire is lit
and changes to burning, a third sequence notices:
define sequence smoke drifts
when the bonfire becomes burning
phrase smoke-note
A ribbon of blue smoke begins to drift across the garden.
end sequence
A sequence name may be several words (gathering storm, take shelter), and the block always closes with an explicit end sequence.
Within a step, prose indented under a phrase line is declare-and-emit
text, which is why these steps need no
separate define phrases
block.