Godot Kotlin/JVM is a Godot module which allows you to write your game or application logic in Kotlin on the JVM.
If you are looking for the documentation for Godot Kotlin/Native; you can find it here.
This project is in alpha, it is by no means production ready.
What's not working
The items in this list are explicitly mentioned here as these will be implemented in future versions. Also consider the Api Differences section for general differences and limitations which will not be or cannot be adressed in the near forseable future or ever.
- Each registered constructor must have a unique number of arguments, constructor overloading is not yet supported
- No tool mode (you can set it already in the
@RegisterClassannotation but it has no effect yet)
- No plugin support, you cannot use Godot Kotlin/JVM to write plugins and addons yet
- We support desktop OS (Linux, MacOS, Windows), Android and iOS.
Bug reporting and Questions
If you find bugs, please report an issue on github - but check for duplicates first. If you have questions or need help, you can ask on discord in the channels
help respectively. If you don't have discord or don't want to use it, make a issue on github.
The main language supported is Kotlin. We do however support Java experimentally. It should be possible to support other jvm base languages as well but this is not the focus of this project. If you want to have support for other languages, have a look at support for other jvm based languages.
Supported kotlin version
This module relies on a kotlin compiler plugin for registering your classes and members to godot. As the compiler api from kotlin is not yet stable, we can only support specific kotlin version per release for now.
The current latest release is compatible with kotlin version
Custom engine builds
Get our pre built engine builds and export templates from the latest GitHub release.
Ask questions and collaborate on Discord