Skip to content
Back to Features
For MUD Server Owners

Accessibility Guide

Text games are the most naturally accessible genre there is — and blind and low-vision players are a passionate, long-standing part of the MUD community. MudMonster ships first-class screen-reader support, and a few small choices on the server side make your world shine for players using VoiceOver and TalkBack. This guide shows you how.

Why it matters

A screen reader speaks every line the server sends. That is a superpower for a text game — but only if the output is written with speech in mind. The biggest pitfalls are repeated status prompts (read aloud after every command), symbol-heavy formatting (spoken as "open bracket, pipe, pipe…"), and ASCII art (a wall of meaningless punctuation). MudMonster handles a lot of this on the client, but the cleaner your output, the better it sounds.

1. Send character vitals over GMCP (biggest win)

If your server sends Char.Vitals over GMCP, MudMonster can speak a clean, structured status on demand — "20 of 20 hit points, 100 mana, 50 moves" — instead of reading your raw prompt. Players get their vitals whenever they want them by typing /vitals, and the noisy prompt line never has to be spoken at all.

Char.Vitals {
  "hp": 20,  "maxhp": 20,
  "mp": 100, "maxmp": 100,
  "mv": 50,  "maxmv": 50
}

See the GMCP Integration Guide for the full package list. This single addition does more for screen-reader players than anything else.

2. Mark your prompt with Telnet GA or EOR

Send a Telnet Go-Ahead (IAC GA, byte 249) or End-Of-Record after your prompt. This is the standard protocol signal for "this line is a prompt, I'm now waiting for input," and it lets clients tell your prompt apart from real game text — so it can be summarised or silenced rather than read aloud on a loop. Most DikuMUD-family codebases already support this; make sure it's enabled.

3. Keep prompts simple and parseable

For players without GMCP, MudMonster falls back to cleaning your prompt text for speech. You can help it read naturally:

  • Use current/max pairs — 20/20 is read as "20 of 20".
  • Prefer clear stat labels: hp, mana, mv read better than cryptic single letters.
  • Avoid runs of decorative symbols (===, *~*~*) inside the prompt — each one is spoken.

4. Write speech-friendly output

  • Give ASCII art a text alternative. A map or logo made of punctuation is noise to a screen reader — offer a brief/text mode, or a short caption.
  • Lead with the important words. Put the outcome ("You are hit for 12 damage") before decorative trimmings.
  • Don't rely on colour alone. If red means danger, say "danger" too.
  • Keep tables narrow. Wide column layouts scramble when read linearly.
  • Offer a screen-reader / accessibility toggle in-game if you can, that trims art and verbosity.

What MudMonster does for players

So you know what's handled on the client side:

  • Streamed output is announced as it arrives, coalesced so fast bursts don't cut each other off.
  • Repeated status prompts are detected and kept out of the way by default; /vitals speaks a clean status on demand.
  • Adjustable verbosity (everything / incoming only / off) and an optional "speak prompt lines" toggle.
  • Every control is labelled for VoiceOver and TalkBack.

Tell players you care

Every MUD listing can display an Accessibility Rating from 0–10. If you've done the work above, set yours so screen-reader players can find you. Claim your listing to manage it, or get in touch and we'll help.

List or Claim Your MUD