Page 1 of 1
Audio sequencer commands plays twice after choices
Posted: Fri Aug 05, 2022 9:48 am
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.
Re: Audio sequencer commands plays twice after choices
Posted: Fri Aug 05, 2022 10:05 am
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.
Re: Audio sequencer commands plays twice after choices
Posted: Fri Aug 05, 2022 12:09 pm
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.
Let me know if I can do anything else to narrow this issue.
Re: Audio sequencer commands plays twice after choices
Posted: Fri Aug 05, 2022 12:53 pm
by Tony Li
Hi,
Thanks for sending the info. I should be able to track down the issue with the info you've provided.