Stopping Events differently

Hey there,

I’m setting up an Event that sequentially plays one sound after the other, be it with a Multi Instrument or with an Action List.

The problem I’m having is how to stop the Event in such way that the current sound is allowed to finish, but then no other sound should be triggered. Is there a simple way to do this?


The simplest way to do this is to use a multi instrument set to “Sequential - Local Scope” playlist selection mode, and design the event such that the instrument is untriggered when you want it to stop. Because a multi instrument’s default behavior when untriggered is to play out the playlist entry that is currently playing, this will achieve the behavior you describe.

If you want the untriggering of the instrument to be caused by the event being stopped by your game’s code, rather than by your game’s code setting the value of a parameter, you can achieve that by putting an AHDSR modulator on the value of the parameter, as an AHDSR modulator on a parameter will enter its release period when the event is stopped, causing the parameter’s value to change and untrigger the instrument. Be sure to make the release period long enough that the currently playing playlist entry will have time to finish.

The untriggering is the challenging part. Command Instruments provide “stop” but not “untrigger”. Could there be this type of command in future versions? It would make my workflow a lot faster. Because I understand from your post, a multi instrument’s default behavior when untriggered is to play out the playlist entry that is currently playing. So, a command type “untrigger” would be perfect.

I’m trying it with a Multi Instrument on a Parameter Sheet, without covering the entire Parameter scale. So, when moving the parameter slider outside the Multi Instrument region it is untriggered. However, it doesn’t work. My Multi Instrument is set to Sequential Local, Looping, Playcount 3. It only works if the playcount is set to infinite. But that’s not the behavior I’m looking for.

The intended behavior would be this: The event plays one parent multi instrument containing 3 child multi instruments, playing one after the other, and then stop. However, If the parent multi is untriggered, then the currently playing child multi should finish without triggering the next one.

Using the timeline instead of the parameter sheet doesn’t look right to me, since the assets of each child instrument can vary significantly even within a child instrument.

I hope it makes sense… many thanks for any hints.

A method that might work would be to create an infinitely-looping sequential local scope asynchronous multi-instrument whose trigger conditions include a parameter being zero, and have the last instrument in the playlist be a command instrument that sets that parameter to something other than zero. That way, the instrument will stop when it reaches the end of its playlist, and you’ll be able to make it stop and play to the end of its currently-playing instrument at any time by setting the value of the parameter to something other than zero prematurely.