Articles in this section

Conditions and Variables

This article refers to Game and VR projects on For help with Celtx Gem, please, see here.


The Conditions and Variables system allows Game & VR users to create deeper layers of complexity in their interactive narratives. This system includes three components:

  • Custom Variables
  • Custom Conditions
  • Heatmap

Custom Variables 

Variables are unique components that users can create, define, and associate with Sequences, Branches, Interactive Dialogues, and Jump nodes. Users have the ability to control on which node type specific variables will be available.

There are currently eight variable types:

  • Date
  • Radio
  • Number
  • Range
  • Text
  • Text Area
  • Time
  • Boolean

Each variable type has a unique value input format. For example, boolean variable values are always ‘True’ or ‘False’, radio variable values are a series of options defined by the user, and range variable values must be between two user-defined numbers.

Creating Variables

Variables are created in the ‘Manage Variables’ menu. This menu can be accessed via the Edit dropdown menu, or via the Variable Configuration menu on a given node.

  1. On the left, type in a variable name, an optional description, and select a variable type. You can input an optional default value, which will be associated with the variable whenever it is tagged. Range and Radio variable types require additional definition.
  2. Click ‘Add Variable’ and your variable will appear on the right under ‘Existing Variables’, along with four icons. These icons represent Branch, Sequence, Interactive Dialogue, and Jump nodes respectively. By default, each of these icons is selected, meaning that the variable is available on all node types. You can click on the icon to deselect it, making the variable unavailable on that node type.
  3. When finished, click ‘Save’. The variable will now be available in the Variable Configuration menu in your Story Map.

To delete a variable, click on the X next to the variable in the Existing Variables list and then confirm the deletion.

Configuring Variables

  1. Right click on any Story Map node. In the context menu, click ‘Configure Variables’. This opens the Variable Configuration menu.
  2. Select a variable from the dropdown menu. This will add it below. You can select more than one variable.
  3. Once your variables are added, click on them to display their information on the right-hand side of the menu. From here, you can input or select the value for the variable.
  4. When finished, click ‘Save’.


To remove a variable from a node, click on the X next to the variable name.

Once a variable is present on a node, the instance of the variable and the corresponding value will be associated with the node in the Catalog and Reports. You can edit the value of a variable from any corresponding Catalog page.

Improved Menu Flow for Variable Configuration

We've added an update to the menu flow.  It has been changed to make it easy to create new variables and assign them to nodes on the fly, here's how:

1. Open configure variable on a given node.


2. Click through to manage variables to create a new one.


3. Upon save, you will be returned to the previous configure variable menu.


4. You can then assign the newly created variable to the node and save.


Callback Creator

The Callback Creator builds branch + sequence structures with default conditions that are based on your existing variables.

To create a callback, right click on a parent sequence and choose ‘Add Callback’. Or use keyboard Shortcut: Alt+Shift+H / Option+Shift+H


Select the variable that you want the callback to be based on in the corresponding menu. 


Custom Conditions

Conditions are first-class objects that can be created on any connection in your Story Map (transitions, branch connections, jump connections, and the stem connections between sequences & branch points, sequences & interactive dialogue nodes, and sequences & jump nodes).

Conditions can be comprised of any combination of three different component types: Variable (which reference any custom variables you have created), Asset (which reference any assets created in Breakdown Mode, as well as any existing Story Map nodes), and Condition (which reference existing conditions).

These components are represented in the condition in the form of ‘Literals’. Literals are true or false statements that are based on an operation/predicate and/or value that is set by the user in reference to a specific component. A condition can have as many literals as required.

Creating & Adding Conditions

There are two methods for creating conditions. They can be created in advance by opening the ‘Manage Conditions’ menu via the Edit dropdown menu. Conditions created here will be available to be added to the Story Map.

For method one:

  1. Open the Manage Conditions menu as described.
  2. On the left, give the new condition a name and description, then click ‘Add Condition’. The condition will appear on the right under ‘Existing Conditions’. Click on it to open the Edit Condition menu.

The second method is to create and add a condition at the same time, directly on a connection. To do this, right click on any connection and select ‘Add New Condition’ from the context menu.

From here, you can begin to add components to your condition. 

Editing Conditions

To edit a condition, open the Edit Conditions menu. This can be accessed via the 'Manage Conditions' menu by clicking on any existing condition, double-clicking on a key icon, or right-clicking on any connection where a condition is present and selecting ‘Edit Condition’.

From here, you can make changes to the condition such as altering its name, description, and adding or removing literals. 

Click ‘Update’ to save your changes.


Deleting Conditions

To remove an instance of a condition from the Story Map, right-click on the connection where the condition is present and click ‘Delete Condition’. This will not remove the condition from the catalog.

To completely delete a condition from your project, open the Manage Conditions menu, click the X on the condition name, and click Update. If you do not wish to delete, click ‘Cancel’.

Catalog & Reports

All conditions are given unique catalog entries and unique IDs. To review your conditions and add additional information, open the ‘Conditions’ section in your project catalog. Condition information will be present in the Catalog Report in your reports module.

Condition catalog pages and reports also include a ‘Clause’ section. This section generates a string that describes the order of and operators for the literals in the condition.


The Heatmap is a Story Map-level visualization tool that will highlight nodes where associated variables meet specific conditions.

To begin:

  1. click on the Heatmap icon in the upper-right of the script module (next to the trash icon).
  2. This opens the Heatmap Settings menu. From here, you can begin to assign Heatmap conditions.
  3. Choose from an existing variable in the first column, select an operation, select or input a value, then choose from a following operator (AND/OR). Click the Plus (+) icon to add this condition to the Heatmap list. These component conditions inform a global Heatmap condition. You can have as many as necessary.
  4. Click to switch the toggle to ‘Enabled’. Click OK to save. This will close the Heatmap Settings menu. 

When the Heatmap is active, nodes where variables meet the Heatmap condition will be highlighted in red. Nodes that do not will be greyed out. You can continue to work with the Heatmap activated. If you wish to disable it, re-open the Heatmap Settings menu and click the ‘Enabled’ toggle.


You can remove a component condition from the Heatmap by hovering on it and clicking ‘X’. You can clear the Heatmap condition list by clicking ‘Reset’.

Was this article helpful?
0 out of 0 found this helpful