1.3 KB


In the event of a netsplit, if someone tries to be funny by setting +b *!*@* on the main channel, nobody will be able to join until opers come in and fix it. This module allows you to deny such bans. =] Optionally, specify if opers are allowed to override it and if offenders should get a notice. I even went a bit further and also applied these restrictions to SAMODE. ;]

Also, because chanops could theoretically use /cs mode #chan +b <mask> to bypass the module, U-Lines are also restricted. ;]

Config block:

denyban {
    allowopers 0;
    denynotice 1;
    reason "ayy ur faget lol (stripped $num masks)";
    mask BAN_ALL;
    mask *!*@*;

The mask *!*@* is kinda special, so you'll have to specify BAN_ALL to prevent people from doing MODE #chan +b *!*@* etc. For anything else it will do a wildcard match, as is usual. The directives allowopers and denynotice should be pretty clear. They default to 1 and 0, respectively.

For the reason directive you can use $num, which will be replaced with the actual amount of stripped masks. ;]

I went with denyban over deny ban (notice the space) to avoid any potential future conflict with Unreal core stuff.

Also, keep in mind that this only prevents setting of bans, they can still do like /mode #chan -b *!*@*