Название: Anti Flood Join v1.0
Скрипт: AntiFloodJoin.mrc
Программа: mIRC
Автор: Epic
Описание: Скрипт активирует защиту, когда один и тот же пользователь начинает слишком быстро и многократно перезаходить на канал. При достижении определённого лимита перезаходов за короткое время - на нике нарушителя будет выполнено "Kick+Ban". Каждый пользователь записывается во временную хеш-таблицу по хосту для дальнейшей проверки превышения установленного лимита.
Настройка: Вы можете изменить настройки параметров скрипта через алиас "jflood" на необходимые вам значения.
join-max - настраивает максимальное количество входа на канал, при достижении которого на пользователя будет установлен "Kick+Ban". По умолчанию: <2>.
time-max - настраивает максимальное число секунд, в течении которого пользователь может быть забанен, при достижении предела входа на канал. По умолчанию: <4>.
kick-text - настраивает текст сообщения причины Кика и установки Бана для извещения нарушителя. По умолчанию: <Stop Join Flood!>.
type-ban - настраивает 1 из 7 представленных типов Бана, который будет установлен в случае достижения лимита подключений за указанное время в секундах. По умолчанию: <6>.
Установка:
Откройте редактор скриптов вашего клиента при помощи комбинации клавиш "ALT+R".
Далее через верхнее меню "File/New" откройте новый файл и разместите там код.
Далее через верхнее меню "File/Save As..." сохраните код как скрипт под названием "AntiFloodJoin.mrc".
Если у вас уже установлена предыдущая версия этого скрипта, то замените его новым кодом. Не оставляйте предыдущие версии скриптов во избежании конфликтов.
Скачать: 💾 AntiFloodJoin_v1.0.rar
##################################################################### # Название: Anti Flood Join v1.0 # Автор: Epic (epicnet@mail.ru, http://epicnet.ru) # Описание: Защита от Join/Part флуда. Все настройки производятся через алиас "jflood". ##################################################################### alias -l jflood { .hadd -m jf join-max 2 .hadd -m jf time-max 4 .hadd -m jf kick-text Stop Join Flood! ;--------------------- ;# Type 1 = nick!ident@host ;# Type 2 = nick!*@host ;# Type 3 = *!ident@host ;# Type 4 = nick!*@* ;# Type 5 = *!ident@* ;# Type 6 = *!*@host ;# Type 7 = *!*@subnet* ;--------------------- .hadd -m jf type-ban 6 } on *:JOIN:#:{ jflood | var %jf_chan $+(jfchan-,$chan) | var %jf_nick $+(jfnick-,$chan) | var %jf_ip $gettok($address($nick,5),2,64) if ($hget(%jf_chan,%jf_ip)) { .hinc -m %jf_chan %jf_ip 1 } if (!$hget(%jf_chan,%jf_ip)) { .hadd -mu $+ $hget(jf,time-max) %jf_chan %jf_ip 1 | .hadd -m %jf_nick %jf_ip $nick } .echo $chan 04JFLOOD: >>> $hget(%jf_nick,%jf_ip) $+($chr(40),%jf_ip,$chr(41)) = $+(04,$hget(%jf_chan,%jf_ip)) if ($hget(%jf_chan,%jf_ip) >= $hget(jf,join-max)) { ;--------------------- if ($hget(jf,type-ban) == 1) .mode $chan +b $address($hget(%jf_nick,%jf_ip),5) if ($hget(jf,type-ban) == 2) .mode $chan +b $address($hget(%jf_nick,%jf_ip),7) if ($hget(jf,type-ban) == 3) .mode $chan +b $address($hget(%jf_nick,%jf_ip),0) if ($hget(jf,type-ban) == 4) .mode $chan +b $+($hget(%jf_nick,%jf_ip),!*@*) if ($hget(jf,type-ban) == 5) .mode $chan +b $+($gettok($address($hget(%jf_nick,%jf_ip),1),1,64),@*) if ($hget(jf,type-ban) == 6) .mode $chan +b $address($hget(%jf_nick,%jf_ip),2) if ($hget(jf,type-ban) == 7) .mode $chan +b $+(*!*@,$gettok(%jf_ip,1-2,46),.*) ;--------------------- .kick $chan $hget(%jf_nick,%jf_ip) $hget(jf,kick-text) .hdel -sw %jf_chan %jf_ip } }
P.S. Если у вас возникли вопросы, вы столкнулись с трудностями по установке скрипта, или вы обнаружили ошибки, а может быть у вас появились новые идеи по модификации данного скрипта, то обязательно напишите здесь об этом.
- Подпись автора
[html]<style>img {vertical-align:middle;}.hnet{color:#FFFFFF;}.hstar{color:#DE0000;}.htext{font-family:Verdana;font-size:13px;color:#6E1E00;}.heading{font-family:Verdana;font-size:13px;font-weight:bold;background-color:#4897E7;}.stitle{font-family:Verdana;font-size:12px;}.dot{color:#808000;}.desc{color:#ADADAD;}a .curl{font-family:Verdana;font-size:13px;color:#3A92CD;}</style><table><tr><td width="20px" height="20px"><img src="https://forumstatic.ru/files/000d/c9/8c/34681.jpg"></td><td><a href="https://forum.epicnet.ru/viewtopic.php?id=234"><span class="heading"> <span class="hstar">★</span> <span class="hnet">EpicNet.Ru</span> <span class="hstar">★</span> </span><span class="htext"> - IRC Чат © 2008</span></a></td></tr><tr><td></td><td><div class="stitle"><span class="dot">•</span> <span class="desc">Вход через вебгейт:</span> <a href="http://irc.epicnet.ru"><span class="curl">http://irc.epicnet.ru</span></a><br><span class="dot">•</span> <span class="desc">Сервер:</span> irc.epicnet.ru <span class="desc">Порты:</span> 6667, 6668 (ssl)<br><div></td></tr></table>[/html]