Logic: the Flow Editor
Switch the mode pill to Logic. Each screen owns one node graph — an Unreal-Blueprint-style canvas: + Add node (or right-click) opens a categorized, searchable menu; drag from pin to pin to wire; drag empty space to pan, scroll to zoom.
Node anatomy
This is a live recreation of two editor nodes (hover them) — every color and pixel matches the real Flow canvas:
- Header — tinted by category (this red = a Trigger). Drag it to move the node.
- Exec pins — the white diamonds. Execution flows left → right through the white wires.
- Properties — pickers and enums on the node body. Element pickers list only valid targets for that node.
- Wire — connects an output pin to an input pin. Hover a wire in the editor to cut it.
- Inline literals — any unconnected input shows an editable default right on the node; wiring something in overrides it.
Pin types & coercion
any (gray) connects to everything. The runtime coerces sensibly — Compare does numeric comparison when both sides parse as numbers, otherwise text. Values everywhere are text / number / boolean.
Categories
| Category | Color | Contents |
|---|---|---|
| Triggers | red | Entry points — no exec input, fire on events |
| Flow | purple | Branching, conditions, cooldowns, chance |
| Data | green | Pure values — variables, placeholders, math (no exec pins) |
| Actions | blue | Things that happen — chainable via exec |
Reading a real graph
A daily-reward button, exactly as you'd wire it: the Cooldown node splits execution into Ready/Waiting branches, and its Remaining s number output feeds the message via a data wire (gray):
Graphs run server-side per viewing player. A screen's session (and its session variables) lasts from open to close, surviving in-place screen switches.