Audio Node
Overview
The Audio Node controls audio playback during a dialogue sequence. It can play, stop, or pause an AudioClip on a specified target object, then immediately advances to the next node without waiting. It is a fire-and-forget node — dialogue flow continues the moment the audio action is issued.

Ports
Previous
Input
Multi
Receives connections from any preceding node.
Next
Output
Single
Continues to the next node immediately after the audio action executes.
Node Properties
Action Type
Dropdown
The audio operation to perform. See options below.
Audio Clip
AudioClip
The clip to play. Only visible when Action Type is Play.
Target Object
GameObjectVar
A Malbers ScriptableObject variable pointing to the GameObject that owns (or will receive) the AudioSource. Optional — falls back to the DialogueManager GameObject if not set.
Action Type Options
Play
Assigns the Audio Clip to the target's AudioSource and calls Play().
Stop
Calls Stop() on the target's AudioSource.
Pause
Calls Pause() on the target's AudioSource.
How It Works
At runtime, DialogueManager resolves the audio target in the following order:
Target Object set — retrieves the
AudioSourcecomponent from thatGameObjectVar's referenced GameObject. If noAudioSourceexists on it, one is added automatically.Target Object not set — falls back to the
DialogueManager's own GameObject. Again, anAudioSourceis added automatically if one is not present.
Once the AudioSource is resolved, the selected action (Play, Stop, or Pause) is executed and the node immediately calls AdvanceToNextNode(). The dialogue does not wait for the clip to finish playing.
Validation
Next output port is not connected
Error
No validation is performed for a missing Audio Clip when Action Type is
Play— this is caught at runtime with a warning log and the node is skipped.
Usage Tips
Ambient music or stingers — use a Play node at the start of a dialogue branch to trigger mood music, and a Stop node before the End Node to close it out cleanly.
Looping audio — if the clip is set to loop on the
AudioSource, remember to add a Stop node somewhere before dialogue ends, otherwise the audio will continue playing after the conversation closes.Dialogue is not blocked — because the node advances immediately, do not use it expecting the clip to finish before the next node runs. If you need the dialogue to wait for audio, combine the Audio Node with a Wait Node set to the approximate clip duration placed immediately after it.
Target Object is a
GameObjectVar— this must be a MalbersGameObjectVarScriptableObject asset, not a direct scene reference. Populate it at runtime usingQuestForgeRuntimeSetupor any other component that writes to shared variable assets.
Last updated