Behavior Designer - DOTS Powered Behavior Trees RELEASED!

Free?. If yes it’s a nice move, but what about the future updates? :wink:

Future Updates:

If you have bought the Assett, then you will have an invoice number. That means you will be able to get the newer version from the developer before it even arrives on the Asset Store.

Oh, i miss this.
‘For a limited time, this pack will be free for Behavior Designer users - just send us your Behavior Designer invoice number!’

@Opsive.
email send.

@ZJP - just replied with a link.

As soon as I get some time I am going to come up with a more automated way to handle this. You cannot give away promo codes or anything like that on the Asset Store so in terms of updates it will have to be through the PayPal system that I have setup on opsive.com. If I could create a PayPal “buy now” button that has a price of $0 that would be perfect. You will then receive emails whenever the asset has been updated

For now if you want updates you’ll have to purchase it through the Asset Store or on opsive.com. Or keep sending me emails every time you see an update on the Asset Store and I’ll be forced to work on the automated system :slight_smile:

There have been two sales through the Asset Store and I want to say thank you to those that have purchased it even though it is being given away for free. It will help fund more Behavior Designer updates.

I think I’ll buy on the Store. It is less complicated. Thank you for the link. :smile:

I really appreciate it! :slight_smile:

Thanks for a great article, I guess it suggests condition/action tasks are usually easier to develop with FSM than with Behavior Tree, is it correct? I thought BT can store some states in the blackboard.

EDIT: OK I browsed PlayMaker tutorials and it has many useful preset actions that can save coding, so that’s it.

Yes, PlayMaker is definitely more used for visual scripting than Behavior Designer is. One of the major reasons why I developed Behavior Designer was because I noticed that there weren’t any behavior tree implementations that integrated with PlayMaker. I thought that this would be the perfect combination since it would give you the power and flexibility of behavior trees combined with the fact that you wouldn’t have to actually write any scripts.

Excellent plugin!! Purchased it and after using it can now say confidently say that it is one of the best behavior trees out there, very simple and efficient. Keep up with the amazing work. Do I need to send an email to support@opsive.com to get the movement pack or should I send you a PM with the invoice number? I will probably purchase the pack in a week or so since this plugin definitely is worth supporting.

I completely agree and encourage others to do similar comparisons. I think this helps each product grow to its full potential since it provides the authors with an overview of how their work stands with respect to others so that they can focus on important aspects of their individual plugins. One suggestion I would like to make is that you should list the product price as that is also a very important factor.

@eagleeyez - Thank you for the list, it help me get information on a couple of small gems that I would not have know otherwise.

Great to hear! You can send me a PM or email, either one. I’ll just be sending you a link with the download location.

Added

You’re welcome.

Edit :
a) Are you planned to add more pack? If yes, what sort…
b) It’s possible for you to make a tutorial video to learn us how to make our own addon.

  1. Yes, I am planning on creating more packs. I haven’t completely decided on what my next one is going to be, what would you like to see?
  2. You mean creating an addon pack similar to the Movement Pack? I don’t mind making a video but it was just a matter of using Behavior Designer to create the tasks and then making sure I removed the Behavior Designer package before I hit submit to the Asset Store. If anybody wants to create a third party Behavior Designer pack and list it on the Asset Store I’ll offer any help that I can give and advertise it on the Behavior Designer webpage.

Unity just approved Behavior Designer 1.2.1 and Behavior Designer - Movement Pack 1.0.1.

Behavior Designer 1.2.1 only contains new meta files so it will work with the Movement Pack and Sample Projects. The Movement pack update contains corrected meta files and it moves the task comments to the TaskDescription attribute introduced in version 1.2 of Behavior Designer. If I sent you the Movement Pack and you want this version then feel free to contact me again.

I just uploaded a new sample project: the Mini-Gauntlet. This project features Teddy running through a mini-gauntlet. Teddy jumps over obstacles, gets hit with spheres, and plays a sound. This project is a great demonstration of using collisions/triggers within your behavior tree. The behavior tree receives all of the events and responds to them using a new composite task. This composite task determines what child to run based off of the collision/trigger events. This project also provides a demonstration of calling Mecanim parameters.

You can download this project from the samples page.

When I was creating this sample project I found a minor bug in the runtime of Behavior Designer. You can fix it by opening up the file BehaviorManager.cs and change line 747 from:

int startChildIndex = -1;

to:

int prevChildIndex = -1;

And lines 752-757 from:

if ((childIndex == startChildIndex  status != TaskStatus.Running) || !isBehaviorEnabled(behaviorTree.behavior)) {
   status = TaskStatus.Running;
   break;
} else if (startChildIndex == -1) { // remember the first child index
   startChildIndex = childIndex;
}

to:

if ((childIndex == prevChildIndex  status != TaskStatus.Running) || !isBehaviorEnabled(behaviorTree.behavior)) {
   status = TaskStatus.Running;
   break;
}
prevChildIndex = childIndex;

Got an error running this example in the Editor:

Error: Every task within Behavior “Teddy - Behavior” has been called and no taks is running. Disabling Behavior to prevent infinite loop.
UnityEngine.Debug:LogError(Object)
BehaviorDesigner.Runtime.BehaviorManager:runTask(BehaviorTree, Int32, Int32, TaskStatus) (at Assets/Plugins/Behavior Designer/Runtime/BehaviorManager.cs:767)
BehaviorDesigner.Runtime.BehaviorManager:tick() (at Assets/Plugins/Behavior Designer/Runtime/BehaviorManager.cs:680)
BehaviorDesigner.Runtime.BehaviorManager:Update() (at Assets/Plugins/Behavior Designer/Runtime/BehaviorManager.cs:632)

Can`t find a file named BehaviorManager.cs for editing? Can only find a BehaviorManager_PlayMaker.cs file.

Yeah, that’s the message that you’ll get if you don’t make the change above. BehaviorManager.cs is located at /Plugins/Behavior Designer/Runtime

There is no plugins folder in my Installation ?

Which version of Behavior Designer are you using? I had to move some of the files to the plugins folder in version 1.1.x to get around a Unity bug. I’m not at my dev computer right now but here’s a screen capture of the package contents section from the Asset Store:

1600473--96576--$Capture.PNG

1600480--96577--$directory.JPG

Version 1.21 as the release notes says.

That is the most recent version. Here’s another way to get to the file: double click on the “Every task within Behavior “Teddy - Behavior” has been called …” error within the log and Unity will open BehaviorManager.cs in your default editor. This is the file that you need to modify.