# Is KSP backward compatible ?



## Fredeke (Dec 7, 2018)

Hello

I am currently developing a sample library for Kontakt 5. 

I am about to begin some heavy scripting, but I wonder : will the scripts (and the whole library, for that matter) work in Kontakt 6 as well ?

Thanks


----------



## P.N. (Dec 7, 2018)

Hi.

KSP is always forward compatible, but not necessarily backwards compatible.
Your KSP created for Kontakt 6, may very well work for Kontakt 5 versions.
You just need to be sure that the commands, controls, etc, you use were already implemented in the older versions.

Regards.


----------



## Andrew Aversa (Dec 7, 2018)

P.N. said:


> Hi.
> 
> KSP is always forward compatible, but not necessarily backwards compatible.
> Your KSP created for Kontakt 6, may very well work for Kontakt 5 versions.
> ...



You have the definitions reversed 

"Backward compatible" means that the *latest *version of a program can run files made with *earlier versions*. Almost all modern programs are backward compatible. This includes KSP.

"Forward compatible", which is quite rare, means that an *earlier version *can load files made with a more* recent version*.

*Kontakt 6* loading Kontakt 5 files means *Kontakt 6* is "backward compatible".

IF *Kontakt 5* could load Kontakt 6 files, it would be "forward compatible". This is not the case.


----------



## P.N. (Dec 7, 2018)

zircon_st said:


> You have the definitions reversed



Yes, i mixed them up there. Thanks.

I'll correct it:
KSP is always backwards compatible, but not necessarily forwards compatible.


Simply taking the code - KSP, it is indeed backwards compatible, meaning, code made with Kontakt 5 KSP commands/variables/controls, etc, will be compatible with all future versions.

Code made for Kontakt 6, will be able to be implemented in a Kontakt 5 instrument (forwards compatible) only if there are no Kontakt 6 exclusive commands/variables/controls present.


----------



## P.N. (Dec 7, 2018)

zircon_st said:


> *Kontakt 6* loading Kontakt 5 files means *Kontakt 6* is "backward compatible".
> 
> IF *Kontakt 5* could load Kontakt 6 files, it would be "forward compatible". This is not the case.



Yes, but the question wasn't about nki's. The question was about KSP. 

Edit:

Say you create a new Kontakt 6 instrument.
You have your code and you decide to make a Kontakt 5 version of that instrument. 
You create a new nki, remap, etc. You apply your "Kontakt 6" code into your new Kontakt 5 nki.

The code may work, that's why i said it may or not be forwards compatible, depending on the commands/controls used...


----------



## Fredeke (Dec 7, 2018)

Thanks guys !

So, in short, I don't need to worry.
... Right ?


----------



## P.N. (Dec 7, 2018)

In short, only worry about previous versions.


----------



## Fredeke (Dec 7, 2018)

Great. Thanks!


----------

