• entries
15
14
• views
15788

# Starting a conversation

406 views

I am working on a rpg in the style of Baldur's Gate and Dragon Age. An important part in these kind of games is the conversation system. The conversations are not just simple one liners but they branch and repeat in various ways so it is important that the conversation system is flexible enough to handle all of this.

A conversation is a line that may have several lines or responses. It may also have an action script that is executed when the line is activated. There can also be a condition script and if it evaluates to true then the line is visible. This means that there can be several roots in a conversation and the one that is used is the first one whose condition evaluates to true.

A line can also be a link to another line which means that the conversation jumps to that line instead, this can be great for conversations that repeat.

This is what I got so far:
class ConversationLine {public:	Guid ID;	Guid Link; // optional	string Condition; // Optional	string Action; // Optional	string Text;	List Lines;};typedef List Conversation;

I made an editor for this conversation system in C# and I will probably implement it in the actual game as soon as I have got the GUI up and running. I have attached a screenshot of the editor below.

There are no comments to display.

## Create an account

Register a new account