on @*:JOIN:#: if (%fld_temp. [ $+ [ # ] ] == $true) { return } | inc %bfld. [ $+ [ # ] ] | .timer -o 1 3 unset %bfld. [ $+ [ # ] ] | if (%bfld. [ $+ [ # ] ] >= 5) { set -u60 %fld_temp. [ $+ [ # ] ] $true | notice # Channel has been locked due to possible floods, please be patient. Thank you. | .raw MODE # +mR | .timer 1 60 .mode # -mR | .timer 2 61 .notice # Channel has been unlocked. Sorry for any inconvinience }

---------------------------------

on *:START: { massjoin }
on *:LOAD: { massjoin }
on *:CONNECT: { massjoin }

alias -l massjoin { if ($hget(massjoin) == $null) { hmake massjoin 750 } }
alias -l abmj {

}

on @*:JOIN:#: {
if (%massjoin == $true) {
set -u15 %mj1 $addtok(%mj1,$nick,44)
hinc -mu5 massjoin JOIN 1
if ($hget(massjoin,JOIN) >= 7) {
if (%modechan != $true) {
mode $chan +im
set -u15 %modechan $true
set -u15 %mj2 1
notice $chan 12*! 4MASS JOIN DETECTED12 !* 2- 12channel locked down for4 5-7 minuets.12 Sorry for any inconvenience this may cause.
.timermjs 1 300 mode $chan -im
}
while (%mj2 <= $numtok(%mj1,44)) {
if ($gettok(%mj1,%mj2,44) ison $chan) {
if (%mj2 <= 8) { .timermj $+ %mj2 1 %mj2 kick $chan $gettok(%mj1,%mj2,44) 2MASS JOIN KICKER II - By Neo Nemesis }
elseif (%mj2 > 8) { .timermj $+ %mj2 -m 1 $calc(790 * %mj2) kick $chan $gettok(%mj1,%mj2,44) 2MASS JOIN KICKER II - By Neo Nemesis }
}
inc %mj2
}
}
}
}
menu status,query,nicklist,channel {
MASS JOIN KICKER II - $iif(%massjoin = $true,ON,OFF)
.ON:/set %massjoin $true
.OFF:/set %massjoin $false
.About:/abmj
}

--------------------------------

on *:JOIN:#: {
if (%Netsplit-Detected. [ $+ [ $chan ] $+ . $+ [ $network ] ]) { return }
if ($nick(#,$me,@&~%)) {
set -u3 %mj1 $addtok(%mj1,$nick,44)
hinc -mu3 massjoin $chan 1
if ($hget(massjoin,#) >= 3) {
if (%modechan != $true) {
.raw mode $chan +MR
echo $chan $timestamp 01,08 ( Mass-Join Flood ) !!!!! Channel Locked !!!!! 
set -u3 %modechan $true
set -u3 %mj2 1
.timermsj-R 1 30 mode $chan -R
.timermsj-M 1 60 mode $chan -M
}
while (%mj2 <= $numtok(%mj1,44)) {
if ($gettok(%mj1,%mj2,44) ison $chan) {
banMJ $gettok(%mj1,%mj2,44) $chan
if (%mj2 <= 15) { kick $chan $gettok(%mj1,%mj2,44) Mass Joins Detected -1- }
if (%mj2 >= 16) { kick $chan $gettok(%mj1,%mj2,44) Mass Joins Detected -2- }
}
inc %mj2
}
}
}
}

alias banMJ {
if ($regex($address($1,2),/(irccloud)/i)) { mode $2 +b $regsubex($mid($address($1,0),3),/(~?[^@]+)@.*(?=\.[^.]+\..+)/,*!\1@*\2) | halt }
elseif (!$regex($gettok($address($1,2),-1,64),/[a-zA-Z]/g)) {
mode $2 +b $+($gettok($address($1,2),1-3,46),.*)
}
else {
mode $2 +b $+(*!*@*.,$gettok($address($1,2),2-,46))
}
}

ON !^*:QUIT: {
var %netsplit2 1
while ($comchan($nick,%netsplit2)) {
var %netsplitchan $v1
if (*.*.* iswm $1) && (*.*.* iswm $2) && (!%Netsplit-Detected. [ $+ [ %netsplitchan ] $+ . $+ [ $network ] ]) {
echo %netsplitchan $timestamp 12,00 Netsplit Detected between 05,00 $1 14,00 <> 05,00 $2 
set -z %Netsplit-Detected. [ $+ [ %netsplitchan ] $+ . $+ [ $network ] ] 60
}
inc %netsplit2
}
if (%Netsplit-Detected. [ $+ [ %netsplitchan ] $+ . $+ [ $network ] ]) { echo %netsplitchan $timestamp $chr(160)  $+ $color(quit) Quits : $chr(160)  $+ $color(quit) $nick $chr(160)  $+ $color(quit) $address  $+ $color(quit) ( $+ $1- $+ )  }
}

ON *:LOAD:{ hmake massjoin 100 }
On *:start: { hmake massjoin 100 }


------------------------------------------

On !^*:JOIN:#: {
if ($nick(#,$me,@&~%)) {
var %join.flood = $left($nick,5)
set -u15 %clnicks1 $addtok(%clnicks1,$nick,44)
if (%join. [ $+ [ # ] $+ . $+ [ %join.flood ] ] == $null) {
set -u10 %join. [ $+ [ # ] $+ . $+ [ %join.flood ] ] 1
}
else { inc %join. [ $+ [ # ] $+ . $+ [ %join.flood ] ] }
if (%join. [ $+ [ # ] $+ . $+ [ %join.flood ] ] >= 2) {
ban35RT $nick $chan
if (%modechan1MR != $true) {
set -u15 %clnicks2 1
.raw mode $chan +MRb $+(*!,$left($gettok($gettok($address($nick,5),1,64),2,33),5),*@*)
echo $chan 01,08 ( cloned nicks Flood ) !!!!! Channel Locked !!!!! 
set -u15 %modechan1MR $true
.timermjs1RM 1 30 mode $chan -MR
}
while (%clnicks2 <= $numtok(%clnicks1,44)) {
if (%clnicks2 <= 10) { kick $chan $gettok(%clnicks1,%clnicks2,44) Cloned Nicks ) ( Detected -1- }
if (%clnicks2 >= 11 ) { kick $chan %clnicks1 Cloned Nicks ) ( Detected -2- | unset %clnicks1 }
inc %clnicks2
}
}
}
}

alias ban35RT {
if (!$regex($gettok($address($1,2),-1,64),/[a-zA-Z]/g)) {
mode $2 +b $+(*!*@,$gettok($gettok($address($1,2),1-3,46),2,64),.*)
}
else {
mode $2 +b $+(*!*@*.,$gettok($address($1,2),3-,46))
}
}

---------

on *:NICK:{
$iif(%lett == $null,set %lett abcdefjhigklmnopqrstuvwxyz)
$iif(%num == $null,set %num 1234567890)
if ($len($newnick) = 6) && ($left($newnick,1) isin %lett) && ($mid($newnick,2,1) isin %lett) && ($mid($newnick,3,1) isin %lett) && ($mid($newnick,4,1) isin %lett) && ($mid($newnick,5,1) isin %num) && ($right($newnick,1) isin %num) && ($newnick != $me) {
if ($mid($address,1,1) isin %lett) && ($mid($address,2,1) isin %lett) && ($mid($address,3,1) isin %lett) && ($mid($address,4,1) isin %lett) && ($mid($address,5,1) isin %num) && ($mid($address,6,1) isin %num) {
var %turboz = $comchan($newnick,0)
while (%turboz) {
if ($me isop $comchan($newnick,%turboz)) && ($newnick isreg $comchan($nick,%turboz)) { kick $comchan($newnick,%turboz) $newnick Turbo Inviter | mode $comchan($newnick,%turboz) +b $wildsite }
dec %turboz
}
}
}
}
on @*:JOIN:#:{
$iif(%lett == $null,set %lett abcdefjhigklmnopqrstuvwxyz)
$iif(%num == $null,set %num 1234567890)
if ($nick isreg $chan) && ($len($nick) = 6) && ($left($nick,1) isin %lett) && ($mid($nick,2,1) isin %lett) && ($mid($nick,3,1) isin %lett) && ($mid($nick,4,1) isin %lett) && ($mid($nick,5,1) isin %num) && ($right($nick,1) isin %num) && ($nick ison $chan) {
if ($mid($address,1,1) isin %lett) && ($mid($address,2,1) isin %lett) && ($mid($address,3,1) isin %lett) && ($mid($address,4,1) isin %lett) && ($mid($address,5,1) isin %num) && ($mid($address,6,1) isin %num) { kick # $nick Turbo Inviter | Mode # +b $wildsite }
}
}
#TurboInv End

menu channel,menubar,status {
Channel Invite Pro
.On:/.enable #TurboInv | echo -a *** Turbo Invite Protection Is Now On
.Off:/.disable #TurboInv | echo -a *** Turbo Invite Protection Is Now Off
}

-------------------------

on ^*:quit:{
if (%jqfloood. [ $+ [ $wildsite ] ] != $null) halt
if ($gettok(%Cnk [ $+ [ $site ] ] ,2,32) == $nick) && (%jqfloood. [ $+ [ $wildsite ] ] == $null) {
if ($me isop $gettok(%Cnk [ $+ [ $site ] ] ,1,32)) { mode $gettok(%Cnk [ $+ [ $site ] ] ,1,32)) +Rb $wildsite | /.timer34 1 5 mode $gettok(%Cnk [ $+ [ $site ] ] ,1,32) -R }
set -u20 %jqfloood. [ $+ [ $wildsite ] ] ok
/.ignore -kNctu60 $wildsite
echo -a *** Detected Join\Quit FLooD iN:( $+ $gettok(%Cnk [ $+ [ $site ] ] ,1,32) $+ )
echo $gettok(%Cnk [ $+ [ $site ] ] ,1,32) *** $nick ( $+ $address $+ ) Quit (iGnored)
halt
}
}
on ^*:part:#:{
if (%jqfloood. [ $+ [ $wildsite ] ] != $null) halt
if ($gettok(%Cnk [ $+ [ $site ] ] ,2,32) == $nick) && (%jqfloood. [ $+ [ $wildsite ] ] == $null) {
if ($me isop $gettok(%Cnk [ $+ [ $site ] ] ,1,32)) ban $gettok(%Cnk [ $+ [ $site ] ] ,1,32) $wildsite
set -u20 %jqfloood. [ $+ [ $wildsite ] ] ok
/.ignore -kNctu60 $wildsite
echo -a *** Detected Join\Part FLooD iN:( $+ $gettok(%Cnk [ $+ [ $site ] ] ,1,32) $+ )
echo $gettok(%Cnk [ $+ [ $site ] ] ,1,32) 13*** $nick ( $+ $address $+ ) has left $chan (iGnored)
halt
}
}
on ^*:join:#:{
if (%jqfloood. [ $+ [ $wildsite ] ] != $null) halt
if ($nick != $me) set -u2 %Cnk [ $+ [ $site ] ] $chan $nick
}

#QuitPro End

menu channel,menubar,status {
Quit Flood Pro
.On:/.enable #QuitPro | echo -a *** Quit Flood Protection Is Now On
.Off:/.disable #QuitPro | echo -a *** Quit Flood Protection Is Now Off
}

i want to get help with this protection im new to this script stuff this protection can i use them all? or what one do i need