# Expose multi-instrument index as property

**URL:** <https://qa.fmod.com/t/expose-multi-instrument-index-as-property/15244>\
**Category:** FMOD Engine\
**Created:** [November 22, 2019, 8:03pm UTC](https://qa.fmod.com/t/expose-multi-instrument-index-as-property/15244 "2019-11-22T20:03:03Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![daudioguy](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/daudioguy/32/415_2.png) [@daudioguy](https://qa.fmod.com/u/daudioguy)\
**Post date:** [November 22, 2019, 8:03pm UTC](https://qa.fmod.com/t/expose-multi-instrument-index-as-property/15244/1 "2019-11-22T20:03:03Z")

</div>

In my projects I have many occasions to expose a group of related sounds as a progression to the programmer. Like a multi-instrument in global-sequential, all these assets share the same snapshot. However the program needs to specify where to start in the list.  
Internally FMOD keeps track of an index to the multi-instrument. I am suggesting that this index be a writable property of an event with a multi-instrument. Thinking about it, an event can have an arbitrary number of multi-instruments. Perhaps these could be named?  
My work-around for this is to expose every assets as an event. Then the game programmer needs to build the array and maintain the index for every instance of a progressive sound event. Some of these have 20 progressions. This is really cluttering up the name space and I have to get game programming commitment to do the right thing (not always easy). I see in FMOD 2.0 that I could do this with event instruments. Building these is considerably more involved than dragging 20 assets onto a multi-instrument and sharing the snapshot instrument.  
I don’t want to use a suggested solution for playing arbitrary assets using a callback. That is even more programmer involvement.  
I really like multi-instruments, I just want to be able to play the n-th one by calling the event with a parameter.

---

<div class="post-metadata">

**Author:** ![richard\_simms](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/richard_simms/32/261_2.png) [@richard\_simms](https://qa.fmod.com/u/richard_simms)\
**Post date:** [November 26, 2019, 5:32am UTC](https://qa.fmod.com/t/expose-multi-instrument-index-as-property/15244/2 "2019-11-26T05:32:19Z")

</div>

I think it would be simpler for you to create a discrete parameter and use that instead of trying to control a multi-instrument. You can then pass in the index as the parameter’s value when playing the event instance.

[https://www.fmod.com/resources/documentation-studio?version=2.0&page=parameters-reference.html#discrete-user-parameters](https://www.fmod.com/resources/documentation-studio?version=2.0&page=parameters-reference.html#discrete-user-parameters)

[https://www.fmod.com/resources/documentation-api?version=2.0&page=studio-api-eventinstance.html#studio\_eventinstance\_setparameterbyname](https://www.fmod.com/resources/documentation-api?version=2.0&page=studio-api-eventinstance.html#studio_eventinstance_setparameterbyname)
