100 Screen Reader Support resources for MUD players
Enhancing screen reader support in MUDs requires a dual approach: optimizing server-side output for logical parsing and configuring client-side scripts to filter noise. Modern accessibility in text-based gaming relies on reducing redundant 'spam', leveraging GMCP for out-of-band data, and implementing robust audio cue systems that replace visual status bars. This guide provides actionable technical implementations for developers and power users to create a non-visual gameplay environment that is as efficient as its graphical counterparts.

Server-Side Output Formatting
- 1
ASCII Map Toggles
beginnerhighImplement a 'SET MAP OFF' command that replaces visual ASCII maps with a text-based list of exits and nearby landmarks to prevent screen reader gibberish.
- 2
Brief Combat Mode
beginnerhighCreate a combat toggle that removes flavor text (e.g., 'The sword whistles through the air') and only outputs essential data like 'You hit the orc for 10 damage'.
- 3
GMCP Status Integration
advancedhighUse Generic Mud Communication Protocol (GMCP) to send health, mana, and stamina updates out-of-band so clients can process them without interrupting the main text flow.
- 4
Logical Room Ordering
intermediatestandardFormat room descriptions to always place the Room Title first, followed by Exits, then the Description, and finally Mobs/Items to allow quick navigation.
- 5
Inventory Aggregation
beginnermediumModify the inventory command to group identical items (e.g., 'a stack of 20 arrows') rather than listing each item on a new line.
- 6
Consistent Channel Prefixes
beginnerstandardEnsure every communication channel uses a unique, consistent bracketed prefix like [Auction] or [Guild] at the very start of the line for easy regex filtering.
- 7
Line Termination Standards
intermediatehighEnsure every discrete message or prompt ends with a newline character (\n) to force screen readers to process the buffer and speak the line immediately.
- 8
Customizable Prompts
intermediatemediumAllow players to define their own prompt strings, including the ability to remove visual separators like pipes (|) or brackets that clutter speech.
- 9
Combat Target Highlights
beginnermediumProvide a command to display only the current target's health status, reducing the need to scan the entire room for combat progress.
- 10
Command Echo Toggles
beginnerstandardInclude a setting to disable the echoing of player commands back to the terminal, preventing the screen reader from speaking the command the user just typed.
Client-Side Scripting and Triggers
- 1
MUSHclient Speak Plugin
beginnerhighUtilize the 'Speak' plugin for MUSHclient which uses SAPI or screen reader APIs (NVDA/JAWS) to read incoming text without manual window focus.
- 2
Mudlet Screen Reader Mode
beginnerhighEnable the 'Screen Reader' option in Mudlet preferences to improve how the main console buffer exposes text to assistive technology.
- 3
Repetitive Text Gagging
intermediatemediumWrite regex triggers to gag (hide) common environmental spam like 'The wind howls' or 'A bird chirps' to keep the speech buffer clear for vital info.
- 4
Window Redirection
advancedhighScript the redirection of chat channels to a hidden buffer or secondary window that the screen reader only accesses on a specific keybind.
- 5
Priority Combat Triggers
intermediatehighSet up high-priority triggers for critical events like 'You are stunned!' to interrupt the current speech queue and alert the player immediately.
- 6
Status Line Scrapers
advancedmediumUse Lua or VBScript to scrape health and mana from the prompt and store them as variables for use in custom audio alerts.
- 7
Speedwalk Alias Support
beginnerstandardCreate aliases for common paths (e.g., 'run to bank') to minimize the number of manual directional commands the user must hear read back.
- 8
Input History Navigation
intermediatestandardConfigure client hotkeys to scroll through command history without the screen reader re-reading the entire input line every time a key is pressed.
- 9
Automatic Login Scripts
beginnermediumHardcode connection strings and passwords into the client to bypass the login prompts which are often formatted with non-accessible ASCII art.
- 10
Highlighting for Low Vision
beginnerstandardFor low-vision users, use high-contrast color triggers (e.g., bright yellow text on black background) for keywords like 'Exits' or 'Enemy'.
Audio Cues and Non-Visual Feedback
- 1
MSP (MUD Sound Protocol)
advancedhighImplement server-side MSP triggers that tell the client to play specific WAV or MP3 files for combat hits, misses, and spell effects.
- 2
Health Threshold Pings
intermediatehighScript a series of beeps that increase in frequency or pitch as a player's health drops below 50%, 25%, and 10%.
- 3
Directional Exit Audio
advancedmediumUse stereo panning in soundpacks to play exit sounds in the left, right, or center channels based on the direction (West, East, North/South).
- 4
Skill Cooldown Alerts
intermediatehighPlay a distinct 'ding' or mechanical sound when a combat skill or spell cooldown has finished, removing the need to check 'score' or 'skills'.
- 5
Aggro Entrance Cues
intermediatehighTrigger a sharp, jarring sound effect when an aggressive mob enters the room to provide an immediate tactical warning.
- 6
Item Pickup Confirmation
beginnerstandardUse a subtle 'click' sound for successful item pickups or gold loots to confirm the action without reading the text line.
- 7
Environment Ambience
intermediatemediumLoop low-volume background sounds (e.g., rain, tavern chatter) that change based on room sector type to provide spatial awareness.
- 8
Error Tones
beginnerstandardAssign a 'thud' or error sound to common failures like 'You can't go that way' or 'You don't have enough mana'.
- 9
Level Up Fanfare
beginnermediumImplement a unique, high-quality audio file for leveling up to provide emotional reward that isn't lost in the text stream.
- 10
Telling/Message Alerts
beginnerhighUse the standard PC speaker beep (\a) or a specific notification sound for incoming private messages to ensure they aren't missed.