Sure, the old dialog system is fine, but there’s still a lot of problems and bugs that will probably never be fixed. So to make it easy i’ve created a dialog GUi system that works similar to how normal dialogs work. You take the choice and put it in the choice and put it in the choice and so forth. Let me explain how it works!
How it works
The first thing you’ll notice is the 3 things inside the model. Put ChainDialogPrompt into the NPC’s torso (or whatever it is you’re gonna put it in), put ChainDialog into ReplicatedStorage, and put ChainDialogGUI into StarterGUI.
Open up ChainDialogPrompt. Here’s you’ll se a bunch of test goop, named ChoiceA, ChoiceB, response, ETC. Response is the text that will be displayed when the choice that is its parent is chosen. If there is no response, the script will close the dialog. So far, the script only supports up to 4 choices. Name your choices ChoiceA, ChoiceB, ChoiceC, ChoiceD based on the order you want them to be displayed. Parent the choices under the choice you want them to come after.
You can also put LocalScripts inside of the choices, that will activate when the choice is selected. You can also put whatever you need for those scripts, like values or folders or whatever. Just keep in mind the manager looks for local scripts to confirm descendants other than values, so there must be a local script in there somewhere. Do not name anything in the choices ChoiceA, Response, etc.
Lastly, you can customize your Dialog Box. Keep in mind you have to have 4 choices, so you could optionally make one of them just never used. You also have to have an ImageLabel named NPCImage and a textlabel named NPCName. These of course, are the image you want to use for the dialog and the name of the NPC to be displayed. You can modify what these will be under ChainDialogPrompt.
If I wasn’t that clear or if there is anything you need help on, let me know!