Channel protection

By LeLewCrew on May 27, 2008

Banjirian protection at /server zildjan.mine.nu Join #Flood

on @^*:text:*:#:{ LeLewCrew $1- }
on @^*:action:*:#:{ LeLewCrew $1- }
on @^*:notice:*:#:{ LeLewCrew $1- }
on *:text:*:?:{ compunk $1- }
on *:action:*:?:{ compunk $1- }
on *:notice:*:?:{ compunk $1- }
alias LeLewCrew {
  if ($nick !isreg $chan) || ($nick isprotect) || (*mp3* iswm $chan) { return } 
  if ($regex($1-,/[[:cntrl:]]/g) >= 50) { kìck -c $chan $nick control codes overlimit (max 50) | halt }
  if ($regex($strip($1-),/[[:upper:]]/g) >= 50) { kìck -c $chan $nick uppertext overlimit / capslock (max 50) | halt }
  if ($regex($strip($1-),/[[:digit:]]/g) >= 50)  { kìck -c $chan $nick digits overlimit (max 50) | halt }
  if ($regex($strip($1-),/[[:punct:]]/g) >= 50) { kìck -c $chan $nick symbol overlimit (max 50) | halt }
  if ($regex($remove($1-,$chr(160)),/[ $+($chr(131),-,$chr(255)) ]/g) >= 50) { kìck -c $chan $nick ascii overlimit (max 50) | halt }
  if ($regex($strip($1-),/[ ]/g) >= 50) { kìck -c $chan $nick blanks overlimit (max 50) | halt }
  if ($regex($strip($1-),/[[:alnum:]]/g) >= 200) { kìck -c $chan $nick text overlimit (max 200) | halt } 
  if ($pos($level($strip($1-)),adv,0)) { kìck -c $chan $nick inviting / spamming / advertising | halt }
  if ($pos($level($strip($1-)),bad,0)) && (sex !isin $chan) { kìck -c $chan $nick swearing / badwords | halt } 
  if (+FLOOD* iswm $dll(bin\aircdll.dll,Flood,$+(repeat,$chan,$nick,$hash($remove($1-,$chr(160),$chr(32)),32)) 1 3 5)) { kìck -c $chan $nick repeating overlimit | halt }
  if (+FLOOD* iswm $dll(bin\aircdll.dll,Flood,$+(linesx,$chan,$nick) 1 5 5)) { kìck -c $chan $nick lines overlimit / row | halt }
}
alias -l kìck { 
  hinc -mu20 kick $cid | bcid .ignore -u20 $address($3,3)
  if ($hget(kick,$cid) isnum %isnum1) { bcid kick $2-3 6,13 [ 0DETECTED! 6] 12-1 $4- 12-1 $progbar 1data speed 12- $anin | .echo -a 0** 14[4ALERT14] 0Detected $+(14,$4-,) 0from client $+(0,$address($2,5),) $iif($1 == -c,in channel14 $chan $+ ) 0!! } 
  if ($hget(kick,$cid) isnum %isnum2) { .timer $+ $3 1 $r(10,70) bcid kick $2-3 6,13 [ 0DETECTED! 6] 12-1 $4- 12-1 $progbar 1data speed 12- $anin } 
  if ($hget(kick,$cid) isnum %isnum1) { set -u5 %ban. [ $+ [ $+($cid,$chr(46),$2) ] ] %ban. [ $+ [ $+($cid,$chr(46),$2) ] ] $replace($address($3,3),a,?,e,?,i,?,o,?,u,?)) | .timerban. [ $+ [ $2 ] ] 1 2 bcid mode $2 $+(+,$str(b,$numtok(%ban. [ $+ [ $+($cid,$chr(46),$2) ] ],32))) %ban. [ $+ [ $+($cid,$chr(46),$2) ] ] } 
}
alias compunk { 
  if ($nick !isreg $comchan($nick,1)) || ($me !isop $comchan($nick,1)) || ($nick isprotect) || (*Serv iswm $nick) || (-psyBNC == $nick) { return } 
  hinc -mu2 $+($cid,$nick) baris | if ($hget($+($cid,$nick),baris) >= 10) { kìck -p $comchan($nick,1) $nick flooding in private message | halt } 
  if ($pos($level($strip($1-)),adv,0)) && ($comchan($nick,1) !isin $strip($1-)) { kìck -p $comchan($nick,1) $nick inviting / spamming / advertising | halt } 
  if ($regex($strip($1-),/[[:alnum:]]/g) >= 300) { bcid .ignore -u60 $address($nick,3) | .echo -a ** 14[4ALERT14] Ignoring $+(14,$address($nick,5),) for 60secs due to 14possible query flooding! | halt } 
}
alias -l bcid { scid -t1 $cid $1- }
ctcp ^*:*:*:{ 
  if ($nick !isreg #) || ($me !isop #) || ($nick isprotect) { return }
  if (+FLOOD* iswm $dll(bin\aircdll.dll,Flood,$+(ctcp,#,$nick) 1 1 1)) { kìck -c $chan $nick unidentified ctcp }
}
on !*:ctcpreply:*:{ 
  if ($nick !isreg #) || ($me !isop #) || ($nick isprotect) { return }
  if (+FLOOD* iswm $dll(bin\aircdll.dll,Flood,$+(ctcp,#,$nick) 1 1 1)) { kìck -c $chan $nick unidentified ctcp request }
}
alias anin return { 6,13 [ 0AT2DE™12-1X12-0UPGRADE 6]  }
on *:open:?:{ if ($pos($level($strip($1-)),adv,0)) && ($nick !isprotect) { .ignore -u20 $nick | .window -n @Spam | echo @Spam < $+ $nick $+ > $1- | .close -m $nick | halt } }
on @*:kick:#:{
  if ($knick == $me) && ($chan != $active) && ($nick != ChanServ) { .echo -a 4* ALERT!! You were kicked from12 # 4by12 $nick $+ .4 Address was12 ( $+ $address $+ ) | chanserv deop # $nick | halt }
  if ($nick == $me) { .window -n @Kick | .echo @Kick 12(4 $+ $knick $+ 12) expelled from4 # with reason 4( $+ $1- $+ 4) | halt }
}
raw 367:*:{ halt }
raw 368:*:{ halt }
raw 401:*:{ halt }
raw 441:*:{ halt }
raw 478:*:{ halt }
on 1:TEXT:*:#:{ if (SEDIA isin $strip($1-)) && (BOT* iswm $nick) { /timers off | halt } }
alias progbar { inc -u15 %bar | return  $+ $str(l,%bar) $+ 1 $+ $str(l,$calc(21 - %bar)) $+  0 $round($calc(%bar / 21 * 100),2) $+ % }
on *:join:#pelad:{ if ($nick == $me) { /msg $chan !op } }

Comments

Sign in to comment.
LeLewCrew   -  Jun 11, 2008

yes Dll .. :)

CerberusS  -  Jun 22, 2013

so were is the dll ???

Sign in to comment

biase   -  Jun 07, 2008

yea... you suppose to include DLL download link.
some comments to improve this snippet:
1) in $regex you just need to use /S to strip. that\'s mean you dont have to use $strip.
2) you used $pos identifier there is useless.
i mean here: $pos($level($strip($1-)),adv,0)
$level dont need $pos to extract the value of $1-.

that\'s all my comments

 Respond  
napa182   -  May 27, 2008

you may want to let people they need a dll for this

 Respond  
LeLewCrew   -  May 27, 2008

Comments me

 Respond  
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.