home *** CD-ROM | disk | FTP | other *** search
/ HaCKeRz KrOnIcKLeZ 3 / HaCKeRz_KrOnIcKLeZ.iso / scriptz / floodprt.txt < prev    next >
Text File  |  1996-04-23  |  6KB  |  202 lines

  1. ********************
  2. * Flood protection *
  3. * ================ *
  4. ********************
  5.  
  6. Here are various scripts which go in your commands and events, 
  7. and should protect you against any floods of any type from anyone.
  8.  
  9.  
  10. For DCC sends, put this in commands  
  11.  
  12. 1:dcc send: {
  13.   inc %dccsend 1 
  14.   if %dccsend < 5 { 
  15.     timer6 1 5 set %dccsend 0
  16.     sreq auto
  17.     notice $nick Thanks for " $+ $parm3 $+ " $nick
  18.   }
  19.   else { 
  20.     notice $nick DCC sends ignored, please try again in a few secs, thanks $nick 
  21.     amsg ò DCC Send ò Flood from $nick --> $address 
  22.     timer6 1 5 set %dccsend 0
  23.     ignore -ptu60 $nick 2 
  24.   }
  25. }
  26.  
  27. With this script, it will let 5 files be sent to you at 5 second
  28. intervals before ignoring any further sends. This means that
  29. if 6 people each send you one single file, it will
  30. ignore the 6th persons file. This seems to me like good peotection,
  31. cos it means that, say, 20 ppl can't gang together against you and
  32. decide to flood you off. (having said that, if you've done 
  33. something to annoy 20 ppl this much, maybe it's best that you're
  34. off IRC...;-)
  35. Also, if you *are* flooded, the send protection will send a msg to
  36. all the channels you're currently on, saying something like:
  37. ARRGHHH, <this person> is DCC flooding me, at address <their address>
  38.  
  39. This next script does exactly the same thing for Chat requests, in commands:
  40.  
  41. 1:dcc chat: {
  42.   inc %dccchat 1
  43.   if (%dccchat < 3) { 
  44.     timer5 1 10 set %dccchat 0
  45.     creq auto 
  46.     halt
  47.   }
  48.   else { 
  49.     notice $nick Sorry, DCC chats are ignored at the moment, please try again in a sec
  50.     timer5 1 10 set %dccchat 0
  51.     ignore -ptu60 $nick 2
  52.   }
  53. }
  54.  
  55. Except that this one cuts off after 3 chats, so the fourth person 
  56. can't DCC chat you. Again, this means that 5 different ppl can't
  57. chat flood you off. I've set the limit here to 3, which is
  58. because DCC sends are normally minimized, but chats are a new 
  59. window, so you want to ignore them after as few windows as possible.
  60.  
  61. Here are a couple for private notice's and messages... (in events)
  62. This will active after four messagess with under a two-second gap 
  63. between each.
  64.  
  65. !1:on notice:*:*: {
  66.   if $site = %thirdnoticenick { 
  67.     unset %thirdnoticenick 
  68.     ignore -pntiu60 *!*@ $+ $site
  69.     notice $me Notice Flood from $nick --> $site
  70.     notice $nick Notice flood detected
  71.     notice 4nick Try Again Later is Currently Busy The System!
  72.     halt 
  73.   }
  74.   if $site = %secondnoticenick { 
  75.     set %thirdnoticenick $site
  76.     timer 1 2 unset %thirdnoticenick 
  77.     halt 
  78.   }
  79.   if $site = %firstnoticenick { 
  80.     set %secondnoticenick $site 
  81.     timer 1 2 unset %secondnoticenick 
  82.     halt 
  83.   }
  84.   else set %firstnoticenick $site 
  85.   timer 1 2 unset %firstnoticenick
  86. }
  87.  
  88. !1:on text:*:?: {
  89.   if $site = %thirdtextnick { 
  90.     unset %thirdtextnick
  91.     ignore -pntiu60 *!*@ $+ $site 
  92.     notice $me Text Flood from $nick --> $site
  93.     notice $nick Message flood detected
  94.     notice $nick No Flood!
  95.     halt 
  96.   }
  97.   if $site = %secondtextnick { 
  98.     set %thirdtextnick $site 
  99.     timer 1 2 unset %thirdtextnick
  100.     halt 
  101.   }
  102.   if $site = %firsttextnick { 
  103.     set %secondtextnick $site
  104.     timer 1 2 unset %secondtextnick
  105.     halt 
  106.   }
  107.   else set %firsttextnick $site
  108.   timer 1 2 unset %firsttextnick
  109. }
  110.  
  111. Here's some dcc chatting protection (in events)
  112. Again four messages with 2 seconds gap or less between them
  113.  
  114. 1:on chat:*: {
  115.   if ($nick = %thirdchatnick) { 
  116.     unset %thirdchatnick 
  117.     notice $nick  Chat flood detected 
  118.     notice $nick No Flood!
  119.     close -c $nick
  120.     ignore -pntiu60 $nick 2
  121.     notice $me DCC Chat flood from $nick
  122.     halt 
  123.   }
  124.   if ($nick = %secondchatnick) { 
  125.     set %thirdchatnick $nick
  126.     timer 1 2 unset %thirdchatnick
  127.     halt 
  128.   }
  129.   if ($nick = %firstchatnick) { 
  130.     set %secondchatnick $nick
  131.     timer 1 2 unset %secondchatnick 
  132.     halt 
  133.   }
  134.   else set %firstchatnick $nick
  135.   timer 1 2 unset %firstchatnick
  136. }
  137.  
  138. if, after all your ctcp commands you put 
  139.  
  140. :> flood?
  141.  
  142. on the end, mIRc will redirect all your ctcp replies to this command, which
  143. will trigger this flood protection script:
  144. Four ctcp's with less than 3 seconds between each
  145.  
  146. 1:flood?: {
  147.   if ($site = %thirdctcpnick) { 
  148.     unset %thirdctcpcnick
  149.     ignore -pntiu60 *!*@ $+ $site
  150.     notice $me CTCP $parm1 Flood from $nick --> @ $+ $site
  151.     notice $nick CTCP $parm1 flood detected
  152.     notice $nick Dont You Ever Try to FlOod Me Again!!! You Are Now on a 60 Seconds Ignore for Flooding mE!!!
  153.     halt 
  154.   }
  155.   if ($site = %secondctcpnick) { 
  156.     set %thirdctcpnick $site
  157.     timer 1 3 unset %thirdctcpnick
  158.     halt 
  159.   }
  160.   if ($site = %firstctcpnick) { 
  161.     set %secondctcpnick $site
  162.     timer 1 3 unset %secondctcpnick
  163.     halt 
  164.   }
  165.   else set %firstctcpnick $site
  166.   timer 1 3 unset %firstctcpnick
  167. }
  168.  
  169. For invitation floods... (in events)
  170. Ignores invites for 60 secs after an invite is sent
  171.  
  172. 1:on invite:*:notice $nick Thanks for the invitation but no thanks! | ignore -iu60 $nick 2
  173.  
  174. 'n i think thats just about it...
  175.  
  176. All these have been tried and tested in-the-field, someone tried to
  177. dcc chat, dcc send, ctcp, notice and msg flood me inside of a minute
  178. and I didn't even notice it on-screen. (I asked them to flood me!)
  179.  
  180. They also invite flooded me, which I hadn't thought of yet, so that worked....
  181. so cos of that I put the invite line in as well
  182.  
  183. Okay, hopes this helps you have a happier IRC in sticky situations! 
  184.  
  185. Obviously u can do whattevver you want, but if you include this script in a bot,
  186. I'd appreciate a mention of my nick, and The <ò> Aut0Bot <ò>, cheerz.
  187.  
  188. Make sure listening's 'on'
  189.  
  190. Hi'z to oH_yEaH, Wichita-Guy, ^monty, MEK and sumWOMAN
  191.  
  192. *******************************************************
  193. * Flood protection, part of The <ò> Aut0Bot <ò> ⌐1996 *
  194. *        written by Phillip Renfield aka _Qu^rtZ_     *
  195. *******************************************************
  196.  
  197.  
  198. UPLOADED TO WWW.SCRIPTERZ.COM BY |^JoLt^|
  199. UPLOADED TO WWW.SCRIPTERZ.COM BY |^JoLt^|
  200. UPLOADED TO WWW.SCRIPTERZ.COM BY |^JoLt^|
  201.  
  202.