Page 1 of 1
How to stop AudioWait?
Posted: Thu Sep 03, 2020 4:46 pm
by rakkar
If the user clicks past the last entry of dialogue, the narrative audio started from AudioWait continues playing into loading screens and elsewhere. If I leave the current dialogue whatever sequences or audio that were in progress should be interrupted. How would I do that?
Re: How to stop AudioWait?
Posted: Thu Sep 03, 2020 5:45 pm
by Tony Li
AudioWait() should stop as soon as the dialogue entry stops . Are you perhaps using Audio()? It kicks off audio and lets it play uninterrupted.
How to setup standard narration behavior
Posted: Thu Sep 03, 2020 9:25 pm
by rakkar
I'm looking for the standard behavior virtually every game does for narration. It reads the text on the screen, does not read text not on the screen, reads all lines in sequence, stops reading once all lines are read, and the user can always skip the text. If I have multiple speakers in the same sequence, each speaker speaks in turn.
AudioWait() blocks the continue button from showing up until the audio is done.
Audio() keeps playing into the next sequence, if the next sequence doesn't have audio.
Seems like neither does quite what I want, any help is appreciated.
Also, is this how you play in sequence using Audio()?
Audio(Narration[lua(GetAvatarGender(true))]_Mission1_Part2_MissionEndConversation_03)->Message(Audio1Done); Audio(Prisoner_Mission1_Part2_MissionEndConversation_03)@Message(Audio1Done)
Re: How to stop AudioWait?
Posted: Thu Sep 03, 2020 9:32 pm
by Tony Li
Hi,
Each line of dialogue should correspond to a dialogue entry, which is a common standard. Each dialogue entry is assigned to a single speaker and should have a single AudioWait(). See DemoScene1 for an example. The dialogue entries' Sequence fields are blank (with a few exceptions), which means they use the Dialogue Manager's Default Sequence, which is:
Technically it's:
Code: Select all
AudioWait(entrytag); Delay({{end}})
but this is just so the timing will still be good if the user decides to delete the demo's audio files.
Tip: Normally when you add a new dialogue entry, it alternates between the conversation's actor and conversant (e.g., player and NPC). If you want to create a another dialogue entry using the same speaker, hold down Shift when right-clicking on the original dialogue entry to open the context menu. Then select Create Child Node from the context menu.
Re: How to stop AudioWait?
Posted: Fri Sep 04, 2020 7:41 am
by rakkar
Thanks for the response. I claimed "AudioWait() blocks the continue button from showing up until the audio is done." It happens consistently each time I run.
Are you saying that it is not supposed to block the continue button?
Re: How to stop AudioWait?
Posted: Fri Sep 04, 2020 7:48 am
by rakkar
In case your answer is "Yes it is supposed to block" how would I achieve this?
Read text on the screen
Do not read text not on the screen
Stop reading when all lines are read
User can ALWAYS skip the text
Your comment "Each line of dialogue should correspond to a dialogue entry" which I don't believe addresses my concern. All I need is to play a series of sounds in order in a single entry, and the sounds stop when I leave the entry. This didn't seem to work
Code: Select all
Audio(Narration[lua(GetAvatarGender(true))]_Mission1_Part2_MissionEndConversation_03)->Message(Audio1Done); Audio(Prisoner_Mission1_Part2_MissionEndConversation_03)@Message(Audio1Done)
Re: How to stop AudioWait?
Posted: Fri Sep 04, 2020 8:30 am
by rakkar
In case this helps anyone else, the answer is:
1. To play a series of sounds in sequence, use AudioWait with (file1, null, file2, file3, ...)
2. To always let the player continue, select in Dialogue System Controller, under Subtitle Settings, Continue Button "Optional Before Response Menu"
Re: How to stop AudioWait?
Posted: Fri Sep 04, 2020 8:54 am
by Tony Li
Setting the Continue Button dropdown to Always didn't work for you?
Re: How to stop AudioWait?
Posted: Tue Oct 17, 2023 8:04 am
by duolazhang
rakkar wrote: ↑Fri Sep 04, 2020 8:30 am
In case this helps anyone else, the answer is:
1. To play a series of sounds in sequence, use AudioWait with (file1, null, file2, file3, ...)
2. To always let the player continue, select in Dialogue System Controller, under Subtitle Settings, Continue Button "Optional Before Response Menu"
Just came to say thank you!