This is the new home of the egghelp.org community forum.
All data has been migrated (including user logins/passwords) to a new phpBB version.


For more information, see this announcement post. Click the X in the top right-corner of this box to dismiss this message.

AllProtection.tcl (Stable: v4.8 / Beta: v4.9b4)

Support & discussion of released scripts, and announcements of new releases.
Post Reply
User avatar
Sir_Fz
Revered One
Posts: 3794
Joined: Sun Apr 27, 2003 3:10 pm
Location: Lebanon
Contact:

Post by Sir_Fz »

Geo wrote:Thanks. It Worked. ;) any difference between excess chans and bchans?
Excess chans is when a user is sitting in an excessive number of channels (equal or greater than the limit you have set).
Geo wrote:And One Things, After i set the bchans It seems to be working BUt When it kicks The User ( with blacklist chan) It doesnt ban it, so it makes join flood..
I don't see anything that could cause that behavior in the script. Please post your current settings for ap:bchans on that channel.
Last edited by Sir_Fz on Tue Feb 16, 2010 7:23 pm, edited 1 time in total.
User avatar
Sir_Fz
Revered One
Posts: 3794
Joined: Sun Apr 27, 2003 3:10 pm
Location: Lebanon
Contact:

Post by Sir_Fz »

Luminous wrote:In the random drone protection.. how is that triggered? I thought that was when people came with nicks like hhhhhh, but my bot doesn't kick those people. Not that all of the mare drones, they usually aren;t; just newbs who don't know what the chat box on my forum is for, but still, how does that work exactly? Does it need random ident as well?
Here's the code that checks for those "drone" nicknames/idents

Code: Select all

if {[regexp {^[a-z]{4,}![a-z]{4,}$} $nick!$id]} {
    if {(![string match {*[aeiou]*} $nick]) || ([regexp {^[^aeiou]{4}|[aeiou]{4}|q[^ua]|[^aeioux]x[^aeiouyx]|[^aeiouy]{5}} $nick dronm] && ![regexp {a{3}|e{3}|i{3}|o{3}|u{3}} $nick])} {
It must have at least four consecutive lower-case alphabets in each of the nickname and the ident.

If there are no vowels at all in the nickname, it's a drone.

OR

[If there are four consecutive non-vowels, or four consecutive vowels, or "q" followed by a character other than "u" or "a", or "x" between two non-vowels (except for "x" itself and can be followed by "y"), or five consecutive non-vowels (except y)] + [no three consecutive identical vowels] ==> drone.

I hope that's clear enough.
User avatar
Sir_Fz
Revered One
Posts: 3794
Joined: Sun Apr 27, 2003 3:10 pm
Location: Lebanon
Contact:

Post by Sir_Fz »

VampireLord wrote:* ChanServ sets mode: +o ``ysa
<``ysa> aw
<``ysa> tae naman
<Legion^> wb
<``ysa> bat nang kkick
<n33k33> wb
<Legion^> ahehehe
<``ysa> amf
<``ysa> hehehehe
<yuki``> looool
<n33k33> ano na
<``ysa> ty mga adik
<``ysa> mwaaaaaaaaaaaaaaah
<n33k33> LoLS
<n33k33> bwahahahaha
<``ysa> ano na
* ``ysa was kicked by Kilabot (flood)
That's not related to AllProtection, this is Eggdrop's built-in flood protection. Review your channel's flood-* settings (use .chanset #channel flood-chan 0:0 to disable Eggdrop's text flood protection on your channel)
h
halloaizq
Voice
Posts: 24
Joined: Mon Aug 27, 2007 5:01 am
Contact:

Post by halloaizq »

09:19 • halloaizq is now known as amand4
09:19 • amand4 [mast3r@nulled.rootyou.org] has left #e-kawan
09:20 • amand4 [mast3r@nulled.rootyou.org] has joined #e-kawan


p/s: how to set part 1st then wait for 5 minutes and changing to new nick before join back? already set timer 5 ... but still for 1 minute. Also after 1st time change nick this bot never cycle again. TQ plz reply ASAP
: halloaizq :
V
VampireLord
Voice
Posts: 6
Joined: Mon Jan 25, 2010 12:42 am

suggestion

Post by VampireLord »

elo opposing, thanks for the help about the built in eggdrop flood being turned on :D

i just wanna ask how to change the kicks so as to have the eggy ban first then kick..the way it is now is it kicks first then bans.some rejoins too fast and can still PM or annoy other channel users

thanks and more power
h
halloaizq
Voice
Posts: 24
Joined: Mon Aug 27, 2007 5:01 am
Contact:

Post by halloaizq »

Tcl error [::AllProtection::antispam:check]: can't use empty string as operand of "*"

so how to fix this error?
: halloaizq :
User avatar
Sir_Fz
Revered One
Posts: 3794
Joined: Sun Apr 27, 2003 3:10 pm
Location: Lebanon
Contact:

Post by Sir_Fz »

halloaizq wrote:09:19 • halloaizq is now known as amand4
09:19 • amand4 [mast3r@nulled.rootyou.org] has left #e-kawan
09:20 • amand4 [mast3r@nulled.rootyou.org] has joined #e-kawan


p/s: how to set part 1st then wait for 5 minutes and changing to new nick before join back? already set timer 5 ... but still for 1 minute. Also after 1st time change nick this bot never cycle again. TQ plz reply ASAP
That feature is not available in the script. It may have been discussed in this topic and maybe I proposed a quick solution, try to search for it.
User avatar
Sir_Fz
Revered One
Posts: 3794
Joined: Sun Apr 27, 2003 3:10 pm
Location: Lebanon
Contact:

Re: suggestion

Post by Sir_Fz »

VampireLord wrote:elo opposing, thanks for the help about the built in eggdrop flood being turned on :D

i just wanna ask how to change the kicks so as to have the eggy ban first then kick..the way it is now is it kicks first then bans.some rejoins too fast and can still PM or annoy other channel users

thanks and more power
Unfortunately that's unavailable, try the following modification to the script:

Replace the code inside the "kb" { ..... } block in proc [punish] with this:

Code: Select all

foreach {jn ju} $nl {
 if {![punishing b:[set bm [masktype $jn!$ju $bty]]:$c]} {
  if {![info exists arb($bm)]} {
   if {$banthruX(do)==2 || ($banthruX(do) && [llength [chanbans $c]] >= ${max-bans})} {
    putquick [mapXcmd $banthruX(cmd) $jn $ju $c [clonemap [mapall $km $c $bti] $cc] $bty $bti]
   } {
    queue $c $bm
    if {$bti > 0 && [istimer "pushmode $c -b $bm"] == ""} {
     timer $bti [list pushmode $c -b $bm]
    }
    set arb($bm) 1
   }
  }
 }
 if {[onchan $jn $c] && ![punishing k:$jn:$c]} {
  putquick "KICK $c $jn :[clonemap [mapall $km $c $bti] [incr cc]]"
 }
}
User avatar
Sir_Fz
Revered One
Posts: 3794
Joined: Sun Apr 27, 2003 3:10 pm
Location: Lebanon
Contact:

Post by Sir_Fz »

halloaizq wrote:Tcl error [::AllProtection::antispam:check]: can't use empty string as operand of "*"

so how to fix this error?
Please execute '.set errorInfo' in your bot's partyline when that error occurs and post the output here.
h
halloaizq
Voice
Posts: 24
Joined: Mon Aug 27, 2007 5:01 am
Contact:

Post by halloaizq »

Sir_Fz wrote:
halloaizq wrote:Tcl error [::AllProtection::antispam:check]: can't use empty string as operand of "*"

so how to fix this error?
Please execute '.set errorInfo' in your bot's partyline when that error occurs and post the output here.
[Mon 13:53:34] <eis-> .set ErrorInfo
[Mon 13:53:34] <(nafeesha> Ambiguous command.

so how?
: halloaizq :
w
willyw
Revered One
Posts: 1200
Joined: Thu Jan 15, 2009 12:55 am

Post by willyw »

halloaizq wrote:
Sir_Fz wrote:
halloaizq wrote: ...

so how?
With .set errorInfo

not .set ErrorInfo


Upper and lower case matters. :)


Also, in your eggdrop.conf, find this section:

Code: Select all

# Comment these two lines if you wish to enable the .tcl and .set 
commands.
and be sure you have enabled the use of the .set command for yourself.
l
linuxuser
Voice
Posts: 3
Joined: Thu Mar 04, 2010 12:45 pm

Hi

Post by linuxuser »

I really like your script and happy you develop it =]]
Now thats out of the way, I need to know why it places a ban on people, I saw a ban on colleague of mine and I didn't see why it place the ban there? is there a way for the Script to include a comment as why it places bans, I wanted to know so i could have repaired the issue?

Thanks for your cooperation =]]
User avatar
Sir_Fz
Revered One
Posts: 3794
Joined: Sun Apr 27, 2003 3:10 pm
Location: Lebanon
Contact:

Post by Sir_Fz »

Execute '.ap:monitor' at your bot's partyline when the ban is placed. This command displays all current userhosts being watched for an offence.

Glad you like the script :D
F
FireWarrior
Voice
Posts: 19
Joined: Tue Oct 28, 2008 1:12 am

block “kb" in proc punishment

Post by FireWarrior »

Hello Opposing,
My query is regarding the code replacement that you gave in proc punishment in block “kb” in your earlier post.
I quote:
Sir_Fz wrote:
VampireLord wrote:elo opposing, thanks for the help about the built in eggdrop flood being turned on :D

i just wanna ask how to change the kicks so as to have the eggy ban first then kick..the way it is now is it kicks first then bans.some rejoins too fast and can still PM or annoy other channel users

thanks and more power
Unfortunately that's unavailable, try the following modification to the script:

Replace the code inside the "kb" { ..... } block in proc [punish] with this:

Code: Select all

foreach {jn ju} $nl {
 if {![punishing b:[set bm [masktype $jn!$ju $bty]]:$c]} {
  if {![info exists arb($bm)]} {
   if {$banthruX(do)==2 || ($banthruX(do) && [llength [chanbans $c]] >= ${max-bans})} {
    putquick [mapXcmd $banthruX(cmd) $jn $ju $c [clonemap [mapall $km $c $bti] $cc] $bty $bti]
   } {
    queue $c $bm
    if {$bti > 0 && [istimer "pushmode $c -b $bm"] == ""} {
     timer $bti [list pushmode $c -b $bm]
    }
    set arb($bm) 1
   }
  }
 }
 if {[onchan $jn $c] && ![punishing k:$jn:$c]} {
  putquick "KICK $c $jn :[clonemap [mapall $km $c $bti] [incr cc]]"
 }
}
I’ve followed the steps and tested it with “auto re-join channel when kicked” option in mIRC switched on.
I observed that sometimes the script kicks and bans fast enough to keep the nick out of the channel.
But at other times the nick joins back after the kick, before the ban is placed.
I hope you can help me out on this.
Many thanks for your effort in advance and best of luck for now and the future.
Regards,
FireWarrior.
User avatar
Sir_Fz
Revered One
Posts: 3794
Joined: Sun Apr 27, 2003 3:10 pm
Location: Lebanon
Contact:

Post by Sir_Fz »

It might take longer to set a ban because of the queuing system
# Do you want your bot to queue bans? set here the time in seconds before dumping bans:
# NOTE: 0 means the bot will set the ban immediately
# The modes-per-line setting in eggdrop.conf is the number of modes allowed per command.
set apqueue(time) 1
Basically, this allows the bot to group bans in one line. You can disable the queue by setting it to 0, this way the ban is immediately set.
Post Reply