Hi there!
I wanted to add dialogs to my game, but I didn’t feel like any of the open source dialog systems I found really fit my needs, so I decided to make my own. And now that it’s mostly complete I decided to share it publicly!
It is made to be easy to use and compatible with any dialog gui you might have. I tried including all essential features for it so it can fit any game. Overall I wanted it to be universal and easy for adapt for all games.
If there are any features it’s missing then hopefully you’ll be able to easily add them yourself, I think the module’s code is fairly easy to understand.
You can find the module’s source and a wiki documenting all its features on its github page!
Besides the source code, an .rbxm file is also there in every release..
I have also made a youtube video covering the module’s functionality, so if you don’t feel like reading the wiki on github you can just watch the video and see how to use it!
I hope someone will find this module useful, have a great day!
You can customize the dialog color by enabling your TextLabel’s RichText property and either typing out the color tags yourself or using TextModule:Customize()
I got a few suggestions (if you plan on keep updating the system, but i think it’s pretty good as for now) , i tried changing the code to a few ones, but i don’t think i am good at it, anyways, here :
Functions for choices
Custom wait for periods, symbols, etc
Instead of queue system, a Replace system for different dialogs, this could be a option
Attributes for the dialogs oop objects, so you can change them in the future/later, like the “Auto” And “Input” Option
a “AutoInput” Extra option, the dialog will change to the next automatically, but you can also skip it clicking
A option to make certains responses to appear when the dialog text finishes typing, and another to make the responses appear when the dialog starts typing
Local or Global variables that changes their values when you click a response, making that, if you open/talk to a npc again, the dialog will be different (but i don’t think it’s neccesary since you can do this manually with booleans)
Thank you for the suggestions, I’ll definitely consider adding these!
Though I have a few questions:
What would be the purpose of functions for choices when you can add a function in the dialog that the choice points to?
What would be the purpose of local/global variables like that if you can just set that stuff with dialog functions? You can put a function in the npc dialog that saves the information that it should play a different dialog next time, and then when interacting with the npc, check for the information and play appropriate dialog based on that
Well, As i’ve been testing, I needed functions to execute right away when the Player clicks that choice, and not execute any other dialog to do a function, So that’s why
Yeah, As I said it’s not really neccesary, As you can do this with that