Notebooks

The notebook system is a custom property system in the quest system plugin that can be used to manage data for the quests. These properties can be accessed inside a quest asset or in blueprints. There are two types of Notebooks:

  • Local Notebooks: These are contained within a quest asset and can only be accessed inside that quest asset.

  • Global Notebooks: These are notebook assets that contain properties within. These can be accessed anywhere in the project, in all quest assets and blueprints.


Global notebooks

To create a global notebook asset, right click on the content browser and select Quest system -> Notebook. We recommend adding a NB_ prefix to the asset. This example notebook is named NB_FirstNotebook.

To add properties to a notebook asset, click on the plus button on the Properties field. Click on the property's name to edit the property. Properties are referenced using their unique ID, so renaming properties does not break references. The example property is a boolean with name NewProperty.

Accessing the property in a quest asset will mostly be done using property bindings. For more info on property bindings, go to the Property Bindings page. To create a property binding, select the node representing the action requiring the binding and press on the Bind button. Then select the property you want to bind to. In the example below, we have a branch action inside a quest graph and we want to set the condition using the boolean property in the NB_FirstNotebook notebook. The binding will be applied when the branch action is activated.

Another way to access notebook properties is by using Setter nodes inside the quest and dialogue graphs. These have a Property Setter field that will take a notebook property reference and the value to set. The value field changes type based on the type of notebook property being referneced. In the example below, we have a boolean field for the example boolean property.

To access notebook properties inside a blueprint, use any of the custom setter and getter nodes. The Set Notebook property and Get Notebook Property nodes have a wildcard pin for the value that is decided by the selected notebook property. The type specific nodes do not have wildcards, except the struct nodes which take a wildcard for the type of struct being accessed.


Local notebooks

Every action sequence asset has a notebook object in it. These are local notebooks that can only be accessed inside that action sequence. Accessing local notebooks properties is similar to accessing global notebook properties. You can bind to the properties and set them with the setter nodes. Because these properties cannot be accessed outside the asset, these cannot be accessed in notebooks.

In the editor for any Action Sequence asset, go to the notebook editor by pressing the notebook editor button on the top right of the toolbar.