k3Ms | Дата: Суббота, 24.09.2011, 20:39 | Сообщение # 1 |

| Мониторинг игровых переменных
PunkBuster предоставляет возможность администраторам сервера определять список допустимых значений cvar переменных игрока на игровом сервере. Когда каждый игрок подключается к серверу с включенным PB, PB клиент будет скачивать список допустимых значений cvar переменных с PB сервера и сравнивать допустимые значения. Игрок получит предупреждение за любые переменные, неприемлемые для данного игрового сервера. Затем игроку дается несколько секунд, чтобы сделать нужные изменения прежде, чем PB сервер начнет методично и регулярно проверять все cvar переменные игрока. Если у игрока хотя бы одна переменная установлена не в допустимом диапазоне – он сразу будет исключен с сервера.
Чтобы добавить проверку cvar на ваш PB сервер – используйте команду PB_SV_CVAR. Существует четыре различных типов проверки cvar переменных: IN, OUT, INCLUDE и EXCLUDE. Каждый объяснен ниже, с примером, и форматом использования команды PB_SV_CVAR для правильного добавления этого типа проверки в список PB сервера. Как и любая другая PB команда или настройка, проверка cvar может быть сохранена в файлах конфигурации и загружаться автоматически при старте или запускаться по требованию администратора во время игры. В случае проверки cvar, мы рекомендуем добавлять новые записи таким образом, чтобы они вступили в силу при следующем запуске сервреа, а не во время игры.
Учтите, что при добавлении cvar проверки, эта команда не может быть удалении или изменена без перезагрузки сервера PB. Также обратите внимание, что добавление несуществующих cvar переменных приведет это команду к нулевому значению.
PB_SV_CVAR [cvar_настройка] IN [значение] [дополнительное_значение] Если вы хотите, чтобы cvar настройки игроков были в строго заданном интервале или были именно определенными – используйте тип проверки «IN». Например, «PB_SV_CVAR handicap IN 10″ означает, что настройка handicap у игроков на сервере всегда должна быть равна 10. «PB_SV_CVAR handicap IN 5 15″ означает, что handicap должен быть в диапазоне от 5 до 15 включительно.
PB_SV_CVAR [cvar_настройка] OUT [значение] [дополнительное_значение] Если вы хотите, чтобы cvar настройки игроков никогда не были равны определенному значению или интервалу – используйте тип проверки «OUT». Например, «PB_SV_CVAR handicap OUT 0″ означает, что настройка handicap у игроков на сервере никогда не должна быть равно 0. «PB_SV_CVAR handicap OUT 11 99″ означает, что handicap не должен быть в диапазоне от 11 до 99 включительно.
PB_SV_CVAR [cvar_настройка] INCLUDE [текстовое_значение] Если вы хотите, чтобы cvar настройки игроков всегда содержали определенное [текстовое_значение] – используйте тип проверки «INCLUDE». Например, «PB_SV_CVAR r_drawbuffer INCLUDE gl_back» означает, что настройка r_drawbuffer у игроков на сервере всегда должна быть «gl_back».
PB_SV_CVAR [cvar_настройка] EXCLUDE [текстовое_значение] Если вы хотите, чтобы cvar настройки игроков никогда не содержали определенное [текстовое_начение] – используйте тип проверки «EXCLUDE». Например, «PB_SV_CVAR name EXCLUDE ^» означает, что в настройках cvar переменных игроков не должен быть символ «^» (примечание: символ «^» используется для цветного текста; таким образом, на сервере никто не сможет играть с цветным ник-неймом, так как он будет исключаться PunkBuster’ом).
Расширенный Cvar мониторинг
В дополнение к мониторингу игровых переменных, описанных в предыдущем разделе, PunkBuster также включает в себя несколько дополнительных возможностей для администраторов, которые они могут использовать по желанию. Существует пять команд: PB_SV_BINDSRCH, PB_SV_CVARSRCH, PB_SV_CVARVAL, PB_SV_CVARUSER и PB_SV_CVARCHANGED. Первые три имеют два параметра: [переменная] [игрок], а для других этот параметр только один: [игрок]. Если параметр [игрок] не указан для любой из этих команд – PB применить эту команду ко всем подключенным игрокам. Есть два способа указания конкретного игрока: слот # или же сам ник-нейм. Чтобы узнать слот игрока, воспользуйтесь командой PB_SV_PLIST. Нужные вам данные находятся в первой колонке. Если вы хотите ввести ник-нейм, убедитесь, что вокруг него стоят двойные кавычки. Например, PB_SV_CVARVAL handicap «wolf» означает, что PB должен найти значение переменной handicap у игрока «wolf».
Команда PB_SV_BINDSRCH просматривает среди всех биндов игрока заданные вами [переменные] и сообщает полные бинд и клавишу, на который он назначен. Это полезно для изучения биндов игрока, который пытается обойти cvar проверку путем быстрого изменение неприемлемого значения настройки и обратно. Например, можно использовать «PB_SV_BINDSRCH back», чтобы получить список всех биндов со значением «back» у всех игроков на сервере.
Команда PB_SV_CVARSRCH схожа с командой BINDSRCH, описанной выше. Однако, вместо того, чтобы искать бинды – это команда просматривает значения всех cvar переменных определенного игрока. Так как cvar может быть использован для выполнения различных команд, этот тип поиска становится удобным, когда игрок создал фальшивую команду для выполнения со скрытыми недопустимыми значениями. При вводе этой команды будет отображаться полный список cvar переменных, которые содержат исходный текст (значение каждой настройки может быть узнано вручную, с помощью PB_SV_CVARVAL или же автоматически – PB_SV_CVARWALK).
Команда PB_SV_CVARVAL используется для проверки значений cvar переменных любого игрока в любое время. Например, можно использовать «PB_SV_CVARVAL cg_drawallweaps», чтобы узнать значение перенной cg_drawallweaps у всех игроков. При вводе команды «PB_SV_CVARVAL cg_drawallweaps 1″, отобразится значение переменной у игрока под слотом #1.
Команда PB_SV_CVARUSER запрашивает список cvar команд, созданных игроками.
Команда PB_SV_CVARCHANGED запрашивает список cvar команд, значение которых установлено не по умолчанию.
Есть также несколько дополнительных параметров, которые могут использоваться для автоматической регистрации cvar информации с помощью вышеперечисленных команд:
Настройка PB_SV_CVARLOGGING определяет, где и как информация о cvar настройках игрока будет отображаться для дальнейшего просмотра. Сервер с большим количеством игроков генерирует многочисленную информацию за относительно короткий промежуток времени, если PB администратор решает воспользоваться некоторыми вышеперечисленными функциями. Если значение функции PB_SV_CVARLOGGING оставить по умолчанию равным 1, то вся информация, связанная с cvar будет отображаться в консоли сервера, а также записываться в текущий лог-файл PunkBuster’а. Чтобы перенаправить всю информацию в отдельный (var) файл – установите PB_SV_CVARLOGGING 2. В этом случае PunkBuster создаст два отдельных файла для каждой карты: один с .log расширением (нормальные логи), а другой с .var расширением (cvar логи). Оба файла будут иметь одинаковое название для каждой карты, основанное на номере предыдущего файла (например, 00000001.log и 00000001.var). При PB_SV_CVARLOGGING 3, эффект будет объединением значения 1 и 2. При 0, PunkBuster не будет вести никакой cvar информации.
Команды PB_SV_CVARUSER и PB_SV_CVARCHANGED, описанные выше, предназначены для поимки игроков, которые нашли обходные пути в проверки cvar настроек. Если администратор с подозрением относится к определенным игрокам, которые, по его мнению, делают вещи не возможные со стандартными настройками или cvar игроков являются необычной комбинацией, дающей преимущество перед остальными игроками. В некоторых случаях администраторы могут постоянно и автоматически регистрировать всю информацию по игрокам, чтобы затем вернуться и изучить их, а не заниматься этим во время игры. Чтобы задать PB_SV_CVARUSER и PB_SV_CVARCHANGED всем игрокам, воспользуйтесь командами PB_SV_CVARUSERPULSE и PB_SV_CVARCHANGEDPULSE. Например, установите значение PB_SV_CVARUSERPULSE 15, чтобы PunkBuster сервер автоматически отправлял команду PB_SV_CVARUSER каждому игроку каждый 15 минут (в случайном порядке). Обе PULSE команды по умолчанию выключены (99). Чтобы включить их, необходимо установить значение ниже 98.
Другая дополнительная настройка, которая предназначена для использования в сочетании с PULSE командами, упомянутыми выше – PB_SV_CVARWALK. По умолчанию этот параметр выключен (0). Установка отличного от нуля числа позволит PunkBuster’у автоматически «ходить» по всем cvar настройкам из списка и находить значения каждого игрока.
Ниже приведен пример настроек, которые позволят PunkBuster серверу регистрировать все cvar настройки сделанные игроками и записывать их в отдельный лог-файл, с расширением .var, каждые 15 минут (у каждого игрока) во время игры:
PB_SV_CvarLogging 2 PB_SV_CvarWalk 4 PB_SV_CvarUserPulse 15 PB_SV_CvarChangedPulse 15
| |
| |