Skip to content

Game Version

AzureDoom edited this page Jun 8, 2026 · 1 revision

Game Version

By default, HytalePublisher uses the hytale_version project property if present.

You can define this in gradle.properties:

hytale_version=your-game-version

If hytale_version is not set, some platforms, such as Modtale, may reject uploads due to invalid game version values.

This value is used for platforms like Modtale that require a specific version string.

You typically do not need to set gameVersion manually unless you want to override this behavior.

Dynamic version selectors

gameVersion accepts Gradle-style dynamic version selectors so you can track the latest Hytale build without updating gradle.properties for every server release:

hytalePublisher {
    gameVersion = "0.+"   // latest 0.x build on the configured patchline

    modtale {
        enabled   = true
        projectId = "your-modtale-project-id"
        patchline = "release"   // or "pre-release"
    }
}

Supported selectors:

  • 0.+ — latest version starting with 0.
  • 0.5.+ — latest version starting with 0.5.; prefix matching is literal, including leading zeros
  • + — absolute latest version
  • latest.release — same as +

Range syntax, such as [0.5,0.6), is not supported. Use a prefix selector or a concrete version instead.

The selector is resolved at publish time by querying the Hytale Maven metadata for the configured patchline. The resolved concrete version, such as 0.5.4, is what gets uploaded to Modtale, so your published mod stays pinned to a specific server build.

Patchline scoping

The modtale.patchline field controls which Hytale Maven repository the resolver queries:

  • patchline = "release" uses https://maven.hytale.com/release
  • patchline = "pre-release" uses https://maven.hytale.com/pre-release

patchline only affects dynamic selector resolution. When gameVersion is a concrete value, it is uploaded as-is regardless of patchline.

Cache behavior

Maven metadata is cached under:

<gradle-user-home>/caches/hytale-publisher/

The cache lasts for ten minutes to avoid repeated network calls during a publishing session.

To force a fresh fetch, delete the cache file for your patchline:

# Linux / macOS
rm ~/.gradle/caches/hytale-publisher/maven-metadata-release.xml

# Or just clear the whole directory
rm -rf ~/.gradle/caches/hytale-publisher

If the network is unreachable but a cached copy exists, the resolver falls back to the cache with a warning. If nothing is cached and the network is down, publishing fails with a clear error rather than guessing.

Standalone resolution

Wildcard resolution does not require the Hytale Tools Gradle plugin to be applied.

HytalePublisher fetches version metadata directly from the Hytale Maven, so you can use 0.+ even in projects that build with a different toolchain.


[Back to Home](Home)

Clone this wiki locally