How to have two Dialogue System Controller running at the same time?
Posted: Sat Apr 17, 2021 2:50 pm
Greetings, Tony!
I have searched the forum and couldn't find anything this complicated, so here I am.
I'd like to apologize in advance for a long post.
I have two sets of actors.
The first pair is player and NPC, Player and TestNPC, they use a modified Standard Dialogue UI, and the usual stuff.
The second pair is two NPCs, Hrugor and Kihae, they use a modified Bubble Standard Bark UI to do "bark conversations", since both require vastly different display settings, these two NPCs would override the Dialogue System Controller's settings when they start a conversation.
However, when one pair starts their conversation before another finishes, they would fight for the control of the single Dialogue System Controller, making a huge mess. So I thought that the easiest way to have this all working is to have two Dialogue System Controllers.
Can you show me some pointers? Or am I missing something really obvious?
And if it helps, I have attached photos of my setup.
And here is a more detailed description of my bugs:
One is that:
When I start the Npc-player-conversation and then trigger the npcs-conversation before Npc-player-conversation finishes, the current line of npc-player-conversation would disappear. And then if I choose the option that ends the conversation, one of the npcs, Hrugor (the npc that triggers the npcs-conversation) would disappear.
The log says that "Unregistering transform Hrugor from actor 'Hrugor'."
Second bug is that:
When I start the Npc-player-conversation and finish it, then start the npcs-conversation and also let it finish. Sometimes, the npc-player-conversation would refuse to start, even though there is not condition blocking it, however, the npcs-converstaion works fine.
The console outputs: "Dialogue System: Bark (speaker=TestNPC (UnityEngine.Transform), listener=Player (UnityEngine.Transform)): 'Greetings!' speaker has no bark UI."
It seems like the npc is not overriding the display settings back properly.
The conversations worked flawlessly when I built them individually and didn't try to start the two at the same time. So I love the tool Tony, don't get me wrong, I just want to get this working. And I'm so so sorry for the long post. If you need more info, I will provide.
I have searched the forum and couldn't find anything this complicated, so here I am.
I'd like to apologize in advance for a long post.
I have two sets of actors.
The first pair is player and NPC, Player and TestNPC, they use a modified Standard Dialogue UI, and the usual stuff.
The second pair is two NPCs, Hrugor and Kihae, they use a modified Bubble Standard Bark UI to do "bark conversations", since both require vastly different display settings, these two NPCs would override the Dialogue System Controller's settings when they start a conversation.
However, when one pair starts their conversation before another finishes, they would fight for the control of the single Dialogue System Controller, making a huge mess. So I thought that the easiest way to have this all working is to have two Dialogue System Controllers.
Can you show me some pointers? Or am I missing something really obvious?
And if it helps, I have attached photos of my setup.
And here is a more detailed description of my bugs:
One is that:
When I start the Npc-player-conversation and then trigger the npcs-conversation before Npc-player-conversation finishes, the current line of npc-player-conversation would disappear. And then if I choose the option that ends the conversation, one of the npcs, Hrugor (the npc that triggers the npcs-conversation) would disappear.
The log says that "Unregistering transform Hrugor from actor 'Hrugor'."
Second bug is that:
When I start the Npc-player-conversation and finish it, then start the npcs-conversation and also let it finish. Sometimes, the npc-player-conversation would refuse to start, even though there is not condition blocking it, however, the npcs-converstaion works fine.
The console outputs: "Dialogue System: Bark (speaker=TestNPC (UnityEngine.Transform), listener=Player (UnityEngine.Transform)): 'Greetings!' speaker has no bark UI."
It seems like the npc is not overriding the display settings back properly.
The conversations worked flawlessly when I built them individually and didn't try to start the two at the same time. So I love the tool Tony, don't get me wrong, I just want to get this working. And I'm so so sorry for the long post. If you need more info, I will provide.