KSP is a rather simple procedural scripting language for Native Instrument’s Kontakt e.g. to create your own Instruments like those you are probably using all day long already.
Before we start scripting we should create a resource container where we put in all the files we need for our instrument (e.g graphic files or impulse responses etc.)
Never check “Absolute path” when publishing your instrument. Because with absolute paths, your customers/users are barely able to use your instrument. Learn more why…
The Basic code structure is very simple. We basicaly put most of our code into callbacks
All callbacks look like this
on <callback> ... end on
In general the code inside callbacks gets executed when specific events happen. For example playing a note on our keyboard always executes the “on note” callback.
So callbacks build a framework for our instrument and are mostly needed to communicate with different parts of the Kontakt engine.
Like with any other programming languages in KSP there are also variables, arrays and constants.
They can only be declared inside the on init callback and can then be used throughout the whole script. So they are all on global scope by default and can even be used inside custom functions.
Read more »
The set_engine_par() command is used to control or set almost any engine parameters like volume, pan, tune, fx, lfo’s, envelopes and more. So wiht this command we actually control Kontakt via our custom UI. So set_engine_par() is mostly used in combination with the on ui_control callback whenever we use custom knobs or buttons to control Kontakt’s FX, Modulators or any other engine parameter. Read more »