Hytale plugin template
A Hytale server plugin with SunLicense built in, to copy and build on: github.com/sunlicense-com/example-hytale-plugin (MIT No Attribution: copy any of it without credit). It's the Paper plugin template ported to Hytale's own plugin API.
- Gradle + Shadow, built against Hypixel's official server jar (
maven.hytale.com) with Java 25, and the Java SDK relocated into your own package - The license key from the plugin's
config.json, or built in by BuiltByBit and Voxel Shop placeholders - A clear console message for every result code, keys masked
- A re-check every few hours, so revoking a leaked key switches the plugin off on running servers
- An offline license fallback, and the plugin keeps running if SunLicense can't be reached (your choice)
- Tests against a stub server,
manifest.jsonandconfig.jsonchecked with Hytale's own codecs, a GitHub Actions workflow and anAGENTS.mdfor AI assistants
Get started
- In the dashboard, create a product and a policy (machines = servers), and an API key.
- Use the template on GitHub (Use this template), rename
com.example.mypluginand the manifest'sGroupandName, and put the key in~/.gradle/gradle.propertiesassunlicenseApiKey=slk_...(never in git). ./gradlew build, then putbuild/libs/my-plugin-1.0.0.jarin a Hytale server'smods/folder.- Register your commands and events in
MyPlugin.setup(), each starting withif (!MyPlugin.active()) return;.
The server owner's key goes in mods/<Group>_<Name>/config.json (LicenseKey), unless a store placeholder built it into the jar. /myplugin status and /myplugin recheck show and re-check the license.
Hytale is in early access and its plugin API changes between updates: the template says which server version it's built against (hytaleVersion in gradle.properties), and its README lists what has been checked on a real server so far.
Selling on BuiltByBit
BuiltByBit has a Hytale category, and the %%__SUNLICENSE__%% placeholder works the same as for Minecraft. Say in the listing that the plugin checks its license online, and that servers keep running when the check can't reach SunLicense.
