Is there a Oneshot functionality?

I can’t find anything in the manual about oneshot other than it not being supported in Loop Behaviour.

Is there a Oneshot functionality on a “Single Instrument”?

Cheers
Rosco

Assuming that by “oneshot” you mean “an event that plays a single audio asset, then ends,” there are a large number of ways to achieve what you want. Here are a few of the more common ones.

One method is to create an event with an action sheet, and place a single instrument on that action sheet.

Another method is to create an event with a timeline, and place a single instrument at the start of that timeline.

If you want to be able to change which audio asset plays based on the state of your game, or to play arbitrary “loose” audio files on the player’s machine, you can use either of the above methods, but create a programmer instrument instead of a single instrument.

If you want the audio file to be randomly selected whenever an instance of the event plays, use either of the first two methods, but use a multi instrument instead of a single instrument, populate its playlist with the audio assets you want it to be able to play, and ensure it is set to “Shuffle” or “Randomize” playlist selection mode.

If you want the audio file to change each time an instance of the event is played according to a defined sequence, use either of the first two methods, but use a multi instrument instead of a single instrument, populate its playlist with the audio assets you want it to be able to play in the order you want them to be played in, and ensure it is set to “Sequential - Global Scope” playlist selection mode.

Do any of these method suit your game’s needs? If not, please let us know what your requirements are - there are many other ways of creating a oneshot sound that may be a better fit.

Thanks Joseph.
I wan’t thinking that simplistically.

I have/had a multi instrument that was being played by UE4 and then stopped by UE4. I was looking see if there was a oneshot function that would play one of the sounds in the multi even if the event had been called to stop by UE4.
But that sounds a bit counter intuitive doesn’t it!?

I made a solution by breaking the multi into 2 different events and stopping one and not the other.

Appreciate your time.
Cheers
Rosco

As you have intuitied, the play state of an event determines whether it can play its content, and there is no way to make an event play its content while it is stopped. As such, creating a new event was the correct solution.

As a general rule, even if multiple events (or multiple instances of the same event) use the same asset, only one copy of that asset is loaded into memory. This means that multiple events with overlapping content do not consume substantially more memory than a single event that can play in multiple different ways, so it’s not a bad idea to make use of them.

1 Like

Legend.