Necessity is the mother of invention, so when I ran into a scenario where I wanted to have random “round-robin” sample selection in Kontakt on numerous groups I had to come up with a solution.
Here is the situation…
I did a quick recording of my son’s mini drumset (as seen above with packing peanuts in the bass drum. Hey, he’s 5) so I could make a multisample drumset instrument in Kontakt. Since I was able to get 5 hits per drum and cymbal I wanted to have Kontakt randomly choose a sample within each groups 5 samples to play. This is in order to cut down on the “machine-gun” effect that you get when only one sample gets re-triggered quickly, and it makes the sound much more realistic. Real instruments always react different to each strum/hit/bowing, etc. so getting multiple samples and having them randomly cycle through helps to approximate this.
Kontakt already has the ability to have numerous groups play through in a “round-robin” style, but the problem with this is that there can only be one collection of “round-robin” groups per instrument. So, this is what I did to overcome this obstacle.
I used a couple scripts to help. First, I inserted a “Change-Key” factory script which allowed me to re-route the keys I was playing. This allows Kontakt to receive the note C3 but re-routed it to C-1. Then I distributed 5 samples of a kick drum 2 notes above C-1 and 2 notes below C-1. I used this technique with each drum hit but with different origins and destinations for the Key Change. For snare (typically E3), I re-routed it down to G#-1, and the same for the rest of the 7 hits as seen in the image below. This is strange because when you look at the instrument keyboard it looks like no samples are assigned to the notes you are playing.
Then I used an awesome Round Robin script made by R.D. Villwock a.k.a. “Big Bob”. This script takes any note and replaces it with a note above or below it, and correctly re-tunes it so the pitch stays the same. This is a great way to liven up static samples, but that is another tutorial. To overcome the fact that this script re-tunes notes in order to keep them in pitch, I had to take the sample zones and de-tune each one appropriately so that the script would re-tune them back into the original pitch. So for instance the kick on A#-2 (2 semitones below C-1) had to be tuned down by 2 semitones so that when the script tunes it up by 2 semitones to match C-1 it will be back at the original pitch. Like I said, this is a workaround.
The end result is that when I play a C3 (kick drum), the note gets re-routed to C-1, then randomized by + or – 2 notes/semitones which chooses a random sample. The samples are all tuned to compensate for the Round Robin scripts pitch changes, so the end result is the original pitched sample. So, that is the end of the story, and I hope it helps you out of a pickle some day.
Grab the Free Kontakt instrument I made which will include the scipts I mention here.