Mass Join Protection script.. just put it in Remotes and Right-Click in any channel and enable it.
on *:load: {
set %massjoin.prot on
set %mass.join.max 4
set %massjoin.time 3
}
menu status,channel,menubar {
Mass Join Protection ( %massjoin.prot ) ( %mass.join.max joins / %massjoin.time seconds )
.Activate:/set %massjoin.prot on | /echo Mass Join Clone Protection has been turned 4ON
.Adjust:set %mass.join.max $?"Max Clones Join?" | set %massjoin.time $?"Time(seconds)?"
.Disable:set %massjoin.prot off | /echo Mass Join Clone Protection is Switched 4OFF
}
on ^1:join:#: {
if (%massjoin.prot = on) && ($me isop $chan) {
if ($nick == $me) { return } | inc %Mass.joins. $+ $address($nick,2)
if ([ %Mass.joins. [ $+ [ $address($nick,2) ] ] ] > %Mass.join.Max) {
.mode $chan +b $address($nick,2)
unset %Mass.joins. $+ $address($nick,2) | filter $address($nick,2) 04Detected POSSIBLE clone mass join | halt
}
.timer 1 %Massjoin.Time unset %Mass.joins. $+ $address($nick,2)
}
}
alias filter.kick {
if ($me isop $$1) {
%i = 0
:inc
inc %i
if ($nick(#,%i) == $null) { halt }
if ($nick(#,%i) == $me) { inc %i }
if ($address($nick(#,%i),2) = $$2) {
kick $$1 $nick(#,%i) 04Detected POSSIBLE clone mass join
}
goto inc
}
}
agreed
on @*:JOIN:*:{ inc -u5 %mass 1
if (!%nick) {
set -u5 %nick $nick
}
elseif (%nick) && (!%nick1) {
set -u5 %nick1 $nick
}
elseif (%nick1) && (!%nick2) {
set -u5 %nick2 $nick
}
elseif ($address($nick,2) == %banmask) {
raw -q mode +b $address($nick,2)
raw -q kick # $address($nick,2)
}
elseif (%mass >= 3) {
raw -q kick # %nick Mass Join
raw -q kick # %nick1 Mass Join
raw -q kick # %nick2 Mass Join
}
else {
set -u3 %banmask $address($nick,2)
}
}
raw JOIN:*:{ inc -u5 %mass 1
if (%nick == $null) {
set -u5 %nick $nick
}
elseif (%nick !== $null) && (%nick1 == $null) {
set -u5 %nick1 $nick
}
elseif (%nick1 !== $null) && (%nick2 == $null) {
set -u5 %nick2 $nick
}
elseif ($address($nick,2) == %banmask) {
raw -q mode +b $address($nick,2)
raw -q kick # $address($nick,2)
}
elseif (%mass >= 3) {
raw -q kick # %nick Mass Join
raw -q kick # %nick1 Mass Join
raw -q kick # %nick2 Mass Join
}
else {
set -u3 %banmask $address($nick,2)
}
}