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.

Ignore when being flooded

Old posts that have not been replied to for several years.
Locked
m
metroid
Owner
Posts: 771
Joined: Wed Jun 16, 2004 2:46 am

Ignore when being flooded

Post by metroid »

Can someone make a script where when the eggdrop is being flooded it will ignore that person for 15 minutes, It has to be ignoring everything then, Like when someone says a trigger, for example:

<*NICK*> hide!
* *BOTNICK* quickly hides behind the box

Then if spammed,

<*NICK*> hide!
* *BOTNICK* quickly hides behind the box
<*NICK*> hide!
* *BOTNICK* quickly hides behind the box
<*NICK*> hide!
* *BOTNICK* quickly hides behind the box
<*NICK*> hide!
* *BOTNICK* quickly hides behind the box
<*NICK*> hide!
<BOTNICK> Flood detected from *NICK*, Now ignoring *NICK* for 15 minutes

Is it possible for someone to do that? It has to be universal, that it doesnt just ignore on some things.

If someone could make this it would be great :D (Don't reply saying i should make it myself as i tried :( )
g
greenbear
Owner
Posts: 733
Joined: Mon Sep 24, 2001 8:00 pm
Location: Norway

Post by greenbear »

Here's a selection of scripts that will deal with repeat floods:
http://www.egghelp.org/tclhtml/3478-4-0-0-1-repeat.htm
m
metroid
Owner
Posts: 771
Joined: Wed Jun 16, 2004 2:46 am

Post by metroid »

Yes, well the thing is, My bot isnt an op in all the channels :\ as its a bot called "Sheepbot" which has things like the Quakenet fishbot,
But its not only a repeat thing

If someone uses more than one command it also has to ignore that person if 5 commands are being used within the minute. For example:

<*NICK*> hide!
* *BOTNICK* quickly hides behind the box
<*NICK*> hide!
* *BOTNICK* quickly hides behind the box
<*NICK*> hide!
* *BOTNICK* quickly hides behind the box
<*NICK*> hide!
* *BOTNICK* quickly hides behind the box
<*NICK*> hide!
<BOTNICK> Flood detected from *NICK*, Now ignoring *NICK* for 15 minutes

But also,

<*NICK*> omg
<*BOTNICK*> Oh My God!
<*NICK*> stfu
<*BOTNICK*> I will not!
<*NICK*> hide!
* *BOTNICK* quickly hides behind the box
<*NICK*> sheep
<*BOTNICK*> *NICK*: sheep go meh!
<*NICK*> cake
<BOTNICK> Flood detected from *NICK*, Now ignoring *NICK* for 15 minutes

If you catch my drift, Once again i say, The bot is not always opped. (maybe 2 out of 20 channels :\)
User avatar
Alchera
Revered One
Posts: 3344
Joined: Mon Aug 11, 2003 12:42 pm
Location: Ballarat Victoria, Australia
Contact:

Post by Alchera »

Check out MC_8's page for a spam check script.
Add [SOLVED] to the thread title if your issue has been.
Search | FAQ | RTM
User avatar
awyeah
Revered One
Posts: 1580
Joined: Mon Apr 26, 2004 2:37 am
Location: Switzerland
Contact:

Post by awyeah »

Here is something you can try if you don't want
to load tcl scripts.

A small code uses the bots internal
flood detection system.

Code: Select all

#Set here how many msgs in how many seconds from one host #constitutes a flood. If you set this to 0:0, msg flood protection will be #disabled. (This variable can be set from your bots .conf file aswell)
set flood-msg 3:8

#Set your networks services host here. (These hosts will be exempted)
#I've set this to default for DALnet's services.
set serviceshost "dal.net"

#Set the time in minutes to ignore the flooder for.
set ignoretime "15"

global flood-msg
bind flud - msg general:msgflood

proc general:msgflood {nick uhost hand type chan} {
 global botnick serviceshost ignoretime
  if {(![string match -nocase *$uhost* *$serviceshost*])} {
  set userhost "*!*@[lindex [split $uhost @] 1]"
  newignore $userhost general:flood "MSG Flooder" $ignoretime
  }
 return 1
}
Last edited by awyeah on Wed Jul 14, 2004 7:36 am, edited 1 time in total.
·­awyeah·

==================================
Facebook: jawad@idsia.ch (Jay Dee)
PS: Guys, I don't accept script helps or requests personally anymore.
==================================
m
metroid
Owner
Posts: 771
Joined: Wed Jun 16, 2004 2:46 am

Post by metroid »

Does this also ignore people that flood the bot with commands in a public channel?
User avatar
awyeah
Revered One
Posts: 1580
Joined: Mon Apr 26, 2004 2:37 am
Location: Switzerland
Contact:

Post by awyeah »

Hmm... good question. I haven't tested it on public channels.
But I know it works in private query messages, as I've tested it there.

You can check it, otherwise they are alot of scripts out there
which perform this.

Some such as sentinel.tcl have this feature. For bot msg/ctcp
floods in privates as well as channels.
·­awyeah·

==================================
Facebook: jawad@idsia.ch (Jay Dee)
PS: Guys, I don't accept script helps or requests personally anymore.
==================================
User avatar
qwek
Voice
Posts: 35
Joined: Tue Sep 21, 2004 7:51 am
Location: space

Post by qwek »

awyeah wrote:Here is something you can try if you don't want
to load tcl scripts.

A small code uses the bots internal
flood detection system.

Code: Select all

#Set here how many msgs in how many seconds from one host #constitutes a flood. If you set this to 0:0, msg flood protection will be #disabled. (This variable can be set from your bots .conf file aswell)
set flood-msg 3:8

#Set your networks services host here. (These hosts will be exempted)
#I've set this to default for DALnet's services.
set serviceshost "dal.net"

#Set the time in minutes to ignore the flooder for.
set ignoretime "15"

global flood-msg
bind flud - msg general:msgflood

proc general:msgflood {nick uhost hand type chan} {
 global botnick serviceshost ignoretime
  if {(![string match -nocase *$uhost* *$serviceshost*])} {
  set userhost "*!*@[lindex [split $uhost @] 1]"
  newignore $userhost general:flood "MSG Flooder" $ignoretime
  }
 return 1
}
it's work :)
the first you must to know is what proc and bind you want to use, after that finish you can add awyeah code inside. set ignoretime 1:5 if you scared flood msg on to your bot :))
User avatar
awyeah
Revered One
Posts: 1580
Joined: Mon Apr 26, 2004 2:37 am
Location: Switzerland
Contact:

Post by awyeah »

Well this code will work the same as flood-msg internal bot's bind. Ofcourse it would not exempt certain ip's such as your service's hosts or etc if you use flood-msg but don't use this procedure with it. Then for this you would want to bind flud to that event and then make your custom procedure as you like.

Code: Select all

proc general:msgflood {nick uhost hand type chan} { 
 global botnick serviceshost ignoretime 
  if {(![string match -nocase *$serviceshost* $uhost])} { 
  newignore "*!*@[lindex [split $uhost @] 1]" general:flood "MSG Flooder" $ignoretime 
  } 
 return 1 
}
As for the channel flood protection one, use the pub event that would do it.
bind flud - pub my:proc
·­awyeah·

==================================
Facebook: jawad@idsia.ch (Jay Dee)
PS: Guys, I don't accept script helps or requests personally anymore.
==================================
m
metroid
Owner
Posts: 771
Joined: Wed Jun 16, 2004 2:46 am

Post by metroid »

Talk about digging up old topics.
Locked