Conversation Track Not Disabling CharacterController

Announcements, support questions, and discussion for the Dialogue System.
User avatar
Tony Li
Posts: 21981
Joined: Thu Jul 18, 2013 1:27 pm

Re: Conversation Track Not Disabling CharacterController

Post 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.
User avatar
PayasoPrince
Posts: 104
Joined: Thu Jan 27, 2022 6:47 pm

Re: Conversation Track Not Disabling CharacterController

Post 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
User avatar
Tony Li
Posts: 21981
Joined: Thu Jul 18, 2013 1:27 pm

Re: Conversation Track Not Disabling CharacterController

Post 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.
Post Reply