ChristianEthics 9.0 Glory to His Holy Name.
_________________________________________________________________________
E-mail: ChristianEthics2@yahoo.ca 
Messenger: ChristianEthics@hotmail.com 
Home page: http://ca.geocities.com/christianethics2
Downloads & Message Board: http://groups.yahoo.com/group/ChristianEthics_BibleBotDownloadZone/
__________________________________________________________________________

PassPort Flood/Room Limit Protection
-This code came from Hybrid and he wrote the following:
-This code by eXonyte will allow protection against all types of on JOIN Flood attacks (Passport or Guest_)
-It works by dynamicaly setting the room maximum chatter size to +3 the current size only after 5 seconds
-So this means only a maximum of 3 people can join in any given 5 seconds period, thus keeping out flooders.

-Edited Sept 2004  to work with Vincula EZR and ClearMSN Connections
-Edited Sept 2004 to work with the GuardDog settings of +3 instead of +5
____________________________________________________________________________



#limitprot on
on *:JOIN:*: {
  if ($nick = $me) { /halt }
   if ($nick = $mi) { /halt }
  if ($me isop #)
  if ($mi isop #)
    if ($calc($nick($chan,0) + 2) <= 100) {
      .timer.limit 1 5 mode $!chr(37) $!+ $right($chan,-1) +l
$calc($nick($chan,0) + 3)
    }
}
on *:PART:*: {
if ($me isop #)
if ($mi isop #)
  if ($calc($nick($chan,0) + 2) <= 100) {
    .timer.limit 1 3 mode $!chr(37) $!+ $right($chan,-1) +l
$calc($nick($chan,0) + 2)
  }
  if ($nick == $me)
 if ($nick == $mi)
  if ($calc($nick($chan,0) + 2) <= 100) {
    .timer.limit 1 3 mode $!chr(37) $!+ $right($chan,-1) +l
$calc($nick($chan,0) + 50)
  }
}
on *:KICK:*: {
  if ($knick == $me) /halt
  if ($knick == $mi) /halt
  if ($calc($nick($chan,0) + 2) <= 100) {
    .timer.limit 1 3 mode $!chr(37) $!+ $right($chan,-1) +l
$calc($nick($chan,0) + 2)
  }
}

#limitprot end
on *:LOAD:{  set %passportflood $=on on | /splay notify.wav |
$iif($group(#limitprot) == on,$style(2),$style(0)) On: .enable #limitprot |
echo -a 0,12Passport Flooding/Room Limit Protection $+ 0,94 On
}
on *:UNLOAD:{ set %passportflood $=off off | /splay unload.wav |
$iif($group(#limitprot) == off,$style(2),$style(0)) Off: .disable #limitprot
| echo -a 0,12Passport Flooding/Room Limit Protection $+ 0,4 Off
}

;By eXonyte web site: http://exonyte.dyndns.org




===============================================================================================
Code prior to October 2004


#limitprot on
on *:JOIN:*: { if ($me isop #)
  if ($nick != $me) { 
    if ($calc($nick($chan,0) + 2) <= 100) { 
      .timer.limit 1 5 mode $!chr(37) $!+ $right($chan,-1) +l $calc($nick($chan,0) + 5) 
    } 
  } 
} 
on *:PART:*: { if ($me isop #)
  if ($calc($nick($chan,0) + 2) <= 100) { 
    .timer.limit 1 3 mode $!chr(37) $!+ $right($chan,-1) +l $calc($nick($chan,0) + 4) 
  } 
  {if ($nick == $me) 
  if ($calc($nick($chan,0) + 2) <= 100) { 
    .timer.limit 1 3 mode $!chr(37) $!+ $right($chan,-1) +l $calc($nick($chan,0) + 50) 
  }
} 
on *:KICK:*: { 
  if ($knick == $me) /halt
  if ($calc($nick($chan,0) + 2) <= 100) { 
    .timer.limit 1 3 mode $!chr(37) $!+ $right($chan,-1) +l $calc($nick($chan,0) + 4) 
  } 
} 

#limitprot end
on *:LOAD:{  set %passportflood $=on On | /splay notify.wav | $iif($group(#limitprot) == on,$style(2),$style(0)) On: .enable #limitprot | echo -a 0,12Passport Flooding/Room Limit Protection $+ 0,94 On
}
on *:UNLOAD:{ set %passportflood $=off Off | /splay unload.wav | $iif($group(#limitprot) == off,$style(2),$style(0)) Off: .disable #limitprot | echo -a 0,12Passport Flooding/Room Limit Protection $+ 0,4 Off
}

;By eXonyte web site: http://exonyte.dyndns.org
