Папка для разработки скриптов Nursultan. Скрипт — это обычный Kotlin-файл .kts, который клиент
компилирует прямо в запущенной игре.
-
File → Openв IntelliJ IDEA, выбрать эту папку, «Open as Project», доверить проект. -
Settings → Languages & Frameworks → Kotlin → Kotlin Scripting → Custom Definitions → Search Definitions → в списке появится Nursultan Script (
.kts) → оставить включённым и выше Default Kotlin Script → Apply.Без этого шага любой
.ktsбудет красным: IntelliJ не находит нестандартные определения скриптов сам. -
Открыть
example.kts— подсказки и переход к исходникам должны работать.
Скопировать готовый .kts в папку скриптов клиента (%APPDATA%\Nursultan\scripts на Windows) и
включить его во вкладке Scripts. Переносить нужно только сам файл — ни .sdk, ни build-файлы игре не нужны.
Шрифты, картинки и прочие файлы, которые читает скрипт, лежат отдельно — в %APPDATA%\Nursultan\scripts\assets.
Клиент создаёт эту папку сам; путь в font("name", "my.ttf"), image("logo.png") и assets.text("data.json")
считается от неё.
Сохранение уже загруженного файла перезагружает скрипт на лету, перезапускать игру ради правки не нужно.
| Путь | Что это |
|---|---|
example.kts |
пример скрипта, можно править или удалить |
assets/ |
шрифты, картинки и данные скриптов — копируется в %APPDATA%\Nursultan\scripts\assets |
.sdk/ |
джарки API, против которых идёт компиляция — папка сгенерирована, внутри ничего не менять |
build.gradle.kts, settings.gradle.kts |
подключают .sdk и Kotlin-скриптинг |
Если положить эту папку прямо в %APPDATA%\Nursultan\scripts, клиент будет сам обновлять .sdk при
каждом запуске, и SDK никогда не отстанет от версии клиента.
- https://docs.nursultan.fun/scripting-api-ru — весь API с примерами
- https://docs.nursultan.fun/scripting-api — то же на английском
A development folder for Nursultan scripts. A script is a plain Kotlin .kts file that the client
compiles inside the running game.
-
File → Openin IntelliJ IDEA, pick this folder, "Open as Project", trust the project. -
Settings → Languages & Frameworks → Kotlin → Kotlin Scripting → Custom Definitions → Search Definitions → Nursultan Script (
.kts) appears in the list → keep it enabled and above Default Kotlin Script → Apply.Skip this step and every
.ktsstays red: IntelliJ does not pick up custom script definitions on its own. -
Open
example.kts— completion and go-to-source should work.
Copy the finished .kts into the client's scripts folder (%APPDATA%\Nursultan\scripts on Windows) and
enable it on the Scripts tab. Only the file itself moves — the game needs neither .sdk nor the build files.
Fonts, images and any other file a script reads live next door, in %APPDATA%\Nursultan\scripts\assets.
The client creates that folder itself; paths in font("name", "my.ttf"), image("logo.png") and
assets.text("data.json") are relative to it.
Saving an already loaded file reloads the script on the fly, no need to restart the game for an edit.
| Path | What it is |
|---|---|
example.kts |
a sample script, edit it or delete it |
assets/ |
script fonts, images and data — copy it into %APPDATA%\Nursultan\scripts\assets |
.sdk/ |
the API jars you compile against — generated folder, do not change anything inside |
build.gradle.kts, settings.gradle.kts |
wire up .sdk and Kotlin scripting |
Put this folder straight into %APPDATA%\Nursultan\scripts and the client refreshes .sdk on every
launch, so the SDK never falls behind the client version.
- https://docs.nursultan.fun/scripting-api — the whole API with examples
- https://docs.nursultan.fun/scripting-api-ru — the same in Russian