Can I loop segments of a music track?


I want to be able to have a battle start with a music track’s intro, then get to the core of the song, have it loop that section over and over for however many minutes the fight lasts, and then when I tell it to stop have it stop looping and play until the end of the track.

Is that possible?


Been chatting on YouTube comments already.
(copied here for other people’s info)

What you’ll want to do is break the song into the 3 parts you’ve described. (ie Intro, Body, Outro)

Three elements:

  1. Intro in an element with a zero “First Sample Delay” (uncheck repeat playlist)

  2. Body in another element with a “First Sample Delay” equal to the duration of “Intro” (check repeat playlist)
    Trigger these two elements with a MOOD called “Battle Begins”

  3. Outro in an element by itself with a zero “First Sample Delay”
    Trigger this element with a MOOD called “Battle ends”

(maybe apply a fade in/out on these samples)
(then tweak all your settings until you get the result you want)


Thanks. I just subscribed, watched the videos, got WavePad, sliced up this song (, and I’ve been fiddling for half an hour.

So, maybe I’ve missed something, but whenever I try to trigger Intro and Body, even after giving Body a 36.5 second delay, they start at the same time. What should I set for ‘Starts with Mood’ under the Mood Element section? Or does it work differently if I upload it, then download it, then test it in the player itself?


Additionally, when I set up the Outro, ideally it’d let the Body finish playing to the end and then play the 55 second Outro piece. Not sure how to do that.

This is cool stuff, but I’m getting my sea legs. Right now, maybe I’m not understanding how the pieces fit together. Sorry for pestering.


Hi @ryanznock ,

Firstly, THANKS so much for your support!

Secondly, do make sure you check out this Playlist of videos, because that will be best start at working everything out:

You won’t be able to make the Outro wait till a certain part in the Body before starting, but as long as you cross fade the two, that won’t matter.

The Playback behavior of the Creator will always be exactly the same as the Players.

Check out those videos and then ask some more questions! :slight_smile: :slight_smile:


While this solution works, it is hardly a good one :frowning:
Why? Because it will require to create two moods for each track you want this for.
I for example have a huge list of tracks for villains, bosses and normal combat.
The normal and boss music are a list of tracks that randomly play, and that’s fine.
The villains tracks are unique, and I have about 20 of them. This means I’ll need to have 40 moods to have the desired effect for each one.

The enhancement should allow us to choose a specific place to begin and end a loop in a specific track, then allow us to tell it to finish with the push of a button.

Will such an enhancement be possible?


Sounds like something good to do, but just not really the way Syrinscape is set up to work at the moment.


To get a track which is:

  1. an intro part of an action sequence
  2. a long middle part
  3. an outro section

I would do this:

  1. make a mood which triggers a OneShot that plays the intro
  2. this mood also starts an element that has the appropriate amount of delayed start and then loops the middle section over and over with a nice crossfade
  3. then a second mood that stops that element and triggers a OneShot that plays the outro bit.

This should be doing the music only… all the other elements of the sound design should be running in separate elements (all appropriately randomised etc) to avoid repetitions etc as is normally the case with Syrinscape.

Check out “Rolling battles” in “dia Avernus” where I sort of did this… note how the BIG intro simmers down and then the “guitar moments” sit over the top of that after a delay (not sure I’ve got the specific names right).

Anyway… there’s some thoughts.


EPIC necro btw! :smiley:


As I wrote above - that solution could technically work, but it’s not a good one.
We need a built in solution :frowning: