Seen

Counts how many of the targeted nodes have appeared in the player-facing visible-choice set during the current visit to the scene the argument belongs to. For a node argument the result is always 0 or 1. For a tag argument it is the number of distinct tagged nodes that have been visible this visit, capped at the count of tagged nodes in the project. A node that was a visible choice but the player picked a different option still counts as seen. For the session-global “have they ever seen this?” use SeenEver.

Category: Play history Returns: int (boolean-coerces, see Boolean coercion)

Signature

Seen(nodeOrTag)

The argument is either a node ID (node_intro) or a tag ID (tag_secret). For a node, the result is 1 if the node was offered as a visible choice this visit and 0 otherwise. For a tag, the result is the count of distinct tagged nodes that have been visible choices this visit. Seen is independent of Played: the player can see a node without picking it (so Seen ticks but Played does not), and a node that plays as a jump target without ever being a visible choice contributes to Played but not Seen.

Examples

Seen(node_intro)              // 1 if node_intro was offered as a choice this visit, else 0
Seen(tag_secret)              // count of distinct tag_secret choices presented this visit
Seen(tag_clue) >= 3           // gate on the player having been offered three
                              // distinct clue-tagged choices
!Seen(node_warning)           // gate on never-offered-as-a-choice this visit
                              // (0 coerces to false)

Notes

Seen is scoped to the current scene visit. Re-entering the same scene allocates a fresh visit state, so prior-seen nodes from a previous visit do not carry over. See Expressions for the rule, and SeenEver for the session-global form.

For arguments: use the ID, not the UUID; see Expressions.

Docs last synced: 2026-07-08
Screenshot viewer