The best of both worlds.
Bolt packs the two most popular graph types in a single plugin.

Flow graphs start with an event and let you do everything you can think of: change properties on components, trigger actions, do logic and math, check conditions and loops, etc. They're the core of your logic.


State graphs take your organization one step further, allowing you to create intelligent behaviours for your enemies, managers for your user interface and progress structures for your game.

Limitless.
If it can be done with code, it can be done with Bolt.


Action? Reaction. Listen to any Unity event or trigger your own custom events with any amount and type of arguments. Bolt's powerful event system allows you to communicate across objects and scenes effortlessly.

Store and retrieve any kind of data in Bolt's variables. Health points, names, score, and even complex data structures. Every type is supported, not just primitives.
Choose the right scope for the job:
- Graph: Local to the graph instance
- Object: Shared on game object
- Scene: Shared across scene
- Application: Shared between scenes
- Saved: Saved across playthroughs

Organize your graphs easily: with macros, you can reuse entire graphs with different parameters.
Convert your graphs into super nodes with input and output that you can then nest inside other graphs. This way, your game logic remains organized and maintainable.

Native design.
Bolt's style integrates seamlessly in the Unity editor.
Develop faster.
Cutting edge workflow tools help you create more efficiently.

Press Play and let the magic happen. Step through the flow of your game with clear animations and indicators to understand exactly what's going on. Edit your graphs while in play mode to prototype quickly and tweak your balance.

Fix most errors before you even press play. Bolt detects missing inputs, null references, missing components and unused paths while still in the editor, allowing you to spot common pitfalls and save precious testing time.

No need to open the manual ever again. Bolt integrates Unity, .NET and third-party documentation right in its editors so that you understand what every port does at a quick glance.

Made for coders, too.
Mix Bolt and C# without any limitation.

Communicate to and from Bolt with ease. The simple and powerful scripting API allows you to get & set variables, trigger custom events, and even create advanced custom nodes.

Every MonoBehaviour is available within your graphs, as well as ScriptableObjects, classes and structs. Include any type in the options wizard to use all of its methods and properties as nodes.

Configure Bolt to display names the C# way. With a single setting, you can display types, members, methods exactly as they are called in your script files.
using Bolt;
// Get and set variables of any scope
var health = (int)Variables.Object(player).Get("health");
health -= 5;
Variables.Object(player).Set("health", health);
// Trigger custom events with any amount of arguments
CustomEvent.Trigger(player, "OnReceiveDamage", 5);
// Create your own advanced units
public class MyUnit : Unit
{
protected override void Definition()
{
// ...
}
}


Feature packed.








