DIalogue UI closes itself after 30 seconds

Announcements, support questions, and discussion for the Dialogue System.
Post Reply
Deses
Posts: 15
Joined: Fri May 28, 2021 9:27 am

DIalogue UI closes itself after 30 seconds

Post by Deses »

Hi,

Our dialogue UI closes itself exactly after 30 seconds when we import an XML exported from Articy:Draft. 🤷‍♂️

But surprisingly, a conversation done manually in another database doesn't have that issue and the dialogue UI stays up for as long as you take to close it.

Have you ever encountered a similar behavior? I'm not sure where is the problem, both databases seems to be identical, so I'm really not sure if it's an Unity problem, Articy's or who knows what. 🙄
User avatar
Tony Li
Posts: 22101
Joined: Thu Jul 18, 2013 1:27 pm

Re: DIalogue UI closes itself after 30 seconds

Post by Tony Li »

Hi,

That's a new one to me.

The Dialogue System does employ a safeguard timeout when it's waiting for certain UI animations, such as the animation to show or hide dialogue panels. If the UI animation hasn't finished within exactly 10 seconds, it will move on. This helps prevent lock-ups if there's a configuration error in your animation. But nothing in the Dialogue System is timed for exactly 30 seconds.

Temporarily set the Dialogue Manager GameObject's Other Setting > Debug Level to Info. This will log a lot of information to the Console window. In particular, look for lines such as:

Dialogue System: Starting conversation 'title' with actor=X and conversant=Y
(Indicates that a conversation has started.)

Dialogue System: Sequencer: ...
(Sequencer commands. These can affect how long subtitles stay onscreen.)

Dialogue System: Conversation ending.
(Indicates that a conversation has ended.)

For example, if the dialogue UI disappears but you don't see 'Conversation ending' then it may be a UI issue such as a Hide animation playing when it shouldn't.

If you do see 'Conversation ending,' look for sequencer commands that indicate that the conversation has proceeded to the end.
Deses
Posts: 15
Joined: Fri May 28, 2021 9:27 am

Re: DIalogue UI closes itself after 30 seconds

Post by Deses »

Hi Tony.

So, an update.

I changed the debugger to INFO and this is what I saw.

Code: Select all

Dialogue System: Stopping conversation. Exceeded max distance 0 between Intro dialogue trigger and Jin
Dialogue System: Ending conversation.
Jin is the name of one of our NPCs.

And the most interesting part is that if I change the name of the GameObject "Jin" to "Jin(1)" the conversation doesn't end on it own!

If I change the name of the actor in articy, it doesn't stop after 30 seconds either.

Apparently the problem is because the name of the actor in the dialogue database and the name of the GameObject containing the sprite, animator, collider and other stuff have the same name. Weird, isn't it?
User avatar
Tony Li
Posts: 22101
Joined: Thu Jul 18, 2013 1:27 pm

Re: DIalogue UI closes itself after 30 seconds

Post by Tony Li »

Hi,

The easiest solution is to untick the Dialogue System Trigger's Stop Conversation If Too Far checkbox unless you need that functionality.

If you do, please look over Character GameObject Assignments. It explains how it associates GameObjects with your articy:draft entities / Dialogue System actors. The TL;DR is:
  • If you assign GameObjects to Conversation Actor or Conversation Conversant, it will use those GameObjects.
  • Otherwise it will look for GameObjects that use Dialogue Actor components.
  • Otherwise it will look for GameObjects by name.
Post Reply