Текущая версия: 0.1 от 29.07.2016
Описание:
Многие сейчас уже в курсе проблемы с недобросовестными игроками на серверах Counter-Strike, которые меняют SteamID "на лету" и этим самым обходят блокировку по этому ключу. Блокировать их снова и снова этим способом не имеет смысла, но решение есть - блокировать таким игрокам подсеть на некоторое время. Данный плагин призван упростить эту задачу, сделать её доступной для игровых администраторов (ибо для многих из них слова "блокировать подсеть" - это "тёмный лес").
Команды:
Описание:
Многие сейчас уже в курсе проблемы с недобросовестными игроками на серверах Counter-Strike, которые меняют SteamID "на лету" и этим самым обходят блокировку по этому ключу. Блокировать их снова и снова этим способом не имеет смысла, но решение есть - блокировать таким игрокам подсеть на некоторое время. Данный плагин призван упростить эту задачу, сделать её доступной для игровых администраторов (ибо для многих из них слова "блокировать подсеть" - это "тёмный лес").
Команды:
- subnetbanmenu - отобразить меню игроков для дальнейших действий
- Код: Выделить всё
#define USE_LOGGING // Закомментируйте эту строку, если не желаете использовать ведение журнала
#define USE_CHAT_ALERT // Закомментируйте эту строку, если не желаете использовать оповещение в чате
const MAX_PLAYERS = 32; // Максимальное количество игроков на сервере
const BAN_TIME = 60; // Количество минут, на которое будет заблокирована подсеть выбранного игрока
if(get_user_flags(id) & ADMIN_BAN/* access level */) { // Уровень доступа к команде subnetbanmenu
Q: где хранятся записи заблокированных подсетей?
A: если подсеть была заблокирвана на время, то в оперативной памяти (такая запись будет храниться до истечения времени блокировки, либо до отключения сервера), если же подсеть была заблокирована навсегда, то в файле listip.cfg.
Q: как разблокировать подсеть?
A: выполнением команды removeip <address> в консоли сервера/через rcon, например: removeip 127.0.0.0
Q: может ли подсеть игрока быть динамической?
A: да, может.
Q: как быть в таких случаях?
A: как правило, если подсеть игрока динамическая, то диапазон ограничен, так что, если после блокировки подсети игрок, вдруг, снова зайдёт на сервер, достаточно заблокировать его повторно (может быть, пару раз).
Q: могут ли подсети игроков, находящихся на сервере, совпасть?
A: да, могут.
Q: что произойдёт в случае блокировки подсети одного из них?
A: будут заблокированы оба игрока (иммунитет не спасёт).
Q: как заранее узнать, нет ли на сервере игроков с одинаковой подсетью?
A: выполнением команды status в консоли сервера/через rcon (планируется обновление, которое будет предупреждать администратора о совпадениях подсетей игроков, находящихся на сервере).
A: если подсеть была заблокирвана на время, то в оперативной памяти (такая запись будет храниться до истечения времени блокировки, либо до отключения сервера), если же подсеть была заблокирована навсегда, то в файле listip.cfg.
Q: как разблокировать подсеть?
A: выполнением команды removeip <address> в консоли сервера/через rcon, например: removeip 127.0.0.0
Q: может ли подсеть игрока быть динамической?
A: да, может.
Q: как быть в таких случаях?
A: как правило, если подсеть игрока динамическая, то диапазон ограничен, так что, если после блокировки подсети игрок, вдруг, снова зайдёт на сервер, достаточно заблокировать его повторно (может быть, пару раз).
Q: могут ли подсети игроков, находящихся на сервере, совпасть?
A: да, могут.
Q: что произойдёт в случае блокировки подсети одного из них?
A: будут заблокированы оба игрока (иммунитет не спасёт).
Q: как заранее узнать, нет ли на сервере игроков с одинаковой подсетью?
A: выполнением команды status в консоли сервера/через rcon (планируется обновление, которое будет предупреждать администратора о совпадениях подсетей игроков, находящихся на сервере).
Версия 0.1 от 29.07.2016:
- Рефакторинг исходного кода
- Добавление проверки выбранного игрока по userid
- Отказ от работы с кваром amx_show_activity
- Первый релиз