-
Notifications
You must be signed in to change notification settings - Fork 256
Home
Moth Doctor edited this page Mar 24, 2021
·
7 revisions
This release addresses the first wave of feedback I'm receiving from early adopters. This is gonna be the first version of the plugin released on the Marketplace.
- Flow Components marked as blueprintable, so people could extend it freely.
- Exposed Flow Subsystem functions and delegates to blueprints. This exposes obtaining references to actors in the world containing Flow Component with valid Identity Tag.
- Added methods to get active Flows and Flow Nodes. It allows for creating custom debug UI.
- Generate Pin Name dropdown on Trigger Output node. (#10) - todo!
This set of changes attempts to provide generic support for networked projects, in order to minimize the need to modify the plugin's code. It's tricky to figure out what this generic behavior should be. Great thanks to developers know as sturcotte06 and dean which helped to clarify that.
- By default, Flow Subsystem is created on clients. This allows to access the Flow Component registry - an optimized way to find "event actors" in the world. It's also possible to instantiate client-only Flow Graphs. You can disable Flow Subsystem on clients by changing bCreateFlowSubsystemOnClients flag in Flow Settings (Flow section in Project Settings).
- By default, Flow asset assigned to the world (via World Settings) isn't instantiated on clients. This kind of Flow usually contains gameplay-critical logic, which should exist only on the server. If you need to call some code there on the client, I would recommend handling it inside a specific Flow Node. However, you can override that logic and allow for instantiating this Flow asset on clients. All you need is to create your own World Settings class and assign it to the project instead of AFlowWorldSettings
- Added generic support for replicating State Tags in Flow Component. This way designers can script custom multiplayer logic in their actors. (#8) - todo!
- Initial support for loading/saving instanced Flow Graphs. (#15) - todo!
- Owner of the Root Flow instance is now passed to all dependent Flow Asset instances. Makes it possible to obtain a reference to the Root Flow owner. By default is Flow World Settings actor, but it might any other object that created Root Flow. i.e Player Controller. (submitted by sturcotte06)
- Implemented IsDataValid function in the UFlowAsset, so it would return validation result of Flow Nodes. (submitted by sturcotte06)
- Changing inputs/outputs of the Flow Node blueprint isn't reflected in opened Flow Graphs.
- Optimized obtaining Flow Node blueprints by editor's Palette.
- Fixed Clang compilation. Fixed compilation with unity disabled. (submitted by sturcotte06)
- Solved filename conflicts with Dungeon Architect plugin which caused compilation errors. Make sure you updated the Dungeon Architect plugin to the newest version.
- Removed links to the Flow discord server in plugin's SupportURL and ReadMe.
- Flow Node blueprints no longer use custom "Category" property from the Flow Node class. You need to set the category again, from now on we use the "Blueprint Category" property in Class Details.
- Custom Event node has been renamed to Custom Input node. It should fix the confusion caused by the previous name. Now we have pair of nodes working with custom pins on the SubGraph node: Custom Input and Custom Output.
- If you changed anything in the Flow Editor settings, you need to perform a manual fixup. This class has been renamed to the FlowGraphSettings (as part of fixing filename conflict with Dungeon Architect). You need to edit your DefaultEditor.ini and change the old section name "[/Script/FlowEditor.FlowEditorSettings]" to "[/Script/FlowEditor.FlowGraphSettings]".
- Two delegates in Flow Subystem became dynamic (exposed to blueprint): OnComponentRegistered and OnComponentUnregistered. You might need to add UFUNCTION() above your methods bound to these delegates in C++.
- GetComponents method in Flow Subsystem now returns TSet instead of TArray. Actually, there was no advantage of using TArray here, since we can't rely on the order of elements returned from the component registry.
Got any questions? Discuss things related to the plugin on the dedicated Discord server.
- Overview
- Guides
- Legacy
- API
- Releases