Category Archives: Game Development

Unity Behavior Tree Library – Fluid

While there are tons of unity behavior tree libraries on the Asset Store. I haven’t found one that meets all my game dev needs. There is the amazing Fluent Behavior Tree library. But for me it’s missing features and the project isn’t currently in development. What I’ve been craving is an open source Unity behavior tree library that’s easily extendible.

I’m proud to announce Fluid Behavior Tree. An open source behavior tree system that’s easily extendable without forking the code. This means it’s updatable and quite resilient to breaking changes on upgrade.

Download on GitHub

Behavior tree features

Here are a few highlights of why this library is awesome!

  • Extendable, write your own custom re-usable nodes
  • Pre-built library of tasks to kickstart your AI
  • Heavily tested with TDD and unit tests

Other Features

  • Minimal runtime footprint
  • Tracks the last position of your behavior tree and restores it the next frame
  • Documentation on how to use and extend
  • Open source and free
  • Built for Unity (no integration overhead)
  • Includes a usage example of CTF

Usage Example

using UnityEngine;
using Adnc.FluidBT.Tasks;
using Adnc.FluidBT.Trees;

public class MyCustomAi : MonoBehaviour {
    private BehaviorTree _tree;
    
    private void Awake () {
        _tree = new BehaviorTreeBuilder(gameObject)
            .Sequence()
                .Condition("Custom Condition", () => {
                    return true;
                })
                .Do("Custom Action", () => {
                    return TaskStatus.Success;
                })
            .End()
            .Build();
    }

    private void Update () {
        // Update our tree every frame
        _tree.Tick();
    }
}

Why is this better than other Unity behavior tree libraries?

Most behavior trees for Unity are paid products. There’s nothing wrong with premium paid projects (and devs should be paid for their time). But it can be difficult to share code for proprietary software. Paid projects also run the risk of being deprecated or having difficulty getting enough critical mass to start a continued community.

Unity Skill Tree Pro – Free Plugin

About 6 months ago I sat down to tackle writing a custom skill tree system in Unity. I wanted a visual editor that could easily assemble a tree at the same complexity level of Skyrim. And magically assemble all the data into a visual output without lifting an extra finger. After a couple days of combining some old scripts with a shiny new interface I created Unity Skill Tree Pro. A free plugin that makes complex skill tree management automated.

Screenshot 2015-06-26 06.53.30

This is just the first iteration of Unity Skill Tree Pro. So the visual editor is still a little rough. That said it does a lot out of the box right now. If you want to customize it further the source is freely available online and it was written to be easily extendable without touching source code.

7641-1-1328207835