Skip to content
Davide Magni edited this page Sep 1, 2016 · 44 revisions

Koala v1.0.0's guide was a PDF file which came with the library. The guide has been completely moved to GitHub Wiki.

This library (hereby known as "Koala”) is a collection of functions and macros which enormously simplify the process of writing scripts in Kontakt KSP scripting language.

The usage of this library will improve significantly the look and readability of your scripts, as well as allowing super fast access to advanced functions not available with standard KSP code.

Big thanks to Sam Windell and his amazing fork of SublimeKSP. This library is entirely based on that. More info in the Wiki.

This guide assumes you are well-aware of what Kontakt Scripting is. If you don’t, please be sure to check out KSP Manual (if you own Konakt, you will find it inside Kontakt documentation files).

We are not going to explain basic Kontakt scripting features, so be sure to know them well.

Index

  • Home
  • [List of Koala's functions, macros and constants](List of Koala's functions, macros and constants)

1 - Installation

Before being able to run Koala and simplify your developing process, there are some tasks that require your attention.

  • [1.1 - Installation](1.1 - Installation)
  • [1.2 - Include Koala Library into your Script](1.2 - Include Koala Library into your Script)

2 - GUI features

Koala Library features a ton of GUI functions to massively reduce the time you need to spend on scripting for your GUI.

  • [2.1 - GUI features](2.1 - GUI features)
  • [2.2 - Create UI controls](2.2 - Create UI controls)
  • [2.3 - Set UI controls data](2.3 - Set UI controls data)
  • [2.4 - Get default UI controls data](2.4 - Get default UI controls data)
  • [2.5 - Get current UI controls data](2.5 - Get current UI controls data)
  • [2.6 - Reset UI controls data](2.6 - Reset UI controls data)
  • [2.7 - UI control-specific functions](2.7 - UI control-specific functions)

3 - UI Families

We wanted to be able to handle Scripts with a large amount of UI Controls. To do so, we introduced the concept of Families.

  • [3.1 - What are UI Families](3.1 - What are UI Families)
  • [3.2 - Set data by Family](3.2 - Set data by Family)
  • [3.3 - Retrieve data by Family](3.3 - Retrieve data by Family)
  • [3.4 - Reset data by Family](3.4 - Reset data by Family)
  • [3.5 - Advanced functions](3.5 - Advanced functions)

4 - Coding utilities and array operations

KSP lacks of some really important coding features which can make the developer save a lot of time. Coming to KSP from another language might be weird at first: we tried to make the passage easier, where possible.

  • [4.1 - Array-based operations](4.1 - Array-based operations)
  • [4.2 - Matrix-based operations](4.2 - Matrix-based operations)

5 - Realtime debugger

The Realtime Debugger is a set of functions which allow the developer to handle in a simple, extremely powerful way many annoying debugging processes.

  • [5.1 - Getting started](5.1 - Getting started)
  • [5.2 - UI changes when using the Debugger](5.2 - UI changes when using the Debugger)
  • [5.3 - UI debugging](5.3 - UI debugging)
  • [5.4 - MIDI and Events debugging](5.4 - MIDI and Events debugging)
  • [5.5 - Assignable UI controls](5.5 - Assignable UI controls)

6 - Groups

Groups management in Kontakt is not good. At all. It lacks of many useful features, such as Folders of Groups. This section might help handling groups in a more clever way.

  • [6.1 - Introduction to Folders of Groups](6.1 - Introduction to Folders of Groups)
  • [6.2 - Organise Groups into Folders](6.2 - Organise Groups into Folders)
  • [6.3 - Process Folders of Groups](6.3 - Process Folders of Groups)

7 - Engine Parameters and Effects

Set of functions to help you add an FX and set its data without having to remember KSP's syntax (aka without having to go to KSP manual).

  • [7.1 - Engine Parameters and Effects](7.1 - Engine Parameters and Effects)
  • [7.2 - Add an FX](7.2 - Add an FX)
  • [7.3 - Set Engine Parameters](7.3 - Set Engine Parameters)

8 - Constants

Here's the collection of all the constants used by Koala and its functions.

  • [8.1 - System constants](8.1 - System constants)
  • [8.2 - UI constants](8.2 - UI constants)
  • [8.3 - Kontakt Fonts](8.3 - Kontakt Fonts)
  • [8.4 - Array-based operations constants](8.4 - Array-based operations constants)
Clone this wiki locally