Page 1 of 1

Dialogue System Trigger won't fire again after the first time.

Posted: Tue Oct 11, 2022 6:08 pm
by kalibyr
Hi Tony!

I've been using Dialogue System for a couple of months on and off, and it's been great! It's truly a great asset, huge timesaver.

I'm running into an issue that I never encountered before. Before when I used the Selector and Usable / Dialogue Actor / Dialogue System Trigger component, it worked fine, and I would be able to activate the each trigger as many times as I wanted.

I made some changes since then and now when I start a conversation using the DS Triggers, it only runs once and then never fires again. I've tried messing with the Triggers, the Actor/Conversant, Selector and Usable, added triggers to different game objects. If I run the the dialogue once, the triggers on every other gameobject do not work.

Current Setup:
  • Player gameobject has the Selector / Dialogue Actor / Dialogue System Events components assigned.
  • NPC gameobject has Usable / Dialogue System Trigger components assigned.
  • Mouse0 is the interact button. DS Triggers are assigned to separate conversations.
  • On the first click, doesn't matter which NPC I choose, it fires correctly and the conversation assigned to the DS Trigger on the specific NPC is activated.
  • Afterwards, I go through the prompt and then the conversation ends correctly.
  • The same NPC DS Trigger does not fire again, nor does the other NPC. This is vice versa if I start with the second NPC. That one works and then none of the other triggers work again.
Please help!

Re: Dialogue System Trigger won't fire again after the first time.

Posted: Tue Oct 11, 2022 9:02 pm
by Tony Li
Hi,

If you can select the NPC again and it shows the selector UI, then temporarily set the Dialogue Manager's Other Settings > Debug Level to Info. When you try to interact with the NPC again, examine the Console log. It may show a message like:

Dialogue System: Starting conversation 'title' with actor=XXX and conversant=YYY

If it doesn't, it might show some other message to indicate the issue.

You can also check the Console the first time you interact with the NPC. Make sure the correct GameObjects are being used for the player and NPC -- in particular the player, since you want it to receive Dialogue System Events messages.

If you can't select the NPC again to see the selector UI, check if the NPC's Usable component and collider are still enabled, and that the player's Selector is enabled. It sounds like the player's Selector may be the issue.

Re: Dialogue System Trigger won't fire again after the first time.

Posted: Wed Oct 12, 2022 2:02 am
by kalibyr
Thanks for your reply.

The Selector and the Selector UI still work after the first trigger. The Dialogue System is firing the OnUse correctly and the conversation seems to be working fine, but only for the first time.
Screenshot 2022-10-12 002556.png
Screenshot 2022-10-12 002556.png (64.08 KiB) Viewed 233 times
After the initial conversation is finished, the Selector UI / Selector is stilled enabled, and I can see that the interact message works correctly. However, when using the Mouse0 to interact, I do not receive more Debug logs at all. Nothing after the "ending Conversation" log.

I did catch the conversation running again with the Player actor after the initial conversation was activated, not sure what's going on there, but I'll include it below.
10121224.png
10121224.png (40.11 KiB) Viewed 233 times

4 hours into the debugging and I'm still at a lost. Any suggestions would be helpful.

Re: Dialogue System Trigger won't fire again after the first time.

Posted: Wed Oct 12, 2022 7:58 am
by Tony Li
Hi,

At any time, please feel free to email a reproduction project to tony (at) pixelcrushers.com. I'll be happy to take a direct look. It's probably the fastest way to resolve the issue.

Otherwise, how is your Dialogue System Events components configured? I assume it's on the player and is configured to disable and re-enable the Selector component.

Re: Dialogue System Trigger won't fire again after the first time.

Posted: Wed Oct 12, 2022 4:02 pm
by kalibyr
Awesome, I'll send the project along. Might take a day to do so.

In the meantime, yes you're correct about the DS Events component being on the player and used to disable and re-enable the selector.