# 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:** 29

<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:** [June 4, 2021, 10:43am UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/588 "2021-06-04T10:43:10Z")

</div>

> [@sirjofri](#):
>
> I made the Dialogue Plugin compile on UE5 by commenting out the `#include "Toolkits/AssetEditorManager.h"` line in `DialogueEditor.h`

UE5 requires the change that you mentioned, and the following one:  
[https://i.gyazo](https://i.gyazo)./af68e45b62ad01e95f08313b5fb83a45.png

---

<div class="post-metadata">

**Author:** ![sirjofri](https://d1ap1mz92jnks1.cloudfront.net/user_avatar/forums.unrealengine.com/sirjofri/32/880056_2.png) [@sirjofri](https://forums.unrealengine.com/u/sirjofri)\
**Post date:** [June 4, 2021, 10:55am UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/589 "2021-06-04T10:55:56Z")

</div>

Interesting. I didn’t test this. Thank you for the quick response 🙂

---

<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:** [June 4, 2021, 12:02pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/590 "2021-06-04T12:02:22Z")

</div>

> [@TapiirSnout](#):
>
> the line the NPC said previously disappears

In the video, the NPC line doesn’t disappear, it goes to the very top of the screen.  
But I’ll assume that you do want to make it disappear. And just like in Kotor, the PC lines aren’t voiced, but NPC lines are voiced. To replicate this set-up, do the following:  
1- Duplicate the widgets into your project as per documentation paragraph 3.1 to be able to customize the widget.  
2- Once it’s done, I’ve recorded myself modifying the widget to match the setup you want:  
(I forgot to record the sound coming from UE4, so you won’t hear the NPC lines in the video, but they’re actually voiced…)

[![](https://d3kjluh73b9h9o.cloudfront.net/original/4X/8/1/8/8183347f85453ca739b27963cfbaa0f728bc2a42.jpeg "Dialogue Plugin: KOTOR Setup") ](https://www.youtube.com/watch?v=UHcTQtlE3eg)

---

<div class="post-metadata">

**Author:** ![TapiirSnout](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@TapiirSnout](https://forums.unrealengine.com/u/TapiirSnout)\
**Post date:** [June 6, 2021, 12:08pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/591 "2021-06-06T12:08:51Z")

</div>

Great, thank you very much!

---

<div class="post-metadata">

**Author:** ![Saxon\_Software](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Saxon\_Software](https://forums.unrealengine.com/u/Saxon_Software)\
**Post date:** [June 7, 2021, 3:39pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/592 "2021-06-07T15:39:53Z")

</div>

Hi there!

Working on a project with this and loving it so far. I was wondering if it was possible to change the direction of the conversation through a key press in dialogue events. So, for example; during one line of dialogue, if the player presses the ‘S’ key, then the dialogue will go in a different branch than if than normal.

Is that possible with this system?

---

<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:** [June 7, 2021, 9:19pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/593 "2021-06-07T21:19:03Z")

</div>

Could you give me an example with a screenshot of a dialogue file? Mark the node where you want the event, and where you want to go in the dialogue after you press the S key, and where you were in the dialogue when you pressed the S key. I have a vague idea of what you want to achieve, but I want a concrete example to be sure I’m giving you correct information.

---

<div class="post-metadata">

**Author:** ![Saxon\_Software](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Saxon\_Software](https://forums.unrealengine.com/u/Saxon_Software)\
**Post date:** [June 8, 2021, 6:08pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/594 "2021-06-08T18:08:50Z")

</div>

So when the dialogue reaches the highlighted node here with a highlighted word in the sentence. If the player presses the ‘s’ key when this node is active, the dialogue will go to “Seduction Successful” instead of “Hey Lilith. How are you feeling?”

 ![image](https://d3kjluh73b9h9o.cloudfront.net/original/3X/e/6/e695e171eb0b351ee6b11891a178f1f17ddd4eb2.png)

---

<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:** [June 9, 2021, 7:26pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/595 "2021-06-09T19:26:26Z")

</div>

Recorded a video of how to do that:  
[https://www.youtube](https://www.youtube)./watch?v=4znRslHMknI

After recording the video, I realized you may need to actually roll a dice or do some kind of a check against player stats. This can be done in child nodes of the blue node, but if you want it done differently, let me know.

---

<div class="post-metadata">

**Author:** ![Saxon\_Software](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Saxon\_Software](https://forums.unrealengine.com/u/Saxon_Software)\
**Post date:** [June 10, 2021, 5:11pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/596 "2021-06-10T17:11:33Z")

</div>

Just watched the video and trying to implement it now.

As for if it is what I want, it almost is. I just need dialogue to continue without any reply menu. So dialogue is continuous but allows the player to ‘interrupt’ with responses that drive the dialogue differently.

4th Edit: It works on my end!

---

<div class="post-metadata">

**Author:** ![Saxon\_Software](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Saxon\_Software](https://forums.unrealengine.com/u/Saxon_Software)\
**Post date:** [June 15, 2021, 6:34pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/598 "2021-06-15T18:34:52Z")

</div>

The dialogue interrupts work perfectly without the reply menu now. Thanks for your help with that.

One last thing I wanted to know is how to change the current camera through a dialogue event? I tried just using a camera actor variable, but it won’t let me set a camera. One conversation might have multiple cameras used.

---

<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:** [June 16, 2021, 5:12pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/599 "2021-06-16T17:12:10Z")

</div>

> [@Saxon\_Software](#):
>
> I tried just using a camera actor variable, but it won’t let me set a camera.

To reference actors in a level, use tags. Documentation section “ **4.1 How to reference actors that exist in the level** ”. For your case, skip over to “ **2. Reference an actor by its class and tag.** ”

---

<div class="post-metadata">

**Author:** ![Saxon\_Software](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Saxon\_Software](https://forums.unrealengine.com/u/Saxon_Software)\
**Post date:** [June 17, 2021, 8:27pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/600 "2021-06-17T20:27:11Z")

</div>

Thanks for the reply. I really appreciate the great responses!

Tried it out and works perfectly! I pretty much have all I need to make my system now!  
Last question I have is what would be the best method for handling multiple dialogue objects for a dialogue heavy project?

Thanks!

---

<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:** [June 18, 2021, 4:13pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/601 "2021-06-18T16:13:26Z")

</div>

> [@Saxon\_Software](#):
>
> Last question I have is what would be the best method for handling multiple dialogue objects for a dialogue heavy project?

What do you mean by a dialogue object? If it’s the dialogue files, then I’m not sure what you mean by handling them.

---

<div class="post-metadata">

**Author:** ![Saxon\_Software](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Saxon\_Software](https://forums.unrealengine.com/u/Saxon_Software)\
**Post date:** [June 18, 2021, 8:43pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/602 "2021-06-18T20:43:12Z")

</div>

Oh, sorry. I mean that each character would have one dialogue graph per conversation. What would be the best way to swap out the dialogue graphs?

---

<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:** [June 19, 2021, 1:16pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/603 "2021-06-19T13:16:11Z")

</div>

An NPC would have many different dialogues throughout the game? A dialogue event can switch their “dialogue” variable to the next file. You’ll also need a savegame system that saves their dialogue file variable.  
As for the logistics, i.e. how to know when some dialogue occurs in your game, I guess you just have to draw a diagram. I heard of a good tool to draw diagrams specifically for a narrative design, but I can’t recall what it was called. Anyway, there’s probably a few of them around.

---

<div class="post-metadata">

**Author:** ![Mostarda\_TK](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Mostarda\_TK](https://forums.unrealengine.com/u/Mostarda_TK)\
**Post date:** [June 30, 2021, 4:37pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/604 "2021-06-30T16:37:54Z")

</div>

Im inside an event dialogue file, he have 3 conditions, Its possible to output each one in a dialogue bubble, WITHOUT creating a condition file for each of them?

 ![evento](https://d3kjluh73b9h9o.cloudfront.net/original/3X/6/a/6ab20f2548267a851db0a75544567eec1f3e4e7c.png)

---

<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:** [June 30, 2021, 4:58pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/605 "2021-06-30T16:58:12Z")

</div>

Sorry, I don’t understand the question. Please show me the dialogue structure, where conditions are and what they’re checking, what’s it got to do with events and what would you like to see in the dialogue in-game. I didn’t understand anything.

---

<div class="post-metadata">

**Author:** ![Mostarda\_TK](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Mostarda\_TK](https://forums.unrealengine.com/u/Mostarda_TK)\
**Post date:** [June 30, 2021, 5:24pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/606 "2021-06-30T17:24:45Z")

</div>

Sorry… its a begging dialog, I think you can understand now with this. I’d like each “print” go to the related nodes. I can do that but with several files, like one file for each conditions for each dialog bubble. So will need split the event in more events. Just for workflow purpose, and less files of events/conditions, its possible to use only this event to do all that?

 ![dialog](https://d3kjluh73b9h9o.cloudfront.net/original/3X/d/3/d31079f656ecb63304e5428b4abcac6bc200b70a.png)  
 ![change_pls](https://d3kjluh73b9h9o.cloudfront.net/original/3X/6/d/6d0952bbdf9e5f17c80fe0163cfcfabbcf1cee95.png)

---

<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:** [July 2, 2021, 7:19pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/607 "2021-07-02T19:19:46Z")

</div>

Oh, I see. It’s possible to do all that with just 1 event and 1 condition. And you can later re-use those in other places or even in other dialogues.

1. On the “some changes please” node, place an event that makes a random roll between 1 and N (input 4 as N). Store the result on your Character or Player State as a variable.

2. And as for condition, simply check if your saved variable equals condition’s parameter. So it’ll be the same condition on all 4 nodes, but each with a different parameter going from 1 to 4.

Let me know if I explained it clearly. I can illustrate with some images.

---

<div class="post-metadata">

**Author:** ![Mostarda\_TK](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Mostarda\_TK](https://forums.unrealengine.com/u/Mostarda_TK)\
**Post date:** [July 2, 2021, 8:50pm UTC](https://forums.unrealengine.com/t/dialogue-plugin/59871/608 "2021-07-02T20:50:26Z")

</div>

Ohh yes! Its working! 😄

Thank you so much!

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

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