Простой плагин voteban'а с принципиально иной системой голосования. Каждому игроку для голосования за бан необходимо самомунаписать в чат /voteban (как в случае rtv) и выбрать 'жертву' через меню. Голосование сразу всем не появляется! Когда на какого-то игрока набирается нужно число голосов - он банится. У 'админов' иммунитет: за них нельзя проголосовать.
Достоинства: - голосование не выскакивает сразу всем. Это убережет честных игроков от ложного бана, потому что люди обычно нажимают кнопку, не думая. - исключена возможность блокировки читером функции voteban путем инициирования голосования (в случае, если ваш старый плагин настроен таким образом, что голосование инициируется один раз в определенный промежуток времени, читер при заходе на сервер просто запускает его и играет безнаказанно). - игрок не ограничен в частоте голосований, но у него ограниченное число голосов. Игрок может отменить один из своих предыдущих голосов и использовать его против другого игрока (это не позволит игроку, например, проголосовать за всех на сервере).
Видимые изменения для игроков:
в меню плагин вместо процентов показывает набранное и требуемое число голосов. Если голосов нет, эти числа не выводятся вообще.
команда /voteban в чате не появляется и все голосования остаются невидимыми для жертвы. Себя в меню игроки не видят. Админы без иммунитета, разумеется, видят голосования за себя.
причина бана перенесена в lang-файл, ключ VOTEBAN_REASON. Шаблон %%time%% в строке - НЕ ошибка! Сторонним бан-системам плагин в качестве причины передаёт только 'voteban', VOTEBAN_REASON не используется.
Видимые изменения для админов:
Новая возможность - они могут отключить голосования за определённого игрока. Используется то же самое меню, только админ не голосует, а ставит/снимает защиту игрокам. Соответственно, остальные будут видеть игрока с защитой в списке серым и недоступным для выбора. Вот, админ онлайн, не слепой и не спит - прочекал игрока, поставил иммунитет и играет спокойно дальше.
Разница в меню для игрока и админа для всех возможных вариантов показана на рисунке:
Новые настройки в sma:
набор флагов ADMIN_FLAG (по умолчанию флаг 'd') определяет, кого плагин будет считать админами. ADMIN_FLAG по умолчанию добавлен в набор IMMUNITY_FLAG, т.е. админы также имеют иммунитет, но его оттуда можно убрать, если нежелательно палиться наличием прав (всегда можно поставить себе защиту при необходимости).
константа VOTES_MIN = 3 задаёт минимальное число голосов, которое требуется для бана. Это ограничение необходимо в случае нескольких человек на сервере
Изменения 'под капотом' в функциональности (невидимые):
обновление пункта меню вместо повторного формирования меню целиком
после дисконнекта игрока плагин проверяет голоса у оставшихся игроков, не набирается ли на бан
новый формат лога в виде таблицы легко читаем и позволяет легко подобрать оптимальные настройки (требуется импорт в Excel). Старый лог нужно убрать из папки!
Настройки server.cfg:
voteban_percent "60" // процент голосов, необходимый для бана
voteban_type "4" // настройка типа бана:
//0 - автоматический режим: игроки со SteamID STEAM_ID_LAN и VALVE_ID_LAN будут забанены поIPa остальные - по SteamID. Рекомендуется использовать этот режим, если сервер не имеет сторонней бан-системы.
//1 - по SteamID (эквивалент AMXX-команды amx_ban)
//2 - поIPэквивалент AMXX-команды amx_banip
//3 - через amx_ban %userid% %time% %reason% (AMXX Ban (в AMXX по умолчанию), Advanced Bans)
//4 - через amx_ban %time% %userid% %reason% (AMXBans, Fresh Bans)
//5 - через amx_superban %userid% %time%
voteban_time "60" // время бана в минутах.
voteban_reason " 3a6aHeH /voteban'om Ha %time% MuH.! Pa36aH TyT: BaIII cauT" // причина бана, выводимая забаненному игроку. Если в строке указать шаблон %time% - вместо него будет подставляться время бана; для типов бана 3, 4 и 5 причина не используется.
voteban_limit "3" // ограничивает возможное число голосов от каждого игрока
voteban_log "1" // вкл./выкл. собственного лога плагина
voteban_immune_actions "3" // указывает, как сообщать о событиях управления защитой: 0 - не сообщать, 1 - информировать в чате, 2 - записывать в лог (если ведение лога включено, конечно), 3 - в оба места.
Дата создания: 06.12.13      Просмотров: 13603