Working on Xanor: The Dialogue System

As promised, I will be making a series of posts regarding my upcoming video game, Xanor. In this post I will be demonstrating the dialogue system.

Before I began designing a whole new dialogue system, I thought I’d first google what other people have created. The very first hit was this Mass Effect dialogue system. Not bad I saids to myself. So I copied it investigated it and ended up using a similar system.

At its very core, the dialogue system consists of Branches and Hubs. A branch is a series of speech lines; the sentences a character says as well as his pose (remember, this is a 2D game, so no animations). A branch either terminates the dialogue, or reaches a hub. A hub has a list of branches which basically are the player’s options.

A hub can be of three types:

a Normal Hub
which contains a list of branches,

an End Hub
which terminates the dialogue,

or an Info Hub
which returns to the original hub once the branch ends

Pretty straightforward, don’t you think? Here is a diagram to clear any confusion:

Dialogue Diagram

While the Mass Effect sample was great, it was way more complicated than what I needed. First of all, Mass Effect has a morality system, so the branches where either good, bad or neutral and they were placed around a wheel. For Info branches, you had to select a special “Investigate” option to view them.

I have no morality system, and I don’t want my info branches to seem any different than any normal branch. So I simplified it by making info branches nothing more than a branch that has its NextHubID set to the same Hub as the one it was choosen from. I also eliminated the limitation of having 3 branches (good, bad and neutral) to unlimited. Finally, I removed the sound property since I won’t be having any voice overs (sigh).

On the designing side, the sample comes with an editor. Which doesn’t really look easy to understand: