Dialogue System Events Across Scenes: Seeking Solutions for Untriggered NPC Actions

Announcements, support questions, and discussion for the Dialogue System.
Post Reply
JiraSpike
Posts: 1
Joined: Fri Jun 28, 2024 10:18 pm

Dialogue System Events Across Scenes: Seeking Solutions for Untriggered NPC Actions

Post by JiraSpike »

I'm trying to use the DialogueSystemEvents to trigger an NPC's On Conversation End Unity event when a conversation ends. However, my player and NPC are not in the same scene, so I cannot use the method of assigning the player GameObject to the Dialogue System Trigger's Actions > Start Conversation > Conversation Actor field.

Reference:https://www.pixelcrushers.com/phpbb/vie ... nts#p39043

Therefore, I opted for the second method: adding a Dialogue Actor component to the player GameObject and setting its Actor dropdown to Player. I also inspected the conversation in the Dialogue Editor to ensure the Player actor is used as the conversation's Actor.

Despite this, the NPC's On Conversation End event is not triggered after the conversation ends.

What I might be doing wrong or suggest alternative solutions?

Thank you!
User avatar
Tony Li
Posts: 22107
Joined: Thu Jul 18, 2013 1:27 pm

Re: Dialogue System Events Across Scenes: Seeking Solutions for Untriggered NPC Actions

Post by Tony Li »

Hi,

If the Dialogue System Events component is on the NPC, then the NPC needs to be one of the two primary participants in the conversation. To see which GameObjects are the participants, temporarily set the Dialogue Manager's Other Settings > Debug Level to Info. Then play the scene and start the conversation. Look for a line in the console like:

Dialogue System: Starting conversation 'title' with actor=X and conversant=Y

If the NPC is neither X nor Y, add a Dialogue Actor component to the NPC and set its Actor dropdown to the NPC actor. Then inspect your conversation's properties and make sure the Actor or Conversant dropdown is set to the NPC actor.
Post Reply