Skip to content

Settings and Troubleshooting

Most CKSP Tools settings are managed through the extension UI and saved in the workspace automatically. This page provides a reference for manual configuration and a checklist for the most common compiler, Kontakt, indexing, and resource issues.

Open the settings through CKSP: Open cksp Settings or the normal VS Code Settings UI.

Settings reference

Project and compiler

Setting Meaning
cksp.mainFilePath Main entry point used by Compile Main File
cksp.isProject Whether the workspace is configured as a CKSP/Kontakt project
cksp.resourceContainerPath Selected .nkr resource container
cksp.compilerVersion Active CKSP compiler version
cksp.autoCleanupCompilers Automatically remove old compiler versions
cksp.maxStoredCompilerVersions Maximum number of compiler versions kept locally

Kontakt and diagnostics

Setting Meaning
cksp.kontaktPath Default path to the Kontakt application
cksp.availableKontaktPaths Detected or manually configured Kontakt paths
cksp.kontaktScriptMappings Instrument and script-slot mappings to resource script files
cksp.kontaktInstrumentKontaktPaths Preferred Kontakt version per .nki file
cksp.kontaktLogFontSize Font size in the Kontakt Log Viewer
cksp.luaOutputDestination Send Lua output to the Kontakt Lua or regular Output panel

Editor and workspace indexing

Setting Meaning
cksp.enableInlayHints Enable or disable parameter inlay hints
cksp.inlayHintsMinParameterCount Minimum parameter count before hints appear
cksp.searchFileFormats File extensions indexed for definitions and references

Prefer the UI

Main File, Resource Container, Compiler Version, and Kontakt Version should normally be selected in the CKSP Sidebar. Edit the JSON settings directly only for automation or to repair an unusual setup.

Troubleshooting

No compiler is found

  1. Open the CKSP Release Panel from the action next to Compiler Version.
  2. Download at least one compiler release.
  3. Select the installed release in Project Settings.

If the selected release was removed from local storage, choose an available version when CKSP Tools prompts during the next build.

Compile Main File always asks for a file

Set a fixed Main File in the CKSP Sidebar. The path is stored in the workspace and reused by future builds.

Output is not written to the resource script folder

Verify the output pragma in the main entry point:

#pragma output_path("Samples/Resources/scripts/main.txt")

Check that the path is correct relative to the project and that the selected main file is the file containing the pragma.

Kontakt does not start

Check the Kontakt Version in Project Settings. If no versions are offered:

  • verify that Kontakt is installed locally
  • inspect cksp.availableKontaktPaths
  • configure cksp.kontaktPath manually when automatic detection cannot locate the installation

Kontakt logs do not appear

Check the following:

  • Was Kontakt started through CKSP Tools?
  • Is Creator Tools closed?
  • Is the Kontakt Log Viewer open?
  • Is the log paused?
  • Are text, severity, instrument, or script filters hiding the messages?

Kontakt 8 writes log output differently from older versions; current CKSP Tools releases account for this behavior.

Log rows do not navigate to source

Assign a resource script file to the instrument and script slot. Create the mapping either:

  • in the custom NKI editor, or
  • by clicking an unmapped row in the Kontakt Log and selecting the corresponding resource script

Without a mapping, the extension cannot know which generated *.txt file belongs to a Kontakt slot.

Diagnostics do not appear in the Problems tab

Diagnostics use the same script-slot mappings as source navigation. Confirm that:

  1. the resource container is selected
  2. the .nki is recognized
  3. the relevant script slot points to the correct resource script
  4. the message includes a source line that CKSP Tools can map

Resource pictures or .nckp UI controls are missing from completion

Select a valid .nkr under Resource Container, then run CKSP: Reindex Workspace.

Also verify that the image or .nckp file is stored inside the expected resource structure.

Definitions, references, or symbols look outdated

Run CKSP: Reindex Workspace. CKSP Tools watches files automatically, but a manual reindex is useful after large restructures, branch switches, generated-file changes, or external file operations.

Inlay hints are too noisy or missing

Adjust:

  • cksp.enableInlayHints
  • cksp.inlayHintsMinParameterCount

Raise the minimum parameter count to keep hints only on longer calls, or disable them completely.

Frequently asked questions

What does the extension add beyond the compiler?

The compiler transforms CKSP/KSP files into Kontakt-compatible KSP. CKSP Tools adds the surrounding workflow: editor intelligence, built-in KSP documentation, project settings, compiler management, Kontakt launch, log filtering, source navigation, diagnostics, Lua output, and the NKI editor.

Can CKSP Tools work with existing KSP or SublimeKSP projects?

Yes. Open the existing workspace, select a main file and compiler, add an output pragma if required, and compile. CKSP accepts vanilla KSP and adopts many features from nojanath's SublimeKSP fork. Some projects may require small compatibility changes; compiler errors and the Adopted Features chapter are the best starting points.

Can I compile without VS Code?

Yes. Use the standalone compiler:

cksp input.cksp -o output.txt

It can also be configured as a Sublime Text build system. See the general Installation page.

Does generated output remain compatible with Kontakt?

Yes. CKSP generates regular KSP. Writing the result to a resource *.txt file lets Kontakt load it through the normal resource-container workflow.

Is CKSP Tools still under development?

Yes. Both CKSP and CKSP Tools are under active development. The Release Panel contains extension/compiler changelogs and can show pre-release compiler builds.

Known limitations

  • Some newer CKSP language constructs may not yet be covered completely by hover, definitions, or references.
  • Kontakt behavior varies by operating system and Kontakt version, so automatic path and runtime detection may require manual configuration in unusual setups.
  • On Windows, the current integration supports one .nki open in Kontakt at a time.
  • Source navigation and diagnostics depend on correct instrument/script-slot mappings.

When reporting an integration problem, include the operating system, VS Code version, Kontakt version, CKSP Tools version, selected compiler version, project structure, and reproducible steps.

Feedback and further help

The CKSP Sidebar includes entries for extension issues, compiler issues, documentation, and feature requests.