Hey @ - Got a bit of a request for this plugin.
Would it be possible to import .JSON data from articy:draft 3 and have it generate the dialogue tree from the data provided in the .JSON file.
Hey @ - Got a bit of a request for this plugin.
Would it be possible to import .JSON data from articy:draft 3 and have it generate the dialogue tree from the data provided in the .JSON file.
Hi,
How can I separate the replies and the responses into two different widgets to show on to different actors. I’ve looked at the Vr response on the page before and it makes sense though surely its just placing the widget, dialogue and responses onto the same actor or have I misread it?
Just wanted to touch base here and see where the project is at with possible features and updates.
Haven’t upgraded to 4.15 yet, but with the major (Destructive) C++ changes in the new engine, the dialogue is unable to compile, with or without IWYU enabled. So just a heads up on that. Going to prove burdemsome, especially since it prevents any developers from using the updated Texture Streaming system.
Aside from that, I would love to hear where we are at with XML/JSON export/import. On top of the use of Articy:Draft 3, it would be great to export the dialog for localization. Since dialog is disconnected from Articy, it’s hard to manage the script for our voice actors.
Anyways, hope we can get these critical features implemented soon. Thanks!
Great plugin! I just wanted to stop by this thread and say thanks. I found it really helpful for creating the dialogue system in my latest prototype. Here is a quick webm of it in action: https://gfycat./WhiteTestyAzurewingedmagpie.
I’m going to do a full write-up down the line detailing the whole creation process of this Dialogue UI and the modifications I made to the plugin if you are interested. Very happy customer here!
Hello there, I recently purchased this excellent dialogue system. It works well, but I am really wanting to get the messages to appear gradually with a ‘typewriter text’ effect, character by character. I saw a user named popawheelie had actually posted a screenshot of how to do this on this post, but the screenshot does not show where the blueprints go. If anyone could help me achieve this effect in any way, I would be extremely grateful. Thanks.
Getting these errors when compiling your plugin in a custom 4.15 engine. Aside from your plugin throwing the IWYU error where the header needs to be first thing, it seems the code itself in source seems to be from 4.14. Else I don’t think I should be getting a IWYU error. This is a fresh copy of the plugin that was installed with the default binary 4.15 from the launcher. I just copied the plugin to my 4.15 engine source and viola, errors. Technically none of these errors make sense since your code is fine.
Severity Code Description Project File Line Suppression State
Error C2614 'UDialogue': illegal member initialization: 'Super' is not a base or member UE4 F:\UE4-15\UnrealEngine\Engine\Plugins\Marketplace\DialoguePlugin\Intermediate\Build\Win64\UE4Editor\Inc\DialoguePlugin\DialoguePlugin.generated.cpp 329
Error C2143 syntax error: missing ';' before '*' UE4 F:\UE4-15\UnrealEngine\Engine\Plugins\Marketplace\DialoguePlugin\Source\DialoguePlugin\Classes\Dialogue.h 65
Error C4430 missing type specifier - int assumed. Note: C++ does not support default-int UE4 F:\UE4-15\UnrealEngine\Engine\Plugins\Marketplace\DialoguePlugin\Source\DialoguePlugin\Classes\Dialogue.h 65
Error C2238 unexpected token(s) preceding ';' UE4 F:\UE4-15\UnrealEngine\Engine\Plugins\Marketplace\DialoguePlugin\Source\DialoguePlugin\Classes\Dialogue.h 65
Error C2504 'UDataAsset': base class undefined UE4 F:\UE4-15\UnrealEngine\Engine\Plugins\Marketplace\DialoguePlugin\Source\DialoguePlugin\Classes\Dialogue.h 70
Error C3646 'Super': unknown override specifier UE4 F:\UE4-15\UnrealEngine\Engine\Plugins\Marketplace\DialoguePlugin\Source\DialoguePlugin\Classes\Dialogue.h 71
Error C4430 missing type specifier - int assumed. Note: C++ does not support default-int UE4 F:\UE4-15\UnrealEngine\Engine\Plugins\Marketplace\DialoguePlugin\Source\DialoguePlugin\Classes\Dialogue.h 71
Error C2440 'return': cannot convert from 'UDialogue *' to 'UObject *' UE4 F:\UE4-15\UnrealEngine\Engine\Plugins\Marketplace\DialoguePlugin\Source\DialoguePlugin\Classes\Dialogue.h 71
Error C2039 'StaticConfigName': is not a member of 'UDialogue' UE4 F:\UE4-15\UnrealEngine\Engine\Plugins\Marketplace\DialoguePlugin\Intermediate\Build\Win64\UE4Editor\Inc\DialoguePlugin\DialoguePlugin.generated.cpp 79
Error C3861 'StaticConfigName': identifier not found UE4 F:\UE4-15\UnrealEngine\Engine\Plugins\Marketplace\DialoguePlugin\Intermediate\Build\Win64\UE4Editor\Inc\DialoguePlugin\DialoguePlugin.generated.cpp 79
Error C2039 'AddReferencedObjects': is not a member of 'UDialogue' UE4 F:\UE4-15\UnrealEngine\Engine\Plugins\Marketplace\DialoguePlugin\Intermediate\Build\Win64\UE4Editor\Inc\DialoguePlugin\DialoguePlugin.generated.cpp 79
Error C2065 'AddReferencedObjects': undeclared identifier UE4 F:\UE4-15\UnrealEngine\Engine\Plugins\Marketplace\DialoguePlugin\Intermediate\Build\Win64\UE4Editor\Inc\DialoguePlugin\DialoguePlugin.generated.cpp 79
Error C3083 'Super': the symbol to the left of a '::' must be a type UE4 F:\UE4-15\UnrealEngine\Engine\Plugins\Marketplace\DialoguePlugin\Intermediate\Build\Win64\UE4Editor\Inc\DialoguePlugin\DialoguePlugin.generated.cpp 79
Error C3083 'WithinClass': the symbol to the left of a '::' must be a type UE4 F:\UE4-15\UnrealEngine\Engine\Plugins\Marketplace\DialoguePlugin\Intermediate\Build\Win64\UE4Editor\Inc\DialoguePlugin\DialoguePlugin.generated.cpp 79
Error C2039 'DialogueWave': is not a member of 'FDialogueNode' UE4 F:\UE4-15\UnrealEngine\Engine\Plugins\Marketplace\DialoguePlugin\Intermediate\Build\Win64\UE4Editor\Inc\DialoguePlugin\DialoguePlugin.generated.cpp 106
Error C2664 'UObjectProperty::UObjectProperty(const UObjectProperty &)': cannot convert argument 1 from 'FObjectInitializer' to 'ECppProperty' UE4 F:\UE4-15\UnrealEngine\Engine\Plugins\Marketplace\DialoguePlugin\Intermediate\Build\Win64\UE4Editor\Inc\DialoguePlugin\DialoguePlugin.generated.cpp 106
The 4.14 plugin worked perfectly. This is the only plugin preventing me from upgrading to 4.15.
Have you tried including it into the project instead of including it into your custom engine build? Is the issue resolved?
Hey. I never did anything like that. Here’s how I’d do it: show just the first letter of the entire string (a substring), Delay 0.3 seconds, then show 2 letters… then the same for 3 letters… Etc. It’s a simple “For” loop with delays.
Not at all. Stuck on 4.14 and don’t have the money to invest in a completely new Dialogue System. I have no idea where the problem is coming from that would prove helpful.
Well can you include the plugin into your project instead of into the engine?
I should of clarified, I’ve compiled it in the project already and it still threw out errors.
Is it happening in all projects, such as a blank TPP project, or only in yours?
great instruction, but I have a small question - did you test this in VR Preview mode (with headset)?
update: I think that yes!) My bad - I miss this node http://joxi.ru/xAeGRq5UpZ31dm
now it’s work as expected. Thank you!
Hey guys, I have some newbie questions (sorry for that, hehe).
I finally bought the plugin, but I having some difficulties to change the mouse click to a keyboard button.
I don’t know if someone have asked this before, but how can I change this? For example, my game is a side scroller and I want to show the dialog when the player get in front of a NPC and press Z.
To be more specific, I want something like the dialogs from Final Fantasy and others RPGs: press a button in front a NPC to start the dialog, and Z again to continue or finish the dialog.
This is the setup I am using right now to launch the dialogues.
All this blueprint is inside of my NPC. I don’t know if its correct, but this is working right now. It would be perfect if I could use my action input as a default, like the mouse click is right now.
[EDIT]
So, I’m diving into the plugin to learn more about it. And a couple questions are driving me crazy.
1. When I have a pure NPC dialog, the conversation doesn’t end when I click to continue into the last dialog line. But, with a PC answer, the dialog finish normally. Is this correctly? Or it’s a bug in my project?
2. I’m finding problems to focus the keyboard/gamepad into the continue button to show the next dialog line. I made a “way” to do that, (you can see here and here) but the editor always give me some (“trying access node…”) errors. Do you guys have a proper way to do that? The documentation only shows how to use the gamepad for a Fallout kind of dialogue, which gives the keyboard focus only to the answers.
3. About the answers gamepad focus, I did exactly what the documentation says to do, and it works (I see the hovered buttons). But, actually, this doesn’t made the dialog advance; it just simulate the hover on the answers. Plus, for example, if I press the top button, the first choice gets hovered. And, if I press the bottom, the last gets hovered too (see here). How could I fix it and advance the dialog?
Well, for now this is all, hehe.
Can you - please - help me?
A little advice for people who want to play a LevelSequence through the event system:
“LevelSequence”,
“MovieScene”
#include “LevelSequence.h”
#include “MovieScene.h”
UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = “Dialogue Event”)
ULevelSequence* LevelSequenceAsset = nullptr;
Build the project and you should be able to set a LevelSequence asset to play as an event in the dialogue asset.
You’ll then have to set it to play the chosen asset in the DoEvents function of MyDialogueWidget. I dragged off Level Sequence Asset, made an IsValid node, dragged off that to create a branch connected to the previous HasEvents=true branch. Then, dragging off of True, made a Create Level Sequence Player node. Drag off the return value pin and make a Play node. Then just connect the Level Sequence Asset pin to the Level Sequence in the player node.
Slight correction. After setting a Level Sequence to play for the first time, the branch in DoEvents will always return true since it was just checking isvalid. What I ended up doing is creating an additional bool called “HasLevelSequence” in Dialogue.h and using that as the branch condition in DoEvents.
Well, usually dialogues end with a PC line. If you want them to end with an NPC line, then depending on the game, the behavior would differ in this particular situation. In Dark Souls, the last NPC line would linger on the screen for a few seconds, but you’d already be effectively out of the dialogue. In Baldur’s Gate, the line would appear normally and then you’d have an [End Dialogue] PC response generated automatically for you.
So it’s not exactly a bug, it’s just something I never implemented. Call it a slight oversight.
Anyway, this is where you arrive when that happens: https://i.gyazo./736f017eec0bc7744f26fb828643ae3d.png
You could do something like this if you want: https://i.gyazo./a2e9f7ebadbeb6bfd6424cebbb1fdc51.png - this would create a “End Dialogue” reply. (you’d have to reset the text back to Continue somewhere else later)
Hard to answer about your other two questions without looking at the project. They’re more general purpose UMG type of questions.
Hey. So I’m in the middle of updating the plugin to 4.16 and I just had some of the errors you’re having. Fixing them was a matter of including parent classes into headers when you’re using something in cpp, like Super.
So for example adding include “Runtime/Engine/Classes/Engine/DataAsset.h” into Dialogue.h fixed the error of “‘UDialogue’: illegal member initialization: ‘Super’ is not a base or member UE4”.
Then there are some errors like* ‘DialogueWave’: is not a member of ‘FDialogueNode’*, they can be fixed by adding forward declarations into .h files, so in Dialogue.h I added class in front of UDialogueWave DialogueWave = NULL;* and that fixed that particular error.
Try these two fixes and see if it compiles, I didn’t have any errors after that, although I had a long list like yours when I first tried to compile.
I’m fixing those things now for 4.16, so hopefully you won’t get any errors like that with the 4.16 version. I’ll try to send it to the marketplace in a few days.
Sent the plugin for review. Should be up on the marketplace soon.
@Sbnewsom, I also compiled it in the github version of Unreal just to see how it would behave, because I remember that’s what you were trying to do, and it worked.
@
This is exciting! This gives me hope for the next build. Fingers crossed (I’m sure it’ll work, no problems ) I really appreciate the help btw.
Looking into exporting and import dialog right now. How does the plugin store this information? Is it individual arrays?