# Round robin reset - how?



## shomynik (Aug 21, 2018)

Hey all,

How do you go about resetting round robins in the Kontakt libraries that don't have the reset as an added feature?

All I ever found is some old script on the forums which involves things I've never messed with... maybe it's time though. But the problem is - I really need a quick solution atm.


----------



## polypx (Aug 21, 2018)

It depends on the library and how it's scripted. In some libraries, hitting the "Restart" exclamation point will do it.


----------



## shomynik (Aug 21, 2018)

polypx said:


> It depends on the library and how it's scripted. In some libraries, hitting the "Restart" exclamation point will do it.


The reset button certenly does it, but that button is not automatible, right? Can I call it with a midi cc? Or any other way in cubase? Thanks.


----------



## EvilDragon (Aug 21, 2018)

Nope.


----------



## shomynik (Aug 21, 2018)

EvilDragon said:


> Nope.



Such an answer from you ED certenly doesn't mean a good thing.

Could you please confirm, if I go script route that I will be able to triger the reset via midi cc?

Thx in advance ED.


----------



## EvilDragon (Aug 21, 2018)

It depends on the library, again, and if the reset button that was scripted uses ui_button (non-automatable/non-MIDI learnable) or ui_switch. But you can be sure that adding a script that deals with RR in a custom way to an instrument that already handles RR its own way is just asking for trouble - it won't work. Developer needs to support this functionality.


----------



## Adam Takacs (Aug 21, 2018)

Round robin reset should be essential in every library. It's so important. One of the reasons I love Spitfire so much is "RR RESET FROM"


----------



## EvilDragon (Aug 21, 2018)

You can only appeal to the developers, then. RR reset makes no sense when RR shuffling scheme is just about completely random, unless a repeatable pseudo-RNG was used in the script, which I'd hope most devs would know about (since it's right there in Big Bob's math lib, along with seed and reset functions - however I also know that many devs just don't use BB's math library).

When I worked on RRA Palette, the way I implemented it is that you have two RR modes: one is straight cycling RR (1-2-3-4), the other is just random without repeating the same RR twice in the row. For the first mode, RR counters are reset on transport start automatically. You don't even need to think about it. For the second mode, it is assumed you are on the wild side of things and you want to be surprised every time. So fine, we give you that as well.


----------



## Adam Takacs (Aug 21, 2018)

Writing or understanding scripts does not belong to my skills. 
But if you have the straight cycling RR (1-2-3-4) mode and you can reset it from any note (as in Spitfire libraries, if I know right) you program the sequence as you wish, can be random or not.
However, random scripts can only be random. Or do I get it wrong?


----------



## shomynik (Aug 21, 2018)

EvilDragon said:


> It depends on the library, again, and if the reset button that was scripted uses ui_button (non-automatable/non-MIDI learnable) or ui_switch. But you can be sure that adding a script that deals with RR in a custom way to an instrument that already handles RR its own way is just asking for trouble - it won't work. Developer needs to support this functionality.



Got it! Thanks so much for this heads up.



EvilDragon said:


> When I worked on RRA Palette, the way I implemented it is that you have two RR modes: one is straight cycling RR (1-2-3-4), the other is just random without repeating the same RR twice in the row. For the first mode, RR counters are reset on transport start automatically. You don't even need to think about it. For the second mode, it is assumed you are on the wild side of things and you want to be surprised every time. So fine, we give you that as well.



Love your solutions! Although, it still seems to me that the reset function would be the best as you can call it where ever you want, so if you want to work on a part of the track only you can be sure it will playback the same way when you start the track from the beggining.



tadam said:


> Writing or understanding scripts does not belong to my skills.
> But if you have the straight cycling RR (1-2-3-4) mode and you can reset it from any note (as in Spitfire libraries, if I know right) you program the sequence as you wish, can be random or not.
> However, random scripts can only be random. Or do I get it wrong?



Well if it's 1234 than it's not random - or I didn't quite get what you were saying so sry in that case.

I'd like to control every single RR so any kind of random is a no go for me.



tadam said:


> Round robin reset should be essential in every library. It's so important. One of the reasons I love Spitfire so much is "RR RESET FROM"



Absolutely! +1000


----------



## Adam Takacs (Aug 21, 2018)

It's not random, as default (1-2-3-4), you are right. 
But you can make it random with keyswitches and that's the point.
That's the way you can control every single RR at any time.

This is a brilliant solution in Spitfire libraries and it would be nice to see it in other libraries as well.


----------



## EvilDragon (Aug 21, 2018)

shomynik said:


> Although, it still seems to me that the reset function would be the best as you can call it where ever you want, so if you want to work on a part of the track only you can be sure it will playback the same way when you start the track from the beggining.



Possibly, but my thinking is that the only thing that matters is that renders are always the same, and this behind-the-scenes method ensures exactly that! Perhaps I should update the RR code so that it also uses the repeatable pseudo-random number generator for one of following Palette updates... we'll see.



tadam said:


> However, random scripts can only be random. Or do I get it wrong?



They can be pseudo-random. As in, you will always get the same sequence of numbers every time you reset the pseudo-random number generator. You can then set a different seed value for the PRNG, which will result in a different "random" sequence, which can then again be repeatable when you reset it.


----------



## Adam Takacs (Aug 21, 2018)

EvilDragon said:


> Possibly, but my thinking is that the only thing that matters is that renders are always the same, and this behind-the-scenes method ensures exactly that! Perhaps I should update the RR code so that it also uses the repeatable pseudo-random number generator for one of following Palette updates... we'll see.
> 
> 
> 
> They can be pseudo-random. As in, you will always get the same sequence of numbers every time you reset the pseudo-random number generator. You can then set a different seed value for the PRNG, which will result in a different "random" sequence, which can then again be repeatable when you reset it.




Oh, I see. Thank you!


----------



## shomynik (Aug 21, 2018)

tadam said:


> It's not random, as default (1-2-3-4), you are right.
> But you can make it random with keyswitches and that's the point.
> That's the way you can control every single RR at any time.
> 
> This is a brilliant solution in Spitfire libraries and it would be nice to see it in other libraries as well.



Ah, I see, you meant choosing every single rr. That's great, yes, OT does the same.



EvilDragon said:


> Possibly, but my thinking is that the only thing that matters is that renders are always the same, and this behind-the-scenes method ensures exactly that! Perhaps I should update the RR code so that it also uses the repeatable pseudo-random number generator for one of following Palette updates... we'll see.



Well, you see, if you work on the part in the middle of the track with RR always starting on RR1 (stop, and repeat from the same location), then when you play it from the beggining, this part may not fall on the RR1 so it would sound completely different. Am I wrong? And, when you have a very dense track (example, many orchestral parts and solo instruments) it's very important that you have the possibility to start and work from anywhere and be sure that it will always sound the same.

Btw pseudo random sounds like a great idea as well!


----------

