Modules. Switching features on and off
A module is one feature. Events is a module. Tickets is a module.
Each server gets its own set switched on. That's how one bot runs in a games community, a corporate server and a records server without any of them seeing the others' commands.
The full list
| Module | What it turns on |
|---|---|
events | Hosting events |
activity | Attendance records |
diplomacy | Faction relations and declarations |
calendar | Putting hosted events on the website |
intake | Forms and applications |
suggestions | Suggestion boards |
tickets | The ticket system |
products | Product pipeline |
lookup | Record lookup |
divisions | Divisions directory |
games | Game panels |
dms | Mass direct messages to everyone holding an opt-in role |
serverlog | A record of what happens in the server itself |
moderation | Warnings, timeouts, kicks, bans and purges, each with a case |
tempvoice | Temporary voice channels |
transcripts | Saving a channel as a page that looks like Discord, plus its raw data |
Nothing is on by default. If nobody in your server has ever run
/moduleadmin enable for it, it's off. Every module, every server, no
exceptions. Ask the bot owner to switch on what you need.
Seeing what a server has
/moduleadmin list guild_id: 123456789
Owner only. It shows every module and whether its state was set here or is just the default. That distinction matters: a server sitting on the default and a server somebody deliberately configured look identical until the default changes under both of them.
Every module in the list above is off until somebody turns it on. A new server starts with none of them, which is why a freshly invited bot appears to do nothing.
Turning one on or off
/moduleadmin enable module: Events guild_id: 123456789
/moduleadmin disable module: Events guild_id: 123456789
Owner only. The module is a dropdown, so you can't typo it.
Turning something off stays off. Across restarts, and against any future change to what a module defaults to. The bot records "no" rather than dropping the "yes", so a module that later ships on by default stays off in a server that said no to it.
Setting up a whole new server at once
/moduleadmin preset guild_id: 123456789 preset: Game server
Three presets:
| Preset | Switches on |
|---|---|
| Game server | events, activity, diplomacy, intake |
| Corporate | tickets, products, intake |
| Records | lookup |
| Any server with staff | moderation |
A preset only ever turns things on. Running one can never take away something a server was using, so it's safe to run on a server that's already set up.
Getting a server's ID
Discord Settings → Advanced → turn on Developer Mode. Then right-click the server icon → Copy Server ID.
It's not working
When you are stuck
"Bot owner only."
These commands are owner-only on purpose. They change what a whole server can do. Ask Ben.
"`123` is not a valid guild ID."
You've pasted something that isn't a server ID. Probably a channel or a user. Right-click the server icon, not a channel.
I turned a module on and the command still isn't there
Fully quit and reopen Discord. Discord caches the command list aggressively and closing the window isn't enough.
I turned something off and it's back on
It isn't. Check with /moduleadmin list. If it genuinely came back, that's a bug worth reporting, because "off" is stored as a real answer specifically so this can't happen.