Hytale Server API Documentation
Hytale Server API Documentation
Section titled “Hytale Server API Documentation”Auto-generated from the Hytale server JAR. All documentation is mechanically derived from the game’s bytecode — never from external sources.
Overview
Section titled “Overview”Hytale’s server-side modding API allows plugins to extend the game through a Java plugin system. Plugins are Java classes that extend PluginBase, with a lifecycle driven by three methods:
setup()— Register commands, events, components, and configuration before the server starts.start()— Perform initialization that requires a running server.shutdown()— Clean up resources when the plugin is disabled or the server stops.
All registrations made through PluginBase are automatically scoped to the plugin’s lifecycle — when the plugin shuts down, its commands, event listeners, ECS components, and other registrations are automatically cleaned up.
Plugin Systems
Section titled “Plugin Systems”A dual event system with two parallel hierarchies:
- Standard Events — Synchronous and asynchronous events dispatched through
EventBususingConsumer-based listeners. Used for server lifecycle, player connections, chat, and permissions. - ECS Events — Events dispatched through the Entity Component System pipeline using
store.invoke(). Used for gameplay actions like block breaking, item drops, and crafting.
A builder-pattern command system with typed arguments, automatic permission generation, tab completion, and subcommand support. Commands are defined by extending CommandBase and declaring arguments as fields.
An archetype-based ECS with typed stores, component queries, ticking systems, event systems, and command buffers. Two concrete store types: EntityStore for game entities and ChunkStore for chunk-level data.
A three-layer registry architecture: generic Registry base for lifecycle management, plugin-specific registries for each subsystem, and global backends for actual data storage. All registries share the same pattern of precondition-gated registration with automatic cleanup on plugin shutdown.
Data-driven content definition through JSON asset files. Block types, items, crafting recipes, and other game content are defined in JSON using a declarative BuilderCodec pattern. Plugins can register custom asset types and extend existing ones.
API Surface
Section titled “API Surface”This documentation covers 811 plugin-facing API types out of 6,873 total types in the server JAR. The remaining 6,062 types are internal implementation details not intended for plugin use.
- API Reference — Plugin-facing classes, events, commands, components, and registries.
- Internal Types — Internal types are not documented individually. They are not part of the stable plugin API and may change without notice.
Build Information
Section titled “Build Information”- JAR Hash:
sha256:b728b1b83750fadfbacc7ae98bb7ae424d5947114bc13308337e8fd5dab364a8 - Generator Version: 1.0.0
- Generated: 2026-02-09