com.hypixel.hytale.builtin.mounts
Package: com.hypixel.hytale.builtin.mounts
Built-in mount system providing entity mounting (NPC mounts), block-based seating (chairs, beds), and minecart rail vehicles. The plugin registers ECS components and systems for tracking mount relationships, handling player input while mounted, synchronizing mount state across the network, and managing mount lifecycle (dismounting on death, teleport, entity removal). None of the types in this package are part of the public API surface.
Plugin Entry Point
Section titled “Plugin Entry Point”| Type | Kind | Description |
|---|---|---|
| MountPlugin | class | Main plugin class; singleton entry point registering all mount components, systems, commands, and interactions. |
| Type | Kind | Description |
|---|---|---|
| BlockMountAPI | class | Static utility for mounting entities onto block-based seats and beds. |
| BlockMountAPI.BlockMountResult | sealed interface | Result type for block mount attempts. |
| BlockMountAPI.DidNotMount | enum | Failure reasons when a block mount attempt does not succeed. |
| BlockMountAPI.Mounted | record | Success result carrying the block type and mounted component. |
ECS Components
Section titled “ECS Components”| Type | Kind | Store | Description |
|---|---|---|---|
| MountedComponent | class | EntityStore | Marks an entity as mounted to another entity or a block. |
| MountedByComponent | class | EntityStore | Tracks which entities are riding a given mount entity. |
| NPCMountComponent | class | EntityStore | NPC-specific mount state including owner player and anchor offset. |
| BlockMountComponent | class | ChunkStore | Tracks seated entities on a block-based mount point (seat or bed). |
| MinecartComponent | class | EntityStore | Minecart entity state including hit tracking and source item. |
ECS Systems — MountSystems
Section titled “ECS Systems — MountSystems”| Type | Kind | Description |
|---|---|---|
| MountSystems | class | Container for entity-mount ECS systems. |
| MountSystems.TrackerUpdate | class | Ticking system that queues network updates for mounted entity visibility. |
| MountSystems.TrackerRemove | class | Reacts to MountedComponent removal by sending remove updates to viewers. |
| MountSystems.TrackedMounted | class | Reacts to MountedComponent changes to maintain MountedByComponent passenger lists. |
| MountSystems.PlayerMount | class | Reacts to MountedComponent on player entities to set/clear mount IDs on PlayerInput. |
| MountSystems.HandleMountInput | class | Ticking system that processes player movement input while mounted. |
| MountSystems.MountedEntityDeath | class | Removes MountedComponent when a mounted entity receives DeathComponent. |
| MountSystems.TeleportMountedEntity | class | Removes MountedComponent when a mounted entity is teleported. |
| MountSystems.RemoveMounted | class | Cleans up mount relationships when a mounted entity is removed from the store. |
| MountSystems.RemoveMountedBy | class | Dismounts all passengers when a mount entity is removed from the store. |
| MountSystems.RemoveMountedHolder | class | Strips MountedComponent from the holder during entity removal. |
| MountSystems.RemoveBlockSeat | class | Dismounts seated entities when a block seat chunk entity is removed. |
| MountSystems.EnsureMinecartComponents | class | Ensures minecart entities have Interactable, NetworkId, and PrefabCopyableComponent. |
| MountSystems.OnMinecartHit | class | Handles damage to minecart entities, destroying them after 3 hits. |
ECS Systems — NPCMountSystems
Section titled “ECS Systems — NPCMountSystems”| Type | Kind | Description |
|---|---|---|
| NPCMountSystems | class | Container for NPC-specific mount ECS systems. |
| NPCMountSystems.OnAdd | class | Handles NPCMountComponent addition: sends mount packet to player or resets role. |
| NPCMountSystems.DismountOnPlayerDeath | class | Dismounts the player from their NPC mount when the player dies. |
| NPCMountSystems.DismountOnMountDeath | class | Resets player movement settings when the mounted NPC dies. |
| NPCMountSystems.OnPlayerRemove | class | Dismounts the player from their NPC mount when the player entity is removed. |
Commands
Section titled “Commands”| Type | Kind | Description |
|---|---|---|
| MountCommand | class | Top-level /mount command collection. |
| DismountCommand | class | /mount dismount subcommand to dismount self or another player. |
| DismountCommand.DismountOtherCommand | class | Variant of dismount targeting a specific player by name. |
| MountCheckCommand | class | /mount check subcommand reporting mount status. |
Interactions
Section titled “Interactions”| Type | Kind | Description |
|---|---|---|
| MountInteraction | class | Entity interaction that mounts the player onto a target entity. |
| SeatingInteraction | class | Block interaction that seats the player on a block with seat/bed mount points. |
| SpawnMinecartInteraction | class | Block interaction that spawns a minecart entity at a rail block. |
NPC Actions
Section titled “NPC Actions”| Type | Kind | Description |
|---|---|---|
| ActionMount | class | NPC action that enables a player to mount an NPC entity. |
| BuilderActionMount | class | Builder/config reader for ActionMount NPC action definitions. |
Networking
Section titled “Networking”| Type | Kind | Description |
|---|---|---|
| MountGamePacketHandler | class | Handles DismountNPC packets from clients. |
Hydex is an independent community resource. Hytale is a trademark of Hypixel Studios. Hydex is not affiliated with or endorsed by Hypixel Studios.