thats what I get in my cmd window. Since its the code section, I have no clue what needs to be done. So, please reply me with a solution to fix the problem.invalid type. Must be one of: flag, int
while executing
"setudef str ap:textl"
(file "scripts/allprotection4.5.tcl" line 1375)
invoked from within
"source scripts/allprotection4.5.tcl"
It seems that the tcl cann`t find a variable[17:31:14] <uMnoTeHTeH> [17:31] All Protection v4.5 by Opposing Loaded...
[17:31:14] <uMnoTeHTeH> [17:31] Userfile loaded, unpacking...
[17:31:20] <ERNEST> .set errorInfo
[17:31:20] <uMnoTeHTeH> [17:31] #ERNEST# set errorInfo
[17:31:20] <uMnoTeHTeH> Currently: no such binding
[17:31:20] <uMnoTeHTeH> Currently: while executing
[17:31:20] <uMnoTeHTeH> Currently: "unbind $foo1 $foo2 $foo3 $foo4 "
[17:31:34] <uMnoTeHTeH> [17:32] Tcl error [caps:kick]: can't read "p": no such variable
[17:31:34] <uMnoTeHTeH> [17:32] Tcl error [text:char]: can't read "o": no such variable
[17:31:34] <uMnoTeHTeH> [17:32] Tcl error [text:line]: can't read "o": no such variable
[17:31:37] <ERNEST> .set errorInfo
[17:31:37] <uMnoTeHTeH> [17:32] #ERNEST# set errorInfo
[17:31:37] <uMnoTeHTeH> Currently: can't read "o": no such variable
[17:31:37] <uMnoTeHTeH> Currently: while executing
[17:31:37] <uMnoTeHTeH> Currently: "invalid:apf $o $s"
[17:31:37] <uMnoTeHTeH> Currently: (procedure "text:line" line 4)
[17:31:37] <uMnoTeHTeH> Currently: invoked from within
[17:31:37] <uMnoTeHTeH> Currently: "text:line $_pubm1 $_pubm2 $_pubm3 $_pubm4 $_pubm5"
[17:33:48] <uMnoTeHTeH> [17:34] Tcl error [bjoinf:lock]: can't read "o": no such variable
[17:33:49] <uMnoTeHTeH> [17:34] Tcl error [cjoin:kick]: can't read "j": no such variable
[17:34:00] <ERNEST> .set errorInfo
[17:34:00] <uMnoTeHTeH> [17:34] #ERNEST# set errorInfo
[17:34:00] <uMnoTeHTeH> Currently: can't read "j": no such variable
[17:34:00] <uMnoTeHTeH> Currently: while executing
[17:34:00] <uMnoTeHTeH> Currently: "invalid:apf $j $s"
[17:34:00] <uMnoTeHTeH> Currently: (procedure "cjoin:kick" line 6)
[17:34:00] <uMnoTeHTeH> Currently: invoked from within
[17:34:00] <uMnoTeHTeH> Currently: "cjoin:kick $_jp1 $_jp2 $_jp3 $_jp4"
---------
Welcome to the UniBG Internet Relay Chat Network ERNEST
Your host is irc.telecoms.bg[irc.telecoms.bg/9001], running version ircd-ratbox+UniBG-v2.2
This server was created Wed Jan 11 2006 at 09:34:32 UTC
irc.telecoms.bg ircd-ratbox+UniBG-v2.2 oiwszcerkfydnxbauglZCD biklmnopstveI bkloveI
CHANTYPES=&# EXCEPTS INVEX CHANMODES=eIb,k,l,imnpst CHANLIMIT=&#:20 PREFIX=(ov)@+ MAXLIST=beI:150 NETWORK=UniBG MODES=4 STATUSMSG=@+ KNOCK CALLERID=g are supported by this server
SAFELIST ELIST=U CASEMAPPING=rfc1459 CHARSET=ascii NICKLEN=15 CHANNELLEN=100 TOPICLEN=390 ETRACE CPRIVMSG CNOTICE DEAF=D MONITOR=50 are supported by this server
TARGMAX=NAMES:1,LIST:1,KICK:1,WHOIS:1,PRIVMSG:4,NOTICE:4,ACCEPT:,MONITOR: are supported by this server
-
you have considered the wrong ideaDe Kus wrote:I considered making one, but dropped the idea, because even single letter repeatance would be as complex as '(?i)(a{5,}|b{5,}|c{5,}|...|z{5,})'
and therefore be too much CPU time for parsing a single line. Remember, a [a-z]{5,} would not only match "aaaaa" but also "mouse" . Alternately you would have to count each letter and say like only x % are allowed per letter and line. A good protection script must also consider CPU time, since excess flood might be used to timeout the bot by just the CPU time it consumes . If you run your bot on your own machine, you might not have to worry about it, but many shells have very limited CPU ressources per user.
however, you could consider using looking for repeated vocals like in "loooooooooooooooool".
Code: Select all
tag when posting logs, code
Sure thatdemond wrote:you have considered the wrong idea
it's trivial to detect repeating patterns (with sufficient precision) in a string without using regexps, and without clogging the CPU
Code: Select all
set i 30 ; # number of repeated letters
set cl "abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&"
for {set c 0} {$c < [string length $cl]} {incr c} {
if {[string match -nocase *[string repeat [string index $cl $c] $i]* $arg]} {
# offense detected.
}
}
.ap:import <oldchan> <*/newchan> (This sets the AP settings of <oldchan> on <newchan> or all chans if *)
.ap:reset <*/chan> (This will reset the AP settings of chan or all chans if * to the default settings)
.ap:disable <*/chan> (This will disable all protections on chan or all chans if *)
.ap:monitor (displays info about followed punishments)
.ap:add <list> <chan/global> <elements>
.ap:rem <list> <chan/global> <elements>
.ap:list <list> <chan/global>
** Available lists: bchans, bnicks, bidents, bwords & adexempts.
.chanset #chan ap:<type> <value> <btime> <punishment> <btype>
.chanset #chan ap:textl 5:2 30 w:k:kb 2