Jump to content

  • Log In with Google      Sign In   
  • Create Account

Banner advertising on our site currently available from just $5!


1. Learn about the promo. 2. Sign up for GDNet+. 3. Set up your advert!






Starting a conversation

Posted by Johan Gustafsson, 30 June 2010 · 98 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<ConversationLine> Lines;
};

typedef List<ConversationLine> 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.





March 2015 »

S M T W T F S
1234567
891011121314
15161718192021
2223242526 27 28
293031    

Recent Comments

Recent Comments

PARTNERS