Step 1 - Choosing the right bot
There are 3 main bots different servers use: Dyno, Carl and Mee6. Dyno is by far the most popular, my personal choice. It offers the most the most features without forcing you to pay. Carl isn't all that in depth feature wise, and Mee6 locks all of its features behind a paywall.
To invite a bot into your server, go to the bot's website, click "add to server" an choose the server. For this example, we're using Dyno: https://dyno.gg/
To invite a bot into your server, go to the bot's website, click "add to server" an choose the server. For this example, we're using Dyno: https://dyno.gg/
Step 2 - Moderation logging
Before we can set up automod, we need to set up logging. This is a crucial part that will allow you to see what automod does. Before going any further, you need to make two new staff only channels. Name them "modlogs" and "ban logs". These will be our logging channels. Now, in the Dyno dashboard, go the "action logs" module. Same thing as automod in our previous section, ensure the module is enabled.
In "action logs" the first thing you want to do is check the box "specify channel for each event" in the top left.
In "action logs" the first thing you want to do is check the box "specify channel for each event" in the top left.
As the name says, this will let you choose individual channels for each option. It's up to you how many channels you want, but the way I do it, everything goes in modlogs except for bans and unbans. I find it to be much easier for staff to go back and check logs if bans are logged in their own channel. At the very bottom of this page, you have the option to exclude channels and roles from being logged. For example, if you don't want moderator commands in a staff channel to get logged.
Once you've chosen your channels for logging, you're done with this step!
Once you've chosen your channels for logging, you're done with this step!
Step 3 - Setting up your bot for moderation
Once you've invited Dyno and got the initial settings set up, go back to the Dyno's homepage and click "manage servers", select your server. The first thing you'll want to do is set up autommod. On Dyno's dashboard, scroll through its modules until you find "automod".
Important: In the top right of the module, make sure there is a green circle. This shows the module is enabled. Making sure it's enabled, click on the settings button. From here, you'll see a "create rule" and "manage default settings" option. You can ignore "manage default settings", it's essentially the same thing we did in step 2. Click "create rule".
From here, it's self explanatory. Choose the automod rule you want and customize it. Pro tip: Make sure to set up a word filter as well as one for Discord invites.
From here, it's self explanatory. Choose the automod rule you want and customize it. Pro tip: Make sure to set up a word filter as well as one for Discord invites.
Step 4 - General moderation configuration
In the Dyno list of modules, fine the module named "moderation" (again ensuring it is enabled). In this module, you'll see several options at the top. I will show you the ones I have ticked for my server, and explain them.
DM Users on kick/ban/mute - Self explanatory. Sends a DM to the user if they are kicked/banned/muted informing them.
Respond with reason - The bot will respond in the channel the command is used providing the moderation action and reason for why.
Use Discord time outs for mute - If you mute someone, instead of it using Dyno's custom mute function, it utilizes Discord timeouts, which is a lot better imo.
Delete mod commands after executed - If you type a command, your message gets deleted but the command still goes through. This usually helps keep channels cleaner.
Directly underneath this settings box are three additional settings, moderation log channel, moderation roles and protected roles. I highly recommend utilizing these.
Next up, click the "autopunish" tab that is located next to "settings". Autopunish settings is exactly as it sounds, you can set up thresholds for when someone gets punished.
Finally, click "appeals" tab next to autopunish. Appeals will give muted and/or banned users the chance to appeal their punishment. Dyno has a built in function for you to make your own ban appeal form.
Respond with reason - The bot will respond in the channel the command is used providing the moderation action and reason for why.
Use Discord time outs for mute - If you mute someone, instead of it using Dyno's custom mute function, it utilizes Discord timeouts, which is a lot better imo.
Delete mod commands after executed - If you type a command, your message gets deleted but the command still goes through. This usually helps keep channels cleaner.
Directly underneath this settings box are three additional settings, moderation log channel, moderation roles and protected roles. I highly recommend utilizing these.
Next up, click the "autopunish" tab that is located next to "settings". Autopunish settings is exactly as it sounds, you can set up thresholds for when someone gets punished.
Finally, click "appeals" tab next to autopunish. Appeals will give muted and/or banned users the chance to appeal their punishment. Dyno has a built in function for you to make your own ban appeal form.
Step 5 - Final thoughts and extras
There are still a lot of options offered by Dyno, however, we have covered the essentials of moderation and auto mod. Dyno offers custom commands, which can be very useful. As an example, lets say your Discord server was created for your website. If you ever need to link to your website quickly, or maybe link to a specific page, you can create a custom command with Dyno that will respond and link to said page for you.
Another tool I really like is "message embedder". This makes messages (especially important ones) a lot nicer, imo. I primarily use these for rules and frequently asked questions. Here is an example:
Another tool I really like is "message embedder". This makes messages (especially important ones) a lot nicer, imo. I primarily use these for rules and frequently asked questions. Here is an example:
My final tip is to set up a BOT role for the bot and give it admin perms. This ensures there's no conflicts or anything when using commands.