API: playing multiple elements

Is it possible to play a bunch of elements at once, without using a mood?

I’m thinking of doing some maintenance on syrinscall this holiday, and I’d love to give the ability to “add” moods together…

Starting a Mood without stopping all existing playing Elements is something I have considered a few times, but it never seems to gain any traction. I don’t think there are any API endpoints for just turning multiple Elements on, you would have to hit each Element’s /play/ endpoint individually, @sonofconan can you confirm?

This is not currently possible.

Right now you will need to hit /play/ for each element you want to play, and possibly want set the volume for each element.

Assuming there are 10 elements in a second mood you want to combine with an already playing mood, that would be 20 HTTP requests at once, which is not an intended use case and might not scale well.

I think combining moods might also not work as well in practice as one might think, except for a few edge cases where two moods are coincidentally and exceptionally compatible. E.g. overlapping music would be weird.

That said, I am working on some changes that should make it easier for integrations to trigger multiple elements with target volumes (e.g. like a mood), but I can’t say yet when it will be ready for you to play with. I will let you know.

That sounds great @sonofconan - I’ll await with interest.

My main use case for combining moods is mixing combat with locations.

For instance, I have some space wizard light sword combat moods, some imperial trooper combat moods, and some alien pig warrior sounds. I also have moods for a space pub and some ambient street noises.

Depending on the players, the imperial troopers fight may happen early, in the streets, or later, in the pub. If the imperial fight happens early, the players fight the pig warriors in the pub instead, possibly.

And of course, there’s always the player who wants to negotiate in the junk shop using his light sword (tsk tsk, he’ll fall to the dim side if he doesn’t controll himself)…

Syrinscape works so well because of how you can layer sounds. But I want some of those layer groups to be dictated by plot; and crucially, I don’t want to have to try to predict every possible combination in advance.

1 Like

Thanks for sharing. It really help us to understand your use case.

1 Like

Is this possibly still wanted? I have also been hoping for some sort of overlapping moods type function.

My desired use-case is to have one for the music depending on the current theme (tense, happy, combat, etc) and then the other is all of the environmental sounds.

Currently, if I have 5 different playlists for music for different atmospheric moods, and say 5 different locations, I’d need to create 25 different moods to handle all of the different combinations.