promotional bannermobile promotional banner

GlymeraEssentials

All the essentials in one plugin: homes, warps, TPA, kits, economy, paid perks (fly, speed, heal, chat colors), mail, vanish, AFK and a full warn/ban system — 71 commands, fully configurable, built natively for Hytale.

File Details

GlymeraEssentials-2.0.0.jar

  • R
  • Jun 14, 2026
  • 271.86 KB
  • 44
  • 0.5

File Name

GlymeraEssentials-2.0.0.jar

Supported Versions

  • 0.5

GlymeraEssentials — Changelog

v2.0.0 (2026-06-14)

Bugfix release addressing two issues reported from live servers.

Fixed: the night was being skipped The sleep-voting feature has been removed entirely. Its sleep detection counted every awake player as "sleeping" — Hytale gives every player a non-null somnolence state (FullyAwake), which the check mistook for being asleep — so the clock was snapped to morning roughly once a minute as soon as anyone was online, regardless of beds. GlymeraEssentials now no longer touches the day/night cycle in any way. The sleep config section and the sleepSkipped message have been removed.

Fixed: regular players could be locked out of every command With advancedPermissions: true, every command — including basics like /home, /spawn and /tpa — required an explicit glymeraessentials.command.<name> node, so regular players without those nodes could not run anything. Regular (non-OP) commands are now always open to everyone. advancedPermissions only governs the OP tier: it lets you hand individual OP-only commands to specific non-OP players via a permission node, while regular commands always stay open. Regular players can no longer be locked out of the basic commands.

v1.0.0 (2026-06-11)

Initial release — the essential command suite for Hytale servers (an EssentialsX equivalent), built natively against Hytale 0.5.4. Feature set modeled on EliteEssentials 2.0.8 plus the most useful EssentialsX extras, then hardened in a full 14-group live test (2026-06-09 → 2026-06-11).

71 commands across these modules:

  • Homes: /sethome, /home, /homes, /delhome (limit configurable)
  • Warps: /warps [name], /setwarp [op], /delwarp, /warpinfo (OP-only warps possible)
  • Spawns: one spawn per world + global server spawn (/setspawn = current world, /setserverspawn, /spawns = current world's spawn with server-spawn fallback, /spawns <world>, /spawns list, /delspawn <world>) + first-join spawn
  • TPA: /tpa, /tpahere, /tpaccept, /tpdeny + admin /tpto, /tphere, /tpall, /tppos
  • Back & travel: /back (incl. death location), /near, /top, /bottom, /jump (OP), /suicide
  • Paid perks: /fly, /speed, /heal, /repair as player self-service — each enabled+priced via config paidFeatures, OPs free. Fly bills per minute of ACTUAL flying (MovementStatesComponent sampling), speed bills permanently while toggled (configurable factor), heal/repair cost proportionally to what is restored. /perks GUI with toggle buttons, balance display and an OP-only corner picker for the money HUD. Money HUD (Merchant look, direct-packet, no HudManager registry) auto-shows for the internal wallet, yields to GlymeraMerchant.
  • Chat colors (paid perk): own GUI page with 13 colors, each button rendered in its color with its price; pay once, keep forever until another purchase or the free "Standard chat color" reset; one global price or per-color prices (paidFeatures.chatColor)
  • Kits: /kits, /kitcreate (from inventory, cooldown/one-time), /kitdelete; hardcoded "starter" kit on first join (toggleable)
  • Economy: /wallet, /baltop (OP), /eco (OP), /pay — three backends resolved at runtime via reflection (no hard dependencies): GlymeraMerchant → VaultUnlocked (vault2 API) → internal wallet (incl. configurable starting balance)
  • Messages: /msg, /reply, /ignore, /unignore, /spy (social spy, OP), /mail (offline mail with login notify). OPs cannot be ignored.
  • Chat: group-based chat formatting via permissions, /nick (OP-only — impersonation protection, hard-coded), /realname, /me, /broadcast (OP), /helpop, /clearchat (OP)
  • Inventory: /invsee (read-only GUI page for trading, players toggleable via config; OP-only Take buttons), /clearinv (own inventory, players toggleable) + OP variant /clearinv <player>, /trash (27-slot bin, emptied on close)
  • Info: /list, /seen, /playtime, /joindate, /whois (OP, incl. ban state)
  • AFK: /afk + automatic movement-based detection; AFK players don't block sleep voting
  • Vanish: /vanish (engine-native entity hiding + optional invulnerability + join/quit mimic; client player list can't be filtered crash-free in 0.5.4 — /list filters server-side)
  • Moderation: /warn (multi-word reasons) with auto-BAN at threshold (15 min default) and/or custom console commands, /warnings, /clearwarnings, /ban <minutes> (0 = permanent), /permban, /unban. Bans enforce over UUID + name + IP, are hooked into Hytale's native access control (clean kick screen with reason + remaining time, rejection before world join), expire automatically, work against offline targets, and never lock out OPs. Mutes/kicks intentionally left to native commands.
  • Extras: custom join/quit/first-join messages (native ones suppressed), MOTD on join, /motd, /rules, /discord, auto-broadcasts, playtime rewards, sleep voting (percentage-based night skip), custom death messages, config-based alias system, /ges root (help/commands/reload/version)

Architecture notes

  • Collision-aware registration: commands register in start() (after all plugins), check the live CommandManager registry and fall back to e<name> when a name is taken (e.g. /eban + /eunban, because Hytale 0.5.4 ships a native UUID-only /ban). Every command renamable/disableable in config.
  • Per-command tuning block in config.json: enabled / opOnly / name / cooldownSeconds / warmupSeconds / cost.
  • Teleport warmups with move-cancel; costs charged via the economy backend; /back history pushed on every teleport.
  • All messages in messages.json (defaults exported on first start), & color codes + &#RRGGBB hex.
  • Player data: one JSON per UUID + name index for offline lookups; atomic writes; dirty-batched autosave; offline cache eviction. Bans in bans.json.
  • Scheduler discipline: no blocking work on the shared executor, world access only via world.execute().
  • Movement-settings safety: after a join the engine initialises MovementSettings asynchronously — all re-apply paths (fly/speed) wait for initialisation (mass != 0, 3s retry) before sending, preventing all-zero physics packets that crash the client.
  • UI safety: pages built from .ui templates only; TextSpans colored with java.awt.Color objects (hex-string colors crash the client); container windows opened via PageManager.setPageWithWindows (chest pattern).

Notable decisions from live testing

  • /rtp and /tptoggle removed (product decision: RTP undermines progression)
  • /god, /flyspeed, admin /speed, /heal [player], /repair all removed — redundant with native creative-OP abilities
  • /getpos removed (native /whereami covers it)
  • Freeze feature replaced by the ban system (client-side edge cases; a banned player isn't on the server at all)
  • /nick and /baltop restricted to OPs

Known limitations (v1)

  • GUIs exist for perks/chat colors/invsee; homes/warps/kits/TPA pages are v2 candidates.
  • No group chats / per-player locale / player-warps yet.
  • Vanished players may still appear on third-party minimaps and in the client's own player list (engine limitation).