Checklists

Discord Bots checklist for MUDs

This checklist provides technical validation steps for deploying a Discord-MUD bridge or bot to a production environment, ensuring stability, security, and community safety.

Discord Bots checklist for MUDs hero illustration
Progress0 / 25 complete (0%)

Security and Token Management

0/5
  • Environment Variable Storage

    critical

    Verify that the Discord bot token and any API keys are stored in environment variables or a secure vault, not hardcoded in the source code.

  • Webhook URL Obfuscation

    critical

    Ensure Discord webhook URLs are stored server-side and are never transmitted to the MUD client or exposed via game commands.

  • Principle of Least Privilege

    critical

    Confirm the bot's Discord permissions are limited to the specific channels required; remove 'Administrator' or 'Manage Server' permissions.

  • Input Sanitization

    critical

    Test that all messages sent from Discord to the MUD are stripped of control characters and telnet escape sequences to prevent command injection.

  • IP Whitelisting

    recommended

    Configure the MUD's listening port to only accept connections from the specific IP address hosting the bridge service.

Bridge Logic and Message Routing

0/5
  • Channel Mapping Validation

    critical

    Verify that public game channels (e.g., OOC, Gossip) map to the correct Discord channels and do not leak into private channels.

  • Staff Channel Isolation

    critical

    Confirm that the 'Immortal' or 'Staff' in-game channels are routed to a private, role-restricted Discord channel with no public access.

  • ANSI to Markdown Conversion

    recommended

    Implement a parser to strip ANSI color codes from MUD output and replace them with Discord markdown or code blocks for readability.

  • Infinite Loop Prevention

    critical

    Verify the bot is programmed to ignore messages sent by its own Discord user ID to prevent recursive message loops.

  • Player Anonymity Check

    critical

    Check that the bridge does not leak player IP addresses or real-world account data into the Discord chat interface.

Rate Limiting and Stability

0/5
  • Message Rate Limiting

    critical

    Implement a message queue to ensure the bot does not exceed Discord's API limit of 50 requests per second across all channels.

  • Burst Event Batching

    recommended

    Configure the bridge to batch high-frequency game events (like combat deaths) into a single Discord embed to reduce notification spam.

  • Automatic Reconnection Logic

    critical

    Test the bot's ability to reconnect to both the Discord API and the MUD Telnet/GMCP port after a network interruption.

  • Socket Timeout Configuration

    recommended

    Set explicit keep-alive and timeout intervals on the MUD-to-Bridge socket to prevent 'zombie' connections.

  • Memory Usage Monitoring

    recommended

    Verify that the bridge service does not leak memory when processing high-volume text streams over a 24-hour period.

Moderation and Privacy

0/5
  • In-Game Opt-Out Toggle

    recommended

    Provide a game command (e.g., 'discord toggle') that allows players to opt-out of having their in-game chat relayed to Discord.

  • Profanity Filter Synchronization

    recommended

    Ensure that the Discord bot respects the same word-filtering rules as the in-game engine to maintain community standards.

  • Discord Nickname Sync

    recommended

    Validate that Discord-to-MUD messages include the user's Discord nickname and a unique identifier to prevent impersonation.

  • Roleplay Immersion Settings

    optional

    Confirm that 'In-Character' (IC) channels are excluded from the bridge if the game community mandates strict immersion.

  • Command Help Documentation

    recommended

    Verify that a '!help' command exists on Discord to list available MUD interactions and status commands.

Operational Readiness

0/5
  • Process Manager Integration

    critical

    Deploy the bridge using a process manager like PM2 or Systemd to ensure automatic restarts on failure or system reboot.

  • Status Notification Hook

    recommended

    Configure a specific webhook to alert staff on Discord if the MUD server process goes offline or becomes unreachable.

  • Log Rotation Policy

    recommended

    Set up log rotation for the bridge service to prevent local disk space exhaustion from high-volume chat logging.

  • Health Check Endpoint

    optional

    Expose a simple HTTP health check endpoint on the bridge service for external monitoring tools.

  • Configuration Documentation

    recommended

    Document the JSON or YAML configuration schema for the bridge so future admins can modify channel IDs without code changes.