Skip to content

Project setup

Most common configuration options Hygradle supports are changed at the settings level, through the Hygradle settings plugin. Apply it to your project settings, and configure your targeted Hytale version.

settings.gradle.kts
pluginManagement {
repositories {
mavenCentral()
}
}
plugins { id("dev.hygradle.settings") version "0.0.4" }
rootProject.name = "example-plugin"
hygradle {
hytale {
version = "2026.02.19-1a311a592"
}
}

If you would like Hygradle to decompile the server source and make it available in your IDE, enable decompilation:

settings.gradle.kts
hygradle {
hytale {
decompile = true
}
}

By default, Hygradle will target the release patchline. If you would like to target a pre-release version, ensure you configure it:

settings.gradle.kts
hygradle {
hytale {
patchline = Patchline.PRERELEASE
}
}

Specific plugins and game runs are configured per-project. This separation allows Hygradle to properly support project isolation, and enables some cool cross-project interaction for multi-plugin projects. Apply the project plugin:

build.gradle.kts
plugins {
id("dev.hygradle")
}

Gradle currently has two supports methods of declaring Maven repositories for dependencies. You can either manage them per-project, or at the settings level. Hygradle is unopinionated about which approach you use, and instead provides a repository handler extension you must call, and supply your intended patchline:

import dev.hygradle.dsl.settings.hytale
import dev.hygradle.dsl.hytale.Patchline
// Project repository
repositories {
hytale(Patchline.RELEASE)
}
// Central repositories
dependencyResolutionManagement {
repositories {
hytale(Patchline.RELEASE)
}
}