Audio sequencer commands plays twice after choices

Announcements, support questions, and discussion for the Dialogue System.
Post Reply
nehvaleem
Posts: 93
Joined: Tue Sep 10, 2019 4:52 am

Audio sequencer commands plays twice after choices

Post by nehvaleem »

Hi,
It seems that I am encountering some sort of a bug resulting in the line being played one more time than needed just after selecting a choice in dialogue (when the next line is displayed already). AudioWaitOnce doesn't help, maybe it is being played with a different actor or something.

I would really appreciate any hints on how to narrow this issue and make it fixed.

I am using ink integration.
User avatar
Tony Li
Posts: 21079
Joined: Thu Jul 18, 2013 1:27 pm

Re: Audio sequencer commands plays twice after choices

Post by Tony Li »

Hi,

This is probably a small bug in the Dialogue System's Ink integration. If so, I should be able to fix it fairly quickly. Can you post an excerpt of your Ink content that shows some choices and the sequences associated with them?

Also, please temporarily set the Dialogue Manager's Other Settings > Debug Level to Info. Then reproduce the problem. In the Console, locate both instances of:

Dialogue Manager: Sequencer.Play( AudioWait(entrytag)@0 )

Click on each one, press Ctrl+C / Cmd+C to copy the details to the clipboard, and then paste them into a reply.
nehvaleem
Posts: 93
Joined: Tue Sep 10, 2019 4:52 am

Re: Audio sequencer commands plays twice after choices

Post by nehvaleem »

Sure, since I don't feel super comfortably posting my ink contents here I have sent it via email.

Below I am attaching the given stack traces:

This is the extra (not needed nor expected)

Code: Select all

Dialogue System: Sequencer.Play( AudioWaitOnce(LineTag_001_0016_DE4ECF49_Satoru)@0 )
UnityEngine.Debug:Log (object)
PixelCrushers.DialogueSystem.Sequencer:PlayCommand (PixelCrushers.DialogueSystem.SequencerCommands.QueuedSequencerCommand,string,bool,single,string,string,string[]) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/Sequencer/Sequencer.cs:745)
PixelCrushers.DialogueSystem.Sequencer:PlayCommand (PixelCrushers.DialogueSystem.SequencerCommands.QueuedSequencerCommand) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/Sequencer/Sequencer.cs:733)
PixelCrushers.DialogueSystem.Sequencer:PlaySequence (string) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/Sequencer/Sequencer.cs:667)
PixelCrushers.DialogueSystem.Sequencer:PlaySequence (string,bool,bool) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/Sequencer/Sequencer.cs:677)
PixelCrushers.DialogueSystem.ConversationView:StartSubtitle (PixelCrushers.DialogueSystem.Subtitle,bool,bool) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/View/View/ConversationView.cs:191)
PixelCrushers.DialogueSystem.ConversationController:GotoState (PixelCrushers.DialogueSystem.ConversationState) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/Controller/ConversationController.cs:212)
PixelCrushers.DialogueSystem.ConversationController:OnSelectedResponse (object,PixelCrushers.DialogueSystem.SelectedResponseEventArgs) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/Controller/ConversationController.cs:304)
PixelCrushers.DialogueSystem.ConversationView:SelectResponse (PixelCrushers.DialogueSystem.SelectedResponseEventArgs) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/View/View/ConversationView.cs:494)
PixelCrushers.DialogueSystem.ConversationView:OnSelectedResponse (object,PixelCrushers.DialogueSystem.SelectedResponseEventArgs) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/View/View/ConversationView.cs:487)
PixelCrushers.DialogueSystem.AbstractDialogueUI:OnClick (object) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/UI/Abstract/Dialogue/AbstractDialogueUI.cs:346)
PixelCrushers.DialogueSystem.StandardDialogueUI:OnClick (object) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/UI/Standard/Dialogue/StandardDialogueUI.cs:262)
PixelCrushers.DialogueSystem.StandardUIResponseButton:OnClick () (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/UI/Standard/Dialogue/StandardUIResponseButton.cs:132)
UnityEngine.EventSystems.EventSystem:Update () (at Library/PackageCache/com.unity.ugui@1.0.0/Runtime/EventSystem/EventSystem.cs:501)
and this is the one that I should expect to be played:

Code: Select all

Dialogue System: Sequencer.Play( Audio(LineTag_001_0018_7295DBFB_Akira, null)@0 )
UnityEngine.Debug:Log (object)
PixelCrushers.DialogueSystem.Sequencer:PlayCommand (PixelCrushers.DialogueSystem.SequencerCommands.QueuedSequencerCommand,string,bool,single,string,string,string[]) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/Sequencer/Sequencer.cs:745)
PixelCrushers.DialogueSystem.Sequencer:PlayCommand (PixelCrushers.DialogueSystem.SequencerCommands.QueuedSequencerCommand) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/Sequencer/Sequencer.cs:733)
PixelCrushers.DialogueSystem.Sequencer:PlaySequence (string) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/Sequencer/Sequencer.cs:667)
PixelCrushers.DialogueSystem.Sequencer:PlaySequence (string,bool,bool) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/Sequencer/Sequencer.cs:677)
PixelCrushers.DialogueSystem.ConversationView:StartSubtitle (PixelCrushers.DialogueSystem.Subtitle,bool,bool) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/View/View/ConversationView.cs:191)
PixelCrushers.DialogueSystem.ConversationController:GotoState (PixelCrushers.DialogueSystem.ConversationState) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/Controller/ConversationController.cs:212)
PixelCrushers.DialogueSystem.ConversationController:OnSelectedResponse (object,PixelCrushers.DialogueSystem.SelectedResponseEventArgs) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/Controller/ConversationController.cs:304)
PixelCrushers.DialogueSystem.ConversationView:SelectResponse (PixelCrushers.DialogueSystem.SelectedResponseEventArgs) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/View/View/ConversationView.cs:494)
PixelCrushers.DialogueSystem.ConversationView:OnSelectedResponse (object,PixelCrushers.DialogueSystem.SelectedResponseEventArgs) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/MVC/View/View/ConversationView.cs:487)
PixelCrushers.DialogueSystem.AbstractDialogueUI:OnClick (object) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/UI/Abstract/Dialogue/AbstractDialogueUI.cs:346)
PixelCrushers.DialogueSystem.StandardDialogueUI:OnClick (object) (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/UI/Standard/Dialogue/StandardDialogueUI.cs:262)
PixelCrushers.DialogueSystem.StandardUIResponseButton:OnClick () (at Assets/Plugins/Pixel Crushers/Dialogue System/Scripts/UI/Standard/Dialogue/StandardUIResponseButton.cs:132)
UnityEngine.EventSystems.EventSystem:Update () (at Library/PackageCache/com.unity.ugui@1.0.0/Runtime/EventSystem/EventSystem.cs:501)
I don't know if any of that will be relevant, but there are some additional Audio & AudioWait commands present in the console after making the choice. I am attaching a screenshot, please tell me if you need full stacktrace of those.

Image

Let me know if I can do anything else to narrow this issue.
User avatar
Tony Li
Posts: 21079
Joined: Thu Jul 18, 2013 1:27 pm

Re: Audio sequencer commands plays twice after choices

Post by Tony Li »

Hi,

Thanks for sending the info. I should be able to track down the issue with the info you've provided.
Post Reply