RPG Dialogue Editor
Unity
Solo
20 Weeks
Highlights
Nodes
Branching
Scripting
With the RPG Dialogue Editor you can create a Dialogue Graph in Unity, in which you can build branching dialogue based on data (player choices and actions) through the use of a light scripting system that extends the concept of nodes.
I built it in Unity to accomplish a few things: explore computer role-playing game (cRPG) development, better my Unity skills and gain experience in creating tools for developers.
I wrote up how this plugin and idea came to be. If you want more, check below.
Nodes
Branching dialogue is a hallmark of cRPGs, and it implies that dialogue flows like a river with different outcomes. I decided to represent this with a node system, represented graphically for ease-of-use by designers.
Branching is done via either player choice, represented by the Choice node, or through player actions (stored data), represented by the Condition Node.




Previous
Next
Branching
I supported inquisitive questions (which loop back to another branch), skill checks, and quest history by creating a small variable system.
I modeled the system after Unreal Engine – each Node Graph would hold local variables, a Blackboard would hold a reference to all variables (local and global), and through Condition Node you are able to create Conditions, and through the Edit Variable Instruction you can edit the variable.




Previous
Next
Scripting
To allow more flexibility, I chose to allow Nodes to be modified and created easily so that they may be used however the end-user wants. I used Unity’s Scriptable Objects to achieve that – you can create the Nodes and Graphs (and Variables!) as if you were using Unity’s quintessential way of scripting – MonoBehaviours – Scriptable Objects allow you to use Unity’s in-built serialization and automatic GUI generation, as if it were a MonoBehaviour, but a Scriptable Object can be saved as an asset (saving the data on disk!).


Previous
Next