Page 1 of 1
Help with system of conversation progression
Posted: Wed Oct 02, 2024 7:01 am
by Saper
Hi Tony
I want to create a progressive dialogue and check how many conversations with NPC were finished.
For example:
Mike has 4 conversation options
On the first interaction, 1st conversation starts and at the end of this conversation we show the player that the 1st conversation has been completed
On 2nd interaction it should play 2nd conversation, etc.
On the 5th interaction, the 1st conversation should start and there should be no message at the end of it (because it already has been marked as completed)
Re: Help with system of conversation progression
Posted: Wed Oct 02, 2024 8:30 am
by Tony Li
Re: Help with system of conversation progression
Posted: Wed Oct 02, 2024 10:30 am
by Saper
Hi Tony
Thanks for your answer! Now, let's go further: some conversations will be accessible only in specific chapters. And if the player talks to this NPC in the next chapter those conversations will not be accessible but at the end of interaction they should still be added to completed conversations.
For example:
Mike has 5 conversations:
1, 2, 5 are accessible from Chapter I onwards
3 is only accessible in Chapter II
4 is accessible from Chapter III onwards
So in chapter I the conversation flow would look like this:
1 -> 2 -> 5 (number of completed conversations: 3)
We don't talk with this NPC in chapter II.
In chapter III let's say we only talk once with that NPC; they will start from conversation 1 and at the end the number of completed conversations should increase by one (because all previously missing conversations in the chain should still be added to the overall number of completed conversations with that NPC)
Re: Help with system of conversation progression
Posted: Wed Oct 02, 2024 10:44 am
by Tony Li
Personally I like to keep all dialogue logic in one place -- the dialogue database. So my approach would be to always start the same "hub" conversation. From there, use Conditions and cross-conversation links to go to the appropriate conversation for the current chapter and whatever other conditions you have. So my approach would be to:
1. Create a variable to keep track of the current chapter.
2. Set up the hub conversation like in
How To: Use Group Nodes To Reduce Condition Checking Time, first branching on the current chapter number. Each of those branches could further branch based on more detailed state information in each chapter.