Change Log

Due to frequent files and folder restructure, you should remove the previous installation folder and re-import FlowCanvas anew.
It is highly recommended to always keep a project backup before upgrading as well!

– v3.3.0 –

  • Mod: Double-clicking notes now edits them.
  • Mod: Make use of the new FindObjectByType API for performance where relevant.
  • Mod: Graph Refactor will now also immediately save the graph assets when refactoring.
  • Fix: Right-clicking connections did not work on Mac.

– v3.2.9 –

  • New: Ability to write notes within canvas groups (right-click group and then “Make Notes”).
  • Mod: Event Logs are no longer logged in build.

– v3.2.8 –

  • New: Ability to serialize asset graph json to external text assets (useful for source control).
  • New: Ability to flag value input ports as ‘required’ on registration and get UI indication if it’s not assigned or connected.
  • Mod: Support for Unity 2022.3.x searchbar style name change (an error was thrown).
  • Fix: An error was thrown after closing node browser if graph editor was docked.

– v3.2.6 –

  • New: In-editor version checking and news.
  • New: Switch Unity Object (T) flow control node.
  • New: Added support for Dictionary<string, List<T>> in menus.
  • New: Added GameObject and Component to Interface auto conversion.
  • New: A #FLOWCANVAS define in now added automatically in Unity player symbols.
  • Mod: Graph Refactoring missing reflection references now keeps serialization of input port values.
  • Fix: Getting attributes was throwing errors related to some Unity attributes.
  • Fix: Custom Function return call is now per-call instead of per-function.
  • Fix: Node Browser was stuck loading if closed while loading the first time.

– v3.2.5 –

  • Mod: Grid is now slightly bigger.
  • Mod: Removed options for “Show Icons” and “Show Descriptions”. They are now always both shown.
  • Fix: Edge case bug with cycle referencing prefab blackboards objects.

– v3.2.2 –

  • Mod: MakeNewExposedParameter method in GraphOwner.
  • Mod: Made GraphOwner blackboard reference to be Blackboard instead of IBlackboard.
  • Fix: Reflection GetCustomAttribute and nodes loading.
  • Fix: Enum flags port info.
  • Fix: Graph Stop was called on destroy when application was quiting.

– v3.2.1 –

  • New: Ability to add custom type converter.
  • New: Inspector ability to create instances derived from abstract types via button.
  • Mod: Replaced all simple comments with summary blocks.
  • Fix: “Make Variable” was not working.
  • Fix: Duplicate search results in node browser.
  • Fix: Unity 2021 Icon attribute ambiguous reference.

– v3.2.0 –

  • New: Graph Refactor now has the ability to also batch refactor missing BBParameters.
  • New: Option in Prefs to “Collapse Generics”, thus avoid clutter in the node browser.
  • New: Support for new Unity Input System (downloadable integration).
  • New: [Header] Drawer Attribute.
  • New: [ShowIf] attribute now also works with properties.
  • Mod: Variable Model Preview now also works with components (instead of only gameobject) types.
  • Fix: Update Graph was incorrectly called when starting and resuming graph.
  • Fix: AotClasses Generator did not handle Enum constraints correctly.
  • Fix: GameObject Blackboard error when inspecting asset graph.
  • Fix: TextField focus was not cleared when deleting or moving variables.
  • Fix: FlagsEnum string info was incorrect.
  • Fix: Node Browser was hanging in some very specific cases.

– v3.1.8 –

  • New: SubGraph variables read out mapping is now always in sync while subgraph is running (instead of only when subgraph stops).
  • New: Ability to debug data bound variables property/field value in blackboard editor (new option found in variable “gear” menu).
  • New: ErrorCheck virtual method for Tasks to allow for manual task validation.
  • New: Draw Gizmos event node.
  • Mod: Root graph deltaTime is now propagated to its subgraphs update.
  • Mod: When set to AsyncLoad, Graph Owner is not initialized if it is not ‘activeInHierarchy’ (useful for pooling).
  • Fix: Global Blackboard variables data binding was not initialized.
  • Fix: Ctrl+S could not be used for saving when Graph Editor has focus.
  • Fix: BT Switch node to work with arbitrary enum values.

– v3.1.6 –

  • New: Ability to parent Asset Blackboard to GameObject Blackboard, thus “inheriting” variables from such asset blackboards.
  • New: Ability to change Variable Types.
  • New: LayerUtils (Unity Layer extensions which can be used as normal via reflection nodes).
  • New: OnRenderImage Event Node.
  • New: Added “Then” output in the Switch Condition node.
  • New: “Null” node.
  • Mod: Moved Animator-Based events to separate file than EventRouter (thus fixing certain issues with Animator).
  • Mod: Disable variable re-ordering in prefabs to avoid accidentally “breaking” prefab overrides.
  • Mod: Unified AwaitAll node functionality into AND node.
  • Fix: Asset Blackboard properties binding was not initialized.
  • Fix: External Inspector errors.
  • Fix: Coroutine related null references in certain cases.

– v3.1.0 –

  • Important Hotfix that used to break graphs under very certain situations! As a result of this, the feature that appends JSON into the graph asset files is temporarily removed.
  • New: Global Blackboard singleton destroy options when DontDestroyOnLoad is enabled.

– v3.0.9 –

  • New: Added “On Grounded” and “On UnGrounded” calls in Character Controller event node.
  • Mod: Object-based event nodes now initialize in OnPostGraphStarted (instead of OnGraphStarted).
  • Mod: Disabled exposed variable binding preview in editor time (was becoming a bit confusing).
  • Mod: ColorUsage attribute now works as expected.
  • Mod: Graph.onFinish callback in now called after execution flags reset.
  • Fix: Blackboard was setting scene dirty when it had a Unity Object reference.

– v3.0.8 –

  • New: Ability to use [DeserializeFrom] attribute for refactoring type members where reflection is used.
  • Mod: Graphs can now serialize in playmode if required.
  • Fix: MonoManager was throwing error when exiting playmode in certain cases.
  • Fix: Incorrect assert error (“Graph should have been called in playmode only”), thrown when existing playmode.
  • Fix: Checking UnityObject against null in certain nodes.

– v3.0.1 to 3.0.5 –

  • New: Clear On Play option in Graph Console.
  • New: Double Click maximize/minimize Graph Editor (thanks to @aFoolsDuty on Discord).
  • New: Support for Gradient, Vector2Int and Vector3Int.
  • New: Custom Object Drawers now work with inheritance.
  • New: Added Graph Local Blackboard inspector on the Graph Asset inspector.
  • New: Added Drag, Drop and Scroll outputs in UI Pointer Event node.
  • New: Await All node (found in category ‘FlowController/Flow Merge’).
  • Mod: GraphEditorUtility class is now public once again (changed from internal).
  • Fix: Implicit Type Conversion.
  • Fix: OnEnable was called before other nodes had a chance to Init.
  • Fix: Dragging an Array Value Port was crashing Unity.
  • Fix: Conflict with Odin.
  • Fix: BBParameter was not clearing direct value reference when switched to use a variable.
  • Fix: Blackboard GetVariableValue to also lookup the blackboard inheritance for the target variable (as intended).
  • Fix: Dictionary GUI was resetting entries in certain cases.
  • Fix: GC Collect when serializing.
  • Fix: AOT Classes Generator.
  • Fix: Inspecting Structs was not working correctly.
  • Fix: Type Selection GUI in inspectors was creating leaks.

– v3.0.0 –

Please Note: Minimum Unity version is now ‘2018.4.x’ with ‘.NET 4.x’.

  • New: Local Graph Blackboard Variables.
  • New: SubGraph Variables Parametrization / Mapping.
  • New: Blackboard “parenting”.
  • New: Blackboard Variables Prefab Overrides.
  • New: Graph Refactor Utility Window (can be accessed from the graph editor toolbar).
  • New: Async Graph Loading (found in ‘First Activation’ option in GraphOwner inspector).
  • New: Pre-Initialize SubGraphs (option in GraphOwner inspector).
  • New: Defined Signal Events (thanks to @aFoolsDuty on Discord). Use with the new ‘Signal Callback’ and ‘Invoke Signal’ nodes.
  • New: Prefab Instance Locking (avoid overriding bound graph accidentally). Lock is enabled by default. Found on GraphOwner inspector (for prefabs only).
  • New: Preferred Types can now be synced with .typePrefs file for Version Control purposes.
  • New: PrettyJson is now printed as yaml comments in asset graphs for Version Control “diff” purposes.
  • New: Frame-Stepping (now works as originally intended)
  • New: UpdateMode option in FlowscriptController.
  • New: Ensure Fast-Enter Playmode is working.
  • New: Native Tweening Nodes.
  • New: SubFlowscript graph (works differently than Macros do).
  • New: Missing Ports Handling (connections no longer remove automatically. Allows refactoring missing ports by relinking them).
  • New: C# and Unity Events are now posted in “Events/Reflected” as well for convenience.
  • New: Added “Cancel” input port in LatentAction Nodes.
  • New: NodeCanvas Bridge -> Added SubTree, SubFSM, SubDialogue.
  • New: Play/Pause/Step Controls within Graph Editor.
  • New: Faster and better browser search and results.
  • New: “Show Node Runtimes” prefs option.
  • New: Virtual Link indicators for nodes with other node references (eg GoTo, InternalVar, Call Function etc).
  • New: Canvas Node Groups auto-bounds with option.
  • New: Canvas Node Groups auto-sort based on their size.
  • New: Drag & Drop asset graphs will now create a subgraph node automatically.
  • New: Animatable inspector panel.
  • New: Validation now checks for missing nodes/reflection references and logs in console (so that can be found easier)
  • Mod: Total refactor of events backend for performance boost and type safety. (deprecated [EventReceiver] attribute).
  • Mod: GraphOwner Blackboard reference exposed (meaning that owners can now once again share the same blackboard)
  • Mod: Pan/Zoom is no longer serialized as part of the graph json.
  • Mod: Prefab Assets with Bound Graphs can now only be edited in the Unity Prefab Stage Editor.
  • Mod: Removed serialization cycle references by default (now only possible with [fsSerializeAsReference].
  • Mod: Everything is in an asmdef by default.
  • Fix: Macros initialization order.
  • Fix: FlowNode.isConnected now works in runtime as well.

Technical

  • New: IExternalImplementedNode (allows implementing nodes in any MonoBehaviour).
  • New: IDropedReferenceNode and [DropReferenceType] (allow specify node to add for dragged unity object references).
  • New: .elapsedTime property for nodes.
  • New: Refactor Graph.isRunning and Graph.isPaused.
  • New: Total Refactor IGraphAssignables (and thus SubGraph Nodes).
  • New: Implemented Serialization Versioning, Migration and Forward Migration in FullSerializer.
  • New: FullSerializer [fsIgnoreInBuild], [fsAutoInstance], [fsUninitialized].
  • New: FullSerializer ISerializationCollector, ISerializationCollectable.
  • New: WeakReferences and WeakReferenceList, WeakReferenceTable.
  • New: ‘NodeReference’ utility class to create node references easy.
  • New: Total Refactor SetReferences for performance.
  • New: Tasks and BBParameters can now exist anywhere in the graph structure. Deprecated ISubTaskContainer and ISubParametersContainer.

Breaks (sorry)

  • Blackboard overrides on Prefab Instances will be reverted to the Prefab Asset. (Due to new serialization to properly support Variable Overrides).
  • Bound Graph overrides on Prefab Instances will be reverted to the Prefab Asset. (Due to a Unity bug with [FormelySerializedAs] -> https://bit.ly/37T6CaE ). There is a way around this though. Please contact support if this is an issue for you.

Many other minor fixes, improvements and performance boosts.


– v2.9.7 –

  • New: Proper support for Unity 2019.3 new Editor GUI theme. Please use the Verdana font on Windows (It’s just better!)
  • New: Proper handling of OnAwake, OnEnable and OnStart Event Nodes to work the same way as Unity.
  • New: Added “First Activation” option in FlowScriptController to select between “OnStart” or “OnEnable”, meaning when the first activation will happen.
  • New: Port tooltips for non-Value Types, now show the object instance (if any). ToString() and if it’s not the same as it’s type name.
  • Mod: GraphConsole now has a max limit of messages shown.
  • Mod: Port values now have a smaller font.
  • Fix: Some MacOS GUI related issues (Thanks to @aFoolsDuty on Discord).
  • Fix: Some generics-related GUI errors with generic methods.
  • Fix: Unity Object variable nodes preview was throwing GUI warnings.
  • Fix: Entering macro in play mode, was resetting macro’s references.

– v2.9.6 –

  • New: Added new Utility Window “Tools/../Active Owners Overview” that summarize active GraphOwners in play mode.
  • New: SubGraphs now hold a reference to their parent graph (.parentGraph property).
  • New: Ports can now be set to ignore “self” instance assignment.
  • Mod: Graph asset comments are now visible in the GraphOwner inspector.
  • Fix: Losing unity object references from ports in certain cases.
  • Fix: Disallowed sending null or empty event names.

– v2.9.4 –

  • New: Switch Probability Flow Controller Node.
  • New: Ability to Drag&Drop multiple objects to append in inspector List Editors.
  • New: Instances of classes and structs in inspectors, are no longer created automatically, but rather with a button on user request.
  • Mod: Slightly re-organized Flow Controller category of nodes.
  • Mod: Added MonoBehaviour as default type in Preferred Types List.
  • Mod: Simplified Full Serializer even more.
  • Fix: Asset Bundle build warning.
  • Fix: “Self” assignment was incorrectly trying to assing non UnityEngine assignable objects when the “Self” port was not the 1st value port of the node.
  • Fix: Welcome Window URLs to point at “new” domain.
  • Fix: Improved UnityEngine.Object comparisons wherever is possible.

– v2.9.2 –

  • Fix: Critical serialization bug fixed! Please update if you are using v2.9.1!
  • New: Physics related “stay” events (like OnCollisionStay), are now called from within Update loop for consistency.
  • Mod: Improved graph serialization error handling to conserve data if something goes wrong.
  • Mod: Serialization converters performance gain by avoiding reflection lookup.
  • Fix: Switch Enum to work correctly when enum has arbitrary values.
  • Fix: Upcasting type auto-coversion.
  • Fix: Boolean to UnityEngine.Object type auto-conversion.
  • Fix: Extractor node when used in .Net 2 Standard.
  • Fix: Local Blackboard was not correctly assigned when starting graph with null blackboard.

– v2.9.1 –

  • New: Major serialization refactoring. Serializing properties is no longer supported (only fields).
  • New: Faster dictionary and lists serialization converters.
  • New: Double and Long type inspection support.
  • New: GoTo statement node.
  • Mod: Removed NETFX_CORE support.
  • Mod: Graph Minimap now has fixed aspect ratio in relation to Graph Editor window.
  • Mod: Graph Editor canvas is now infinite in the negative (left-up) axis.
  • Mod: Removed dark background from node ports in the light theme.
  • Mod: All code is now re-formatted.
  • Fix: macOS and retina display issues.
  • Fix: Drawing order of node ports and spacing.
  • Fix: Searching operators with c# like symbols (“!=”, “>=” etc).
  • Fix: AOT generator for global namespaces types.
  • Fix: Browser filter favorites only, which in cases did not display results.
  • Fix: Extractor node to take into account type member addition/removal.
  • Fix: Inherited members categorization in the node browser.
  • Fix: UnityEngine.Object null check related issues.
  • Several other micro fixes.

– v2.9.0 –

  • New: Major files and folders restructure. This also allows usage of Unity Assembly Definitions.
  • New: All nodes now have 3 Display Verbose Levels -> 1) Minimal (no ports displayed) 2) Partial (only connected ports displayed) 3) Full (all ports displayed).
  • New: Display Verbose Levels can be changed from either the Graph Editor toolbar, or individually with the new icon button shown above nodes.
  • New: Connections can now be re-linked (both source and target ports), by click and drag the connection.
  • New: When dragging a port connection (or re-link), possible target nodes are now highlighted.
  • New: The Minimap now also shows connections, as well as selected nodes and execution status.
  • New: Improved ports GUI and layout to require much less horizontal space for the node to display.
  • New: Custom Event node now has an extra output “Sender”, which is the object that send the event.
  • New: Blackboard Variables can now be duplicated (through a variable’s options button).
  • New: Added AutoConverts for quaternions.
  • Mod: First graph execution is now OnStart instead of OnEnable.
  • Mod: Stepped and Linear connection visual modes are removed.
  • Mod: Re-added previously deprecated Internal Var nodes.
  • Mod: Connections are now easier to click.
  • Mod: Complete refactor of StyleSheets.
  • Mod: Removed source PSD files for icons.
  • Mod: Some general improvements to GUI styles, icons and colors.
  • Fix: Nodes GUI size is now always relevant to it’s content.
  • Fix: Ocasional GUI connections flickering when using node inspector.
  • Fix: Safe check in Custom Function node to only run once concurently.

– v2.8.5 –

  • New: Unity 2018.3 tested.
  • New: Graph Finder Utility Window to quickly search, browse, find and auto focus graph elements.
  • New: Convert Selected Nodes To Macro ability (on right click menu of multiple selected nodes).
  • New: Value Selector Nodes assortment, similar to Flow Switch Nodes.
  • New: Float and Int “Snap” Nodes.
  • Mod: Re-Added categories shown when searching in browser.
  • Mod: Improved smart matching algorithm to yield better results when searching in browser.
  • Mod: Deprecated option to “Use Browser”. Browser is now always used where is adequate.
  • Mod: Type icons now show in consistency in all menus.
  • Fix: Losing connections on missing reflected method.
  • Fix: Improved Editor Visual Debug performance.

– v2.8.2 –

  • New Extractor node is now available in all types instead of only structs.
  • New: Wait Until, Wait While nodes.
  • New: More exposed ports for CoolDown and ForLoop nodes.
  • New: Port.SetDefaultValue to set default value when creating custom nodes.
  • New: [ExecutionPriority] attribute for nodes.
  • New: StartEvent no longer yields a frame.
  • New: Connections are highlighted on hover.
  • Mod: Removed GameObject Icon Hierarchy Highlighting because it was dropping editor performance.
  • Mod: Improved Smart Search in Node Browser.
  • Fix: MessageRouter was applying root motion even when “Apply Root Motion” is off.
  • Fix: Incorrect BBParameter Promotion when parameter is Dynamic.

– v2.8.1 –

  • This is a Stability Release.
  • New: Buffer node.
  • New: DampFloat and DampVector3 nodes.
  • New: Custom Cast node.
  • New: “Log Dynamic Parameters Info” preference option.
  • Mod: Improved Smart Search algorithm in Node Browser.
  • Fix: Unity v2018 minor issues.
  • Fix: Lists re-ordering.
  • Fix: Nested Custom Functions.
  • Fix: Event Value Casting.
  • Fix: A few other very minor issues.

– v2.8.0 –

  • New: Major editor code refactoring and stepping stones for future development.
  • New: Ability for multiple Attribute Drawers to work together (Compound Drawers).
  • New: Much better search matching algorithm within Node Browser.
  • Mod: FlowController prefabs no longer create a FlowScript sub-asset.
  • Fix: Graph Editor is no longer auto focused when changing Graph Owner selection.
  • Fix: Panning nodes when zoom out.
  • Fix: Several other micro bugs.

– v2.7.0 –

EDITOR GUI

  • New: GUI Icons for nodes, types and ports.
  • New: Robust Graph Minimap.
  • New: Visual Debugging Flow Animations.
  • New: Graph Debug Console Window. Logs Graph related stuff and clicking on the logs, automatically opens up the relevant graph and focuses the relevant node.
  • New: GUI option for Colored Headers. (as shown in the screenshots bellow).
  • New: Assets like Prefabs and Textures, now show preview in the variable node within the editor.
  • New: The Node Browser is now multi-threaded and as such loads up very fast and remains responsive.
  • New: When dragging any value port type, it is now appended to all generic nodes and methods without need to add the type to Preferred Types Editor.
  • New: When dragging any value port type, generic nodes that the dragged type can be used with, are no longer shown within convoluted sub-menus of the type’s namespace.
  • New: Node and Variables inspector panels are now re-sizable. Yei!
  • New: Node documentation now show on mouse over as a popup.
  • New: Connections are now clickable directly on the curve.
  • New: Support for Control Copy/Cut/Paste shortcuts.
  • Mod: Reorganized node categories to be more tidy.
  • Fix: A lot of improvement in Editor Performance when zoom out.
  • Fix: Ports floating around sometimes when dragging nodes.

FUNCTIONALITY

  • New: Further reflection optimizations by using IL for JIT platforms.
  • New: Reflected Constructor Nodes for all types. (Previously: only for specific types).
  • New: Reflected Extractors Nodes for all Value Types with option to choose what to expose among properties and fields. (Previously: only specific types)
  • New: Support for reflected Generic Methods.
  • New: Reflected methods with params array, now have option to expose params to individual ports.
  • New: Better support for ref and out parameters of reflected methods.
  • NewWild Definition feature for Nodes and Ports. Automatically change T type, to the type connected.
  • New: Support for any Unity and C# Event Callbacks with any number of arguments and two ways of registration (Auto/Manual).
  • New: Support for Custom Delegate Event registrations. (For advanced users, or those familiar with Blueprints Dispatchers).
  • New: Support for custom type operators (like Equals, Add, Multiply etc).

MORE FUNCTIONALITY

  • New: Support for multiple targets in all Object based Event Nodes. Allows to use a single Event Node (like for example Trigger Enter), but listen to to any number of objects that invoke that event.
  • New: It’s now possible to create Custom Functions with any number of Parameters and optional Return value with visual scripting (a mix of existing Custom Event and Macros).
  • New: “Break” Flow Control Node. To be used as an alternative way of breaking out of For Loop and While nodes.
  • New: A handful of new Unity UI-Based Event Nodes.
  • New: Animator Events Node.
  • New: Try/Catch/Finally Flow Control Node.
  • New: Yield Frame, Yield End of Frame, Yield Physics Frame Nodes.
  • NewFinalized support, nodes and GUI for Dictionaries<string, T>.
  • NewAll Latent Action nodes (like Wait), now have option to either Queue new calls (like it already was done), or Filter new calls out.
  • New: CustomObjectWrapper<T> node, that allows creating of custom wrapper nodes for any object you drag and drop in the canvas editor.
  • New: Support for default values for nodes and reflected methods.
  • Mod: Better and more consistent intellisense menu when dragging value ports.
  • Fix: Added reflected documentation for Fields that were missing.
  • Fix: Latent Action Nodes now retain the same Flow.
  • Fix: Non-Connected and Non-Default input values from being serialized.
  • Fix: Serializing default node colors.
  • Lot of other fixes, optimizations and conveniences.

– v1.3.6 –

  • New: Unity 2017 Tested.
  • New: UnityEvent event nodes.
  • New: Support for default parameter values for SimplexNodes.
  • New: Added “TryCatchFinally” node.
  • New: Added GameObject and Component types in the “Constructors” nodes category.
  • New: Added Prefs option to enable/disable active GraphOwner in the hierarchy.
  • Fix: Reflected nodes not being able to set “Breakpoint”.
  • Fix: Support for Char type.
  • Fix: Same UID on Duplicate Nodes.

– v1.3.5 –

  • New: Unity 5.6 Tested.
  • New: RelayInput / RelayOutput nodes.
  • New: ReadFlowParameter / WriteFlowParameter nodes.
  • New: Particle Collision 3D/2D Event nodes.
  • New: Utility Instantiate(T) node that handles casting.
  • New: Reorganized menu and some node names.
  • New: PreferredTypes are now handled per project. Note that they will be reset to default. Please re-set those, or save a preset before updating.
  • New: Hierarchy icons now display the state of the behaviour owner (running/paused/stopped).
  • New: [Protected] attribute for nodes (so that they can’t be deleted once added)
  • New: [Icon] attribute now has modes to replace title or append to title.
  • Mod: Improved searching query of Node/Task Browser.
  • Mod: Graph names confusion is now removed. Asset names are used instead.
  • Fix: Wrong connections refresh when undo/redo.
  • Fix: AutoCasting layermask to integer.
  • Fix: No longer asks for Unity API upgrade.
  • Fix: Scene not getting dirty when editing a bound graph.
  • Fix: AOTClasses generator for nested types.
  • Fix: Instantiating gameobject with multiple GraphOwners bug introduced in latest version.
  • Fix: Resolving Enumerable Type arguments.
  • Fix: Windows Universal 10 errors.

– v1.3.2 –

  • New: Unity 5.5 support.
  • New: Editor performance improvements.
  • New: Added “Break” port in all latent action nodes, like Wait or DOTween are for example.
  • New: Types (including generic types) and methods will now resolve and fallback to other matches by searching types without namespace.
  • Mod: Node browser is now considerably smaller in size.
  • Mod: Obsolete methods and properties are no longer shown in menus.
  • Fix: Duplicate and Delete shortcuts for multiple selected nodes.
  • Fix: Panning graph is now undoable.
  • Fix: “Replace Method” in reflection based node context menu, now works for static method overrides as well.
  • Fix: Runtime Macro instantiation issue.
  • Fix: Memory allocations for when using Dynamic Variables.
  • Fix: Export Macro to JSON now correctly includes it’s input/output port definitions.

– v1.3.0b –

  • Hotfix of runtime bug introduced in previous version that caused exceptions when using framework Task as well as LatentActionNodes like “Wait”

– v1.3.0 –

  • New: Added OnApplication event nodes.
  • New: When a node or connection is selected, used Blackboard variables by that selection will now be highlighted.
  • New: Dynamic and missing parameter variables will now show in red within the Node information UI.
  • New: Improved Variable Separators and it’s now possible to have a custom name for them (double click to edit).
  • New: Added ability to colorize Canvas Groups through it’s right click context menu.
  • New: Added ability to colorize Nodes through their inspectors.
  • New: Reflected Nodes & Variable Bindings now work with base definition of method and properties (The lowest implementation in class hierarchy is used).
  • New: Right Click in the Node/Task Browser window now goes back one step.
  • Fix: “Send Global Event” from sending multiple events in graphs of the same gameobject.
  • Fix: “Create Defined Blackboard Variables” command, that was incrementally adding Global BB name (eg “Global/”) for global variables.
  • Fix: Inability to Bind Blackboard Variables when editing a prefab.
  • Fix: Input Axis Events from not being called when axis becomes zero.
  • Fix: FlowScripts are now correctly reset when Stopped/Restarted.
  • Fix: FlowScripts now correctly support Pausing them.
  • Fix: Further performance improvements relevant to memory allocation on initialization.
  • Fix: Improved memory allocations when restarting a FlowScript.
  • Fix: AOT Classes Generator for non-namespaced classes.
  • Fix: When duplicating or pasting nodes, they will now be auto selected.
  • Fix: Win Universal Apps 10 support.
  • Fix: Requirement of “.Net” backend (instead of “.Net Subset”).

– v1.2.5b –

  • HotFix: Mac menus for bound variables.

– v1.2.5 –

  • New: Blackboard Variables can now be bound to static properties and fields.
  • New: Added search in Preferred Types Editor.
  • New: Added new Preference Option (“Use Browser”). If true the complete browser will be used instead of normal context menu.
  • New: Added Favorites in Browser.
  • New: Added search comparison mode in Browser.
  • New: Constant fields are now able to add as nodes (eg: Mathf.PositiveInfinity, string.Empty etc).
  • New: When searching in Browser, results are now categorized respectively with foldouts.
  • New: Custom nodes extended to support up to 10 parameters.
  • New: Latent Action Nodes (Wait, Tween, etc) are now highlighted to illustrate they are running.
  • New: Comments TextArea is now expandable.
  • Fix: Graph will no longer ever reset due to deserialization errors.
  • Fix: Parsing reflection docs speed.
  • Fix: Reflected docs parsing cast exception.
  • Fix: Serialization recovery that was reseting variables.

– v1.2.0 –

  • New: Added Custom Object and Property Drawers for customizable inspectors.
  • New: Ability to Drag&Drop variables directly in the flowscripts.
  • New: Official documentation is now shown for Unity types in node descriptions and within the node browser.
  • New: Auto-properties are now inspectable in the editor as read-only.
  • Fix: Variables to never lose reference due to renames that was taking place in some cases.
  • Fix: Bug where child object references in prefabs were not correctly references once the prefab got instantiated in runtime.
  • Fix Object Editor errors when entering/existing playmode.
  • Fix: Input ports not serializing default values.

– v1.1.5 –

  • New: Improved deserialization GC/speed by 300%
  • New: The Switch Integer and String nodes now have a “Default” output.
  • New: Number of supported reflected parameters is now bumped up to 8.
  • New: Unity Objects can now be connected to bool inputs directly, which in effect checks if the object is null.
  • Mod: Re-organized node categories to be easier for newcomers.
  • Mod: Added “Cancel” port in Cooldown node.
  • Mod: Blackboard variables panel in editor window is now scrollable.
  • Fix: Support for Unity 5.4
  • Fix: Serialization error relevant to multiple scenes.
  • Fix: Cooldown node being fired inconsistently.
  • Fix: Input Values being lost in some cases.
  • Fix: Input values being reseted when making a prefab out of the flowScriptController.

– v1.1.0 –

  • Latent Nodes (nodes that take time) are now queued!
  • Global Variables are now shown in the context menus to be selected.
  • List(T) is now appended in context menus of relevant nodes.
  • Static methods are now shown in filtered menus.
  • Extension methods are now also appended in menus.
  • FlowControl nodes are now also appended in filtered menus correctly.
  • Add “OnVariableChanged” event node.
  • The “Self” instance port, is now shown in red if the self gameobject does not have the required component.
  • Added ability to “Change Type” of generic node types through their context menu.
  • Added “Break” input in ForEach and ForLoop nodes.
  • String parameters are now shown within brackets (” “) for convenience.
  • Added ability to easily add out parameters in SimplexNodes through properties.
  • The [Description] attribute can now be used in SimplexNodes as well.
  • Fixed deserializing port values that were reseted in some very rare cases.

– v1.0.4 –

  • Added link.xml file auto-generation based on Preferred Types.
  • Ensured WebGL support.
  • More deserialization speed improvements.
  • Update to Framework 2.4.4.

– v1.0.3 –

  • iOS/AOT platforms experimental support.
  • Added more List relevant nodes.
  • Added List to Array and vice-verse auto-casting.
  • Fixed node instance ports from returning input instance instead of modified instance.

– v1.0.2 –

  • Fixed deserialization recovery when missing node type.
  • Added CharacterController event node.
  • Added “Replace Method” in right click menu to replace with overload methods if exist.
  • Added SetOtherBlackboardVariable node under “Variables/Blackboard/Set Other(T)”.
  • Variables are now able to also be bound to fields except of only properties.
  • BBParameters can now also be linked to Variables of assignable types.
  • Added Straight Line connection mode preference.

– v1.0.1 –

  • Fix: Serialization issue.
  • Mod: Much better editor performance.
  • Mod: Even faster deserialization.
  • Mod: Better Undo.

– v1.0 –

  • Fix: Deserialization is now fixed and fast.
  • New: Added node Breakpoints.
  • New: Drag&Drop connections will now automatically do the connection if there is only 1 possible choice.
  • Fix: Canvas Editor performance.
  • Fix: Browser to auto-focus search field

– v0.9.8 –

  • New: Added variables separator.
  • New: Added editor indicator that Unity is in play mode.
  • Mod: Global Blackboards are now persistent between levels.
  • Fix: Unity 5.2 editor warnings.
  • Fix: Using BBVariables in Macros.

– v0.9.5 –

  • NEW: Blackboard variables can now automatically be synced over the network, selectively.
  • NEW: Creating non simplex custom nodes is now easier.
  • NEW: Macro Local Variables.
  • NEW: NodeCanvas Behaviour Tree integration.
  • NEW: Event Node Targets, can now be set from a Blackboard variable.
  • NEW: Added LateUpdate, FixedUpdate Event nodes.
  • NEW: Added BecameVisible, BecameInvisible Event nodes.
  • NEW: Added Custom Input Axis Event node (able to define any number of axis names).
  • NEW: Added Switch String Flow Controller node.
  • NEW: Added Switch Object Tag Flow Controller node.
  • NEW: Added CacheValue(T) node.
  • NEW: Flow Merge nodes AND and OR, can now take multiple inputs instead of two.
  • NEW: Added “Pressed” output in UIPointer Event node.
  • NEW: Added “Reset” in Sequence Flow Control node.
  • NEW: Added Task Action and Task Condition nodes for using NodeCanvas made Tasks directly in a FlowScript, thus being able to use any current 3rd party integration available already (Such nodes do no expose value inputs/outputs)
  • NEW: The Set Variable node now includes operations for floats and integers to Set, NEW: Add, Subtract, Multiply and Divide the input value with the variable.
  • FIX: Macro node connection being lost.
  • FIX: Renaming Macro inputs/outputs from removing connections.
  • FIX: Node context menu not showing all Macros in the project.
  • NEW: Drag and Droping ports on the Macro Input or Macro Output Node, allows for “promoting” the port to a Macro Input or Output automatically.
  • FIX: Node connections that were visually shown messed up the first time the editor gets opened.
  • FIX: Dragging and dropping a gameobject from the hierarchy and selecting a function from throwing errors.
  • NEW: Flow Execution exceptions (typical in reflection nodes) are now catched and the UI indicates the failed node in red.
  • NEW: The Editor UI has been improved to make Object type references more visible.
  • NEW: Default port values are now shown transparent instead of not showing at all.
  • NEW: Preferred Types List can now be saved/load to a preset file.
  • NEW: Improved Context Menus filtering when dragging value ports, to include the dragged type in generic node definitions.
  • FIX: Light theme not showing some node titles.
  • FIX: When dragging Flow ports, that they looked like they can be connected to string value ports.
  • NEW: Improved on showing which ports the dragged connection can be made to.
  • NEW: Switch Enum node type, can now also be set by simply drag and droping an enum port over the node.
  • NEW: Vector types are now color coded in orange.
  • NEW: Variable nodes are now color coded in white.
  • NEW: Visual Debuging is now more snappy and per-frame updates remain constant yellow instead of flashing on/off.
  • NEW: Reorganized node categories.
  • Modified node help description to be more consistent in terminology.
  • FIX: Blackboard deserialization of missing variable types.
  • NEW: Refactoring method parameters and return types for reflection nodes, is now handled.

– v0.8.8 –

  • New: Static Code Event.
  • New: Static Code Event (T).
  • New: Code Event (T).
  • New: Dragging any output value port in the canvas allows creating a new variable.
  • Fix: Preferred Types from reseting and being filtered out.