# Dialogue Plugin

**URL:** <https://forums.unrealengine.com/t/dialogue-plugin/59871>\
**Category:** UE Marketplace\
**Tags:** unreal-engine, fab\
**Created:** [March 31, 2016, 11:23pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871 "2016-03-31T23:23:48Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![CodeSpartan](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/codespartan/32/1194561_2.png) [@CodeSpartan](https://forums.unrealengine.com/u/CodeSpartan)\
**Post date:** [March 31, 2016, 11:23pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/1 "2016-03-31T23:23:48Z")

</div>

[Marketplace Link](https://www.unrealengine./marketplace/dialogue-plugin)

Hi everyone!

I’m very happy to announce Dialogue Plugin, an editor extension that allows you to easily create dialogues in UE4 and UE5, through a custom node-based editor.

I’ve wanted to create a dialogue editor for more than a year now, and I’ve always felt that the ideal editor should be 1) node-based and 2) fully integrated, without the need of 3d party software such as Excel. Now I finally did it.

Feel free to check out the video and let me know what you think about the workflow:

[![](https://d3kjluh73b9h9o.cloudfront.net/original/4X/9/7/2/972573954ab5b68e13a2b0664a621b0aa6e93ef6.jpeg "Dialogue Plugin: Create your first dialogue") ](https://www.youtube.com/watch?v=wz8SEBusQtA)

Documentation:  
• 5.0+: [CURRENT](https://docs.google.com/document/d/18XokGu3tIrb-sfo9V5WxYZvSDtp73MLvCHLqoiw5FK4/)  
• 4.12 - 4.27: [deprecated](https://docs.google.com/document/d/16-FROsdR9s8juKdu6KgX0A92djJcO5AMydT5dCVmcmo/)

**Used by industry veterans:**  
• Piranha Games in [MechWarrior 5: Mercenaries](https://www.epicgames.com/store/en-US/product/mechwarrior-5/home)  
• Iron Tower Studio in their upcoming [Colony Ship RPG](https://store.steampowered.com/app/648410/Colony_Ship_A_PostEarth_Role_Playing_Game/)

**Features:**  
• Voiceover support  
• Events and conditions (branching) – new system since 4.18  
• Variables in text (e.g. %charname%) – since 4.22  
• Rich Text – since 4.25  
• Customizable appearance  
• Gamepad support  
• Supports UE4 native localization system  
• Doesn’t require third party software  
• Source code included

**Conditions and events tutorial:**  
(this video is slightly outdated, you can now use “Get All Actors of Class” nodes in events/conditions)

[![](https://d3kjluh73b9h9o.cloudfront.net/original/4X/e/0/1/e01d3e1b614505e4341324d70a6ade72c64315bb.jpeg "Dialogue Plugin: Conditions & Events (new version)") ](https://www.youtube.com/watch?v=qGFDMaO4FrM)

**Screenshots:**

 ![2.png](https://d3kjluh73b9h9o.cloudfront.net/original/3X/f/8/f8a0cd003be7c5fe074f78fc52c8d65fddfa8248.png)

 ![1-2.jpg](https://d3kjluh73b9h9o.cloudfront.net/original/3X/2/5/25f2e015252720bbf002746f68f863f78f946c53.jpeg)

 ![3.jpg](https://d3kjluh73b9h9o.cloudfront.net/original/3X/0/c/0c7f155b92bddcc2fb924bdd152295e59c908939.jpeg)

Frequently asked questions:

1. Sample project from the second video: [Download](https://github.com/CodeSpartan/DialogueDemo)

2. Sample project with VR set up: [Download](https://github.com/CodeSpartan/VrDemoDialogue)  
This is what you’ll find in it: [video link](https://youtube.com/watch?v=UBTKfRQrhOA)

---

<div class="post-metadata">

**Author:** ![Mr\_SquarePeg](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Mr\_SquarePeg](https://forums.unrealengine.com/u/Mr_SquarePeg)\
**Post date:** [April 1, 2016, 8:19am UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/2 "2016-04-01T08:19:18Z")

</div>

Hey @ - This looks like a winner what is the price?

---

<div class="post-metadata">

**Author:** ![stucki](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@stucki](https://forums.unrealengine.com/u/stucki)\
**Post date:** [April 1, 2016, 8:33am UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/3 "2016-04-01T08:33:54Z")

</div>

looks very interesting to me.(creating a point & click adventure …)  
how about cheking variables (so a dialogue branche is only activated when a certain variable is set. maybe the player has to get an object before …)  
and how about using your system with multiple languages  
price would be relevant, too 😉

best regards  
stucki

---

<div class="post-metadata">

**Author:** ![Rhynedahll](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Rhynedahll](https://forums.unrealengine.com/u/Rhynedahll)\
**Post date:** [April 1, 2016, 10:36am UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/4 "2016-04-01T10:36:46Z")

</div>

No submitted plugins have made it out of the Marketplace yet, I understand?

Could you add a basic 3rd person widget? (Out of the box solution please)

Are complex conversations possible? For instance, random NPC comments, greeting/goodbye statements selected from lists, replies based upon NPC personality type.

Condition switched replies?

---

<div class="post-metadata">

**Author:** ![Filly\_The\_Owl](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Filly\_The\_Owl](https://forums.unrealengine.com/u/Filly_The_Owl)\
**Post date:** [April 1, 2016, 1:35pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/5 "2016-04-01T13:35:37Z")

</div>

How would you do Localization?  
How do the conditions effect branching, like in the witcher with decisions?  
What versions are you going for currently?

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_eb089738](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_eb089738](https://forums.unrealengine.com/u/anonymous_user_eb089738)\
**Post date:** [April 1, 2016, 7:30pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/6 "2016-04-01T19:30:32Z")

</div>

Hi everyone. Thanks for your interest. I’m the second co-author of this plugin.

I’d like to answer your questions:

- Yes, there are conditions, they allow branching and they’re really easy to use. You can make your own conditions, such as check if player has X amount of gold/item(s), or if he’s completed a certain quest, or check any variables. We’ll make a 1-2 min tutorial about conditions later, hopefully before the plugin gets approved on the marketplace.  
There are also events that use the same principle, but instead of checking for things, they perform things, for example give gold/item(s) to player, play a montage, set a variable, etc.

- UE4 native [localization system](https://forums.unrealengine./showthread.php?63394-Localization-Dashboard-preview-and-explanation-of-UE4-s-text-localization-process) works with the Dialogue Plugin.

- We’re going to submit and provide support for UE 4.11 and higher. If you want to use the plugin with a lower version, you’ll have to change a couple of nodes in the UMG widget. We’re only using one new feature (sound concurrency) from 4.11 for voice-over.

- The price will be set at $65.

> [@Rhynedahll;503923](#):
>
> Could you add a basic 3rd person widget? (Out of the box solution please)

You mean the front-end dialogue widget for a 3d person template? Sure, the widget from the video is included with the plugin.

---

<div class="post-metadata">

**Author:** ![pschnorbus](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@pschnorbus](https://forums.unrealengine.com/u/pschnorbus)\
**Post date:** [April 3, 2016, 8:02am UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/7 "2016-04-03T08:02:10Z")

</div>

The dialogue plugin looks very promising. Is there an alternative way to acquire it before it gets released on the marketplace?

---

<div class="post-metadata">

**Author:** ![lubitel](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@lubitel](https://forums.unrealengine.com/u/lubitel)\
**Post date:** [April 5, 2016, 11:11am UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/8 "2016-04-05T11:11:03Z")

</div>

Looking great.  
Congratulations!

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_0d4699b0](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_0d4699b0](https://forums.unrealengine.com/u/anonymous_user_0d4699b0)\
**Post date:** [April 6, 2016, 1:51pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/9 "2016-04-06T13:51:19Z")

</div>

This looks great, hopefully up on Marketplace soon (any how long it takes to review?)

---

<div class="post-metadata">

**Author:** ![Norse\_FX](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Norse\_FX](https://forums.unrealengine.com/u/Norse_FX)\
**Post date:** [May 1, 2016, 3:53pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/10 "2016-05-01T15:53:07Z")

</div>

Hi.

This looks amazing, it would love to get access to it asap trough an alternate source.

---

<div class="post-metadata">

**Author:** ![Arixsus](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Arixsus](https://forums.unrealengine.com/u/Arixsus)\
**Post date:** [May 1, 2016, 4:20pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/11 "2016-05-01T16:20:21Z")

</div>

Day 1 buy for me. Looks clean, simple and to the point.

---

<div class="post-metadata">

**Author:** ![SaviorNT](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@SaviorNT](https://forums.unrealengine.com/u/SaviorNT)\
**Post date:** [May 2, 2016, 12:06am UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/12 "2016-05-02T00:06:47Z")

</div>

I understand that this has support for voice overs, however, could this drive a text to voice engine / plugin?

---

<div class="post-metadata">

**Author:** ![FrozenHarlequin](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@FrozenHarlequin](https://forums.unrealengine.com/u/FrozenHarlequin)\
**Post date:** [May 2, 2016, 6:17am UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/13 "2016-05-02T06:17:42Z")

</div>

This looks very interesting. I do have a few questions, though:

- Will you be able to trigger animations from within the dialogue editor, the same way you can trigger sound?
- The video shows that each node has both a sound input and a voice-over input. What’s the difference between the two?
- Will you be able to set variables within the dialogue editor?
- Can you assign different controller buttons to different dialogue options? So, for example, if I have four dialogue options, could I assign the Y button to the first, B to the second, A to the third and X to the fourth option and rather than clicking on a dialogue option, I could simply press the corresponding button to trigger it?
- I’m assuming you can also display the dialogue options in 3D space (like in Heavy Rain/Life is Strange) if you make your own custom widget for it. Is that correct?

---

<div class="post-metadata">

**Author:** ![JoscelinFrost](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@JoscelinFrost](https://forums.unrealengine.com/u/JoscelinFrost)\
**Post date:** [May 2, 2016, 10:38pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/14 "2016-05-02T22:38:22Z")

</div>

I’m super excited for this one. I bought a dialogue system previously that was reliant on data tables and found it to be way too prone to error when moving writing over from something like Articy. Being able to do it in the editor like this would be fantastic!

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_dd205574](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_dd205574](https://forums.unrealengine.com/u/anonymous_user_dd205574)\
**Post date:** [May 5, 2016, 5:14am UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/15 "2016-05-05T05:14:53Z")

</div>

Can you run Blueprint functions from dialog responses? If its a C++ plugin will the source be available?

---

<div class="post-metadata">

**Author:** ![CodeSpartan](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/codespartan/32/1194561_2.png) [@CodeSpartan](https://forums.unrealengine.com/u/CodeSpartan)\
**Post date:** [May 6, 2016, 5:24am UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/16 "2016-05-06T05:24:45Z")

</div>

Thanks for your interest in Dialogue Plugin. 🙂

> [@](#):
>
> Will you be able to trigger animations from within the dialogue editor, the same way you can trigger sound?

You can add your own fields to the events/conditions and add blueprint logic to process them. This way, you can trigger any events/conditions really - playing animations or granting items. The documentation already covers that, and we plan to make a video tutorial as well.

> [@](#):
>
> The video shows that each node has both a sound input and a voice-over input. What’s the difference between the two?

Sound field’s type is USoundBase and Voiceover is UDialogueVoice, both native UE4 types. You can use either of them for voiceover, UDialogueVoice is a bit easier to use if you have different NPC recorded voice depending on player’s gender or language.

> [@](#):
>
> Will you be able to set variables within the dialogue editor?

Not sure what you mean by that, but if you want to grant a player gold or experience, or do any other gameplay action, you can do it via events (see documentation link above).

> [@](#):
>
> Can you assign different controller buttons to different dialogue options? So, for example, if I have four dialogue options, could I assign the Y button to the first, B to the second, A to the third and X to the fourth option and rather than clicking on a dialogue option, I could simply press the corresponding button to trigger it?
> 
> I’m assuming you can also display the dialogue options in 3D space (like in Heavy Rain/Life is Strange) if you make your own custom widget for it. Is that correct?

All user interface in Dialogue Plugin is handled by a UMG widget. So if you’re familiar with UMG, you can freely customize its appearance and controls.

> [@](#):
>
> I understand that this has support for voice overs, however, could this drive a text to voice engine / plugin?

If you already have a text to voice code/plugin, you can use it in the UMG widget that displays the dialogue.

> [@](#):
>
> Can you run Blueprint functions from dialog responses? If its a C++ plugin will the source be available?

Yes to both. 🙂

---

<div class="post-metadata">

**Author:** ![FrozenHarlequin](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@FrozenHarlequin](https://forums.unrealengine.com/u/FrozenHarlequin)\
**Post date:** [May 6, 2016, 2:04pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/17 "2016-05-06T14:04:24Z")

</div>

^Awesome, thanks :)! Sounds like this is the right dialogue system for my project, then.

---

<div class="post-metadata">

**Author:** ![CodeSpartan](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/codespartan/32/1194561_2.png) [@CodeSpartan](https://forums.unrealengine.com/u/CodeSpartan)\
**Post date:** [May 27, 2016, 7:18pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/18 "2016-05-27T19:18:08Z")

</div>

Dialogue Plugin has been released today! 🙂 You can get it on the [Marketplace](https://www.unrealengine./marketplace/dialogue-plugin).

---

<div class="post-metadata">

**Author:** ![Hafgren](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Hafgren](https://forums.unrealengine.com/u/Hafgren)\
**Post date:** [May 27, 2016, 10:00pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/19 "2016-05-27T22:00:22Z")

</div>

Not sure if I’m just not seeing it, but how do you add conditions?

---

<div class="post-metadata">

**Author:** ![anonymous\_user\_eb089738](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@anonymous\_user\_eb089738](https://forums.unrealengine.com/u/anonymous_user_eb089738)\
**Post date:** [May 27, 2016, 10:51pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/20 "2016-05-27T22:51:52Z")

</div>

> [@Hafgren;537284](#):
>
> Not sure if I’m just not seeing it, but how do you add conditions?

Hi! We’ll be recording a short 3-4 min video describing the process of creating custom conditions and events in a couple of days, now that the plugin is released. But for now, there’s the documentation that goes over it at length.

[Next page](https://forums.unrealengine.com/t/dialogue-plugin/59871.md?page=2)
