Best way to change conversation based on story event?
Posted: Tue Jun 14, 2022 6:53 am
Hi,
I'm reworking the dialogue in my game and I'm trying to organize things a little bit better than my first time.
I had this idea of using groups to determine where we're at in the story for the dialogue to be relevant with the current situation.
I was first thinking of using something more akin to a If/Else system with the Passthrough, but I'm having some issues with it, since as you progress in the story, the previous events are still "True", so the dialogue system does not progress to the next conversation.
I tried using the Priority System too, hoping that by giving a bigger priority to later events, the dialogue would go to that event if the previous one was also true, but it doesn't seem to work like I would like it to.
So, instead, I'm trying to organize my conversations with groups that check for each conditions to determine where we're at in the story.
For instance, after the first event in the main story, I would have something called "Flag 1" at True and would start the Flag 1 conversation, but ONLY if Flag 2 is also False.
Later on, when I have progressed into the story, "Flag 2" would also be at True, and then the conversation would basically skip the Flag 1 conversation and go straight at the Flag 2 conversation.
What I have in mind would look something like that:
Does this seems like the best way to achieve what I want?
Or is there a better or more efficient way to do it?
PS: Just to be clear, when I say "Flags", I do not mean a special system that I created or something. Most likely, I will be using the "Condition" system in Dialogue System for that too and those "flags" will mostly be either SimStatus or QuestMachine States.
PSS: You can ignore the "Conversation" and "Repeat" part of the image. It's just me verifying the SimStatus of the conversation so that the character won't repeat the whole conversation if you've already spoken to them.
I'm reworking the dialogue in my game and I'm trying to organize things a little bit better than my first time.
I had this idea of using groups to determine where we're at in the story for the dialogue to be relevant with the current situation.
I was first thinking of using something more akin to a If/Else system with the Passthrough, but I'm having some issues with it, since as you progress in the story, the previous events are still "True", so the dialogue system does not progress to the next conversation.
I tried using the Priority System too, hoping that by giving a bigger priority to later events, the dialogue would go to that event if the previous one was also true, but it doesn't seem to work like I would like it to.
So, instead, I'm trying to organize my conversations with groups that check for each conditions to determine where we're at in the story.
For instance, after the first event in the main story, I would have something called "Flag 1" at True and would start the Flag 1 conversation, but ONLY if Flag 2 is also False.
Later on, when I have progressed into the story, "Flag 2" would also be at True, and then the conversation would basically skip the Flag 1 conversation and go straight at the Flag 2 conversation.
What I have in mind would look something like that:
Does this seems like the best way to achieve what I want?
Or is there a better or more efficient way to do it?
PS: Just to be clear, when I say "Flags", I do not mean a special system that I created or something. Most likely, I will be using the "Condition" system in Dialogue System for that too and those "flags" will mostly be either SimStatus or QuestMachine States.
PSS: You can ignore the "Conversation" and "Repeat" part of the image. It's just me verifying the SimStatus of the conversation so that the character won't repeat the whole conversation if you've already spoken to them.