¶ Getting Started
DarkMistsCompanion (DMC) is a Mudlet Lua framework that enhances your Dark Mists experience with custom UI panels, real-time tracking, and gameplay utilities. DMC is mostly non-automating. Some optional modules (such as Enchanter Assist) can automate repetitive command sequences that you explicitly start and stop. It does not make autonomous gameplay decisions on your behalf. It organizes information, makes navigation easier, and provides tools to help you play more efficiently.
dmc in-game at any time to see the main
help index. Use dmc help <topic> for in-depth help on any module.Available topics:
es · makearmor · walk ·
skillups · sb ·
ch · who ·
affects · infobox ·
spam · dmid ·
map · statroll ·
showdmg · cmud
| Command | Description |
|---|---|
dmc | Show the main DMC help index |
dmc help <topic> | Show in-depth help for a module |
dmc ui | Toggle between full and minimal UI mode |
dmc ui on | Force full UI mode on |
dmc ui off | Switch to minimal UI mode |
dmc infobox | Show, set, or clear the profile info box |
dmc spam | View or configure spam prevention settings |
dmc showdmg | Toggle inline damage estimates on combat messages |
dmc showdmg on | Enable damage estimates |
dmc showdmg off | Disable damage estimates |
dmc showdmg color <color> | Set the damage message highlight color |
dmc showdmg mode <avg|range> | Set display to average only or min–max range |
¶ Interface Overview
DMC adds several persistent panels to your Mudlet layout. Each panel updates automatically in response to game events. Most panels live in a tabbed container — click the tab labels to switch between them.
¶ Score Panel
The Player Status tab shows a live snapshot of your character's key
statistics and refreshes mostly when you use the score command or when
relevant events are received.
¶ Sections
| Section | What it shows |
|---|---|
| Character | Level and age (years and hours) |
| Attributes | Base and modified STR / INT / WIS / DEX / CON. Modified values appear green when buffed or red when debuffed. |
| Vitals | HP / Mana / Moves with current regen rates |
| Condition | Hunger and thirst levels with descriptive labels (Full → Dying) |
| Wealth | Gold and silver — on hand, in bank, and in house account |
| Location | Current room name, room ID, and available exits |
| Status | Ready / Resting / Sleeping / In Combat |
| Combat | (In combat only) Target name and target health % |
¶ Status Bars
Horizontal gauges at the bottom of your Mudlet window showing your vitals at a glance. An enemy health bar appears automatically when you enter combat.
¶ Gauges
■ HP · ■ Mana · ■ Moves · ■ Experience · ■ Enemy HP (combat only)
| Command | Description |
|---|---|
sb | Show status bar help |
sb show | Make all bars visible |
sb hide | Hide all bars |
sb toggle | Toggle bar visibility on/off |
sb info | Print current vitals to the chat area |
sb recreate | Recreate the bars (useful after layout changes) |
¶ Damage Messages
Appends an inline damage estimate to every combat hit line. The estimate is derived from the damage verb (e.g. wounds, mauls, PULVERIZES) and shows either the average of that verb's range or the full min–max range depending on your mode.
Enabled by default. All options take effect immediately without reloading.
| Command | Description |
|---|---|
dmc showdmg | Toggle damage estimates on/off |
dmc showdmg on | Enable damage estimates |
dmc showdmg off | Disable damage estimates |
dmc showdmg color <color> | Set the damage message highlight color |
dmc showdmg mode avg | Show only the average damage value |
dmc showdmg mode range | Show min–max damage range with average |
¶ Profile Info Box
The Mudlet profile info box is a small text area on the profile screen that you can use
for custom notes. DMC exposes it through dmc infobox, so you can set or clear
the text without leaving the game.
dmc infobox <text>sets the profile info textdmc infobox clearclears the profile info box- If you only run
dmc infobox, DMC shows the usage summary
¶ Chat History
The Chat tab keeps a scrollable log of all communication channels, color-coded by type. Up to 100 messages are retained per session. Both sent and received messages are captured, each with a timestamp.
¶ Captured Channels
| Channel | Color | Description |
|---|---|---|
| say / emote-say | Yellow | Local room speech, including emoted says |
| tell / mptell | Green | Private tells and mental projection tells |
| yell / yell panic | Blue | Yell messages — normal and panic variants |
| gtell | Purple | Group communication |
| ooc | Blue | Out-of-character channel |
| newbie (in-game & Discord) | Green | Newbie help channel |
| house | White | House / guild channel |
| mpsay / mental blast | Blue | Mental projection broadcasts |
¶ Who Window
The Who tab displays the online player list, captured automatically from the server's "who" output. Because the game does not push this data on its own, the window tracks when it was last updated so you always know how current it is.
- Player count and seconds since last refresh are shown in the header
- Click [Refresh] to issue a fresh
whocommand immediately - The age counter ticks up on every prompt — a quick glance tells you how stale the data is
- Player entries are displayed with the original server formatting and colors preserved
¶ Affects Window
The Affects tab shows all currently active spells and status effects on your character. Like the Who Window, it captures a snapshot from the server and tracks how old it is.
- Click [Refresh] to re-issue the affects command and update the list
- Click [Clear Expired] to remove affects whose duration has elapsed
- The age counter updates every 2 seconds so you can see at a glance when the data was last fetched
¶ Minimap
An interactive Geyser map widget showing your current position in the Dark Mists world. Displays room name, room ID, and area name alongside the graphical map.
- Updates automatically as you navigate between rooms
- Double-click a room on the map to walk there
- Map data is loaded from the bundled
map.datfile (15,000+ rooms)
¶ Button Bar
A docked menu bar at the top of your screen providing quick access to all DMC features via dropdown menus — no need to remember commands.
¶ Menu Structure
| Menu | Items |
|---|---|
| Modules | Walk, Enchant Assist, Make Armor, Skill Ups, Item Tracker |
| Settings | Toggle UI mode, Light/Dark theme, Status Bars, Advanced & Dev tools |
| Help | General, World, Character, Interface, and Scripting help topics |
¶ Session Timer
A small ⏱ M:SS (or ⏱ H:MM:SS) display on the button bar that
tracks how long you've been logged in to the current world session. Resets automatically
on login or reconnect and stops on disconnect. Hover for a "Session timer" tooltip.
¶ Utility Modules
¶ Enchanter Assist
A formula discovery assistant for the alchemy skill. EnchanterAssist systematically tests combinations of material essences to help you discover new alchemy formulas. It tracks every combination already tried, manages resting automatically, and saves all progress to disk so sessions survive disconnects and reloads.
¶ How It Works
- Set the number of materials per attempt with
es 1throughes 5(default: 5). - Run
es runfor a single attempt, ores autoto run continuously. - When your mana or moves drop below 20 %, the module rests automatically (via bedroll sleep or mana potions) and resumes when you recover.
- Every attempt — success or failure — is recorded and saved. Progress survives reconnects.
- When a formula is discovered, an audio alert plays and the formula name becomes a clickable link to view its details with
alc info <formula>.
¶ Effect Colors
During a brew, enchantment result lines are color-coded to indicate what category of affect the material combination produces:
| Color | Affect Category |
|---|---|
| ■ Cyan | Saves / Added Affect / Invisibility |
| ■ Light Blue | Attributes (STR, INT, WIS, DEX, CON) |
| ■ Orange | Resources / Burn Proof |
| ■ Purple | –AC (better armor) / Flying |
| ■ Blue | Slow or Haste |
| ■ Green | Resource Regeneration |
| ■ Red | Humming / No-Remove |
| ■ Gold | Added Value |
| ■ Silver | Immunity / Resistance |
| ■ Brown | Non-metal / Half Weight |
| ■ Olive | Curse |
| ■ Pink | Glowing |
| ■ Muted gray | Double Weight |
| ■ Warn orange | +AC (worse armor) |
¶ Commands
| Command | Description |
|---|---|
es | Show Enchanter Assist help |
es run | Run one trial cycle |
es auto | Toggle continuous auto-run mode on/off |
es stop | Stop after the current attempt finishes gracefully |
es 1 – es 5 | Set the number of materials to use per attempt (1–5) |
es stats | Show discovery progress for all part counts plus session totals |
es missing | List materials for which you are missing the essence (excluded from trials) |
es reset | Reset session statistics — attempted combinations and missing materials are preserved |
es set container <name> | Set the container to pull items from (default: bag) |
es set sleeper <name> | Set the sleep item name for bedroll rest mode (default: bedroll) |
es set sleepmode sleep|potion | Use a bedroll to sleep (sleep), or drain potions to restore (potion) — default: sleep |
es set potion <name> | Set the mana potion item name for potion mode (default: potion) |
es set order seq|rand | Test combinations in deterministic sequential order (seq) or randomly (rand) — default: rand |
es sound | Toggle the audio alert played when a formula is discovered |
es enable / es disable | Enable or disable the module entirely |
¶ Make Armor
Automated make armor casting with quality checking. Casts make armor on an item, identifies the result, and fades if the total AC is below a configurable threshold. Manages resting automatically when mana is low.
¶ Commands
| Command | Description |
|---|---|
makearmor | Show MakeArmor help |
makearmor <item> [5-20] | Start making armor on <item> with optional minimum total AC |
makearmor status | Show current status and step |
makearmor stop | Stop the current operation |
makearmor sleeper <item> | Set which sleeping item to use (default: bedroll) |
makearmor container <item> | Set container that holds the sleeper (default: bag) |
¶ Skill Ups
Tracks skill improvements as they happen and maintains a timestamped history of your recent gains. When a skill improves, a notification appears in your chat area. Skills improved this session are highlighted in a distinct color on the practice screen.
| Command | Description |
|---|---|
skillups | Show Skill Ups help |
skillups list | Show the last 20 skill improvements with timestamps and elapsed time |
skillups reset | Clear the improvement history |
practice, skills, or spells, making it easy to
spot what you have been gaining.
¶ Clickables
Automatically enhances the output of practice, skills, and
spells commands: skill names become clickable links and proficiency values
are color-coded by percentage. No command is needed — this runs transparently whenever
you use those commands.
¶ Quest clickables
Clickable formatting applies to quest lines when your current quest list is shown.
| Interaction | Action |
|---|---|
| Click a quest number | Sends quest read <number> |
| Shift+Click a quest number | Sends quest drop <number>, then refreshes with quest current |
¶ Auction clickables
Clickable formatting also applies to auction list lines.
| Interaction | Action |
|---|---|
| Click item ID/name column | Sends auc browse <id> |
| Click buyout value | Sends auc buyout <id>, then refreshes with auc list |
| Click bid value | Sends auc bid <id> <current+1>, then refreshes with auc list |
¶ Vault clickables
Vault item numbers in === VAULT CONTENTS === listings are clickable.
| Interaction | Action |
|---|---|
| Click a vault number | Sends get <number> vault |
¶ Practice / Skills / Spells output
| Interaction | Action |
|---|---|
| Click a skill name | Sends help <skill> |
| Shift+Click a skill name | Sends prac <skill> and immediately refreshes the list |
| Proficiency | Color |
|---|---|
| 0 – 49 % | ■ Red |
| 50 – 89 % | ■ Orange |
| 90 – 99 % | ■ Yellow |
| 100 % | ■ Green |
| Recently improved (this session) | ■ Yellow (skill name highlighted) |
¶ Essence display (alchemy)
When you view your stored essences, quantities are color-coded relative to the material cap:
| Fill level | Color |
|---|---|
| 0 – 49 % | ■ Red |
| 50 – 74 % | ■ Orange |
| 75 – 89 % | ■ Yellow |
| 90 – 99 % | ■ Green |
| 100 % (full) | ■ Green |
¶ Item Tracker
Look up items from the bundled database of 5,000+ Dark Mists items. Results appear as clickable links; hovering over a link shows a floating tooltip with the item's full stat block and details.
| Command | Description |
|---|---|
dmid <item name> | Search for an item and display its information |
dmid silver ring will match
any item containing those words. Click on any result to see the full stat block in
a tooltip.
¶ Spam Prevention
Spam prevention is configured through dmc spam. It tracks repeated commands
and can deny them after a configurable threshold, optionally sending a fallback command
when the limit is reached.
| Command | Description |
|---|---|
dmc spam status | Show enabled state, threshold, and fallback command |
dmc spam on | Enable spam prevention |
dmc spam off | Disable spam prevention |
dmc spam threshold <n> | Set the repeat limit before denial |
dmc spam fallback <cmd> | Send this command when the threshold is hit |
dmc spam fallback clear | Disable the fallback command |
¶ CMud Scripting Layer
CMudWrapper is a CMUD-compatible scripting layer built into DMC. It lets you define
persistent aliases, triggers, variables, and classes using familiar CMUD syntax — all saved to
disk and restored on each login. Every command is prefixed with #.
dmc help cmud or #help
to view the full command reference inside Mudlet.
¶ Aliases
| Command | Description |
|---|---|
#alias {name} {body} | Define or update an alias |
#alias {name} {body} {class} | Define with an inline class assignment |
#alias {name} | Show an alias definition |
#alias | List all aliases (sorted by class, then name) |
#alias {classname} | List aliases in that class (shows hidden members) |
#unalias {name} | Remove an alias (multi-word names work bare, without braces) |
Alias names may be multi-word — wrap them in braces: #alias {dr f} {drink flask}.
Inside an alias body:
%1 %2 …— positional arguments from the alias invocation%-1 %-2 …— rest-of-args from position N onward (multi-word safe)%%1 %%2 …— delayed expansion (survive inner alias calls)@VarName— expands a stored variable|or;— command separator (configurable with#sep)
¶ Triggers
| Command | Description |
|---|---|
#trigger {name} {pattern} {body} | Add a trigger using CMUD wildcard pattern syntax |
#trigger {name} {pattern} {body} {class} | Add wildcard trigger with inline class |
#rxtrigger {name} {pattern} {body} | Add a trigger using raw PCRE regex |
#rxtrigger {name} {pattern} {body} {class} | Add regex trigger with inline class |
#trigger {name} | Show a trigger definition |
#trigger | List all triggers (sorted by class, then name) |
#trigger {classname} | List triggers in that class (shows hidden members) |
#untrigger {name} | Remove a trigger |
#action and #rxaction are synonyms for #trigger and #rxtrigger. | |
¶ Wildcard Tokens (for #trigger)
| Token | Matches |
|---|---|
* | Any sequence of characters |
? | Any single character |
%d | One or more digits (0–9) |
%n | Signed number (optional + or −) |
%w | One or more alpha characters |
%a | One or more alphanumeric characters |
%s | One or more whitespace characters |
%x | One or more non-whitespace characters |
%p | Punctuation |
%t | A direction word (north, south, east, west, …) |
[abc] | Any character in the set |
(pat) | Capture group — result available as %1 … %99 in the body |
{a|b|c} | Alternation — matches any listed value |
{^str} | Negation — does not match str |
&nn | Exactly nn characters |
&VarName | Capture into CMud variable @VarName |
~x | Literal character x (escape next char) |
~~ | Literal ~ |
^ $ | Line anchors |
¶ Variables
| Command | Description |
|---|---|
#var {name} {value} | Set a variable |
#var {name} {value} {class} | Set a variable with an inline class (no default) |
#var {name} {value} {default} {class} | Set a variable with both a default and an inline class |
#var {name} | Show a variable's value |
#var | List all variables |
#var {classname} | List variables in that class (shows hidden members) |
#unvar {name} | Remove a variable |
Reference a variable with @VarName inside alias and trigger bodies.
&VarName captures in trigger patterns auto-assign the variable.
¶ Classes
Classes let you group aliases, triggers, and variables together so you can enable or
disable them all at once. The current default class is applied to every new
definition until you change or reset it. You can also assign a class inline as the
last argument of #alias, #trigger, #rxtrigger,
or #var — this overrides the default.
| Command | Description |
|---|---|
#class | List all classes and the current default |
#class {name} | Set name as the default class for new definitions (auto-creates if new) |
#class 0 | Reset the default class to <None> |
#class {name} 1 | Enable class — reinstalls handles for all members |
#class {name} 0 | Disable class — kills handles for all members |
#class {name} {enable} | Enable class (text option form) |
#class {name} {disable} | Disable class |
#class {name} {hidden} | Hide class members from #alias / #trigger listings |
#class {name} {unhide} | Unhide a hidden class |
#class {name} {remove} | Delete the class record (members are not removed) |
#alias and #trigger
listings to keep the output clean.
¶ Enable / Disable
Individual aliases, triggers, and variables can be toggled on and off without removing them. Disabled items show in orange in listings; enabled items appear in green.
| Command | Description |
|---|---|
#T+ {name} | Enable the named alias, trigger, or variable |
#T- {name} | Disable the named alias, trigger, or variable |
¶ Async Delay — #WAIT
#WAIT pauses execution of remaining commands in an alias body and resumes
them after a delay or after the next line arrives from the MUD. Shorthand prefixes
like #WA are accepted.
| Command | Description |
|---|---|
#WAIT {ms} | Pause for ms milliseconds, then continue |
#WAIT | Wait until the next line arrives from the MUD, then continue |
#alias j {#WA 5000|l} — wait 5 s then look.Example:
#alias loot {get all corpse|#WA|l} — loot, wait for the MUD response, then look.
¶ Utility Commands
| Command | Description |
|---|---|
#show {text} | Echo text inline (use %cr for newlines; variables expand) |
#send {text} | Send text to the server |
#repeat {n} {cmd} | Run command n times |
#{n} {cmd} | Shorthand for #repeat |
#sep {char} | Set the command separator character (default: |) |
#sep | Show the current separator |
#killall | Erase all aliases, triggers, variables, and classes — cannot be abbreviated |
#help | Show the CMud help page in-game |
#killall is irreversible and wipes all saved state immediately.
It is intentionally not abbreviatable — you must type it in full.
¶ Coloring — #CW / #COLOR
#CW and #COLOR colorize output. Used with two arguments they
create persistent triggers that fire on every matching line. Used with
one argument inside a trigger body they colorize the current line.
| Command | Description |
|---|---|
#CW {pattern} {fg bg} | Create a persistent trigger that colors every occurrence of pattern with the given color(s) |
#CW {fg bg} | (Inside a trigger body) Color the trigger match with the given color(s) |
#COLOR {pattern} {fg bg} | Create a persistent trigger that colors the entire matching line with the given color(s) |
#COLOR {fg bg} | (Inside a trigger body) Color the entire current line with the given color(s) |
The color argument is a single brace-wrapped token containing one or two space-separated
Mudlet color names. A single name sets the foreground only (e.g. {red});
two names set foreground and background (e.g. {white black}).
Both commands accept an optional third argument {class} to assign the
auto-created trigger to a class.
Run lua showColors() in the Mudlet script editor to list all available names.
#CW thirsty blue — always highlight the word thirsty in blue.Example:
#CW thirsty {white black} — highlight thirsty white on black.Example:
#COLOR {You are hit} red — color the entire line red whenever it matches.Example:
#COLOR {You are hit} {yellow black} — yellow text on black background.Example:
#CW {You are hit} orange {combat} — same, assigned to class combat.
¶ Export
#export prints stored definitions back out as command lines you can
copy or save. The output includes #class declarations first, followed by
all aliases, triggers, and variables with their trailing class arguments — so the
exported output can be re-imported exactly as-is.
| Command | Description |
|---|---|
#export | Export class declarations, then all aliases, triggers, and variables |
#export {classname} | Export all members of a specific class |
#export {name} | Export a single named alias, trigger, or variable |
#export alias {name} | Export a specific alias by name |
#export trigger {name} | Export a specific trigger by name |
#export variable {name} | Export a specific variable by name |
¶ Cross-Invocation
Alias bodies can call other aliases by name — just write the alias name as a command in the body. Trigger bodies can invoke aliases the same way. Self-recursion (an alias calling itself) is automatically blocked with a warning.
¶ Examples
#alias z {zap %1}
#alias heal {cast heal %1|cast armor %1}
#var target skeleton
#alias kt {kill @target}
#trigger hitme {You are hit by * for %d damage.} {#show ouch!}
#trigger getitem {* drops &ItemName} {#show Dropped: @ItemName}
#rxtrigger hpline {^HP:\s*(\d+)/(\d+)} {#var hp %1|#var hpmax %2}
-- rest-of-args: "attack c blind" → attack1 = "c blind"
#alias attack {#var attack1 %-1}
-- delayed expansion: %%1 stays as %1 for the inner alias to receive
#alias outer {#alias inner {echo %%1}}
-- group combat aliases into a class, then toggle them together
#class combat
#alias atk {kill %1}
#alias fl {flee}
#class 0
#class combat 0 -- disables atk and fl
#class combat 1 -- re-enables both
-- hide internal helpers from listings (still active)
#class internal {hidden}
#alias _helper {some body} {internal}
-- multi-word alias names
#alias {dr f} {drink flask}
-- word and line coloring
#CW Abasdarhon blue -- highlight the name in blue, permanently
#CW Abasdarhon {white black} -- highlight white on black, permanently
#COLOR {You are hit} red -- color the whole line red, permanently
#COLOR {You are hit} {yellow black} -- yellow text on black background, permanently
#sep ;
#alias combo {north;kill rat;get all}
-- wait 5 s then look
#alias j {#WA 5000|l}
-- loot, wait for next MUD line, then look
#alias loot {get all corpse|#WA|l}
-- disable a trigger without removing it, re-enable later
#T- hitme
#T+ hitme
¶ Stat Roller
A character creation assistant that activates automatically during the stat-rolling phase of new character creation. It analyzes rolled stats in real time and helps you decide whether to keep or re-roll without needing to do mental arithmetic.
- HUD display: Shows your current stat block (STR / INT / WIS / DEX / CON), total, the best total seen this session, a trend sparkline, rolls per minute, and elapsed time.
-
Leniency: Controls how strict the acceptance threshold is —
0is most selective,3is most lenient. This is selected during character creation. - Best roll memory: Tracks the highest total seen this session so you can compare new rolls against your best.
- Keepalive: Sends a blank input at regular intervals to prevent timeout during long rolling sessions.
¶ Web Tools
DMC bundles several standalone HTML tools alongside the package. Open them in any browser — they are fully self-contained and require no internet connection.
¶ Item Viewer — item-viewer.html
Search and filter the complete Dark Mists item database (5,000+ items). Filter by name, item type, stat ranges, and preset stat profiles (Melee, Tank, Caster, Healer). Results include a full stat breakdown for each item. Supports loading updated database files.
¶ Alchemy Formula Parser — alchemy-formula-parser.html
Convert and analyze alchemy formula data. Useful for processing formula output dumps and visualizing material relationships discovered via Enchanter Assist.
¶ Alchemy Material List — alchemy-mat-list.html
Searchable and sortable material source reference for alchemy. Includes material name, item examples, source locations, and notes so you can quickly find where to farm each material.
¶ Line Formatter — line-formatter.html
Wraps lines of text to a set character length and optionally prepends a prefix
(e.g. desc + ) to every line. Supports word-wrap
with space-aware breaking and includes real-time line/character stats. Useful for
formatting notes, descriptions, journals, etc.
¶ EA Save Converter — ea-save-converter.html
Converts CMUD Enchanter Assist XML trial data (AttemptedSet) into a
Mudlet-compatible ea_data.lua file for importing your previously attempted
combinations.
¶ Additional Resources for Mudlet
If you are new to Mudlet or migrating from another client, these official docs are a great place to start:
¶ Commands Quick Reference
| Syntax | Description | Module |
|---|---|---|
dmc | Show the main DMC help index | Core |
dmc help <topic> | In-depth help for a module | Core |
dmc ui [on|off] | Toggle or set full / minimal UI mode | Core |
dmc infobox [text|clear] | Set or clear the Mudlet profile info box | Core |
dmc showdmg [on|off] | Toggle or set inline damage estimates on combat messages | Core |
sb | Status bar help | Status Bars |
sb show / sb hide | Show or hide the gauge bars | Status Bars |
sb toggle | Toggle bar visibility | Status Bars |
sb info | Print current vitals to chat | Status Bars |
sb recreate | Recreate bars after layout changes | Status Bars |
walk <name> | Speedwalk to a saved destination | Navigation |
walk list [filter] | List saved destinations (optionally filtered) | Navigation |
walk add <name> [roomid] | Save current (or specified) room | Navigation |
walk rem <name> | Delete a destination | Navigation |
walk area <search> | Walk to any area matching search | Navigation |
walk stop | Cancel current walk | Navigation |
es | Enchanter Assist help | Enchanter Assist |
es run | Run one trial cycle | Enchanter Assist |
es auto | Toggle continuous auto-run | Enchanter Assist |
es stop | Stop after current attempt | Enchanter Assist |
es 1–5 | Set materials per attempt | Enchanter Assist |
es stats | Show discovery progress and session stats | Enchanter Assist |
es missing | List missing material essences | Enchanter Assist |
es reset | Reset session (preserves attempts & missing) | Enchanter Assist |
es set container <name> | Set container name | Enchanter Assist |
es set sleeper <name> | Set sleep item name | Enchanter Assist |
es set sleepmode sleep|potion | Choose rest method | Enchanter Assist |
es set potion <name> | Set mana potion name | Enchanter Assist |
es set order seq|rand | Trial order: sequential or random | Enchanter Assist |
es sound | Toggle formula discovery sound | Enchanter Assist |
es enable / es disable | Enable or disable the module | Enchanter Assist |
skillups | Skill tracker help | Skill Ups |
skillups list | Show recent improvements | Skill Ups |
skillups reset | Clear history | Skill Ups |
dmid <item name> | Search item database | Item Tracker |
makearmor | MakeArmor help | Make Armor |
makearmor <item> [5-20] | Start making armor on target item | Make Armor |
makearmor status | Show current status | Make Armor |
makearmor stop | Stop current operation | Make Armor |
makearmor sleeper <item> | Set sleep item | Make Armor |
makearmor container <item> | Set container for sleeper | Make Armor |
#alias {name} {body} | Define a persistent alias | CMud |
#alias {name} {body} {class} | Define alias with inline class | CMud |
#alias [name] | List or inspect aliases | CMud |
#alias {classname} | List aliases in a class (shows hidden) | CMud |
#unalias {name} | Remove an alias (multi-word names work without braces) | CMud |
#trigger {name} {pattern} {body} | Add trigger (CMUD wildcards) | CMud |
#trigger {name} {pattern} {body} {class} | Add wildcard trigger with inline class | CMud |
#rxtrigger {name} {pattern} {body} | Add trigger (raw PCRE) | CMud |
#rxtrigger {name} {pattern} {body} {class} | Add regex trigger with inline class | CMud |
#trigger {classname} | List triggers in a class (shows hidden) | CMud |
#untrigger {name} | Remove a trigger | CMud |
#var {name} [value] | Set or inspect a variable | CMud |
#var {name} {value} {class} | Set variable with inline class (no default) | CMud |
#var {name} {value} {default} {class} | Set variable with default and class | CMud |
#var {classname} | List variables in a class (shows hidden) | CMud |
#unvar {name} | Remove a variable | CMud |
#class | List classes and current default | CMud |
#class {name} | Set default class for new definitions | CMud |
#class 0 | Reset default class to <None> | CMud |
#class {name} 1 / 0 | Enable or disable class (applies to all members) | CMud |
#class {name} {enable/disable} | Enable or disable class (text form) | CMud |
#class {name} {hidden} | Hide class members from listings | CMud |
#class {name} {unhide} | Unhide a hidden class | CMud |
#class {name} {remove} | Delete the class record | CMud |
#T+ {name} | Enable alias / trigger / variable | CMud |
#T- {name} | Disable alias / trigger / variable | CMud |
#CW {pattern} {fg bg} | Persistent trigger: color matching word (one or two colors) | CMud |
#CW {fg bg} | (Inside trigger) Color the trigger match | CMud |
#COLOR {pattern} {fg bg} | Persistent trigger: color matching line (one or two colors) | CMud |
#COLOR {fg bg} | (Inside trigger) Color the entire current line | CMud |
#WAIT {ms} | Pause N ms then continue alias body | CMud |
#WAIT | Wait for next MUD line then continue alias body | CMud |
#show {text} | Echo text inline (%cr = newline; variables expand) | CMud |
#send {text} | Send text to server | CMud |
#repeat {n} {cmd} | Run command n times | CMud |
#sep [char] | Get or set command separator | CMud |
#killall | Erase all aliases, triggers, variables, and classes | CMud |
#export | Export class declarations + all stored items | CMud |
#export {classname} | Export all members of a class | CMud |
#export alias/trigger/variable {name} | Export a specific item by kind and name | CMud |
#help | Show CMud help in-game | CMud |
¶ Tips & Troubleshooting
¶ Plugin update issues
- Spamming Enter while logging in can cancel an update download. Fix: quit the game and reconnect (disconnect/reconnect will not re-trigger GMCP). After reconnect, check that the load message appeared and the UI looks normal.
¶ A panel is blank or not updating
- Confirm your UI mode is set to
"full": typedmc ui on. -
Force an update by issuing the relevant command — for example,
whoto populate the Who Window, or any movement command to trigger a prompt refresh on the Score Panel. - If status bars are missing, type
sb recreate.
¶ Enchanter Assist stops or won't start
-
Hard stop completed: A previous
es stopran to completion. Typees autoto restart. -
Missing essence: You lack the essence for a material in the current
combination. Check
es missing— those materials are excluded from future trials automatically. -
All combinations exhausted: Every combination for the current part count
has been tried. Increase the count with
es 4ores 5and run again. -
Disconnected mid-attempt: A disconnect aborts the current attempt
cleanly. Reconnect and run
es autoto resume.
¶ Walk can't find a path
- Confirm the map is loaded — the Minimap should be showing your current room.
-
Some areas may have map gaps that break pathfinding. Try
walk area <name>to navigate toward the general area first. - Verify the destination name with
walk list.
¶ Clickable skills aren't appearing
-
Clickable formatting only triggers when you send one of the relevant commands —
type
practice,skills, orspellsto see the formatted, clickable output.
¶ Chat History is empty
- The log is session-only and starts empty on each Mudlet launch. Messages are added as they arrive — no history is imported from before the session began.
¶ Advanced Configuration
DMC stores its settings in darkmists_global_settings.lua inside your Mudlet
profile directory. Most settings take effect on the next reload. You can also access
common settings through the Button Bar → Settings menu.
| Setting | Values | Description |
|---|---|---|
uiMode |
"full" / "minimal" |
Full UI shows all panels. Minimal mode hides most panels for a cleaner layout. |
theme |
"dark" / "light" |
Switches all panels and color tags between dark and light color schemes. |
fontSize |
integer (e.g. 10) |
Font size used across all DMC consoles and panels. |
fontName |
string (e.g. "Fira Code") |
Font family used across all DMC consoles. |
statusBarColors |
RGBA strings per gauge | Bar and backdrop colors for each gauge: hp, mn, mv, xp, enemy. Format: "r,g,b,a" (0–255). |
statusBarTotalHeightPercent |
number (0–100) | Total vertical height of the status bar area as a percentage of the Mudlet window height. |
statusBarsMoveable |
true / false |
Allow dragging the status bars to reposition them on screen. |
whoWindowDeleteOriginalLines |
true / false |
Remove the raw "who" output from the main console after the Who Window captures it. |
statRollerLeniency |
0 – 3 |
Controls how strict the Stat Roller's acceptance threshold is. 0 = most selective, 3 = most lenient. |