The Flow Graph Window

Overview

The Flow Graph window consists of five different parts:

Apart from the main editing pane, all windows can be moved and resized. The main editing pane will always be in the background and use all the space that is available.

1. The Main Editing Pane

This is the main window, where all the editing takes place. Nodes can be added, deleted, moved, and linked here. This window needs a lot of screen space to work effectively.

The best way to work with it is to place it on the second monitor (if available) and keep it open all the time because it may be often necessary to switch between the game window and the Flow Graph.

  • Navigation: The main editing pane is not limited and can be extended in any direction. To navigate, click and hold the right mouse button and move the mouse. The scrollbars of the window can also be used. The mouse wheel is used to zoom in and out.
  • Selection: Nodes can be selected with the left mouse button and deselected by clicking somewhere in the background pane. Multiple nodes can be selected by clicking in the background pane with the left mouse button and drawing a drag box around the nodes that need to be selected. Double-clicking a node will select the assigned entity in the level.
  • Context menu: When you right-click the background pane, a context menu will be displayed.

  1. Add Node: Adds a node to the graph. Similar to dragging and dropping a node from the components window into the main editing pane.
  2. Add Selected Entity: Adds the entity that is currently selected in the editor to the flow graph. A new node will be created for this entity and inserted at the position of the cursor.
  3. Add Graph Default Entity: The container entity of the currently active Flow Graph will be added as a new node.
  4. Add Comment: This opens up a sub menu where you can select from:
    1. Simple Comment which lets you write some text directly into the flowgraph
    2. Comment Box which you can use to group together key elements inside a flowgraph for easier reading
    3. Black Box used when nodes are selected and assigned to a Black box, they will be hidden from the main flowgraph view, to help clear up the viewport window.
  5. Add Track Event Node: This is a shortcut to quickly access the often used Track Event Node.
  6. Add Start Node: This is a shortcut to the commonly used Start Node.
  7. Cut: Cuts the selected node(s) to the clipboard and removes it from the main editing pane.
  8. Copy: Copies the selected node(s) to the clipboard.
  9. Paste: Inserts one or more nodes from the clipboard into the graph at the cursor position. Links are not copied.
  10. Paste with Links: Inserts one or more nodes from the clipboard in the flow graph at the cursor position, copying all links the nodes were connected with.
  11. Delete: Deletes the selected nodes.
  12. Selection: Opens up a sub menu where you can select from:
    1. Export Selected Nodes which outputs the selected nodes to an xml sheet to be imported into another flowgraph.
    2. Select Assigned Entity which will select and highlight the entity in the main viewport window.
    3. Select and Goto Assigned Entity which will do as above, but also move the camera to the node.
  13. Import: Imports an external Flow Graph from an XML file.
  14. Show Spline Arrows: Selects whether links are drawn as splines or straight links.
  15. Fit Graph to View: Automatically zooms the current Graph to the graphs extent.
    Nodes can also be deleted by selecting and pressing Delete. The usual windows shortcuts Ctrl-C, Ctrl-V, etc. can also be used while editing in the Flow Graph. Additionally Ctrl-Shift-V pastes the nodes from the clipboard including all links.

2. The Component Nodes

In the components window, all usable Flow Graph nodes can be found. Component nodes are nodes which do not represent an entity in the level, but have an abstract functionality that may use one or more entities.

The MoveEntityTo node, for example, is a component node. It takes an entity as a target and moves it to a specified position.

The nodes are sorted by category and can be added to the current Flow Graph in two ways:

  1. Dragging a node from the component list and dropping it onto the background pane.
  2. Clicking the right mouse button on the background pane and selecting a node from the AddNode menu point in the context menu.
Categories

Nodes can belong to different categories. Which nodes are visible in the component list can be configured in the 'View/Components' menu. There are six node categories:

  1. Approved: Approved nodes mostly have basic, easy to use functionality and are safe to use.
  2. Advanced: Advanced nodes feature more complex functionality and are advised to be enabled for the more experienced users.
  3. Debug: Nodes mainly made for debugging purpose.
  4. Legacy: Old node, still working but not advised to use. Will be removed in future to be replaced by a new/other node.
  5. WorkInProgress: The functionality and usage of these nodes might change in the future.
  6. No Category: Uncategorized nodes that belong to none of the above categories.

3. The Flow Graph Overview

This window provides an overview for the different graphs and entities. Each entity can have its own graph attached.

To switch between graphs:

  • Click Entities in the overview window.
  • Double-click the graph to select the entity containing it in the level.
  • Right-click the entity to bring up the context-menu, which offers different options depending on the graph:

  1. Disable/Enable: Disables or enables a Flow Graph. By default all Flow Graphs are enabled. A disabled Flow Graph will not be executed.
  2. Change Folder: A Flow Graph can be placed in a sub folder. If a new folder name is entered a new folder will be created. This is the only context menu option available for AIAction graphs.
  3. Select Entity: The Select Entity function selects the owner entity of a Flow Graph.
  4. Remove Graph: This function completely removes the Flow Graph.

In addition to the normal entity Flow Graphs, all AIAction graphs are listed in this window. An AIAction graph is a special type of graph which is executed by a Smart Object rule.

4. The Inputs Window

The Inputs window is specific to the node currently selected. All node parameters can be edited here.

In addition to the input controls there is an information tab that provides a description of the currently selected node.

5. The Search Window

Flow Graphs and Action graphs can be searched for specific nodes and/or values. The search options can be configured to include or exclude different parts of the nodes. The search can also be limited to action graphs or entities.

The search results will be displayed in the SearchResults window and a double-click will jump to the corresponding graph.

The 'Look in' dropdown-list defines which graphs will be searched:

  1. Current: Only the currently opened graph will be searched.
  2. AIActions: Only action graphs will be searched.
  3. Entities: Only entity based graphs will be searched.
  4. All Flowgraphs: Both entity and action graphs will be searched.
  5. The 'Special' dropdown-list offers more options to exclude certain categories of nodes. For example all 'Work in Progress' nodes can be excluded from the search. Additionally, there is a set of checkboxes to select if ports, values, entities or IDs should be included in the search.
    All windows can be moved around and snapped as they fit to the available screenspace.