##################################################
### Start editing variables from here onwards! ###
##################################################
#Set the channel(s) you want this script active on.
#This script supports multiple channels.
#Usage: "#channel1 #channel2 #mychannel"
#(To activate on all channels use: "")
set badidentchans "#mychannel"
#Set the *bad words* for the script to react on.
#When users join a channel this script is activated
#and their idents match this current world list,
#they will be kicked/banned. (wildcards "*" are accepted)
#(Set/edit these words according to your needs)
#(I have already added some as examples)
set badidents {
"Guest"
}
#Set the flags for bot owners, masters, ops
#and users which to exempt from the script.
#(Usage: m, n, o, or "mnf", "fbo" etc)
set badidentexempt "mnof|mnof"
#For how long you wish (in minutes) to ban the
#user with the bad ident. (mins)
set badidbantime 30
###############################################################################
### Don't edit anything else from this point onwards, even if you know tcl! ###
###############################################################################
bind join - * join:badident
proc join:badident {nick host hand chan} {
global botnick badidents badidentchans badidentexempt badidbantime
if {(([lsearch -exact [string tolower $badidentchans] [string tolower $chan]] != -1) || ($badidentchans == "*")) && ($nick != $botnick)} {
foreach badident [string tolower $badidents] {
set badidentban1 "*!*$badident*@*"
set badidentban2 "*!*@[lindex [split $host @] 1]"
set userident "[string trimleft [string tolower [lindex [split $host "@"] 0]] "~"]"
if {[string match *$badident* [string tolower $userident]]} {
if {([botisop $chan]) && (![isop $nick $chan]) && (![isvoice $nick $chan]) && (![matchattr $hand $badidentexempt $chan]) && ([onchan $nick $chan])} {
putquick "MODE $chan -o+bb $nick $badidentban1 $badidentban2"
putquick "KICK $chan $nick :Bad User Ident Kick - Unacceptable *User Ident* detected. Please change your 'IDENT' to a suitable one and then rejoin back."
timer $badidbantime "pushmode $chan -b $badidentban2"
return 0
}
}
}
}
}
# (ain't i an asskicker?...)
putlog "Bad Ident Kicker Script v1.65.ab by \002awyeah (awyeah@usa.net)\002 -=Loaded=-"
putlog "*ENABLED* Bad Ident Kicker Script on:\002 $badidentchans"
return