Warn system (warn, mute, kick, ban)
Warn, time out, kick and ban members with Farm Sim Game, keep a numbered case log in a staff channel, and let the bot hand out mute roles for you.
On this page
- Before you start
- Set it up
- Settings explained
- Commands
- What each action does
- Timeout lengths
- Ban options
- The auto-ban list
- Right-click apps
- Warning counts and /warns
- Timeouts from outside the bot are logged too
- Examples
- Troubleshooting
- "You do not have the permission to use that command!"
- "You can not warn someone whose highest role is the same as or above yours!"
- "I can not mute that user: their highest role is the same as or above mine."
- "I do not have permissions to manage roles in this server."
- "I do not have permissions to kick members" or "to ban members in this server."
- Mute roles aren't added or removed
- Nothing shows up in the warn log channel
- "Unable to send DM messages to …"
- /removewarn says "I do not have permissions to manage messages in this server."
- A banned member was banned again when they rejoined
- Related
The warn system gives your moderators one set of commands for every punishment: warnings,
timeouts (mutes), kicks and bans. Every action gets a case number, the member is told why by
DM, and a copy goes to your warn log channel. Your team always has a record of who did what,
and /warns pulls up a member's history in seconds.
Before you start#
Role hierarchy matters. The bot refuses to act on:
- yourself,
- the bot itself,
- the server owner,
- anyone with the Administrator permission,
- anyone whose highest role is the same as or above yours (the server owner can skip this check).
For mutes, unmutes, kicks and bans the bot's own highest role must also be above the member's highest role. Drag the Farm Sim Game role above your member roles in Server Settings → Roles. Warnings don't need this, because Discord never sees them.
Set it up#
It's under Moderation in the sidebar.
Choose a staff-only channel in Warns Log Channel and click Update Bot Settings. Every warning, mute, timeout, kick, ban and unban is posted here with its case number.
In the Mute Roles card, pick a role and click Add. The bot gives every mute role when it mutes someone, and removes them with /unmute. Skip this if Discord's timeout is enough for you.
Open Bot settings and use Command Roles to give your moderator roles each command they need (for example warn, warns, mute). Members with Administrator can always use them. See Command roles.
In Discord, run /warn on a test account. The case appears in your warn log channel.
The dashboard lists the channels and roles the bot last saw. Run /setup in Discord, choose
Update Channels and Roles for Website, then refresh the page.
Settings explained#
| Setting | What it does | Default |
|---|---|---|
| Warns Log Channel | Where the bot posts a case embed for every warning, mute, timeout, unmute, kick, ban and unban. It also notes here when it couldn't DM a member about a warning, kick or ban. | Disabled |
| Mute Roles | Roles added when a member is muted, and removed with /unmute. Add as many as you like. | None |
Commands#
/ban <user> <reason> <delete> Admins & command roles · Ban MembersBan a user from the discord server.
/kick <user> <reason> Admins & command roles · Kick MembersKick a user from the discord server.
/mute <user> <reason> <timeout> Admins & command roles · Timeout MembersMute a user when they need silenced on the server.
Right-click a message → Apps → Mute Message User Admins & command roles · Timeout MembersRight-click a message → Apps → Mute Message User
Right-click a member → Apps → Mute User Admins & command roles · Timeout MembersRight-click a member → Apps → Mute User
/removewarn <warnid> Admins & command roles · Timeout MembersRemove a warning from system.
/unban <user> <reason> Admins & command roles · Ban MembersUnBan a user from the discord server.
/unmute <user> <reason> Admins & command roles · Timeout MembersUnMute a user when they are free to chat on the server.
/warn <user> <reason> Admins & command roles · Timeout MembersWarn a user for doing something they should not have been doing.
Right-click a message → Apps → Warn Message User Admins & command roles · Timeout MembersRight-click a message → Apps → Warn Message User
Right-click a member → Apps → Warn User Admins & command roles · Timeout MembersRight-click a member → Apps → Warn User
/warns [user] Admins & command rolesDisplay warnings, mutes, and bans on the server or per user.
Every warn system command needs Administrator or a role you've given that command under
Command Roles. Otherwise the bot replies "You do not have the permission to use that
command!". The right-click apps share the roles of /warn and /mute. The bot's replies to
your moderators are only visible to them.
Discord also hides some commands from members without a matching permission: /warn,
/removewarn, /mute, /unmute and the apps need Timeout Members, /kick needs
Kick Members, and /ban and /unban need Ban Members. To show a command to a role
without that permission, change it in Server Settings → Integrations → Farm Sim Game.
What each action does#
| Action | What happens |
|---|---|
| Warn | Adds a warning case, DMs the member the reason and their warning count, and logs the case. |
| Mute | Puts the member in Discord timeout, adds your mute roles, DMs them the reason and length, and logs the case. |
| Unmute | Ends the timeout and logs the case. If you use mute roles, it removes them and DMs the member. |
| Kick | DMs the member first, then kicks them and logs the case. |
| Ban | DMs the member first, bans them (optionally deleting recent messages), adds them to the auto-ban list and logs the case. |
| Unban | Unbans the user by ID, removes them from the auto-ban list and logs the case. |
| Remove warn | Marks a case as removed and deletes its embed from the warn log channel. |
Timeout lengths#
/mute and the Mute User apps take a length like 30m, 2h, 3d or 1w
(minutes, hours, days, weeks). A plain number means minutes. If the bot can't read the length,
it uses 1 minute. With a unit, anything longer than 28 days (Discord's limit) is cut to 28 days,
so use a unit for long timeouts.
Ban options#
/ban asks how much of the member's recent message history to delete:
| Choice | Deletes messages from |
|---|---|
| Don't Delete Any | Nothing |
| Previous Hour | The last hour |
| Previous 6 Hours | The last 6 hours |
| Previous 12 Hours | The last 12 hours |
| Previous 24 Hours | The last 24 hours |
| Previous 3 Days | The last 3 days |
| Previous 7 Days | The last 7 days |
The auto-ban list#
Every /ban also adds the user to the bot's auto-ban list. If that account joins your
server again, the bot bans it straight away with the reason "On the auto ban list".
You can paste a user ID into /ban for someone who already left. If Discord refuses the ban,
the bot still adds them to the list and tells you so. /unban takes a user ID and clears
the auto-ban entry too, even when Discord has no ban on record.
If you unban someone from Discord's own Bans list, they stay on the auto-ban list and
the bot bans them again the moment they rejoin. Use /unban instead.
Right-click apps#
You don't have to type a command. Right-click a member (or one of their messages) and choose Apps:
- Warn User and Warn Message User open a form asking for the reason (up to 1,000 characters).
- Mute User and Mute Message User open a form with the reason and a Timeout Length 1m/1h/1d/1w box that starts at
1(one minute).
The form also shows the member's ID. Leave that box as it is.
Warning counts and /warns#
The Total Warnings number counts warnings. /mute, /kick, /ban and timeouts don't add to
it, and removed warnings stop counting.
/warns shows the 25 most recent cases for one member, or for the whole server when you leave
user empty. Each case shows its number, type, date, the responsible moderator and the reason.
Removed cases stay in the list with the type removed.
Timeouts from outside the bot are logged too#
Whenever a member is put in timeout, the bot adds a timeout case to the warn log with the
reason from Discord's audit log and the moderator who did it. That includes timeouts given
with Discord's own Timeout option or another bot. Because /mute uses a Discord timeout, a
/mute shows up as a mute case followed by a timeout case.
This needs View Audit Log. Without it, outside timeouts aren't recorded.
Examples#
Warn a member for spamming:
/warn user:@FarmerJoe reason:Posting the same mod link in four channels after being asked to stopTime someone out for two hours:
/mute user:@FarmerJoe reason:Arguing with staff in #general timeout:2hWhat the member gets by DM after a warning:
You were issued the following warning on Valley Farmers:
Posting the same mod link in four channels after being asked to stopYou have 2 warnings!
What your staff see in the warn log channel:
Mutes, timeouts, kicks and bans use a red embed (with a Timeout Length for mutes and timeouts). Unbans and unmutes are green.
The reason is what the member reads and what your team sees months later. "Spam" is vague. "Posted the same invite link in 4 channels" is useful.
Troubleshooting#
"You do not have the permission to use that command!"#
The moderator needs Administrator or a role assigned to that command under Command
Roles. The right-click apps use the warn and mute command roles.
"You can not warn someone whose highest role is the same as or above yours!"#
Moderators can only act on members ranked below them. Move the moderator's role higher, or have someone more senior handle it.
"I can not mute that user: their highest role is the same as or above mine."#
The bot's role is below the member's highest role. Drag the Farm Sim Game role higher in Server Settings → Roles. The same message appears for kick, ban and unmute.
"I do not have permissions to manage roles in this server."#
/mute and /unmute need the bot to have Manage Roles, even if you don't use mute roles.
"I do not have permissions to kick members" or "to ban members in this server."#
Give the bot's role Kick Members or Ban Members in Server Settings → Roles.
Mute roles aren't added or removed#
The bot needs Manage Roles, and its role must be above each mute role. Mute roles stay on
until you run /unmute. They aren't removed when the Discord timeout runs out.
Nothing shows up in the warn log channel#
Check a Warns Log Channel is saved and that the bot can View Channel, Send Messages and Embed Links there. If the bot can't post, the problem is listed in the error log on your dashboard.
"Unable to send DM messages to …"#
The member has DMs from server members turned off, or has blocked the bot. The action still happened. The bot just couldn't tell them, so reach out another way if they need to know.
/removewarn says "I do not have permissions to manage messages in this server."#
/removewarn needs Manage Messages, because it deletes the case embed from your warn log
channel.
A banned member was banned again when they rejoined#
They're still on the auto-ban list. Run /unban with their user ID to clear it.