I'm so glad there's more documentation on this, I started a while back and quit while working on the UI but you actually touch on how to customize it! Please keep the tutorials coming!
This is a very good introductory video to dialogic and I am so happy that it's here because I looked around most tutorials and most either are too vague or too confusing. This one is nice and concise! I'd love to see any other potential videos on Dialogic or just some tips with it in general.
Omg I've been searching for a more current and in depth tutorial for dialogic godot addon like foreverr T T Thanks for taking the time and effort to make this tutorial, looking forward to more of it! ^^
Thank you! This video deserves way more attention, too many old and out of date tutorials on dialogic etc. out there and they don't really go into enough detail about how to use the addon outside of the dialogue editor and this is exactly what I needed. I've been wanting to know how to do things like skill checks within the dialogue tree and other conditions and this is perfect.
I'm so glad I came across this. Working on a small game and running into headaches with dialogue and this has EVERYTHING I NEED. Anyway thanks. Guess I'll tear my dialogue system out and just use this.
I love watching random videos and learning face palm level knowledge about the godot editor. I didn’t know you could just click and drag those to skew.
This is so helpful, thank you so much for this video! Would love more in depth tutorials for Godot 4 on how to use this for a RPG game in the future also : ) Much appreciation to you!
This is really awesome, The only thing I could ask for are the timestamps so I can reference the individual parts quickly when making my own stuff, and for at the end, you have a small game that you add the dialogue into.
Thanks for the support! I have added timestamps to the video! :) I wanted to have a nice demo but ran out of time. I will have a follow up video on customized styles in the future.
@@HexBlit Your fine! I understand about running out of time. Every time I think about starting a channel, I remember how much you all have to put into videos, and it's like... maybe not.
not sure if it was an issue with what i recorded, but was likely when I was explaining how to fire a signal from the Dialogic timeline. If there is any confusion on any parts let me know :)
Hey, your video was super useful. Could you go a bit more in depth about dialogic signals? I really want to be able to use dialog scenes to trigger like, say, a variable changing to make an object the player just picked up vanish from the environment, but I keep having struggles making things like this work. A detailed tutorial on how to use these specifically would be really nice, as I can rarely find anything about specifically intergrating dialogic into a game thats more than just a visual novel with no other mechanics ;w;
Oh my God thank you so much. This was such a great tutorial although I do have one question can it play videos? like after a dialogue has been finished can it make a video cutscene? If not is there a way to do so?
You can pretty much make it do what ever you need it do, whether that cut scene is a custom dialogues scene or just have it fire a signal that then launches cut scenes or next levels. I recommend trying stuff out and then see where you get stuck on
That was so helpful, thank you so much! I was wondering, is there a way to make your character say a random sentence selected in a array of possibilities? So that when you talk to them, they don't always say the same thing? Thanks!
You should be able to do it, for example you could have the message be a variable that is said, and that variable is loaded from a random array content element
Great video, thanks! I've had so much more success using Dialogic 2 so far than I had with other dialogue systems in Godot. Any idea if there is a way to set conditional branches in Dialogic timelines based on global variables outside of Dialogic (e.g, checking variables within an unrelated autoload in a project)?
It's not super clean but you could Dialogic.VAR.awesomeVarCopy = autoloadedClass.awesomeVar Or have a signal event that sets the dialogic var equal to the variable you are using. It is not awesome but I've been thinking about it too.
I can't seem to call variables on the text editor Dialogic. All I want is to make the variable="playername" to replace the character "ch_maincharacter"
you're a lifesaver! even dialogic's own documentation didn't properly tell me how to _start the darn game!_ do you know how i could to add extra buttons to interact with during dialogue, like inventory or skills, or is that not possible with the plugin? the background hides everything i add to my node.
You probably need to add custom styling, and create your own node that can do what you need and associate with the Dialogic UI Dialog object. I will eventually be doing a video on custom styling interactions.
UI tutorial is on the roadmap, I have a save & load video on the channel, that i made for Godot 3x., that ill likely update in the future but might help you if you need it today.
Amazing tutorial! But I have a question... how do you use the 'return' block? I've tried using it, but it doesn't really do anything. Would be amazing if you could tell me more about it!
It is not very clear, but I did find the answer in their codebase. The return event goes back to the point you previously jumped, so you may have a main timeline, and then have a jump event to a new timeline location finish that condition/flow, hit a return event which would take you back to the main timeline at the point you did your jump event. see: github.com/dialogic-godot/dialogic/blob/d6cd652ff5fd8d39d2a2e3d19704adfa1ac13fca/addons/dialogic/Modules/Jump/event_return.gd#L4 ## Event that will make dialogic jump back to the last jump point.
Nice video. Looking for inspiration. I made 2 dialog systems for unreal, one node based and custom scripting language. Node was to messy and scripting is to complicated for designers from testing. Something like this would be the solution I think.
This is great I started using dialogic cause of this video. One small issue I have is that I have multiple characters the player can talk to anytime (like phone contacts basically) so I want to save the timeline position so that when the player comes back to talk to a character it begins in the position they left off. Idk if this is something you know how to do, but I tried looking everywhere but the documentation is sparse so I've no idea where to even start.
so the dialogue runs through like a for loop, it doesn't really pause in that way. especially if you have multiple contacts in a single timeline or you are swapping out timelines. The best thing I have found is to have conditional flags, each time you trigger a conversation you would update the variable to match what dialogue they would see (0 = intro, 1 = ask quest, 2 = wait for quest status, 3 = turn in, 4 = post turn in) etc. I hope this helps you!
You could extend the dialogue and make a quest version, then you could either have a timeline per quest or a mega timeline using vars to know what quest text event to show.
I am not familiar with it, but I'll add it to the list of add-ons to review. You might be able to use it with the customized dialogic workflow, but you might need to experiment and find out :)
Cool video!! Keep up the good work. One question tho. My dialogic screen is massive, the black box doesnt scale with my screen size and when im fullscreen the black box takes up half of it. How do i fix this? ANY1 please helpp!!!
could be it is not properly following the aspect rules in project settings, I am working on a part 2 for this, going into custom dialogs and will also test screen resolutions.
Hi there thanks for your effort to making this videos. Can you help me with something, I was animating a custom animated portrait, but when I launch the game it gives the following error: Invalid call. Nonexistent function '_get_covered_rect' 'Marker2D'. I can't quite understand this error, thank you.
I would recommend posting the error on the Dialogic github page, but looks like you might need to define that method.. because the Marker2D node doesn't have a get_covered_rect method. Seems like others had this issue too: github.com/dialogic-godot/dialogic/issues/2080
Note: Learned this the hard way, make sure you don't put your zip file into the project folder itself otherwise it will cause conflicts, also worth noting, if you click on enable plugin it seems to freeze but that's just temporary, should work fine afterwards, don't click it again otherwise it might crash
Please, could you tell me if there is a way to translate all the dialogs at once? I don't have time to create the translations so I would like to select everything and translate with an A.I or use some dialogic option or some other plugin, could you help me with that please?
Yeah that is more in the custom dialogues, I am working on a how to make custom dialogue styles video, it will be a big stream event turned into a video though later in dec.
ive heard from somewhere there is a bug, when you use different styles (i.e. the bubble style AND the VN style) and you switch between them it crashes the game, do you know if thats still a thing?
The image can be any image, if you want to show the node2D you would need to customize the scene for the dialogue box and likely make a copy of the gdscipt to change the image reference to be scene or animation. I hope that helps 😃
If you want to hack it, you could have the timeline fire off signal emits that calls your dialogue interface, especially if you put a wrapper around your dialog interface that allows it to be managed.
I would think maybe load the csv into a variable and have dialogic use that variable for the conversation. I am working on custom dialog scenes video, a part 2 to this video that goes deeper. and may have a better response later or in that video.
It does take focus of input but does not do any process pausing, you will have to do that if you want. Which is nice since it keeps you in control of what you want to do.
You should be able to go into the character tab and remove it, however you will want to update all references to that character so you dont get weird portrait errors.
Any way of showing the dialogue automatically without stealing control from the player? My game that I want to port from Unity to Godot does that thing that it shows the dialogues while the normal gameplay is occurring - player is free to ignore them or stop to read it.
In mine it shows up but the event handler still works as I expected and the character can move around with dialogue open. Everything is customizable, you should check out the floating dialogue template, that might help you :)
@@HexBlit Yeah, but is there a way to advance dialogues on their own without waiting for the user input without the user being able to space through the dialogue (I use space to jump) or skip the dialogue in any other way?
I think its more that its a rewrite and a 2.0 version. They have some issues reported and want to make it even more stable. I think they have more features they want to implement before getting out of alpha. github.com/dialogic-godot/dialogic/releases feel free to ask the creators on their github page as well.
Considering Ren'py has years of updates I bet it has more features and stability at the moment. But I think over time it will be able to be a serious contender.
Dedicated visual novel engines will likely be better for traditional visual novels. But godot gives you the power to implement more complex gameplay features.
Thanks for the feedback! I am always trying to improve my content. For context this was my first video after taking a long break and had limited time to edit/make the video. And didn't want to get stuck in a perfectionist loop and never post it.
I keep getting this text when trying to enable the plugin: Unable to load addon script from path: 'res://addons/dialogic/plugin.gd'. This might be due to a code error in that script. Disabling the addon at 'res://addons/dialogic/plugin.cfg' to prevent further errors. What should I do?
you might need to remove the addon and the resource file that is in root, and remove the entry in the godot file for plugins and then reinstall, my assumption is you are using 4.2.1 / 4.2.2. I hope this helps.
I recommend posting the issue on their github, github.com/jotson/ridiculous_coding/issues you can upload the project and describe the issue better than in a youtube comment :) I hope this helps.
please open bug reports on the github page, be vocal about things that are not working its the only way to ensure it gets fixed and gets improved. I also suspect the 4.3 release might be making new issues appear.
Very cool. Not creating a visual novel, but this cuts the time to do any sort of 'story' interaction with the player.
Absolutely
tutorials like this are invaluable for the Godot community
please tell me you are going to make more tutorials about it ......PLZ T-T
I will totally be making more on Dialogic as I progress in my experience and likely do a "What i've learned version"
I'm so glad there's more documentation on this, I started a while back and quit while working on the UI but you actually touch on how to customize it! Please keep the tutorials coming!
I am glad it helped! I am def working on many more tutorials.
This is a very good introductory video to dialogic and I am so happy that it's here because I looked around most tutorials and most either are too vague or too confusing. This one is nice and concise! I'd love to see any other potential videos on Dialogic or just some tips with it in general.
Appreciate the kind words, As I do more complex things with it I'll see what l can do to make a part 2.
Omg I've been searching for a more current and in depth tutorial for dialogic godot addon like foreverr T T
Thanks for taking the time and effort to make this tutorial, looking forward to more of it! ^^
Glad it was helpful!
Thank you! This video deserves way more attention, too many old and out of date tutorials on dialogic etc. out there and they don't really go into enough detail about how to use the addon outside of the dialogue editor and this is exactly what I needed. I've been wanting to know how to do things like skill checks within the dialogue tree and other conditions and this is perfect.
Thank you! I appreciate the kind words.
Very nice tutorial 👏
The man himself
Thank you so much 😊
I'm so glad I came across this. Working on a small game and running into headaches with dialogue and this has EVERYTHING I NEED. Anyway thanks. Guess I'll tear my dialogue system out and just use this.
It was still a valuable learning experience, hope it helps you
wow this is so good, i want more of this tutorial about Dialogic !! i want to make Visual Novel and so far this looks good to explore
I will make more as I progress in my experience with it. :)
I love watching random videos and learning face palm level knowledge about the godot editor. I didn’t know you could just click and drag those to skew.
if have been looking for a tutorial on dialogic for ages. thank you
Glad I could help!
This is so helpful, thank you so much for this video! Would love more in depth tutorials for Godot 4 on how to use this for a RPG game in the future also : ) Much appreciation to you!
Thanks working on more content ☺️
This is really awesome, The only thing I could ask for are the timestamps so I can reference the individual parts quickly when making my own stuff, and for at the end, you have a small game that you add the dialogue into.
Thanks for the support! I have added timestamps to the video! :) I wanted to have a nice demo but ran out of time. I will have a follow up video on customized styles in the future.
@@HexBlit Your fine! I understand about running out of time. Every time I think about starting a channel, I remember how much you all have to put into videos, and it's like... maybe not.
Didn't know this existed. Looks fantastic, flexible, and easy to use! Thanks for the intro!
Thanks, hope it helps
Thanks so much! Please keep these coming!
I am glad that it helped you. I have a lot of planned content I am working on. You can expect a lot more videos soon!
this is very nice, simple but powerful
Thank you for the kind words!
"A signal WAR fired via Dialogic!" Do not underestimate words of the Narrator.
not sure if it was an issue with what i recorded, but was likely when I was explaining how to fire a signal from the Dialogic timeline. If there is any confusion on any parts let me know :)
Hey, your video was super useful. Could you go a bit more in depth about dialogic signals? I really want to be able to use dialog scenes to trigger like, say, a variable changing to make an object the player just picked up vanish from the environment, but I keep having struggles making things like this work. A detailed tutorial on how to use these specifically would be really nice, as I can rarely find anything about specifically intergrating dialogic into a game thats more than just a visual novel with no other mechanics ;w;
what a gem. thank you for such knowledge.
Oh my God thank you so much. This was such a great tutorial although I do have one question can it play videos? like after a dialogue has been finished can it make a video cutscene? If not is there a way to do so?
You can pretty much make it do what ever you need it do, whether that cut scene is a custom dialogues scene or just have it fire a signal that then launches cut scenes or next levels. I recommend trying stuff out and then see where you get stuck on
thank you so much!!!
Glad it helped!
Thanks for great video!
amazing tutorial clear and concise!
Glad you liked it
i found this tutorial really helpful! Thank you! :D
Thank you for the support!
great! gonna use it!
DUDE THIS IS SO COOL!!!! THANKS!!!
I'm glad you like it
That was so helpful, thank you so much! I was wondering, is there a way to make your character say a random sentence selected in a array of possibilities? So that when you talk to them, they don't always say the same thing? Thanks!
You should be able to do it, for example you could have the message be a variable that is said, and that variable is loaded from a random array content element
Great video, thanks! I've had so much more success using Dialogic 2 so far than I had with other dialogue systems in Godot. Any idea if there is a way to set conditional branches in Dialogic timelines based on global variables outside of Dialogic (e.g, checking variables within an unrelated autoload in a project)?
It's not super clean but you could Dialogic.VAR.awesomeVarCopy = autoloadedClass.awesomeVar Or have a signal event that sets the dialogic var equal to the variable you are using. It is not awesome but I've been thinking about it too.
I might create a proposal to track external vars so they show in the timeline/ conditions via Dialogic.VAR.external()
@@HexBlit That would be a brilliant improvement - thanks for the ideas for approaches to setting the values into Dialogic!
Being that im a noob dev, this is very promising
I can't seem to call variables on the text editor Dialogic. All I want is to make the variable="playername" to replace the character "ch_maincharacter"
Nice tutorial. I have a question about Dialogic: How does it manage translations?
Luckily there is a whole page of documentation on translations :) docs.dialogic.pro/translation.html
gracias, el goat
you're a lifesaver! even dialogic's own documentation didn't properly tell me how to _start the darn game!_ do you know how i could to add extra buttons to interact with during dialogue, like inventory or skills, or is that not possible with the plugin? the background hides everything i add to my node.
You probably need to add custom styling, and create your own node that can do what you need and associate with the Dialogic UI Dialog object. I will eventually be doing a video on custom styling interactions.
@@HexBlit thanks so much, I'll try to mess around with it!
thank you for te viseo, and may i ask ? how about adding menu to the gui ? and how about adding save & load system ?
UI tutorial is on the roadmap, I have a save & load video on the channel, that i made for Godot 3x., that ill likely update in the future but might help you if you need it today.
Amazing tutorial! But I have a question... how do you use the 'return' block? I've tried using it, but it doesn't really do anything. Would be amazing if you could tell me more about it!
It is not very clear, but I did find the answer in their codebase.
The return event goes back to the point you previously jumped, so you may have a main timeline, and then have a jump event to a new timeline location finish that condition/flow, hit a return event which would take you back to the main timeline at the point you did your jump event.
see:
github.com/dialogic-godot/dialogic/blob/d6cd652ff5fd8d39d2a2e3d19704adfa1ac13fca/addons/dialogic/Modules/Jump/event_return.gd#L4
## Event that will make dialogic jump back to the last jump point.
Nice video. Looking for inspiration.
I made 2 dialog systems for unreal, one node based and custom scripting language. Node was to messy and scripting is to complicated for designers from testing.
Something like this would be the solution I think.
This is great I started using dialogic cause of this video.
One small issue I have is that I have multiple characters the player can talk to anytime (like phone contacts basically) so I want to save the timeline position so that when the player comes back to talk to a character it begins in the position they left off.
Idk if this is something you know how to do, but I tried looking everywhere but the documentation is sparse so I've no idea where to even start.
so the dialogue runs through like a for loop, it doesn't really pause in that way. especially if you have multiple contacts in a single timeline or you are swapping out timelines. The best thing I have found is to have conditional flags, each time you trigger a conversation you would update the variable to match what dialogue they would see (0 = intro, 1 = ask quest, 2 = wait for quest status, 3 = turn in, 4 = post turn in) etc.
I hope this helps you!
@@HexBlit I see thank you, yeah I have multiple timelines, really unfortunate that it's so hard to find proper info online but such is life I suppose
I love Godot so I've subscribe
Hey just wondering, do you have to make quests separately or can this be used in place of a quest? do you know?
You could extend the dialogue and make a quest version, then you could either have a timeline per quest or a mega timeline using vars to know what quest text event to show.
@@HexBlit I downloaded a plugin for my project simply called "Quest System" it may work with it, perhaps? Are you familiar with this plugin?
I am not familiar with it, but I'll add it to the list of add-ons to review. You might be able to use it with the customized dialogic workflow, but you might need to experiment and find out :)
Cool video!! Keep up the good work. One question tho. My dialogic screen is massive, the black box doesnt scale with my screen size and when im fullscreen the black box takes up half of it. How do i fix this? ANY1 please helpp!!!
could be it is not properly following the aspect rules in project settings, I am working on a part 2 for this, going into custom dialogs and will also test screen resolutions.
Hi there thanks for your effort to making this videos. Can you help me with something, I was animating a custom animated portrait, but when I launch the game it gives the following error:
Invalid call. Nonexistent function '_get_covered_rect' 'Marker2D'. I can't quite understand this error, thank you.
I would recommend posting the error on the Dialogic github page, but looks like you might need to define that method.. because the Marker2D node doesn't have a get_covered_rect method. Seems like others had this issue too: github.com/dialogic-godot/dialogic/issues/2080
Note: Learned this the hard way, make sure you don't put your zip file into the project folder itself otherwise it will cause conflicts, also worth noting, if you click on enable plugin it seems to freeze but that's just temporary, should work fine afterwards, don't click it again otherwise it might crash
interesting, please open bug reports on github so they can get fixed, its good to know what issues are currently going on.
Wonder if I could set my facial animations to the emotions in my 3d game, might try this
Good luck!
Please, could you tell me if there is a way to translate all the dialogs at once? I don't have time to create the translations so I would like to select everything and translate with an A.I or use some dialogic option or some other plugin, could you help me with that please?
you can likely do it with a csv file, I would check here: docs.dialogic.pro/translation.html for more info on translations.
Thnk you, I havent' watched the whole thing just grazed over it but it seems to me like you forgot to tell us how to make locations/backgrounds
Yeah that is more in the custom dialogues, I am working on a how to make custom dialogue styles video, it will be a big stream event turned into a video though later in dec.
@@HexBlit thank you very much ♥
you eanred a loyal sub 🦊🖤👉👈
also congrats on the 4090! im personally rocking a 7900 GRE on my workstation 🦊🦊🖤🖤
THANK YOU 🙏🏾
ive heard from somewhere there is a bug, when you use different styles (i.e. the bubble style AND the VN style) and you switch between them it crashes the game, do you know if thats still a thing?
I am unsure, I have been playing with styles but if I run into it ill make sure to talk about / possibly submit a PR
can i custom the dialog to show the character image out of dialog box instead of character potrait in dialog box?
The image can be any image, if you want to show the node2D you would need to customize the scene for the dialogue box and likely make a copy of the gdscipt to change the image reference to be scene or animation. I hope that helps 😃
Question - i already have a working dialog interface, can i somehow connect it to dialogic without creating custom sstyles?
If you want to hack it, you could have the timeline fire off signal emits that calls your dialogue interface, especially if you put a wrapper around your dialog interface that allows it to be managed.
how can i add a csv file so some dialogs can be random?
I would think maybe load the csv into a variable and have dialogic use that variable for the conversation. I am working on custom dialog scenes video, a part 2 to this video that goes deeper. and may have a better response later or in that video.
Finally boi i found you !!
does the game automatically pause when a dialogue opens?
It does take focus of input but does not do any process pausing, you will have to do that if you want. Which is nice since it keeps you in control of what you want to do.
How do you delete a Character you added to Dialogic?
You should be able to go into the character tab and remove it, however you will want to update all references to that character so you dont get weird portrait errors.
Any way of showing the dialogue automatically without stealing control from the player? My game that I want to port from Unity to Godot does that thing that it shows the dialogues while the normal gameplay is occurring - player is free to ignore them or stop to read it.
In mine it shows up but the event handler still works as I expected and the character can move around with dialogue open. Everything is customizable, you should check out the floating dialogue template, that might help you :)
@@HexBlit Yeah, but is there a way to advance dialogues on their own without waiting for the user input without the user being able to space through the dialogue (I use space to jump) or skip the dialogue in any other way?
Looks like you can via the auto advance feature, docs.dialogic.pro/auto-advance.html check it out and if you run into an issue can submit a PR.
What does it mean for it to be in alpha? Why is it not out of alpha despite being so feature-complete?
I think its more that its a rewrite and a 2.0 version. They have some issues reported and want to make it even more stable. I think they have more features they want to implement before getting out of alpha.
github.com/dialogic-godot/dialogic/releases
feel free to ask the creators on their github page as well.
Very good video!
Glad you liked it!
Can it give a competition to renpy for these visual novel type games
Considering Ren'py has years of updates I bet it has more features and stability at the moment. But I think over time it will be able to be a serious contender.
Dedicated visual novel engines will likely be better for traditional visual novels. But godot gives you the power to implement more complex gameplay features.
Do you can make quest with this
Yeah don't see why not :)
Can u make tutorial
This is some good shit.
Can this be used in a 3D game?
Ye why not?
Yep. It's just putting an interface layer in front of everything else.
absolutely, as others said, it renders its nodes in a Dialogic Node root in the scene tree no matter the project type.
Lol you using an paid UI Asset I also bought!
😂
@@HexBlit xD
cool
thx
Too much talking! and Why do you wigling your mouse cursor like that?
Thanks for the feedback! I am always trying to improve my content. For context this was my first video after taking a long break and had limited time to edit/make the video. And didn't want to get stuck in a perfectionist loop and never post it.
I keep getting this text when trying to enable the plugin:
Unable to load addon script from path: 'res://addons/dialogic/plugin.gd'. This might be due to a code error in that script.
Disabling the addon at 'res://addons/dialogic/plugin.cfg' to prevent further errors.
What should I do?
you might need to remove the addon and the resource file that is in root, and remove the entry in the godot file for plugins and then reinstall, my assumption is you are using 4.2.1 / 4.2.2.
I hope this helps.
It's not working, sorry I'm quite new to Godot 😅
Hmm
As I install it to godot, it says 'Failed to load script : (some script name)'
A bunch of times...
I recommend posting the issue on their github, github.com/jotson/ridiculous_coding/issues you can upload the project and describe the issue better than in a youtube comment :) I hope this helps.
Dialogic is a complete buggy mess. My entire game is broken and wont open. Found multiple bugs within minutes of using it.
please open bug reports on the github page, be vocal about things that are not working its the only way to ensure it gets fixed and gets improved. I also suspect the 4.3 release might be making new issues appear.