Documentation In Progress
dev@4e24cb4
Hytale Modding
Established InformationServerContent Categories

Java Modding (Server Plugins)

An introduction to what we know of Hytale's Java-based modding system as of writing this article.

Hytale's modding capabilities include a Java-based modding system that allows modders to create custom behaviors, interactions, and game mechanics. While the full details of this system are not publicly documented as the game is still in development and not released, we can summarize what is currently known about it.

Important Details of Modding in Hytale

Hytale's modding goes on server side and not client side, meaning that mods/plugins are hosted on the server and players connect to these modded servers to experience the custom content without needing to install anything on their end. This approach ensures a consistent experience for all players on a modded server.

Overview of Java-Based Modding

The server-side modding system in Hytale is based on Java, making the server plugins JAR files.

We're guessing this is done so that Minecraft modders can easily transition to Hytale modding, as Minecraft modding is also primarily Java-based. This allows modders familiar with Java to leverage their existing knowledge when creating mods for Hytale.

Singleplayer Concerns

Despite the name, server plugins can also be used in singleplayer mode. Hytale's singleplayer mode runs a local server instance, allowing players to use server plugins even when playing alone. This means that mods created as server plugins can enhance the singleplayer experience as well.

Mixin System

Mixins were used in Minecraft modding to directly modify the game’s code, even able to overwrite or redirect logic and values. An extremely powerful but somewhat brittle system which depends on the source code/game version staying pretty much the same.

We have no official information on Mixins in Hytale. Despite that, we have reason to believe they will not need to be supported for the following reasons:

  1. For a properly designed game, 95% of Mixin use cases can be solved with a good API instead. In fact, many Minecraft modding APIs simply mixin to provide the API so the developers using those APIs don’t have to write the mixin themselves.
    • This is typically replacing hardcoded values and overwriting hardcoded behaviors.
    • Hytale should ideally make these both API or data-driven.
  2. APIs can also be much more resilient than the game version. We can have a separate API version system which means the same code will not need to be modified across multiple updates until the API changes in a breaking way.