BlueprintNodeGraph is a Blueprint-native async flow framework designed specifically for UE5. It replaces scattered Delay/Wait nodes and simplifies task/story/level logic development, supporting full-level logic validation in shipped projects.
Core advantages: Direct use in standard Blueprints, native parallel async, GC-safe, network replication, low overhead and easy extensibility.
- Introduction
- Why Choose BlueprintNodeGraph?
- Features
- Quick Start
- Documentation
- Examples
- Support
- Contributing
- License
BlueprintNodeGraph is a powerful Unreal Engine plugin that provides a rich set of async Blueprint nodes and delayed task execution system. This plugin enables developers to easily implement complex async logic in Blueprints without writing a lot of C++ code.
Main Design Goals:
- Intuitive and easy-to-use async nodes
- Complete task lifecycle management
- GC-safe object management
- Network replication support
- High performance, low overhead
Core Files:
- ExBase_LatentTask.h - Latent task base class
- ExLatentActionManager.h - Delegate manager
- ExK2Node_LatentTaskCall.h - K2 node extension
| Feature | BlueprintNodeGraph | FlowGraph | StateTree |
|---|---|---|---|
| Core Purpose | Pure Blueprint async node system | Visual node programming | State machine system |
| Learning Curve | Extremely Low (like using existing nodes) | High (need to learn specific concepts) | High (need to learn state machine concepts) |
| Usage Method | Drag nodes directly in standard Blueprint Editor | Need to open separate FlowGraph Editor | Need to open specialized Editor |
| Async Execution | Native async support | Need additional implementation | Mainly synchronous |
| Timeout Mechanism | Built-in timeout protection | Need to implement manually | Need to implement manually |
| GC Protection | Automatic GC-safe | Need manual management | Need manual management |
| Network Replication | Direct support | Need to implement manually | Need to implement manually |
| Latent Loop | Loop Delay and other ready-to-use nodes | Need to combine nodes | Not applicable |
| Multi-branch Sync | Wait Branches and other ready-to-use nodes | Need to build manually | Need to combine state transitions |
Other Solutions:
- FlowGraph requires a separate editor
- StateTree requires a specialized editor
Our Solution:
- Drag nodes directly in standard Blueprint Editor
- No need to learn a new editor
- Fully compatible with your existing workflow
- Learning cost is virtually zero
File Location: ExLatentProxyDefine.h
// Just drag and use:
Loop Delay (Duration: 1.0)
↓
Execute your logicNo complex chart configuration needed, just use it!
File Location: ExBase_AsyncAction.h
// Automatic object lifecycle handling:
RegisterWithGameInstance(WorldContext); // Prevent collection
SetReadyToDestroy(); // Mark for destruction when complete- Automatic management, no manual cleanup
- No memory leak risk
File Location: ExLatentNodeInfo
Node Properties → Configure Time Out: 10.0
↓
Automatic timeout protection
Prevents infinite waiting!
File Location: ExBase_LatentTask.h
CreateTask() → Activate() → Receive On Start → Receive On Stop → Destroy
- Complete state machine management
- Network replication sync support
| Scenario | BlueprintNodeGraph | FlowGraph | StateTree |
|---|---|---|---|
| Loop Delay | Loop Delay native node | Need to combine nodes | Not applicable (state machine model unsuitable for linear loop flow) |
| Multi-input Sync / Parallel Branches | Wait Branches native node | Need nested Parallel nodes, complex hierarchy | Not applicable (state machine model doesn't support native parallel) |
| Async Loading / Conditional Wait | Wait Condition native node | Need to build wait logic manually | Need to build event listeners manually, high implementation cost |
| Complex Tasks / Story / Level Flow | Native adaptation, supports resume from checkpoint / network sync, validated in production | General flow framework, general adaptability, needs additional business adaptation | Not applicable, state machine model doesn't match linear + branching task logic |
| AI State Machine / Behavior Control | Can implement (with Blueprint / events, not core advantage) | Can implement (needs lots of custom nodes) | Best fit, hierarchical state machine naturally adapts to AI behavior |
BlueprintNodeGraph = FlowGraph's ease of use + StateTree's powerful features
- Simple scenarios: drag nodes directly, done in seconds
- No new concepts to learn
- Async support, out of the box
- Simpler than FlowGraph, more direct than StateTree
- Latent Execution Nodes - Loop Delay, For Loop with Delay, etc.
- Conditional Wait Nodes - Wait Condition, Wait Branch
- Async Delegate System - Supports multiple input branch synchronization
- Latent Task Framework - Complete task lifecycle management
- Timeout Mechanism - Prevents infinite waiting
- Network Replication - Supports multiplayer games
- GC Protection - Automatic object lifecycle management
- WorldPartition Support - Large map sub-level async load/unload
- Async Asset Loading - Supports UObject and UClass async loading
- Resume from Checkpoint / Save - Complete flow state save and restore
- Content Browser Integration - Right-click to quickly create Flow Graph assets
- Developed based on latest UE5 features
- Complete C++ and Blueprint support
- Modular architecture, easy to extend
- Includes Editor integration
- Provides complete examples
| Module | Type | Description |
|---|---|---|
| BlueprintNodeGraph | Runtime | Runtime core module |
| BlueprintNodeGraphEditor | Editor | Editor extension module |
- Copy the
BlueprintNodeGraphfolder to your project'sPluginsdirectory - Reopen the project
- Enable "BlueprintNodeGraph" in the Plugins menu
See Installation Guide for detailed installation steps.
Add a simple delay loop in Blueprint:
Event BeginPlay
↓
Loop Delay (Duration: 1.0)
↓ (Loop)
Print String ("Hello!")
↓
(Completed)
Print String ("Done!")
That's it! See Quick Start Guide for more.
- Usage Guide - Complete usage guide, API reference, examples
- Architecture Guide - Deep dive into plugin architecture and how it works
- Quest System Guide - Hierarchical quest system usage
The plugin includes multiple example Blueprints demonstrating various features:
- BP_TestGraph1 - Basic flow graph example
- BP_QuestHost - Quest system host example
- WBP_QuestTree - Quest tree UI example
These examples are located in the Content folder.
Having issues? Check:
- Troubleshooting - Solutions to common problems
- Best Practices - Usage tips and tricks
If you find a bug or have feature suggestions:
- Check if an existing issue covers it
- Provide reproduction steps and environment info
- Use clear titles and descriptions
We welcome any form of contribution!
- Fork this repository
- Clone to your Unreal project's Plugins directory
- Generate project files and compile
- Create your feature branch
- Use clear commit messages
- Ensure code compiles successfully
- Add necessary documentation
- Update related examples
This project is licensed under the MIT License - see the LICENSE file for details.
Thanks to all developers who contributed to this project!
- Project Home: [Your Project URL]
- Issue Tracker: [Issues Page]
BlueprintNodeGraph - Making Blueprint async programming simpler!