# Xtant-audio.com Kontakt Scripting Tutorials Still Up To Date?



## tabulius (Jun 17, 2021)

I'm considering diving into the deep end of Kontakt scripting. I'm a total noob baby level in scripting, so I need some tutorials to get me started. I've browsed some resources that many of you have linked, but frankly, I don't have a clue what all those additional Koala and SublimeKSP do for me.

Many of you recommended the xtant-audio tutorials, and I'm happy to pay some money for good study material. However, I saw that minimal requirements are Kontakt 4.2 or higher, so I wondered if tutorials are done for K4, leaving many of the new features of Kontakt 5-6?

Let me know if these are still fully relevant. And any other similar free, or paid courses on scripting are more than welcome!


----------



## d.healey (Jun 17, 2021)

Hello

All the basic stuff to get up an running with KSP is mostly the same as it was in K4 (even in K3). So the classes should set you up nicely.

When I made the classes Kontakt 5 was pretty much what most developers were using, I stuck to K4 though because the stuff I'm teaching (the fundamentals) is relevant across versions.

The intention of the original classes is to take a complete beginner and get them to the point where they can build some instruments quickly. In addition to showing a few more advanced concepts, helping to improve their workflow, and leaving them in a position where they'll have enough knowledge and understanding to be able to decipher the KSP manual when they want to take things further.

This last point is crucial. It's not possible to teach everything that can be done with KSP, and there is no-way I can know what an individual will want to do in their own projects. So I try to cover a broad area and empower the student to be able to pursue their specific interests themselves, with the help of forums like this one and the KSP manual.

By the way if you want to make standalone libraries that don't require Kontakt you should checkout HISE (tutorials in my signature  ).


----------



## tabulius (Jun 17, 2021)

This is the first time I've heard about HISE. Sounds interesting. Is the scripting on the same level as in Kontakt?


----------



## d.healey (Jun 17, 2021)

tabulius said:


> This is the first time I've heard about HISE. Sounds interesting. Is the scripting on the same level as in Kontakt?


The scripting in HISE is 1000x better than Kontakt. KSP is a horrible language, powerful, but horrible. Sublime KSP makes it tolerable but it's still unpleasant.

HISE Script has a very similar syntax to Javascript (on which it is based) and is therefore glorious  The documentation for HISE is also much better (or at least it was last time I checked Kontakt's a couple of years ago).

If you go the HISE route expect a learning curve, it's not a tool for end users, like Kontakt is, it's a full IDE for making plugins. You'll need to be prepared to set up compilers on all operating systems you want to export on, and you'll have some headaches for the first week or so  but once you get up and running you'll find it a very enjoyable environment to work in.

Here's a (slightly altered) example from the KSP manual.

```
$c := 0
while($c < 128)
    $a := 0
    while($a < 128)
        message($c & " : " & $a)
        inc($a)
    end while
    inc($c)
end while
```

And here's the same thing in HISE Script


```
for (i = 0; i < 128; i++)
    for (j = 0; j < 128; j++)
        Console.print(i + " : " + j)
```


----------



## tabulius (Jun 22, 2021)

Because I'm a total beginner in scripting, it really doesn't matter will I start with HISE or Kontakt. With HISE I'm just wondering are there any stability or compatibility issues? I'm a bit worried about the future developments of HISE because it (mostly) depends on one man. Native Instruments has a team of programmers and I can rest assured that it will be supported for years and years to come. Also, I didn't find any information about the possibility of legato scripting or using separate release samples. @d.healey your HISE tutorials in Youtube are awesome and it gives an idea how is it like to work with this sampler. I appreciate your work and effort! I have to study some more and make a decision at some point.


----------



## d.healey (Jun 23, 2021)

Good questions!



> With HISE I'm just wondering are there any stability or compatibility issues


HISE sometimes crashes if you trigger a bug. But if you report the bug it will usually be fixed within a week. The stability of the plugins you make with HISE however will be as stable as you make them. I haven't had any stability issues with the plugins I've made.



> Native Instruments has a team of programmers and I can rest assured that it will be supported for years and years to come


You have no guarantee that NI will stay in business. Lots of companies get gobbled up by bigger companies and are shutdown or merged into something unrecognisable - like when Apple bought Redmatica... Or sometimes companies just make bad decisisions and cause their products to stagnate without any major updates - like Kontakt, or Sibelius. NI has also just been bought by a US investment firm...

While HISE has only one main developer it's open source which means anyone can contribute to it, and several of us HISE users do. If you check the git history you'll see a lot of commits from me and other developers. We add many small contributions that may not be signficant in terms of the size of the codebase but they still add significant functionality. If anything was to happen to Christoph somebody else could jump in as the "main" developer to steer the project. HISE is built with the JUCE framework which is used by 1000s of developers so it's not like it's in some obscure language that no-one but Christoph could understand.



> it really doesn't matter will I start with HISE or Kontakt.


If you want to make a business from selling plugins then it does. If you're just doing this for yourself then not so much and you'll probably be more comfortable working with Kontakt. HISE and Kontakt are very different so if you start with one don't expect to be able to move to the other without a learning curve.

You could always try both 

If you need help getting up and running with HISE send me a message and we can get in a call/share screens and get you set up.



> Also, I didn't find any information about the possibility of legato scripting


Yeah it's possible, same as in Kontakt. Same with release samples. About the only thing you can't do with HISE that you can with Kontakt is time stretching, but that will be added at some point. There are many things you can do with HISE that you can't do in Kontakt.


----------



## EvilDragon (Jun 23, 2021)

d.healey said:


> About the only thing you can't do with HISE that you can with Kontakt is time stretching



That, plus those pretty great sounding new effects that are being added on a somewhat regular basis now. I don't think you can easily achieve what Replika, Phasis, Flair or Choral do without some rather deep DSP knowledge.



d.healey said:


> Or sometimes companies just make bad decisisions and cause their products to stagnate without any major updates - like Kontakt


Sorry but that's just not true. Kontakt is far from stagnating (list of added features both engine and KSP-wise added since K5 onwards is considerable, and stuff like wavetable engine, new effects, snapshots, new KSP features added are not minor at all), and it's still the biggest earner for NI considering how many products in Komplete it powers, so may want to check your facts. The only thing that is stagnating is the GUI (would be stupid to not agree with that), but there is a rather steady influx of new features being added continually.



d.healey said:


> NI has also just been bought by a US investment firm...



Again, time to check some facts. It was just a handover, NI had investment capital going into it since 2013. Nothing really majorly changed in the way products are created just because NI is under some venture capital (first EMH, now Francisco Partners). If anything, it enabled NI to increase revenue year after year after year.


----------



## d.healey (Jun 23, 2021)

EvilDragon said:


> That, plus those pretty great sounding new effects that are being added on a somewhat regular basis now. I don't think you can easily achieve what Replika, Phasis, Flair or Choral do without some rather deep DSP knowledge.


Not to get into a Kontakt vs HISE thing but you can build your own DSP effects inside HISE. With Kontakt you're stuck with what NI has given you, granted they are good effects, but if you want something that isn't on offer you can't have it.


----------



## EvilDragon (Jun 23, 2021)

Sure, that's a valid point. On the other hand there's also Reaktor as a second authoring platform at NI, of course. And there's also Gorilla Engine as another player shaping up...

I doubt you could easily achieve exactly the sound of Replika just by wiring some modules like that, though.


----------



## TabbyCat (Jun 24, 2021)

EvilDragon said:


> Sorry but that's just not true. Kontakt is far from stagnating (list of added features both engine and KSP-wise added since K5 onwards is considerable, and stuff like wavetable engine, new effects, snapshots, new KSP features added are not minor at all),


...but that's almost all end-user, not developer. KSP-wise it's been new syntax things, not usability nor extensibility. Creator Tools is a disappointing slap in the face. Where's the functionality where we can, you know, draw controls and hook them up to engine parameters? Like every other tool, even the crappy ones? I don't think you can ignore this. They've thrown us some bones every once in a while so we stop complaining, but using a proprietary 1991-style scripting language with no visual editor isn't cutting it in 2021.



EvilDragon said:


> Again, time to check some facts. It was just a handover, NI had investment capital going into it since 2013. Nothing really majorly changed in the way products are created just because NI is under some venture capital (first EMH, now Francisco Partners). If anything, it enabled NI to increase revenue year after year after year.


Revenue <> R&D, and that's what has many of us nervous. Usually late-stage acquisitions in tech equals a focus on boosting short-term revenue....through aggressive marketing, subscription models (ack), social media presence, acquiring peers, endless bundleware...everything except R&D. For example:

Kontakt 1 - 2002
Kontakt 2 - 2005
Kontakt 3 - 2008
Kontakt 4 - 2010
Kontakt 5 - 2012
Kontakt 6 - 2018

Note the brutal dropoff there at the end. That coincides precisely with equity investment #1. After 6 years of silence, we're still declaring controls in code and counting on multiple (!) 3rd-party tools to do extreme basics. For developers - not customers - Kontakt is squarely twenty years go, at best. In fact, from a development perspective, it's been nothing more than a "necessary evil" for quite some time. It comes down to one thing: market share. And NI has it...for now.

I don't say this to be contrary / trolling / whatever - I say this from the perspective of a developer who is looking over the fence at the ever-leveling playing field, prepared to jump it at the first opportunity.

Put differently: as someone with no skin in the game, I agree with everything d.healey said. It would be wise for someone just starting with scripting and potentially making long-term choices to consider the above.


----------



## Lindon (Jun 26, 2021)

EvilDragon said:


> Sure, that's a valid point. On the other hand there's also Reaktor as a second authoring platform at NI, of course. And there's also Gorilla Engine as another player shaping up...
> 
> I doubt you could easily achieve exactly the sound of Replika just by wiring some modules like that, though.


How much development work have you done in HISE or Gorilla? I'm not sure your "doubts" are valid if you haven't invested the time and effort into at least two of these platforms, otherwise you are just tyre kicking from the sidelines.

You know (because you were there...) that David Healey and I have been Kontakt developers for over 10 years...meanwhile he and I have been HISE developers for over 3 years (he's probably been at it more time than that). I must admit I've only spent a cursory few months trying to get Gorilla to work...so I cant really comment on it, well I could but it would be unfair wouldn't it?

So ED how many products have you even tried to build in HISE? How much real-world experience have you got of the platform?

It reminds me of an old guitarist joke (I am a guitarist so its really on me..) but I will substitute "KSP developer" here:

Q: How many Kontakt KSP developers does it take to build a native plug-in?
A: 10, 1 to do it, and 9 to stand around saying "Well I could do that in Kontakt..."

This is usually the point where you ask how many real-world plugins have actually been built in HISE, and we give you an ever growing list....

..then you pick on some minutiae of the HISE architecture until chrisboy shows up and puts you right...

Then eventually I point out to everyone here you actually get paid by Native Instruments so you are not unbiased, that usually ends the discussion.


----------



## EvilDragon (Jun 26, 2021)

Nobody is unbiased ever. Not me, not you, not David or anyone else. We all have our preferences (of course).

(I do have some decent Gorilla experience for my own stuff, their whole dev chain is much easier to grasp than HISE overall.)

Also this discussion is not done when you say it's done.


----------



## babylonwaves (Jun 26, 2021)

Lindon said:


> Then eventually I point out to everyone here you actually get paid by Native Instruments so you are not unbiased, that usually ends the discussion.


why does it end the discussion? I think @EvilDragon gave some valuable input here


----------



## Lindon (Jun 28, 2021)

babylonwaves said:


> why does it end the discussion? I think @EvilDragon gave some valuable input here


because in my experience ED doesn't like it to be well known that he is paid on a regular basis by NI


----------



## Lindon (Jun 28, 2021)

EvilDragon said:


> Nobody is unbiased ever. Not me, not you, not David or anyone else. We all have our preferences (of course).
> 
> (I do have some decent Gorilla experience for my own stuff, their whole dev chain is much easier to grasp than HISE overall.)
> 
> Also this discussion is not done when you say it's done.


I never said it was done... I said its "usually" done because your bias gets pointed out, and "usually" you go quiet at that point. I have no objection to anyones bias, as you say we all have our preferences , but I pretty much guarantee that if chrisboy ever paid me money to work on HISE - I would make sure I included that information when I was offering my bias and opinion on products that were competitive to HISE... because I think thats ethically the right thing to do.

...and again you are commenting on the HISE dev chain, you may well be right - my limited experience with Gorilla is that 
a. theres ZERO support, 
b. theres ZERO documentation worth anything, 
c. its mystifyingly laid out
d. it plain doesent work

Of course you should all bare in mind I have exactly about a weeks worth of experience so, as I've already said its really really not my place to comment, and those observations should be taken with a huge grain of salt. 

Now, given you are (again) commenting and making comparisons (possibly valid ones) with HISE, please tell us all how much development work you have done in it. So we can see the value of your contribution.


----------



## EvilDragon (Jun 28, 2021)

Lindon said:


> my limited experience with Gorilla is that
> a. theres ZERO support,
> b. theres ZERO documentation worth anything,
> c. its mystifyingly laid out
> d. it plain doesent work


I've had a number of back and forth e-mails with them throughout some months, reporting some bugs (they got fixed) and suggested some minor features (they added them).

There's a number of docs (script reference, module reference, user guide) on their Zendesk portal and also knowledgebase articles, documentation is in fact better than what NI has for KSP.

I have no idea what you mean by "mystifyingly laid out", I had things mapped and playing pretty fast. It's really not much different from how things are laid out in i.e. Falcon - tree view on the left, mapping on the right, parameters on top. Pretty darn easy.

Yep I've had it crash a few times, but I also had the same with Kontakt, Falcon, Halion and so on. They fixed some of those crashes, too. Nice.


Overall - it does work. So... ¯\_(ツ)_/¯


----------



## Lindon (Jun 29, 2021)

EvilDragon said:


> I've had a number of back and forth e-mails with them throughout some months, reporting some bugs (they got fixed) and suggested some minor features (they added them).
> 
> There's a number of docs (script reference, module reference, user guide) on their Zendesk portal and also knowledgebase articles, documentation is in fact better than what NI has for KSP.
> 
> ...


Good to hear... so what was your experience with HISE?


----------



## jules (Jul 4, 2021)

tabulius said:


> Many of you recommended the xtant-audio tutorials, and I'm happy to pay some money for good study material.


Be aware that some of them need a sublime text knowledge that adds another level of complexity when you're starting. I bought "extra credits 2 factory scripts", but ST is a pre-requisit.


----------



## CatComposer (Sep 11, 2021)

d.healey said:


> The scripting in HISE is 1000x better than Kontakt. KSP is a horrible language, powerful, but horrible. Sublime KSP makes it tolerable but it's still unpleasant.
> 
> HISE Script has a very similar syntax to Javascript (on which it is based) and is therefore glorious  The documentation for HISE is also much better (or at least it was last time I checked Kontakt's a couple of years ago).


Hi David,
Thanks for sharing this.

I want to generate MIDI events in Kontakt using a custom script, as EvilDragon said,
"KSP can also generate MIDI events in its internal MIDI object, which can then be drag&dropped to the DAW."

I'm wondering if HISE would also be capable of doing this?

And if so, would a Javascript programmer be able to do this using HISE?


----------



## d.healey (Sep 12, 2021)

I think HISE can do this but I've never tried. HISE doesn't use standard Javascript, you'd need to hire someone who knows HISEScript - like Lindon from channel robot


----------



## CatComposer (Sep 12, 2021)

d.healey said:


> I think HISE can do this but I've never tried. HISE doesn't use standard Javascript, you'd need to hire someone who knows HISEScript - like Lindon from channel robot


Thanks David!
I will get in touch with him.


----------



## Guster83 (Oct 23, 2021)

Hello everyone, I'm a first time poster in the forum. This thread was helpful since I'm familiar with KSP and have put together a couple instruments just for fun, and was thinking about going deeper into it and spending more time. And had no idea about HISE. @d.healey , a quick question if possible: I would need to have a JUCE license to be able to export my HISE instruments to AAX, AU, VST is that correct?
Thank you!


----------



## d.healey (Oct 23, 2021)

Guster83 said:


> I would need to have a JUCE license to be able to export my HISE instruments to AAX, AU, VST is that correct?


You only need a JUCE (and also a HISE) license if you want to distribute proprietary (closed source) plugins. If you're releasing them under the GNU GPL then there is no commercial license requirement.

However if you are releasing AAX then that is a proprietary format so even if you make your source code available you'll still need the necessary licenses to distribute the plugin.

Steinberg no longer allows new sign ups for distributing VST2 plugins so unless you already have a license agreement with Steinberg you'll be making VST3 plugins.


----------



## Guster83 (Oct 24, 2021)

Thank you for the detailed response @d.healey


----------



## olmerk (Oct 29, 2021)

Gorilla Engine is still "not publicly downloadable yet" (received such reply in registration email). Though they have a web-site: https://gorilla-engine.com

Does the engine still have the same malfunctions, which Lindon mentioned in this thread above? Has anyone checked it recently (granted with access)?


----------



## Guster83 (Jan 24, 2022)

olmerk said:


> Gorilla Engine is still "not publicly downloadable yet" (received such reply in registration email). Though they have a web-site: https://gorilla-engine.com
> 
> Does the engine still have the same malfunctions, which Lindon mentioned in this thread above? Has anyone checked it recently (granted with access)?


Bumping this up, because I've been wondering about Gorilla recently and have been unable to find information. Maybe someone can chime in with something  Is there any online documentation that does not require a membership?


----------



## EvilDragon (Jan 25, 2022)

Guster83 said:


> Is there any online documentation that does not require a membership?


Nope, GE docs are not public. However they are very much existent and rather well done. Their team is responsive, and they continually fix things (although they chunk them in updates 3-9 months away).

I do wonder if they will ever "go public", tbh.



olmerk said:


> Does the engine still have the same malfunctions, which Lindon mentioned in this thread above?


No, it works quite alright. Otherwise you wouldn't see Virharmonic guys moving from UVI to GE.


----------



## Guster83 (Jan 26, 2022)

EvilDragon said:


> Nope, GE docs are not public. However they are very much existent and rather well done. Their team is responsive, and they continually fix things (although they chunk them in updates 3-9 months away).
> 
> I do wonder if they will ever "go public", tbh.
> 
> ...


Thanks @EvilDragon 
Does GE have its own scripting language?


----------



## EvilDragon (Jan 26, 2022)

Yes. It's heavily KSP influenced, but they extended it in a few directions to match their needs.


----------

