Info for plugin "Ai Behaviours" ?

Where can I get information or documentation about the AI Behaviours plugin?

I would also like to know this.

Here is the code for the plugin:
https://github.com/EpicGames/UnrealEngine/tree/c830445187784f1269f43b56f095493a27d5a636/Engine/Plugins/Experimental/GameplayBehaviors

1 Like

also interested in information about this

also interested in information about this

There’s this, which gets into some gameplay behaviors a bit: Smart Objects in Unreal Engine - Quick Start | Unreal Engine 5.5 Documentation | Epic Developer Community

Finding this post while researching them myself.

Looking at the UE5 code, I don’t think they are used by anything else then Smart Objects. AI Behaviors is an alias for the actual internal plugin called Gameplay Behaviors. Another plugin inherits from those classes called Gameplay Behavior Smart Objects

This is my interpretation:

It seems to work on the same abstraction as Behavior Trees or State trees. Let’s imagine that you are using Ability System to define character abilities like Dash, Jump, Attack, Ultimate Attack, … those represent abilities - one thing a character can do.

Behavior Trees or State Trees execute multiple abilities or other tasks over time based on their decision making. You would use GameplayBehavior to do the same thing. For instance, you have some complicated SmartObject that requires the character to do multiple animations and movements in a row. So their strength lies in being able to attach such behavior on an external object, and then execute it on the target character.

There is even a specific behavior defined called UGameplayBehavior_BehaviorTree, which basically interrupts the current behavior tree on an AI character, executes another one, and then returns to the previous one.

So when would you realistically want to use this?

  1. You can use the Gameplay Behavior Smart Objects plugin in combination with smart objects to define complex behaviors an AI or player character can perform, defined on an external smart object. Since such complex behaviors are often defined by other means, it can often mean just executing another State Tree or Behavior Tree… or defining it your own way. Or just some simple thing like ‘do this animation’.

  1. You could possibly use it to define your own system as an alternative to State Trees / Behavior Trees. But I don’t think you’d want to do that.