(Open-source beta) DialogService - Easily create scriptable dialog

Introducing DialogService, my first module designed to benefit developers.

The main reason why I made this was because with the Dialog instance, console support was broken for dialog bubbles, meaning that dialog support wasn’t easy for console, and I wanted something with more flexibility, something that can be activated by anything.

So I made DialogService, a flexible way for easy, scriptable dialog.
With DialogService, you’ll be easily able to script dialog with choices (completely optional)

And plus, this is open-source, meaning that you can do anything! Dissect it, fork it, contribute to it, anything! (That is allowed under the GPL-3.0 license.)

Here is a demonstration:

How to install:

Method 1: Free Model
Creator Store Page

Method 2: Local File
Go to the GitHub page and download the latest beta from the Releases page.

The GitHub readme has documentation for both scripters and UI designers.

Roadmap
Method: DialogService:GetUserInfoByID()

Easily make back-to-back conversations with the player and NPC plus NPCs that can dynamically update with a player’s profile.
(Expected in Beta #2 (v0-beta.2))

Method: DialogService:UpdateTextInDialog()

Create basic text animations and more without calling ShowDialog().
(Expected in Beta #2 (v0-beta.2))

Method: DialogService:SetCameraPosition()

Easily create more immersive dialogue perspectives and dialogue-animatic hybrids.
(Expected in Beta #2 or #3 (v0-beta.2 or .3))

3 Likes

This is great! Could you add some showcases?

Thank you for this resource :slight_smile:

I have a demo of dialogue (without choices) from the What are you currently working on? topic:

Thank you! Could you include this in the post (or any other showcases) so people are more intrigued?

I will be doing that in the next 24 hours, for now I don’t have access to my PC but I will be still working on it by adding a roadmap of features that are coming soon. (Edit: It has been added now)

sorry if this is off topic but you spelled dialogue wrong. Its “dialogue”, not “dialog”