> For the complete documentation index, see [llms.txt](https://olab4.gitbook.io/help/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://olab4.gitbook.io/help/basic-topics/nodes.md).

# Nodes

## **Overview**

Nodes are like pages within your Map. You move from Node to Node via Links and, of course, you can move around within a page. But all of the objects in a Node are presented on the same page. <br>

You can make your Node very simple…

![](https://lh3.googleusercontent.com/aebRDSHBh20SGWxmIDjzQBXuiisrJCFSZk7tx0CkxCJyQIE2o2MBOIahB4AhrEPR6-f6TFz2AK226a47W7ZYkYyc3GKA1QQgbqifIinDVgVQIh1Pi27H-5hbdx1yHqGmj8qgOED2)

…or it can be quite complex, scrolling down for some way and including many different types of objects. You can insert [Objects](/help/basic-topics/objects.md) directly - simply use the Object Picker to select your object and find its shortcode; or you can directly type the shortcodes pointing into the text. <br>

![](https://lh3.googleusercontent.com/zUQhcJNNZtLk1b--jCTFu5_Q7h654CT5WRAEVPMfRMDH-2t1MwS-IkXRjhUEfh2ZvHas4MA3OH-yUdoarcJaSqeI0i9DrVS7SQRyPZGPOnuoN3upHgZDu_pbsZQSFnPCSfrYrxdO)

When the map is played, the shortcodes are turned into rich objects…

![](https://lh3.googleusercontent.com/nHTjq280YjRDTT6_hdhdIn5MsKaDi6PDBDynqt78kW3g4GMvbWkZVBGdzJ6sIvYzwC_2ODb2p2ZHtHUVa4rvQ_1Mk_tTLRJmwxBsGedtbpPXe5BVPfjpjN6HsFHmVBDcZw0qN2Jf)

## **Basic Node Editor**

Above is shown the Basic Node Editor (BNE). In the Designer canvas, simply click on a Node to pop up the BNE and make basic edits to the content. Changes are saved automatically. You can use the Object Picker to insert shortcodes or you can simply type them in as plaintext with no hyperlinks or HTML formatting.&#x20;

To make more detailed changes, click on the \[ADVANCED] button in the BNE and this will load the Advanced Node Editor (ANE) into a new browser tab.

## Advanced Node Editor

See [below for more on this](/help/advanced-topics/advanced-node-editor.md). You have more options to insert external images, apply formatting, as well as toggle options for the Node such as setting a Root Node, End Node, Visit Once options.&#x20;

Remember to \[SAVE] your changes because the ANE does **not** auto-save. Close the browser tab when done. We also **highly recommend** that you <mark style="background-color:$warning;">close the map in the main Designer canvas.</mark> Click on the blue 'OLab4' icon in the top left to return to the list of maps. <mark style="background-color:$danger;">Do not make further changes in the BNE</mark> before you do this. It will clobber the changes that you just made in the ANE. &#x20;

## **Node Attributes**

The map author can assign certain attributes to a Node. Some of these are active during play; some are to help with design and authoring. <br>

### **Root Node**

In the Designer, a yellow star next to the node title shows that it is a root node.&#x20;

![](https://lh5.googleusercontent.com/uQDI6Wx1IwnQCelOrTezjil8JcdwfoeFPDt_lAzkoBKVtoKV4_11yaivVqumrL6VEvYLGsHj7kdUvkpWs0ESS6zeijnEH6MuT8TfCREE6n8ejFmXkLMarkzURMEpjeEE3NblK36Q)

During player mode, the map can be started at any Root Node. Normally, there is only one per map.&#x20;

### **End Node**

During player mode, the map can be completed at an End Node. This may or may not be a successful completion, depending on the author’s design.&#x20;

### **Must Visit**

During player mode, the user should visit this Node. This is not enforced but an internal flag is set - this can trigger other actions. The user does not know at the time, unless the author has set some sort of alert or message.&#x20;

### **Must Avoid**

During player mode, the user should not visit this Node. This is not enforced but an internal flag is set - this can trigger other actions. The user does not know at the time, unless the author has set some sort of alert or message. <br>

### **Visit Once**

During player mode, the user can only visit this Node once. This is enforced by the OLab player, with a few exceptions. Once the user has visited, other Links pointing to this Node are no longer visible.&#x20;

*Check out this example to see this in action.*

### **Node color**

During design mode, the author can set the color of a Node in the Map Designer. This has no effect during player mode - it does not change the background color of the Node, for example.&#x20;

![](https://lh5.googleusercontent.com/Md4LGsrwl-yOP8mESF9a-OQ3G4b-rUXeWcEPJ3ooHzWVgGD-LLYPP7DD9fL3Suk45tEPzRbPJeHfdtKsNQc_DcEMYustKQtb093EboMsWOpZ1vgfebcWJDyTDl3u6OkzpU_xqfkn)

The colors are simply to help the author remember what certain sets of Nodes are for. The choice of colors is arbitrary for the author.&#x20;

### **Node position**

During design mode, the author can set the position of a Node in the Map Designer. This has no effect during player mode. The order in which the user can move from Node to Node during player mode is only set by the Link directions.  \
It has been customary to move downwards and towards the right when laying out the map’s design. But this is entirely up to the author. It is easier to follow another author’s learning designs when the paths follow common conventions but the OLab player does not care -- it only cares about Link direction. <br>

**\*\*insert two maps that are the same, one that is organized, one that is messy**<br>

**\*\*insert info about Sections and Ordered Links when that is available in the Designer.**&#x20;

### **Node size**

During design mode, the author can set the size of a Node in the Map Designer by dragging the panel corner. This has no effect during player mode. It simply allows the author to see more or less of the Node’s contents during design mode.&#x20;

### **Node locked**

During design mode, the author can lock a Node in the Map Designer by clicking on the padlock in the Node title bar. This has no effect during player mode. It simply prevents the author from changing the Node in the Map Designer. This has several uses. <br>

It does not prevent the author from changing the Node when using the Advanced Node Editor. It is not a security measure. It is simply a reminder to the author that the Node is fixed for some reason. <br>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://olab4.gitbook.io/help/basic-topics/nodes.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
