Skip to content

Discord Server Setup Guide

This guide documents how to set up a Discord server for a MAID project community. It provides a recommended structure, roles, permissions, and best practices for building an engaged and welcoming community.


Introduction

Purpose

A Discord server for MAID serves multiple purposes:

  • Real-time Communication: Quick questions, discussions, and collaboration
  • Community Building: Connect developers, game creators, and players
  • Support: Help users with installation, development, and gameplay
  • Announcements: Share project updates, releases, and events
  • Showcasing: Highlight community creations and content packs

Target Audience

Your Discord server should accommodate:

  • Developers: Contributing to MAID core or building content packs
  • Game Creators: Using MAID to build their own MUD games
  • Players: Playing games built with MAID
  • Newcomers: Learning about MUDs and MAID

Channel Structure

Overview

Organize channels into categories for easy navigation. Below is the recommended structure:

INFORMATION
├── #welcome
├── #announcements
├── #rules
└── #showcase

HELP
├── #general-help
├── #installation
└── #code-help

DEVELOPMENT
├── #dev-discussion
├── #pull-requests
├── #testing
└── #content-packs

COMMUNITY
├── #general
├── #game-dev
├── #introductions
└── #off-topic

VOICE
├── Dev Chat
├── General Voice
└── AFK

Category: INFORMATION

#welcome

The first channel new members see. Include:

  • Brief introduction to MAID
  • Server navigation guide
  • Links to key resources
  • How to get roles (if using role selection)

#announcements

Official project updates only (read-only for most members):

  • Version releases
  • Breaking changes
  • Security advisories
  • Community events

#rules

Server rules and guidelines (read-only):

  • Code of conduct
  • Channel-specific guidelines
  • Moderation policies
  • Consequences for violations

#showcase

Community creations and achievements:

  • Content packs
  • Games built with MAID
  • Tutorials and blog posts
  • Screenshots and demos

Category: HELP

#general-help

General questions about MAID:

  • Feature questions
  • Best practices
  • Architecture guidance
  • Recommendations

#installation

Setup and configuration help:

  • Installation issues
  • Environment setup
  • Dependency problems
  • Platform-specific questions

#code-help

Technical assistance:

  • Debugging help
  • Code review requests
  • Error messages
  • Implementation questions

Category: DEVELOPMENT

#dev-discussion

Core development conversations:

  • Design discussions
  • RFC feedback
  • Architecture decisions
  • Roadmap discussions

#pull-requests

PR-related discussions:

  • PR announcements
  • Review requests
  • CI/CD issues
  • Merge conflicts

#testing

Testing coordination:

  • Test coverage discussions
  • Bug reports
  • Release testing
  • Performance testing

#content-packs

Content pack development:

  • Plugin development help
  • Sharing work-in-progress
  • Content pack ideas
  • maid-contrib submissions

Category: COMMUNITY

#general

Main community chat:

  • General conversation
  • MUD nostalgia
  • Game recommendations
  • Random chat

#game-dev

Game development topics:

  • Game design discussions
  • Narrative design
  • World building
  • Industry news

#introductions

New member introductions:

  • Welcome new members
  • Share backgrounds
  • Interests and goals
  • Connection opportunities

#off-topic

Non-MAID discussions:

  • Other projects
  • Life updates
  • Hobbies
  • Fun stuff

Category: VOICE

Dev Chat

Voice discussions for development:

  • Pair programming sessions
  • Design discussions
  • Code reviews
  • Planning meetings

General Voice

Casual voice chat:

  • Community hangouts
  • Gaming together
  • General conversations

AFK

Away from keyboard channel:

  • Idle members
  • Automatic move for inactive users

Roles and Permissions

Role Hierarchy

Create roles in this order (highest to lowest):

Role Color Description
Admin Red Full server management
Moderator Orange Community moderation
Maintainer Purple MAID core maintainers
Contributor Blue Active code contributors
Content Creator Green Published content pack authors
Member Gray Verified community members
@everyone None Unverified users

Role Permissions

Admin

Administrator: Yes
(All permissions enabled)

Responsibilities:

  • Server configuration
  • Bot management
  • Role management
  • Channel management
  • Handling escalated issues

Moderator

Manage Messages: Yes
Kick Members: Yes
Ban Members: Yes
Timeout Members: Yes
Manage Nicknames: Yes
View Audit Log: Yes

Responsibilities:

  • Enforce rules
  • Handle reports
  • Remove spam/inappropriate content
  • Welcome new members
  • Assist with questions

Maintainer

Mention @everyone: Yes (for announcements)
Manage Messages: Yes
Pin Messages: Yes
Create Polls: Yes

Responsibilities:

  • Post announcements
  • Coordinate releases
  • Lead discussions
  • Mentor contributors

Contributor

Attach Files: Yes
Embed Links: Yes
Add Reactions: Yes
Use External Emojis: Yes
Create Public Threads: Yes

Benefits:

  • Recognition for contributions
  • Access to contributor-only channels (optional)
  • Ability to help others

Content Creator

Same as Contributor

Benefits:

  • Recognition for published content
  • Showcase channel posting
  • Content pack support priority

Member

Send Messages: Yes
Read Message History: Yes
Connect to Voice: Yes
Speak: Yes
Use Voice Activity: Yes

Basic permissions for verified members.

@everyone

View Channels: Limited (see channel-specific permissions)
Send Messages: No (until verified)

Limited access until verification complete.


Welcome Message Template

Use this template for your welcome channel or welcome bot:

# Welcome to the MAID Community!

**MAID** (Multi AI Dungeon) is a modern MUD engine combining classic text-based gameplay with AI integration.

---

## Quick Links

- [Documentation](https://maid-mud.org/docs)
- [GitHub Repository](https://github.com/Qworg/MAID)
- [Getting Started Guide](https://maid-mud.org/docs/getting-started/quickstart)
- [Contributing Guide](https://maid-mud.org/docs/contributing/)

---

## Server Rules

1. **Be Respectful** - Treat everyone with kindness
2. **Stay On Topic** - Use appropriate channels
3. **No Spam** - Avoid excessive messages or self-promotion
4. **No NSFW Content** - Keep it family-friendly
5. **Follow Discord TOS** - Adhere to Discord's guidelines
6. **Ask Before DMing** - Respect privacy

Read full rules in #rules

---

## Getting Help

- **General Questions:** #general-help
- **Installation Issues:** #installation
- **Code Problems:** #code-help

Search before asking - your question may already be answered!

---

## Getting Started

1. Read the rules in #rules
2. Introduce yourself in #introductions
3. Check out #announcements for latest updates
4. Explore channels and join conversations!

---

## Useful Commands

If using a bot for role selection:
- `!roles` - View available roles
- `!role <name>` - Assign yourself a role

---

Welcome aboard! We're glad you're here!

Bot Integration

GitHub Notifications

Connect GitHub to receive notifications about:

  • New releases
  • Pull request activity
  • Issue creation and updates
  • Commit activity

Setup:

  1. Go to Server Settings > Integrations
  2. Click "Webhooks" > "New Webhook"
  3. Name it "GitHub" and select a channel (#pull-requests or #announcements)
  4. Copy the webhook URL
  5. In your GitHub repo: Settings > Webhooks > Add webhook
  6. Paste the Discord webhook URL with /github appended
  7. Select events to notify about

Moderation Bots

Consider bots like MEE6, Carl-bot, or Dyno for:

  • Auto-moderation (spam, bad words)
  • Warning/timeout systems
  • Logging (message edits/deletes)
  • Reaction roles

Utility Bots

  • Bot for Code Snippets: Allow syntax-highlighted code sharing
  • Poll Bot: Create polls for community decisions
  • FAQ Bot: Answer common questions automatically

Custom Bot Ideas

For MAID-specific functionality, consider building a custom bot:

# Example: Bot command to check MAID version
@bot.command()
async def version(ctx):
    """Show the latest MAID release version."""
    # Fetch from GitHub API
    response = await fetch_latest_release()
    await ctx.send(f"Latest MAID version: {response['tag_name']}")

@bot.command()
async def docs(ctx, topic: str):
    """Link to documentation for a topic."""
    docs_base = "https://maid-mud.org/docs"
    topics = {
        "quickstart": f"{docs_base}/getting-started/quickstart",
        "ecs": f"{docs_base}/guides/ecs/overview",
        "commands": f"{docs_base}/guides/commands/overview",
        "content-packs": f"{docs_base}/guides/content-packs/overview",
    }
    if topic.lower() in topics:
        await ctx.send(topics[topic.lower()])
    else:
        await ctx.send(f"Documentation: {docs_base}")

Best Practices

Moderation Guidelines

Be Consistent

  • Apply rules equally to everyone
  • Document moderation actions
  • Use a graduated response system:
  • Warning
  • Timeout (1 hour)
  • Timeout (24 hours)
  • Temporary ban
  • Permanent ban

Be Transparent

  • Explain why actions are taken
  • Keep public moderation logs (optional)
  • Allow appeals for serious actions

Be Proactive

  • Welcome new members personally
  • Monitor channels regularly
  • Address issues before they escalate

Community Engagement

Regular Activities

  • Weekly Q&A sessions
  • Monthly community meetings
  • Content pack showcases
  • Code review streams

Recognition Programs

  • Highlight helpful members
  • Showcase community projects
  • Celebrate milestones (releases, contributions)

Onboarding

  • Greet new members promptly
  • Point them to resources
  • Pair newcomers with mentors

Channel Management

Keep It Clean

  • Archive inactive channels
  • Consolidate similar discussions
  • Use threads for detailed conversations

Clear Guidelines

  • Pin important messages
  • Use channel topics/descriptions
  • Create FAQ sections

Balanced Permissions

  • Start restrictive, loosen as needed
  • Use slowmode in active channels if needed
  • Enable thread creation for detailed discussions

Server Settings Checklist

Security Settings

  • [ ] Enable 2FA requirement for moderators
  • [ ] Set verification level to "Medium" or higher
  • [ ] Enable explicit media content filter
  • [ ] Configure auto-mod rules
  • [ ] Set up server backup (via bot)

Onboarding Settings

  • [ ] Enable Community Server features
  • [ ] Set up Server Rules Screening
  • [ ] Configure welcome messages
  • [ ] Create role selection (if using reaction roles)
  • [ ] Set up verification system

Channel Settings

  • [ ] Create all categories and channels
  • [ ] Set appropriate permissions per channel
  • [ ] Configure slowmode where needed
  • [ ] Set up webhooks for integrations
  • [ ] Pin important messages

Bot Setup

  • [ ] Add moderation bot
  • [ ] Configure GitHub webhooks
  • [ ] Set up welcome messages
  • [ ] Configure auto-roles
  • [ ] Test all bot commands

Maintenance Tasks

Daily

  • Check moderation queue
  • Respond to member questions
  • Review new introductions

Weekly

  • Review server insights
  • Archive inactive threads
  • Update pinned messages if needed
  • Check bot functionality

Monthly

  • Review and update roles
  • Analyze engagement metrics
  • Gather community feedback
  • Plan events and activities

Quarterly

  • Review channel structure
  • Update welcome messages
  • Refresh bots and integrations
  • Conduct moderation team review

Additional Resources

Discord Documentation

MAID Documentation


Summary

A well-organized Discord server enhances community engagement and makes MAID more accessible. Focus on:

  1. Clear Structure: Logical channel organization
  2. Defined Roles: Clear permissions and responsibilities
  3. Welcoming Environment: Friendly onboarding experience
  4. Consistent Moderation: Fair and transparent rules enforcement
  5. Regular Engagement: Active participation from maintainers

Remember: The goal is to build a welcoming, helpful community where everyone can learn, contribute, and create together.