Flow-Graph window elements
The Flowgraph Window
The flow graph window mainly consists of five different parts:
- Main editing pane
- Component nodes
- Flow-Graph overview
- Input, properties and description windows
- Search window and search results
Apart from the main editing pane all windows can be moved and resized. The pane will always be in the background and use all space 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 with it effectively. The best way to work with it is to place it on your second monitor (if available) and keep it open all the time since it might be necessary to switch between the game window and the Flow-Graph very often.
Navigation
The main editing pane is not limited and can be extended in any direction. To navigate on the pane press the right mouse button and move the mouse. The scrollbars of the window can be used as an alternative. 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 which are to be selected. Double-clicking the a node will select the assigned entity in the level.
The Context menu
When you right-click the background pane a context menu will open:
- Add Node : Adds a node to the graph. Similar to dragging and dropping a node from the components window into the main editing pane.
- 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 and the mouse position.
- Add Graph Default Entity : The container entity of the currently active Flow-Graph will be added as a new node.
- Add Comment : Adds a new comment to the Flow-Graph
- Cut : Copies the selected node(s) into the clipboard and removes it from the main editing pane.
- Copy : Copies the selected node(s) into the clipboard.
- Paste : Inserts one or more nodes from the clipboard into the graph at the cursor position. Links are not copied.
- 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.
- Delete : Deletes the selected nodes.
- Export Selected : Exports the currently selected nodes to a XML file.
- Import : Imports an external Flow-Graph from an XML file.
- Select Assigned Entity : Selects the entity in Editor which is set as target for the respective node.
- Show Spline Arrows : Selects whether links are drawn as splines or straight links.
- 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 the Flow-Graph. Additionally Ctrl-Shift-V pastes the nodes from the clipboard including all links.
2) The components window
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 abstract functionality which 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:
- Dragging a node from the component list and dropping it onto the background pane.
- Pressing the right mouse 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:
- Approved: Approved nodes mostly have basic, easy to use functionality and are safe to use.
- Advanced: Advanced nodes feature more complex functionality and are advised to be enabled for the more experienced users.
- Debug: Nodes mainly made for debugging purpose.
- Legacy: Old node, still working but not advised to use. Will be removed in future to be replaced by a new/other node.
- WorkInProgress: The functionality and usage of these nodes might change in the future.
- No Category: Uncategorized nodes that belong to none of the above categories.
3) The Flow-Graph overview
This window provides an overview over the different graphs and entities. Each entity can have its own graph attached. You can switch between the graphs by clicking the entity in the overview window once. Double-clicking the graph will select the entity containing it in the level. The right mouse button brings up the context-menu, which offers different options depending on the graph:
- Disable/Enable: Disables or enables a Flow-Graph. By default all Flow-Graphs are enabled. A disabled Flow-Graph will not be executed.
- 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.
- Select Entity: The 'Select Entity' function selects the owner entity of a Flow-Graph.
- 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 SmartObject rule.
4) The input window
The input 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, which 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 be limited as well to only action graphs or entities. The search results will be displayed in the 'SearchResults' window and can be double-clicked to jump to the according graph. The 'Look in' dropdown-list defines which graphs will be searched:
- Current: Only the currently opened graph will be searched.
- AIActions: Only action graphs will be searched.
- Entities: Only entity based graphs will be searched.
- All Flowgraphs: Both entity based and action graphs will be searched.
The 'Special' dropdown-list offers more options to exclude certain categories of node. 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.