Glossary
Canonical terms used throughout the StoryBonsai manual. When a page uses one of these words, it means what this page says it means. New writers reading the manual front-to-back will encounter each term in context; this page is a lookup.
Each entry links to the page where the concept is taught in full.
Surfaces
Node Graph. The editor mode where you place nodes, draw Connections between them, and watch the editor draw Dependencies. The default landing surface. The Mode Selector button labels this surface “Nodes” for compactness; everywhere else it appears as “Node Graph.” See Authoring: Node Graph and Editor tour.
World Graph. The editor mode where you place Locations and the connections between them. The Mode Selector button labels this surface “World” for compactness. See Authoring: World Graph and Editor tour.
Data View. The editor mode that shows every entity in your project (variables, scenes, characters, etc.) as a sortable table. The Mode Selector button labels this surface “Data” for compactness.
Simulator. The editor mode that runs your project from any starting state, advancing choices and showing state as it changes. Also available as a side panel via the Tools menu. See Authoring: Simulator.
State panel. The right column of the Simulator in full mode: a node minimap of the active scene, a location minimap, and the active scene chain. The panel carries no on-screen label; the manual always calls it the State panel. See Authoring: Simulator.
Tools. The editor mode that hosts the Path Tester, Validator, and Test Runner. Also reachable via the Tools menu.
Sidebar. The contextual panel on the left of the Node Graph, World Graph, and Data View. Lists the entities the current mode operates on (scenes, locations, or whichever entity type is selected in Data View).
Inspector. The right-hand panel whose contents follow the current selection. Per-entity field tours live under Entities.
Menu bar. The File / Edit / View / Tools / Project / Help row at the top of the editor window. See Reference: Menu and shortcuts.
History trail. The back/forward navigation pills at the top of the editor window showing recently-visited entities. Click any pill to jump back to that entity; the arrow buttons step one entry at a time. Distinct from the Scene breadcrumb shown above the Node Graph when you have drilled into a scene from the World Graph.
Mode Selector. The button strip that switches between Nodes / World / Data / Simulator / Tools.
Minimap. The miniature overview in the Node Graph and World Graph corners. Click or drag inside it to navigate.
Layer toggle. The Scenes and Locations buttons in the top-right of the World Graph. Each toggle is independently on or off and controls whether the corresponding entity type is drawn on the graph. The corresponding section in the Sidebar dims when its Layer toggle is off, so the graph and Sidebar always agree on what is visible.
Graph elements
Node. The unit of authoring in StoryBonsai. A line of dialogue belongs to a node; so does a choice; so does a hidden flow step. See Concepts: Nodes and visibility.
Connection. A line in the Node Graph or World Graph representing flow from one entity to another. In the Node Graph, a Connection represents a Jump from one node to another (authored by dragging from the bottom of the source node to the target, or by adding a Jump event in the Inspector). In the World Graph, every authored route is a Connection: Encounters, Start Scene events, Move To Location events, and Adjacent Connections (a direct location-to-location route the runtime can traverse without firing an event; its locomotion meaning is up to the project). Following a Connection happens at runtime when the source fires the relevant event or the player traverses the adjacency.
Jump. An event that transfers flow from one node to another. Jumps are the only way to reach a node with no Visible when condition. Each Jump has a Return after jump setting: when on (the editor default), the runtime executes the target and then resumes the source node’s remaining events; when off, control transfers and the source is interrupted. See Reference: Event types → Jump.
Dependency. A line in the Node Graph representing that a node’s Visible when references another node, typically via Played(...). The dependent node’s visibility tracks the referenced node’s state. Authored by dragging from the top of the dependent node to the referenced node, or by writing the reference in a Visible when expression.
Inverse dependency. A Dependency whose reference is negated (e.g. !Played(node_a)). Drawn in a different color from the positive form to mark the negation.
Selection box. The dashed rectangle you drag across the Node Graph or World Graph to select multiple nodes at once.
Detail level. How much of each node card the Node Graph renders, based on zoom. Three levels: detail (zoomed in, full card), summary (zoomed out, condensed), overview (very zoomed out, position dot only).
Concepts
Player. The person playing the finished game: the one making choices, moving between locations, and filling in activities. The manual always says “player,” never “reader” or “user,” including for text-only projects. Distinct from the writer (you) and the host (the game that embeds your project).
Evaluation cycle. The Mutation phase followed by the Evaluation phase, run when a choice is selected or when the runtime is otherwise asked to advance. See Concepts: Evaluation cycle.
Mutation phase. The part of the Evaluation cycle in which a node’s events execute top to bottom, changing variables, advancing scenes, and so on. See Concepts: Evaluation cycle.
Evaluation phase. The part of the Evaluation cycle in which the visible set is recomputed based on what changed during the Mutation phase. See Concepts: Evaluation cycle.
Event. A single step inside a node’s script: set a variable, jump to another node, start a scene, play a sequence, run a skill check, and so on. A node’s events run top to bottom during the Mutation phase. See Reference: Event types.
Visible when. A condition on a node that gates whether the node appears as a choice. Empty Visible when means the node is hidden by default (only reachable via a Jump). See Concepts: Nodes and visibility.
Resolved when. A condition on a scene’s Resolution section that marks the scene as resolved when it evaluates true.
Condition. A boolean-valued expression whose role is to gate something. Visible when is a condition; the Resolved when field is a condition. See Concepts: Expressions.
Expression. A piece of writer-authored logic that produces a value of any type. Set-variable events take an expression; skill-check DCs are expressions. A Condition is the boolean-valued case of an Expression.
Variable. A named piece of state (bool, number, or string) that expressions can read and events can write. Authored in the Variables data view. See Reference: Variable.
Skill check. An event that rolls dice against a difficulty class, optionally applying modifiers, and branches on success or failure. See Reference: Event types → Skill check and Authoring: Skill checks.
Scenes and runtime
Scene. A grouping of nodes that activates and deactivates as a unit. While a scene is active, its nodes are eligible to be shown as choices. See Concepts: Scenes and visit state.
Location. A place in the world the player can move to. Locations host Encounters and can carry Enter/Exit events. Authored in the World Graph. See Reference: Location and Authoring: Locations.
Lifecycle Nodes. The Intro Node, Update Node, Outro Node, On leave Node, and On exhausted Node referenced by a scene. The corresponding Inspector section is labeled “Lifecycle.”
Intro Node. The node a scene runs when it activates.
Outro Node. The node a scene runs when it deactivates.
Update Node. The node a scene runs after every choice while it is active.
On leave Node. The node a scene runs when the player uses the Leave affordance to step back to the world without resolving the scene.
On exhausted Node. The node a scene runs when it activates a choice cycle in which no node is visible. Fires while the scene is still active, so the node can queue further events that recover the scene.
Trigger. How a scene becomes available at a Location. Authored on the Location’s Encounters entry (kind + entity picker), together with the entry’s label and visibility. See Authoring: Encounters.
Encounter. A scene set as available at a Location. While the player is at the Location, the Encounter shows up as a clickable affordance in the world when the entry’s visibility permits. Authored in the Location Inspector’s Encounters section. See Authoring: Encounters.
Enter Events. Events on a Location that run when the player arrives at that Location. Authored in the Location Inspector. Drag-menu options on the World Graph ending “(on Enter)” add to this list.
Exit Events. Events on a Location that run when the player leaves that Location. Authored in the Location Inspector. Drag-menu options on the World Graph ending “(on Exit)” add to this list.
Modal. A scene-level property controlling whether the player can step back to the world while the scene is active. Modal scenes block the Leave affordance until the scene resolves. Non-modal scenes let the player return to the world at any choice. Authored in the Modality section of the Scene inspector. The project default lives in Project settings. See Reference: Scene.
Scope. An audio cue concept: the period during which a cue is allowed to advance. Configured on the audio cue itself. See Authoring: Audio cues.
Played. Counts how many of the targeted nodes have played during the current visit to the scene the argument belongs to. Returns int: 0 or 1 for a node argument; the number of distinct tagged nodes that played for a tag argument. “Played” covers both player-selected nodes and nodes reached as jump targets. See Reference: Expression functions → Played.
Selected. Counts how many of the targeted nodes the player directly clicked during the current visit to the scene the argument belongs to. Returns int (0 or 1 for a node argument; count of distinct tagged nodes for a tag argument). Unlike Played, jump-target executions do not count. See Reference: Expression functions → Selected.
Seen. Counts how many of the targeted nodes appeared in the visible choice set during the current visit to the scene the argument belongs to. Returns int (0 or 1 for a node argument; count of distinct tagged nodes for a tag argument). A node the player was shown but didn’t pick still counts as seen. See Reference: Expression functions → Seen.
PlayedEver / SelectedEver / SeenEver. Whole-run versions of Played / Selected / Seen. They ignore scene-visit boundaries: once a node is played (or selected, or seen) anywhere in the run, the Ever form keeps returning true for the rest of the session. Use these when you mean “ever, anywhere in this run.”
Localization
Source locale. The master language you author in. Every text_* key has one Source text in this locale; translations override the target-locale display. Configured in Reference: Project settings → Localization.
Target locale. A language you’re translating the Source locale into. Configured in Reference: Project settings → Localization. Multiple targets are supported; the Locale dropdown switches which one the editor is displaying.
Pseudo locale. An auto-generated locale used for QA. Every source string is transformed to a padded, accented variant so untranslated fallbacks and layout overflow become visible at a glance. Hidden from production builds; available in the Locale dropdown only in dev.
Source text. The canonical string in the Source locale. Every text_* key has exactly one Source text; translations for each Target locale override its display. Edited in the Custom string Inspector for text_* keys, or in the entity Inspector for Entity field keys.
Custom string. A writer-defined text_* key that isn’t tied to an entity field. Created in the Localization data view; referenced from expressions via Localize.
Entity field. An auto-derived text_* key inlined from an entity field (for example, a node’s dialogue text). Read-only in the Localization data view; the field itself is edited in the entity’s Inspector.
Localize. The expression that resolves a text_* key at runtime, for example Localize(text_mood_panicked). See Reference: Expression functions → Localize.
ICU format. The syntax used for placeholders and pluralization inside Source text: braces around named arguments, plus optional plural, select, and selectordinal clauses. See Reference: ICU format.
Coverage. The percentage of text_* keys translated across all Target locales. Shown in the Locale dropdown summary and as a column in the Localization data view.
Stale. A translation whose Source text changed since the translation was authored. The translator’s version is preserved but flagged; surfaces inline in the Inspector and in the Localization data view.
Needs review. A translation the translator has explicitly flagged for follow-up: imported from an Import Localization diff, or set manually. Distinct from Stale: needs-review is a translator choice; stale is a source-text change detected automatically.
Orphan translation. A translation whose source key no longer exists in the project (renamed or removed). Surfaced during Import Localization; the writer chooses whether to keep or discard.