premium banner
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 plugin for Hytale.

Description

Buy Me a Coffee at ko-fi.com

EliteEssentials

The all-in-one essentials mod for Hytale servers. Homes, warps, kits, teleportation, economy, chat formatting, permissions, and more. Fully configurable and modular.

LuckPerms compatible | HyperPerms compatible | VaultUnlocked compatible | PlaceholderAPI support | Actively developed

Wiki | Report Issues | Discord


Have a suggestion, issue, or idea?

The goal for this plugin is to make it the best there is for you. If something is missing or could be better, we want to hear about it. Join us on Discord and let's chat about it.


Switching from another essentials mod?

EliteEssentials can migrate your data from EssentialsCore, Hyssentials, EssentialsPlus, or HomesPlus. Use /eemigration <source> (e.g. /eemigration essentialscore). Homes, warps, and player data are imported where applicable.

Switching from JSON to SQL?

Use /eemigrate to transfer all existing JSON data to your configured SQL database. Set storage.storageType to "h2" or "mysql" in config first, then restart and run the command.


Highlights

  • Fully modular. Enable only the features you want. Disabled commands become OP-only.
  • 300+ configurable messages. Full localization support via messages.json. Translate the mod to any language.
  • Two permission modes. Simple mode (OP/Everyone) out of the box, or advanced mode with granular LuckPerms nodes.
  • GUI everywhere. Homes, warps, kits, and TPA all have interactive selection GUIs.
  • Per-world configuration. RTP ranges, spawn behavior, and more can be configured per world.
  • Config auto-migration. Existing settings are preserved when updating.

Features at a Glance


Teleportation

Command What it does
/home [name] Teleport to a saved home
/sethome [name] Save a named home location
/delhome &lt;name&gt; Delete a home
/homes GUI to view, teleport, and manage homes
/spawn [name] Teleport to spawn (nearest or named when per-world)
/setspawn [name] Set spawn (named when per-world) (Admin)
/delspawn &lt;name&gt; Delete a named spawn point (Admin)
/spawns List spawn points in current world (Admin)
/setfirstjoinspawn Set where new players spawn (Admin)
/delfirstjoinspawn Remove first-join spawn (Admin)
/back Return to your previous location (works on death)
/rtp Random teleport with safe landing detection
/rtp &lt;player&gt; [world] Admin/console: RTP a player (optionally to a world)
/top Teleport to highest block (Admin)
  • Configurable max homes (global or permission-based: home.limit.5)
  • Per-world RTP ranges with min/max distance settings
  • Per-world spawns: set named spawns per world and teleport with /spawn <worldname>
  • Cooldowns, warmups, and economy costs on all teleport commands
  • Permission-based cooldown/warmup overrides per group

Teleport Requests

Command What it does
/tpa [player] Request to teleport to someone (GUI if no player given)
/tpahere [player] Request someone to teleport to you (GUI if no player given)
/tpaccept Accept a request
/tpdeny Deny a request
/tphere &lt;player&gt; Instantly teleport a player to you (Admin)

Kits

Command What it does
/kit Opens the kit selection GUI
/kit &lt;name&gt; Claim a specific kit (works with NPC integration)
/kit create &lt;name&gt; [cooldown] [onetime] Create a kit from your inventory (Admin)
/kit delete &lt;name&gt; Delete a kit (Admin)
  • One-time and cooldown-based kits
  • Per-rank kit cooldown overrides via LuckPerms/HyperPerms (kit.cooldown.<kitname>.<seconds>)
  • Inventory space check prevents claiming when inventory is full (replace-inventory kits are exempt)
  • Starter kit auto-given to new players on first join
  • Kits can execute server commands on claim (grant permissions, give currency, etc.)
  • Per-kit permissions in advanced mode
  • Aliases: /kits for kit GUI

Warps

Command What it does
/warp Opens the warp GUI
/warp &lt;name&gt; Teleport directly to a warp
/warp list Text list of all warps
/warpadmin Create, delete, or inspect warps (Admin)
/warpsetperm Set warp permission level (Admin)
/warpsetdesc Set warp description shown in GUI (Admin)
  • Per-warp permissions: all (everyone) or op (admins only)

Player Warps (Disabled by Default)

Command What it does
/pwarp gui Opens the player warps GUI
/pwarp &lt;name&gt; Teleport to a player warp
/pwarp create &lt;public|private&gt; &lt;name&gt; [desc] Create a warp at your location
/pwarp delete &lt;name&gt; Delete your warp
/pwarp toggle &lt;name&gt; Switch between public and private
/pwarp list List your warps with count/limit
/pwarp info &lt;name&gt; View warp details
/pwarp setdesc &lt;name&gt; &lt;desc&gt; Update warp description
/pwarp setloc &lt;name&gt; Move warp to current position
  • Public warps visible to everyone; private warps visible only to the owner
  • Per-group warp limits via LuckPerms/HyperPerms (pwarp.limit.5, pwarp.limit.unlimited)
  • Cooldowns, warmups, and economy costs (both teleport and creation)
  • GUI with delete confirmation for owned warps
  • Full storage support: JSON, H2, MySQL

Economy (Disabled by Default)

Command What it does
/wallet [player] View own or another player's balance
/wallet set/add/remove &lt;player&gt; &lt;amount&gt; Admin: set, add, or remove balance
/pay &lt;player&gt; &lt;amount&gt; Send money to another player
/baltop Richest players leaderboard
/eco Admin balance management (check, set, add, remove)
  • Configurable currency name, symbol, and starting balance
  • Command costs. Charge players for teleport commands.
  • Permission-based cost overrides and bypass nodes
  • Balance change notifications - notify players when their wallet changes (chat, global broadcast, or HUD tooltip)
  • Server sender name - customize the name shown for server-initiated economy changes (e.g., "Bank", "System")
  • Full API for other mods (com.eliteessentials.api.EconomyAPI)
  • VaultUnlocked integration for cross-mod economy compatibility

Chat and Communication

Command What it does
/msg &lt;player&gt; &lt;message&gt; Private message (aliases: /whisper, /pm, /tell)
/reply &lt;message&gt; Reply to last conversation
/gc [chat] &lt;message&gt; Group/channel chat (aliases: /groupchat, /g)
/gcset [chat] Set your default group chat for /gc
/chats List your available chat channels
/gcspy Spy on all group chats (Admin)
/broadcast &lt;message&gt; Broadcast to all players (Admin)
/clearchat Clear chat for everyone (Admin)
/sendmessage Send formatted messages to players/groups (Admin)
  • Group-based chat formatting. Customize chat appearance per group with color codes, hex colors, and placeholders
  • LuckPerms prefix/suffix. {prefix} and {suffix} placeholders pull from LuckPerms meta
  • Tab list prefix. Show LuckPerms prefix in the player tab list (configurable)
  • Group chat channels. Group-based or permission-based channels with optional proximity range
  • PlaceholderAPI. Use cross-plugin placeholders in chat format, and expose EE placeholders to other mods
  • Player chat colors. Allow players to use color codes in chat (configurable per permission)

Server Info

Command What it does
/motd Message of the Day with color codes, hex colors, clickable URLs, and placeholders
/rules Server rules
/discord Discord info with clickable invite link
/list Online players (aliases: /online, /who)
/eehelp All commands you have permission to use
  • Custom help entries via custom_help.json - add help text for commands from other plugins to /eehelp
    • Each entry has command, description, permission (everyone/op/custom node), and enabled fields
    • Ships with disabled examples so admins can see the format immediately
    • Reloads with /ee reload
  • All commands appear in /eehelp based on your permissions: /playtime, /joindate, /playerinfo, /mail, /afk, /ignore, /unignore, /gc, /gcset, /chats, /repair, /trash, /vanish, /clearchat, /mute, /unmute, /warn, /warnings, /clearwarnings, /ban, /unban, /tempban, /ipban, /unipban, /freeze, /invsee, spawn commands, and more
  • Console broadcast options for monitoring player communications (all disabled by default)
    • chatFormat.broadcastToConsole - logs all player chat to console as [CHAT]
    • groupChat.broadcastToConsole - logs all group chat messages to console as [GC]
    • msg.broadcastToConsole - logs all private messages (/msg, /reply) to console as [MSG]

Player Management

Command What it does
/god Toggle invincibility (Admin)
/heal [player] Restore full health (self: Everyone when enabled; others: Admin)
/fly Toggle flight (Admin); optional cost-per-minute for limited paid flight
/flyspeed &lt;1-100|reset&gt; Set fly speed (Admin)
/clearinv [player] Clear own or target's inventory (Admin); console must specify player
/trash [size] Open a disposal window to trash items (optional 1–45 slots)
/repair [all] Repair held item or entire inventory (Admin)
/vanish Toggle invisibility with fake join/leave messages (Admin)
/seen &lt;player&gt; View player info (first join, last seen, play time)
/playerinfo [player] Detailed player stats (UUID, nickname, wallet, playtime, kit claims, etc.)
/joindate [player] Check first join date
/playtime [player] Check total play time
/afk Toggle AFK status (auto-AFK on inactivity, tab list prefix)
/invsee &lt;player&gt; View (and optionally modify) a player's inventory (Admin)
  • Console support: /repair, /heal, /god, /fly, /flyspeed, and /clearinv can target specific players from console or NPCs
  • World blacklists: restrict commands from being used in specific worlds (supports * wildcards)

Moderation

Command What it does
/mute &lt;player&gt; [reason] Mute a player server-wide (Admin)
/unmute &lt;player&gt; Unmute a player (Admin)
/warn &lt;player&gt; [reason] Add a warning to a player (Admin)
/warnings [player] List warnings for self or target
/clearwarnings &lt;player&gt; Clear all warnings for a player (Admin)
/ban &lt;player&gt; [reason] Permanently ban a player (Admin)
/unban &lt;player&gt; Unban a player (Admin)
/tempban &lt;player&gt; &lt;time&gt; [reason] Temporarily ban a player (Admin)
/ipban &lt;player&gt; [reason] IP ban a player (Admin)
/unipban &lt;player&gt; Remove an IP ban (Admin)
/freeze &lt;player&gt; Freeze/unfreeze a player (Admin)
/ignore &lt;player&gt; Block a player's messages (personal)
/ignore list List ignored players
/unignore &lt;player|all&gt; Stop ignoring a player or all
  • Warning system: Warnings stored per player; optional auto-punish (ban or tempban) at configurable threshold when warning count is reached
  • Offline player support: All moderation commands (/ban, /tempban, /mute, /freeze, /warn, /ipban) work on offline players. Partial name matching for both online and offline lookups

Mail System

Command What it does
/mail send &lt;player&gt; &lt;message&gt; Send mail to any player (online or offline)
/mail read [number] Read mail
/mail list List all mail with timestamps and unread indicators
/mail clear [read] Clear all or just read mail
/mail delete &lt;number&gt; Delete specific mail
  • Login notification for unread mail
  • Spam protection with per-recipient cooldown
  • Configurable mailbox limit

PlayTime Rewards

  • Repeatable rewards. Trigger every X minutes (e.g., hourly bonus)
  • Milestone rewards. One-time rewards at specific thresholds (e.g., 100 hours played = VIP rank)
  • Execute LuckPerms commands, grant economy currency, or send custom messages
  • Defined in playtime_rewards.json

Command Aliases

  • /alias create <name> <command> [permission] Create custom shortcut commands (Admin)
  • Works with commands from any mod
  • Command chains with ; separator (e.g., warp spawn; heal; fly)
  • Auto-generated permission nodes per alias
  • Silent mode for suppressing teleport messages
  • Two-gate permission model - Gate 1: alias permission controls who can use the alias. Gate 2: validates the player has the target command's actual permission before dispatch, not just the alias's own permission
    • Prevents privilege escalation where an alias with "everyone" permission could invoke admin-only commands
    • Covers all known EE commands via a permission map; unknown commands (other plugins) pass through to the target command's own permission check via CommandManager
    • Debug logging shows when Gate 2 blocks a command

Nickname System

Command What it does
/nick &lt;nickname&gt; Set your own display nickname (Admin)
/nick off Clear your own nickname (Admin)
/nick &lt;player&gt; &lt;nickname|off&gt; Set/clear another player's nickname (requires nickname.others)
/realname &lt;name&gt; Look up the real username behind a nickname (Admin)
  • Nicknames appear in chat, group chat, tab list, /msg, /list, and join/quit messages
  • Color codes in nicknames gated behind eliteessentials.command.misc.nick.color permission
  • Admin only in simple mode
  • Note: other mods will still show the player's real username

Sleep Percentage

  • /sleeppercent <0-100> Set percentage of players needed to skip the night (Admin)
  • Configurable sleep and wake times
  • AFK players excluded from the sleep percentage count (configurable via afk.excludeFromSleep)
  • Progress messages shown to all players

Spawn Protection

  • Configurable radius and Y-range around spawn
  • Disable PvP and/or all damage in the protected area
  • Per-world: each world with a set spawn can have its own protection
  • Admin bypass permission: eliteessentials.command.spawn.protection.bypass
  • First-join spawn: set a dedicated spawn for new players with /setfirstjoinspawn
  • Multi-spawn: when per-world is enabled, set multiple named spawns per world with /setspawn <name>. Choose nearest or random spawn selection for /spawn and death respawn

Admin UI Panel (/eeadmin)

  • Full graphical admin dashboard with server stats, player management, and moderation tools
  • Tabs: Dashboard, Players, Bans, Mutes, Warnings, Stats, Activity Log, Economy, Teleports, Player Data
  • Quick-remove [X] buttons on active bans, mutes, and individual warnings
  • Player Data tab shows homes, back history, kit claims, and player warps with TP/DEL buttons
  • All moderation actions work for both online and offline players
  • Granular permissions per action (see Wiki)

Group Sync

  • /ee groupsync lp-to-ee Copy LuckPerms groups into config.json (chatFormat, warps.groupLimits)
  • /ee groupsync hp-to-ee Copy HyperPerms groups into config.json
  • /ee groupsync ee-to-lp Create missing EE config groups in LuckPerms
  • /ee groupsync ee-to-hp Create missing EE config groups in HyperPerms

Join Messages, Greetings & Death Messages

  • Join/quit: Customizable first-join and regular join/quit messages; option to suppress default Hytale messages; optional world-change messages
  • Greetings: Rule-based conditional messages on join, world enter, or respawn. Send different messages to different players based on group, permissions, world, or first-join status. Optional broadcast mode to announce to all players (e.g., VIP join announcements). Vanish-safe. {displayname} placeholder for nick compatibility. Rules stored in greetings.json.
  • Death messages: Configurable death messages with optional killer and cause (labels and format in messages.json)
  • Spawn on login: teleportOnEveryLogin rewrites the player's save file on disconnect so they load directly at spawn with no teleport flash
    • Works with per-world spawns and mainWorld setting; new players use /setfirstjoinspawn or default spawn
    • /setspawn message is customizable via messages.json (spawnSet with {world} and {location})

Permissions

Two modes via advancedPermissions in config:

Simple mode (default): "Everyone" commands work for all players. "Admin" commands require OP.

Advanced mode: Granular permission nodes following eliteessentials.command.<category>.<action>. Supports per-group cooldowns, warmups, costs, home limits, and bypass nodes. See the Wiki for the full permission reference.


Data Storage

EliteEssentials supports three storage backends, configurable via config.json:

  • JSON (default) — file-based storage in mods/EliteEssentials/. Zero setup, works out of the box.
  • H2 (embedded SQL) — embedded database stored in the plugin data folder. No external software needed. Better performance and data integrity than JSON.
  • MySQL/MariaDB — external database for multi-server networks. Player data is shared across all connected servers.

Switch backends by setting storage.storageType to "json", "h2", or "mysql" in config.json. Use /eemigrate to migrate existing JSON data to SQL. See the Wiki for setup details.

All data lives in mods/EliteEssentials/:

  • Config & content: config.json, messages.json, motd.json, rules.json, discord.json, aliases.json, custom_help.json, groupchat.json, greetings.json, autobroadcast.json, playtime_rewards.json
  • Server data: warps.json, player_warps.json, kits.json, spawn.json, firstjoinspawn.json, mutes.json, warns.json, bans.json, tempbans.json, ipbans.json, freezes.json
  • Per-player data: players/<uuid>.json (homes, back locations, kit claims, mail, wallet, playtime, nickname, ignore list, default group chat, IP history, etc.)

Homes and other player-specific data are stored in each player's file under players/; there is no separate homes.json.


Config Update Notice

When you update EliteEssentials, your existing config is preserved and new options are added with defaults. You usually do not need to delete anything. If you experience issues after an update, you can delete mods/EliteEssentials/config.json and restart to generate a fresh config, then reapply your custom values.


Roadmap

  • Chat filter with configurable actions