The Icesus Mudlet Package
An official, GMCP-driven HUD for Mudlet. Install one file and get the same panels the browser client uses: vitals, EXP, identity, casting, cooldowns, status effects, an enemy bar, exits, and a channel feed. No triggers to write, no Lua to copy.
Install
Easy path: download the .mpackage
- Grab
Icesus.mpackagefrom the latest release. - In Mudlet: Toolbox → Package Manager → Install, point at the file.
- Connect to
icesus.orgon port4443(TLS) or4000(plain).
You should see a green line on load:
Icesus package v1.0.0 ready.
Direct from source
If you want to track master and tweak the script, clone the repo and import package/Icesus.xml via the same Package Manager → Install dialog. Mudlet imports the XML directly — no .mpackage step.
git clone https://github.com/Icesus-mud/mudlet-package.git
# In Mudlet: Toolbox → Package Manager → Install
# → pick mudlet-package/package/Icesus.xml
Hot-reload works: edit the script in Mudlet's IDE and the HUD rebuilds itself cleanly.
The HUD is GMCP-driven end-to-end. If vitals stay blank or the enemy panel never appears, the most likely cause is GMCP not being negotiated — check that GMCP is enabled in the profile's connection settings. Everything else (the gauges, the panels, the casting bar) follows from there.
What you get
Three regions of HUD wrap the main console. The console itself is untouched, so existing prompts, logs, and triggers keep working.
Top banner
Identity row
Name, level, race, and guild from Char.Base.
Carry summary
Money, divine favor, and carry weight % from Char.Status.
EXP gauge
Full-width forest-green bar with current EXP and percent-to-next.
Bottom strip
Vitals
HP / SP / EP gauges, plus PSP if your character has any. Slim glass pills with a vertical gradient. HP pulses red below 25 %.
Location & exits
Current room, area, a SAFE chip when applicable, and open exits as short cyan letters (n e s w u).
Right column
Momentum buttons
Clickable BERSERK / EXECUTE-style labels that light up when Char.Status.momentum or Char.Status.special_momentum are set. Click sends use <name>.
Casting / busy bar
Fills over Char.Casting.progress / cps. Repaints amber for non-spell busy activity (camping, smelting, fishing) so every wait gets a visual signal.
Status effects
Colour-coded badges per effect — bleeding, stunned, poisoned, burning, frozen, blessed, cursed, death-sickness — from Char.Status.effects.
Cooldowns
Pills with name and seconds, gradient red → cyan → green as the cooldown ticks down. Truncates names when the row gets crowded.
Enemy panel
One bar per opponent from Char.Status.enemies, using the server's 12-tier shape buckets so it never claims more precision than consider would. Cleared by Char.EnemyDeath.
Channel feed
Every channel, tell, and whisper from Comm.Channel echoed into a side miniconsole, with timestamps.
The HUD reserves 360 px on the right, 92 px at the top, and 64 px at the bottom. The main console fills the rest.
Which GMCP packages it subscribes to
The package registers anonymous handlers and tells the server which modules it wants via Core.Supports.Set:
Char 1
Char.Base 1
Char.Vitals 1
Char.Status 1
Char.Cooldowns 1
Comm 1
Room 1
Char 1 covers Char.Vitals, Char.Maxstats, Char.Casting, Char.ExpGain, and Char.EnemyDeath. The other modules are listed explicitly so the client's intent is visible on the wire and survives any future server-side gating.
The full Icesus GMCP reference is in the repo at docs/gmcp-reference.md, mirrored from the mudlib's doc/help/gmcp.doc. Read the Mudlet GMCP guide for an explanation of each module and what it can drive.
If you'd rather build your own
The package is one file under a single icesus Lua table. Editing it in Mudlet's IDE replaces the running HUD cleanly, so it doubles as a working starting point if you want to fork it. The visual language — palette, gauge gradients, fonts — is ported from the browser client, so a fork can stay coherent with the rest of the cluster or diverge as far as you like.
If you'd rather wire panels by hand from scratch and learn how each GMCP module works in isolation, the Mudlet GMCP guide walks through the modules one at a time without assuming the package is installed.
Bug reports and contributions
Source, issues, and pull requests live at github.com/Icesus-mud/mudlet-package. The repo also includes a headless dev harness (tools/mudlet-dev/) that runs Mudlet under Xvfb against a small GMCP replayer, so contributors can iterate on HUD layout and screenshot the result without touching a real desktop. See CONTRIBUTING.md for details.
Related guides
Ready to install?
Download Icesus.mpackage