Название: Anti Flood Change Nick
Версия: 1.0
Автор: Epic
Программа: mIRC
Скрипт: AntiFloodChangeNick.mrc
Описание: Скрипт активирует защиту от слишком быстрого и многократного изменения ника пользователями канала. При превышении установленного лимита изменений ника за короткий период времени на пользователя будет установлен "Kick+Ban". Каждый пользователь записывается во временную хеш-таблицу по хосту для дальнейшей проверки.
Настройка: Вы можете изменить возвращаемые значения в указанных названиях алиасов для индивидуальной настройки скрипта:
list_channels - возвращает через запятую список каналов, на которых будет работать проверка и установка "Kick+Ban". Для работы на всех каналах установите: [c]all[/c]
limit_changes - возвращает максимальный предел для возможного изменения ника, при превышении которого будет установлен "Kick+Ban". По умолчанию: [c]2[/c]
time_period - возвращает период времени в секундах, в течении которого будет подсчитываться количество изменений ника пользователя. По умолчанию: [c]600[/c]
time_ban - возвращает время в секундах, в течении которого будет действовать "Ban", после чего он будет сброшен. По умолчанию: [c]1800[/c]
msg_kick - возвращает текст, который будет отображаться в сообщении при выполнении "Kick". По умолчанию: [c]Flood of nick changes in a short period of time![/c]
Установка:
Откройте редактор скриптов вашего клиента с помощью комбинации клавиш "ALT+R" (на вкладке "Remote").
Выберите в верхнем меню пункт "File/New", чтобы открыть новый файл и разместите в нём этот код.
Выберите в верхнем меню пункт "File/Save As..." и сохраните код по пути "scripts\AntiFloodChangeNick\AntiFloodChangeNick.mrc".
Если ранее была установлена предыдущая версия кода, то замените его на этот новый код скрипта.
Скачать 💾
;##################################################################### ;# Name: Anti Flood Change Nick v1.0 ;# Author: Epic (https://forum.epicnet.ru, irc.epicnet.ru 6667 #Code) ;# Description: Protection against frequent and multiple nick changes in a short period of time. ;##################################################################### on !*:NICK:{ var %i 1 | while (%i <= $comchan($newnick,0)) { var %chan $comchan($newnick,%i), %host $ial($newnick).host if ($check_chan(%chan)) { if (!$hget(newnick,%host)) { hadd $+(-mu,$time_period) newnick %host 1 | break } elseif ($hget(newnick,%host) < $limit_changes) { hinc newnick %host 1 | break } else { if ($me isop %chan) { ban $+(-ku,$time_ban) %chan $newnick 2 $msg_kick } | var %cn_ban %host } } inc %i } if (%cn_ban) { hdel newnick %cn_ban } } alias -l check_chan { if ($list_channels == all) || ($istok($list_channels,$1,44)) { return $true } } alias -l list_channels { return #channel,#channel2,#channel3 } alias -l limit_changes { return 2 } alias -l time_period { return 600 } alias -l time_ban { return 1800 } alias -l msg_kick { return Flood of nick changes in a short period of time! }
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]