EliteEssentials | Everything Your Server Needs and More!

Homes, warps, player warps, TPA, RTP, kits, economy, bans, mutes, warnings, admin UI, chat formatting, 500+ configurable messages, SQL storage, PlaceholderAPI, LuckPerms & HyperPerms. The most complete essentials mod for Hytale trusted by top servers.

File Details

EliteEssentials-2.0.8.jar

  • R
  • May 26, 2026
  • 19.46 MB
  • 409
  • Early Access

File Name

EliteEssentials-2.0.8.jar

Supported Versions

  • Early Access

2.0.8 - 2026-05-26

Compatibility update for Hytale Update 5 (server 0.5.1). The plugin now compiles and runs against the new server jar; older 2.0.x builds will fail with NoSuchMethodError on the new server because of breaking API changes in the network and ECS layers.

Changed

  • /tpa, /tpahere, /tphere, /pay now use the new tab-autocomplete UI - Update 5 added a chat suggestion popup with Tab to cycle and Shift+Tab to browse variant options. These four commands switched their <player> argument from ArgTypes.STRING + PlayerSuggestionProvider to the engine's typed ArgTypes.PLAYER_REF. The new chat UI now surfaces online players directly through the engine's built-in suggestOnlinePlayers hook, the player name is resolved into a PlayerRef at parse time, and offline names are rejected by the engine before the command runs (these commands were online-only anyway). Offline-aware commands (/ban, /unban, /mute, /unmute, /ipban, /seen, /playtime, /joindate, /wallet, /eco, /playerinfo, /warn, /clearwarnings, /warnings, /ignore, /unignore, /tempban, /heal, /freeze, /invsee, /msg) keep the previous STRING argument with PlayerSuggestionProvider so they can still target offline players
  • manifest.json ServerVersion is now a SemverRange - Update 5's plugin manager rejects bare versions (0.5.1 produced IllegalArgumentException: Bare version '0.5.1' is not a valid range) which silently dropped the plugin during pack loading and prevented any commands from registering. The template now resolves to ^0.5.1, accepting any 0.5.x server while keeping us out of 0.6.0 until we re-validate. Authors should update to a SemverRange (^0.5.1, ~0.5.1, or =0.5.1 for an exact match)
  • Hytale server target bumped to 0.5.1 - gradle.properties and build.gradle.kts now resolve the official Update 5 server jar from maven.hytale.com/release. The pre-release dated coordinate (2026.03.26-89796e57b) is no longer used as the default
  • Vector math migrated to JOML - Hytale moved its custom vector types over to JOML in Update 5 (per the patch notes' "Migrated custom Vector types to JOML equivalents"). Imports of com.hypixel.hytale.math.vector.Vector3d / Vector3i now point at org.joml.Vector3d / org.joml.Vector3i, and rotation usage was migrated from the old Vector3f to the new com.hypixel.hytale.math.vector.Rotation3f. Field semantics are unchanged: rotation.x is pitch, rotation.y is yaw, rotation.z is roll. JOML vector access uses the public x / y / z fields and no longer goes through getX() / getY() / getZ() getters. The model.Location class still exposes its original getters and was not affected
  • PacketHandler#getChannel() returns ChannelConnection - the network layer no longer hands plugins a raw Netty Channel. IpBanService.getIpFromPacketHandler now resolves the remote address through ChannelConnection#remoteAddress(), which works the same way for both TCP and QUIC connections. The dependency on com.hypixel.hytale.server.core.io.netty.NettyUtil was removed
  • Universe#getPlayers() returns Collection<PlayerRef> - this was already documented in pre-release update 1 & 2 modders' warnings. Local variables that captured the old List<PlayerRef> return type were widened to Collection<PlayerRef> in HytaleListCommand, HytaleSendMessageCommand, and HytaleReplyCommand. Call sites that needed list semantics already wrapped the result in new ArrayList<>(...) and were unaffected
  • CommandSender#getDisplayName() renamed to getUsername() - the anonymous console sender in CommandExecutor and the PlayerCommandSender wrapper used by aliases were updated to override the new name
  • SuggestionResult#fuzzySuggest removed - PlayerSuggestionProvider now manually iterates online players and case-insensitively filters by the typed prefix before forwarding each match through result.suggest(name). Behaviour for end users is unchanged
  • Player#sendMessage removed - per the same modders' warning, Player no longer implements CommandSender, so it can no longer be used to send chat directly. WarmupService#tickWarmup now resolves a PlayerRef from Universe.get().getPlayer(uuid) for warmup countdown and cancellation messages