Tracks all channels it is active on for spammers. Each message someone sends generates "pressure", which decays rapidly. Long messages, messages with links, or messages with pings will generate more pressure. If a user generates too much pressure, they will be silenced and the moderators notified. Also detects groups of people joining at the same time and alerts the moderators of a potential raid.
spam.autosilenceGets the current autosilence state. Use the
!autosilencecommand to set this.
spam.basepressureThe base pressure generated by sending a message, regardless of length or content. Defaults to 10
spam.ignoreroleIf set, the bot will exclude anyone with this role from spam detection. Use with caution.
spam.imagepressureAdditional pressure generated by each image, link or attachment in a message. Defaults to (MaxPressure - BasePressure) / 6 = 8.3, instantly silencing anyone posting 6 or more links at once.
spam.lengthpressureAdditional pressure generated by each individual character in the message. Discord allows messages up to 2000 characters in length. Defaults to (MaxPressure - BasePressure) / 8000 = 0.00625, silencing anyone posting 3 huge messages at the same time.
spam.linepressureAdditional pressure generated by each newline in the message. Defaults to (MaxPressure - BasePressure) / 70 = 0.714, silencing anyone posting more than 70 newlines in a single message
spam.lockdowndurationDetermines how long the server's verification mode will temporarily be increased to tableflip levels after a raid is detected. If set to 0, disables lockdown entirely.
spam.maxchannelpressurePer-channel pressure override. If a channel's pressure is specified in this map, it will override the global maxpressure setting.
spam.maxpressureThe maximum pressure allowed. If a user's pressure exceeds this amount, they will be silenced. Defaults to 60, which is intended to ban after a maximum of 6 short messages sent in rapid succession.
spam.maxremovelookbackNumber of seconds back the bot should delete messages of a silenced user on the channel they spammed on. If set to 0, the bot will only delete the message that caused the user to be silenced. If less than 0, the bot won't delete any messages.
spam.pingpressureAdditional pressure generated by each unique ping in a message. Defaults to (MaxPressure - BasePressure) / 20 = 2.5, instantly silencing anyone pinging 20 or more people at once.
spam.pressuredecayThe number of seconds it takes for a user to lose Spam.BasePressure from their pressure amount. Defaults to 2.5, so after sending 3 messages, it will take 7.5 seconds for their pressure to return to 0.
spam.raidsizeSpecifies how many people must have joined the server within the
spam.raidtimeperiod to qualify as a raid.
spam.raidtimeIn order to trigger a raid alarm, at least
spam.raidsizepeople must join the chat within this many seconds of each other.
spam.repeatpressureAdditional pressure generated by a message that is identical to the previous message sent (ignores case). Defaults to BasePressure, effectively doubling the pressure penalty for repeated messages.
Toggles the auto silencer for raids. This does not affect spam detection, only new members joining the server.
allwill autosilence all new members.
raidwill turn on autosilence if a raid is detected and silence any raiders automatically, then disengage it after
!wipe <channel> <seconds> [MESSAGES]
Removes all messages in a channel sent within the last N seconds, or simply removes the last N messages if "messages" is appended.
channelThe channel to delete from. You must use the #channel format so discord actually highlights the channel, otherwise it won't work.
secondsSpecifies the number of seconds to look back. The command deletes all messages sent up to this many seconds ago.
MESSAGES(optional) If you append "MESSAGES" to the end of the command, it will remove that many messages, instead of looking back that many seconds.
Gets the current spam pressure of a user.
userUser to retrieve pressure from.
Lists all users that are considered part of the most recent raid, if there was one.
Bans all users that are considered part of the most recent raid, if there was one. Use !getraid to check who will be banned before using this command.