Behavior Tree Utility Extension
/Download: 4.20 | 4.19 | 4.18 | 4.17 | 4.16 | Other | ExampleProject
Source: Github (Plugin)
Links: Forum
Extends the built-in behavior tree with nodes for selecting based on utility values - fixed probability, probability or priority based on dynamic values and conditions, etc.
By default, the UE4 behavior tree has a static left to right priority for child nodes. This is the basis of building up complex behavior based on game state, but sometimes it can make it difficult to achieve certain types of behavior selection, for instance randomization of choice. This extension provides an easy way to have child nodes executed based on either priority or proportional weighting, using either static or dynamic values.
To use the plugin version, simply install and enable the plugin and the new nodes will be available to use within the behavior tree editor.
This was originally implemented as an engine modification which is still available on Github. This version has a few editor-side enhancements that could not be incorporated into the plugin, but the functionality is the same.