What's new

HOW TO: Approaching Modulation in KSP

When find_mod() doesn't find a modulator with designated name, it actually returns a value of 0 instead of -1! This is actually a bug on NI side, that I don't know why isn't fixed yet. How does this manifest? Well, it manifests in such a way that it will CHANGE the value of the modulator whose slot ID is 0 REGARDLESS! This is usually amplifier envelope which is assigned by default by Kontakt. Usually it sets the modulation amount of it to 0%, which makes the instrument behave in a very weird way (envelopes don't work and notes are cut short). So, if your instrument starts behaving weirdly after a wrongly targetted find_mod(), you know what to look for!
I'm running into this problem, but all my modulators are correctly named. On some groups it works, on some it doesn't. I've renamed again and again, but some slots gets named correctly, others don't. When I right click on the ones that don't work, it only displays the name that I've given it, not the usual extra info about slot and generic.

What could be causing this, and how do I fix it?

Edit: further investigation reveals Kontakt loses the information about slot and generic the moment I rename the modulator. What the hell?

Edit 2: It seems if my mod strip names have any numbers in them, that's when it goes wrong, which is weird because the patch I worked on yesterday has numbers in the mod target names just fine...
 
Last edited:
I think your modulators got unsychronized. It's one of Kontakt's quirks which can catch you unaware if you don't know about it. So let me break it down...

Every modulator that you add (internal or external), carries a so-called class ID with it, which is used when editing multiple groups simultaneously, in order to carry over edits from the currently visible group to all other editable groups.

In some cases, this class ID changes its value, which can affect how this edit sync ends up working (or not). Here are some situations.

SCENARIO A:
1. Create a new empty NKI
2. Duplicate the empty group
3. Enable Edit All Groups
4. Add a MIDI CC modulator to whatever target (say Tune)
5. Select only ONE group for editing, and change the CC number for that modulator

From this point onward, any actions like changing mod amount, adjusting Lag, flipping Invert, toggling mod shaper and adjusting the mod shaper curve, will NOT be transferred between multiple selected groups. Which is fine, these are different modulators now since they have different MIDI CC numbers assigned. HOWEVER, if you select that same MIDI CC modulator with Edit All Groups enabled, and delete the modulator, it actually gets removed from all selected groups! Which makes no sense, considering any other edits didn’t transfer between the groups.

SCENARIO B:
1. Create a new empty NKI
2. Duplicate the empty group
3. Select just one of these groups and change the pitch bend modulator to target sample start
4. Change that same modulator back to modulate pitch again

From this point onward, these two pitch bend modulators are not synced and any edits won’t transfer between them. Even if they are modulating exactly the same target! Same thing happens if you change the external modulator type. Class ID increments on every change, so you can end up with the same situation as above, just by changing pitch bend to any other external modulator, then back to pitch bend.

SCENARIO C:
Copy-pasting groups between different instruments also copies the class ID of every modulator, which means there’s even more potential for desynchronization of seemingly identical modulators in identical positions (for example, you delete the default pitch bend modulator, add some new ones, then bring back the pitch bend modulator - now it will have a different class ID and when you copy that group to another instrument it will be desynced with the rest).
 
I think your modulators got unsychronized. It's one of Kontakt's quirks which can catch you unaware if you don't know about it. So let me break it down...

Every modulator that you add (internal or external), carries a so-called class ID with it, which is used when editing multiple groups simultaneously, in order to carry over edits from the currently visible group to all other editable groups.

In some cases, this class ID changes its value, which can affect how this edit sync ends up working (or not). Here are some situations.

SCENARIO A:
1. Create a new empty NKI
2. Duplicate the empty group
3. Enable Edit All Groups
4. Add a MIDI CC modulator to whatever target (say Tune)
5. Select only ONE group for editing, and change the CC number for that modulator

From this point onward, any actions like changing mod amount, adjusting Lag, flipping Invert, toggling mod shaper and adjusting the mod shaper curve, will NOT be transferred between multiple selected groups. Which is fine, these are different modulators now since they have different MIDI CC numbers assigned. HOWEVER, if you select that same MIDI CC modulator with Edit All Groups enabled, and delete the modulator, it actually gets removed from all selected groups! Which makes no sense, considering any other edits didn’t transfer between the groups.

SCENARIO B:
1. Create a new empty NKI
2. Duplicate the empty group
3. Select just one of these groups and change the pitch bend modulator to target sample start
4. Change that same modulator back to modulate pitch again

From this point onward, these two pitch bend modulators are not synced and any edits won’t transfer between them. Even if they are modulating exactly the same target! Same thing happens if you change the external modulator type. Class ID increments on every change, so you can end up with the same situation as above, just by changing pitch bend to any other external modulator, then back to pitch bend.

SCENARIO C:
Copy-pasting groups between different instruments also copies the class ID of every modulator, which means there’s even more potential for desynchronization of seemingly identical modulators in identical positions (for example, you delete the default pitch bend modulator, add some new ones, then bring back the pitch bend modulator - now it will have a different class ID and when you copy that group to another instrument it will be desynced with the rest).
Thank you so much for taking the time to explain. I was ready to punch my screen....

Scenario C is what happened, the groups where copy-pasted from another instrument. So if I copy-paste groups, and I want the same modulators on all groups, it's better to delete modulators after pasting and make new ones for all groups in one go?

EDIT: tried that, seems I have to do it a couple of times before it works...
 
Last edited:
It's better to duplicate groups from existing instrument and paste zones in.
I've reached the same conclusion, but it's a lot more work because I have 5 mic positions, one group each. Unless I can automate it with creator tools, but figuring that out will certainly take longer than just do it by hand :emoji_confounded:
 
Hi, first post for me... Can anyone point me how to assign mod targets? I have a "filter type" menu that selects between the various filters. But when I go from ladders to formants, all the sudden my envelopes and velocity mods no longer respond. I think I need to specify that the "Cutoff" targets should now be called "Talk" etc... but I can't find much info on it in the manual.
 
You need to create additional targets in order to make the Formant filter parameter modulations work.
 
Top Bottom