I don't know. They're both pretty cheap so I don't think this will be a bottleneck anywhere but if I have to guess I would say the scripting functions are a bit faster.
Thanks I'll try it out. I'm reusing some graphics from a Kontakt project which already includes an arrow for the drop down menus so the combobox one is not needed for this project, although I could edit the graphic to remove the arrow but I think it looks good in this context.
I would recommend using two mods for this case. There's almost no performance penalty (voice start modulators are very fast) and you don't have to deal with edge cases (what if the delta sum goes beyond the normalized modulation range etc.)
I'll add it anyways (I didn't need it yet, but there may be some cases where it might come in handy).
I noticed a little (possible) bug with the envelope. When I set the release time to 0ms via a control on the interface the actual release knob of the envelope only goes down to 1ms
Cool stuff–currently handling variable RR in Kontakt is a bit of a nuisance. Right now it usually involves "blipping" a zone to see if it exists first. This can always be cached into a lookup table (that's what I did when scripting CineBrass, for example), but the problem is that the only way you can see if a zone exists in a group/velocity/pitch is by actually playing it. If the zone ID returns "-1", then you know there's no sample. It's inefficient because ideally you should be able to check mapping-related data directly through scripting.