Interrupting sound in a cue - UDK


The following is an Unreal Development Kit question:


You have a sound file called "sound2" that plays directly after file "sound1" in a sound cue. Directly, as in delayed a certain amount of mili-seconds so it will sound "attached" to the first. This technique allows for randomization of layers within 1 cue, timed correctly with delays so its seamlessly 1 sound.


If "sound1" is triggered again by the user before "sound2" plays, how do you keep "sound2" from playing behind "sound1"?

Basically, set a high priority level for "sound1" so that if it is triggered again before the cue plays "sound2", it interrupts the chain and plays "sound1" again without overlapping "sound2".

Hopefully I made the question clear enough! Sometimes this stuff can get confusing without a diagram.


Posted 2011-01-02T18:31:34.663

Reputation: 2 378



I think what you are looking for in the soundcue is called the "Concatenator". This node is used to play one sound directly after another. Instead of using a delay node timed to the length of sound1 the concatenator node will play sound2 directly after sound1. That way you don't have to time out every delay node you use. And for an added bonus if the soundcue is triggered again sound2 will stop playing and restart with sound1.


Posted 2011-01-02T18:31:34.663

Reputation: 506

Nice - thank you Chris! This is exactly what I needed to know! – C3Sound – 2011-01-03T06:18:08.153

@ChrisEngineAudio You wouldnt happen to know what files need to be sent besides the audio .pkg's if you need to send the developer fully implemented audio? We arent on a SVN so I have to actually send him everything... can this be done? – C3Sound – 2011-01-03T19:15:04.463

1The .upk files contains all of the audio data along with any soundcues you created. If you implemented any sounds into the map you will also need to deliver the .udk map file. Anything else beyond that would live in a .uc script file. – ChrisEngineAudio – 2011-01-04T03:22:50.957


I haven't used the UDK, but it sounds like you need to assign a couple variables; one to be set to true while sound1 is playing, and false when its not, and the other to set for sound2. When they trigger the sound again, check the variables.

Dave Matney

Posted 2011-01-02T18:31:34.663

Reputation: 4 087

Yeah, its a possibility -- the thing is that solution is more programming based, and im trying to do it within the cue editor or with the audio engine in general. But I will mention it to the programmer for sure. Thank ya Dave! – C3Sound – 2011-01-02T21:06:23.740

No problem. If I had any experience with the UDK, I may have a more sound-guy-esque answer. That solution, however, seems to work for just about any engine -- and I was a (bad) programmer before I ever did sound. – Dave Matney – 2011-01-04T14:38:10.520


I think I understand what your asking C3Sound. In order to give the questions a try, I will need to know what kind of audio files you are fitting together.

  1. Are they all the same length and material, but with different mixes?

  2. Are they completely unique audio files, but there is an order you need them to play back in?

Is it something else entirely?

I think you can fake what your describing within the UDK Cue system (without messing directly in code). But its dependent on the scenario of the sound cue.

Tom Todia

Posted 2011-01-02T18:31:34.663

Reputation: 126

@Tom its all good man, ChrisEngineAudio nailed it. Read over the after question banter/responses for his answers. – C3Sound – 2011-01-04T05:33:24.620

Ah, well I could just turn to my left and ask Chris myself, lol. Good job Chris@engineaudio! – Tom Todia – 2011-01-17T13:49:50.857