The Dialogue System is a complete dialogue system for Unity. Behavior Designer is integrated with the Dialogue System by allowing you to manage conversations, barks, sequences, and quests within your behavior tree. Also, Dialogue System is integrated with Behavior Designer so it can synchronize variables with Lua and start/stop behavior trees with sequence commands. More information on this side of the integration can be found here. All of the Dialogue System integration files are located on the downloads page.

To get started, first make sure you have Dialogue System for Unity installed and have imported the integration package. Once those files are imported you are ready to start creating behavior trees with the Dialogue System. Let’s create a very basic tree with a sequence task which has a Wait task and a Start Conversation task:

When the Dialogue System finishes with a conversation or sequence it will callback to Behavior Designer to let Behavior Designer know that it is done. In order for this to occur the Dialogue System Callback component must be added to the same GameObject that your behavior tree is on:

Now we are ready to start creating the actual conversion. Create a new Dialogue System Database and create a basic conversation:

Make note of the conversation name because that will be needed later. Assign that database to the Dialogue System Controller:

The last step is to simply assign the values within the Start Conversation task. The only two values that are required are the conversation name and the actor GameObject:

Once those values have been assigned, hit play and you’ll see the text “Hello World” appear at the top of the game screen:

This topic hardly scratches the surface for what is possible with Behavior Designer / Dialogue System integration. For a more complex example, take a look at the Dialogue System sample project.