CHMODEF
CHMODEF
The +f room mode provides flood protection for a room.
This mode allows join, nick change, CTCP, text and knock floods to be prevented.
The command for the parameter of this mode is as follows:
/mode #channel +f [{#}[....}]:
The amount is the number of times the specified flood must occur before action is taken. Below are the available types:
Tyoe | Name | Default Action | Other Actions |
---|---|---|---|
+C | CTCP | +C (no room CTCPs allowed) | m (only voiced users can speak), M (only registered users can speak) |
+j | join | +i (only invites) | R (only registered users can join) |
+k | KNOCK | +K (KNOCK NOT ALLOWED) | |
+m | Messages | +m (only voiced users can speak) | +M (only registered users can speak) |
+n | Nickchange | +n (no nickchange is allowed) | |
+t | text | User is kicked out of the room | +b (User get banned) |
+r | repeat | User is kicked out of the room | +b (User get banned) |
The difference between type m and t is that m is counted for the whole channel while t is counted per user.
If you choose to set an action for a mode, you can also specify a time (in minutes) after which the specific action will be undone.
An example of using this command is:
/mode #chills +f [2c#C5,6j#R3,3k#K10,15m#m5,5n#N3,5t#b60]:5
That means…
- If there are 2 channel CTCP messages (2c) in 5 seconds (:5), set mode +C for 5 minutes (#C5)
- If there are 6 joins (6j) in 5 seconds (:5), set mode +R for 3 minutes (#R3)
- If there are 3 /KNOCK commands on the channel (3k) in 5 seconds (:5), set mode +K for 10 minutes (#K10)
- If a total of 15 messages from all users (15 min) arrive in 5 seconds (:5), set mode +m for 5 minutes (#m5)
- If there are 5 nickname changes (n5) in 5 seconds (:5), set mode +N for 3 minutes (#N3)
- If there are 5 messages from a single user (5t) in 5 seconds (:5), ban the user for 60 minutes (#b60)
Recently, botnets have been observed joining channels and quickly connecting and disconnecting. To prevent this, you can use j channel mode. This mode only allows x joins to your channel in y seconds for each client. The recommended setting for this is 1 join in 1 second, as this completely eliminates flooding of joins/parts of botnets. An example of using this is:
/mode #chills +j 1:1