Page 3 of 3

Re: Conversation Track Not Disabling CharacterController

Posted: Wed Feb 16, 2022 3:48 pm
by Tony Li
Here are some options to play the PC's lines through the NPC subtitle panel:
  • Assign the NPC Subtitle Panel to the dialogue UI's Conversation UI Elements > Default PC Subtitle Panel field.
  • Or add the markup tag [panel=0] to the dialogue entry node's dialogue text.
  • Or use the SetPanel() sequencer command to tell the player actor to use panel 0.
  • Or add a Dialogue Actor to the player GameObject, and set Dialogue UI Settings > Subtitle Panel Number to Panel 0.

Re: Conversation Track Not Disabling CharacterController

Posted: Wed Feb 16, 2022 5:38 pm
by PayasoPrince
Ah, its working now! :mrgreen:
I'm so happy to be past this issue, it was really stressing me out. :oops:

Thank you so much for staying patient and assisting me, Tony!

That does just leave me with two final questions:

1. My Player's Dialogue System Event to disable the CharacterController is now working even when I don't drag my playergameobject into the ConversationTrack and it is set to None. Is there a purpose to dragging a gameobject into it? Is there a reason why the Dialogue System Event is working now?

2. I really don't mind adding a Dialogue Actor to my GameObjects, and setting Dialogue UI Settings > Subtitle Panel Number to Panel 0. But is there a reason that I suddenly needed to? It seemed to naturally use the NPC panel by itself before. I'm mostly just worried about breaking something down the line.

Thanks again so much! :D

Re: Conversation Track Not Disabling CharacterController

Posted: Wed Feb 16, 2022 6:17 pm
by Tony Li
PayasoPrince wrote: Wed Feb 16, 2022 5:38 pm1. My Player's Dialogue System Event to disable the CharacterController is now working even when I don't drag my playergameobject into the ConversationTrack and it is set to None. Is there a purpose to dragging a gameobject into it? Is there a reason why the Dialogue System Event is working now?
Dialogue System Events components rely on receiving Dialogue System event messages. <-- That link explains which GameObjects receive event messages. If your player GameObject is assigned to the conversation track or the Start Conversation clip's Conversant field, it will be used as one of the two primary participant GameObjects, so it will receive events. However, since the ConversationTrack is set to None, the Dialogue System will look for a GameObject with a Dialogue Actor component set to the same actor as the conversation's actor. (See the Character GameObject Assignment link again for that explanation.)
PayasoPrince wrote: Wed Feb 16, 2022 5:38 pm2. I really don't mind adding a Dialogue Actor to my GameObjects, and setting Dialogue UI Settings > Subtitle Panel Number to Panel 0. But is there a reason that I suddenly needed to? It seemed to naturally use the NPC panel by itself before. I'm mostly just worried about breaking something down the line.
If a line is assigned to an actor whose "Is Player" checkbox is true in the dialogue database, it will always use the dialogue UI's Default PC Subtitle Panel -- unless you've overridden which panel to use by using any of the methods in the list I provided in a previous reply.

Once you got the GameObject issue straightened out, everything was working exactly as designed. The player actor was using panel 1, and the NPC actors were using panel 0, unless they were overridden. Then you used a Dialogue Actor to tell the player to use panel 0, which is precisely the right way to do it.