Содержание:
Часть_1- Вступление - Что есть PunkBuster - Краткое руководство пользователя - Основы * игровая интеграция * подкаталог PB и файловая информация * интерфейс PunkBuster’а - Включение и отключение PunkBuster’а - Обновление PunkBuster’а - WebTool - Команды и настройки * команды * настройки - Возможность управления именем игрока
Часть_2- Возможности PB RCon - Мониторинг игровых переменных - Расширенный Cvar мониторинг - Возможность снятие скриншотов - PunkBuster Player Power
Возможности PB RCon
PB RCon позволяет администрации получить похожие данные по игроку, что и обычный rcon игры. Данная возможность основана на GUIDах, которые создаются индивидуально для каждого игрока, так что это функция вообще не использует паролей. PB RCon будет работать со всем, что вы введете в консоль, будь то команды, параметры и т.д., даже специальные команды для всевозможных модов игры. Возможность PB RCon основана на системе PunkBuster Player Power, при которой администраторы могут выдавать права постоянным игрокам и назначать заместителей. Администраторы обязаны выдать несколько прав перед использованием PB RCon.
Сервер PB хранит список команд для использования их с помощью PB RCon; по умолчанию, этот список пуст; воспользуйтесь командой PB_SV_RList для просмотра текущего списка.
Прежде всего, необходимо установить уровни доступа для вашего сервера. Решите, какие команды вы хотите сделать доступными и распределите их по правам.
Например:
* 100 очков доступа необходимо для бана игроков * 50 очков доступа необходимо, чтобы изменить карту * 25 p очков доступа необходимо для изменения настроек sv_minping и sv_maxping.
Теперь вы должны использовать команду pb_sv_rcon, чтобы настроить список: PB_SV_RCon [минимальное количество очков доступа] [командный префикс]. PB будет автоматически обновлять файл pbrcon.dat, когда будет затребована команда pb_sv_rcon. Этот файл загружается каждый раз, когда PB сервер включается или перезапускается. Таким образом, для нашего примера, вы должны ввести следующие четыре строки:
* PB_SV_RCon 100 pb_sv_ban * PB_SV_RCon 50 map * PB_SV_RCon 25 sv_minp * PB_SV_RCon 25 sv_maxp
Обратите внимание, что вы вводите префиксы – если игрок вводит команду, которая «начинается с» точной записи в списке, то она будет считаться действительной, так как у игрока достаточно очков доступа для ввода этой команды. Например, если ввести PB_SV_RCon 75 PB_SV_ это будет означать, что любой игрок с 75 и более очками доступа может прописать любую команду сервера PB (этого делать крайне не рекомендуется, если вы не единственный игрок с 75+ очками на сервере и делаете это для себя).
Сервер PB объявит для всех игроков, что была выполнена команда и скажет, что это сделал. Если игрок пытается использовать PB_RCON и не имеет достаточного количества очков доступа или пытается ввести команду, находящуюся не в списке – сервер PB отметит это в логе, но в остальном проигнорирует его. Игроку же не придет никакой ответной реакции от сервера – успешна ли прошла его команда или нет. Нет никаких «секретов» с этой командой. Игроки не смогут сделать что-либо анонимно. Любое действие отображается в консоли сервера и логе файла, но никаких надписей в консоли игрока не будет.
PB RCon будет работать со всем, что вы введете в консоль, будь то команды, параметры и т.д., даже специальные команды для всевозможных модов игры.
Поэтому, когда вы выдаете игроку определенное количество очков доступа, чтобы он мог использовать те или иные PB rcon команды, вы должны сообщить (обучить) ему обо всех командах, которые доступны для него. Никак не возможно «узнать», какие команды можно использовать с определенным количеством очков, кроме информации от администратора, т.е. нет никакой команды, чтобы при вводе ее показался список доступных команд. Игроки просто должны знать, какие команды они могут ввести на сервере с помощью pb_rcon.
При повторном вводе команды через pb_sv_rcon, PB обновит существующие записи, чтобы вы смогли обновить необходимые очки доступа. Если вы хотите «удалить» команду, просто установить необходимые очки доступа на более высокое значение, чтобы ни у кого на сервере не было такого количества (или отредактируйте pbrcon.dat с помощью текстового редактора, удалив команду(ы) которые вы хотите запретить и затем пропишите pb_sv_restart).
Еще одной возможностью является создание коротких скриптов (сценариев) для вашего сервера. Экспериментируйте и делайте разны вещи. Вы можете назвать скрипт как угодно, и просто сделать список PB rcon команд, чтобы вызывать его. Так игроки не узнают реальной команды - они просто пропишут команду 'pb_rcon exec название_скрипта' и будут думать, что сделали то, что вы им сказали. А на самом деле за этой командой может скрываться совсем другое значение…
Если вы хотите узнать, как использовать PB_RCon в качестве клиента – вы можете найти это в публикации «PunkBuster для игрков».
Мониторинг игровых переменных
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
Возможность снятие скриншотов
PunkBuster позволяет администраторам сервера запрашивать и получать реальные изображения экрана, которое отображается на мониторе игрока в данный момент. Это очень просто запросить скришнот одного или нескольких игроков, а также настроить автоматический захват изображения. Некоторые дополнительные функции доступны для администраторов, которые хотят настроить свои системы. Настройки по умолчанию подходят для большинства администраторов. Итак, как же работает снятие скриншотов.
Есть два варианта захвата изображения: вручную и автоматически. Некоторые администраторы используют оба варианта. Чтобы вручную запросить скриншоты со всех подключенных игроков, просто наберите через игровую консоль "PB_SV_GETSS" и через несколько секунд вы будете получать сообщение о местоположение скриншотов и их названий на вашем жестком диске. Имена файлов изображение выдаются последовательным увеличением серийного номера; все скриншоты имеют PNG расширение. Графические файлы PNG (используются в большинстве компьютерных играх) аналогичны GIF и JPG файлам – они сочетают в себе лучшее из этих двух миров. Наряду с каждым скриншот изображением (PNG файлом), PunkBuster также записывает «вспомогательный» HTM файл с тем же названием, что позволяет использовать любой веб-браузер, такой как Netscape или IE для более легкого и удобного просмотра изображения. Кроме того, все запросы на снятие скриншотов, регистрируются в одном специальном HTM файле - pbsvss.htm; так что с этим списком можно легко ознакомиться, просто прокрутив пару страниц.
Если вы хотите получить скриншоты определенного игрока или группы лиц, вы можете указать слот игрока или написать его ник-нейм (часть), и PB снимет все скриншоты игроков, имена которых совпадают с заданным в поиске значением. Чтобы узнать номер игрового слота – воспользуйтесь командой PB_SV_PLIST. Первая колонка в полученном сообщении содержит слот игрока. Чтобы сделать скриншоты всех игроков, с текстом "ABC" в ник-нейме, пропишите команду PB_SV_GETSS "ABC" (обратите внимание, что при указании ник-нейма необходимо его заключить в двойные кавычки).
Для установки автоматического снятия изображений, установите PB_SV_AUTOSS 1 (по умолчанию 0). Затем вы сможете изменить настройки PB_SV_AUTOSSFROM и PB_SV_AUTOSSTO – частота запроса PunkBuster’ом скриншотов у каждого игрока. Оба этих параметра измеряются в секундах, и пол умолчанию их значения 60 и 1200 соответственно, что означает, что PunkBuster будет делать новый скриншот в период от 1 до 20 минут с момента последнего захвата для каждого подключенного игрока.
Обратите внимание, что независимо от ручного или автоматического снятия скриншотов во время игры, PunkBuster система ограничивает эти скриншоты в двух направлениях. Во-первых, каждый снимок ограничен 82,000 пикселями, для более удобного хранения и передачи. Если вы установите параметры (см. ниже), при которых запрашиваемые изображения будут больше, чем 82,000 пикселей, PunkBuster их автоматически уменьшит. Также PunkBuster не позволяет запрашивать у одного игрока более 3 скриншотов в период времени, равному 10 минутам; и не позволяет делать запросы, быстрее, чем в 30 секунд. Команда PB_SV_PLIST имеет столбец "RecentSS", который показывает количество запросов для каждого игрока в течение последних 10 минут.
Кроме того, администраторы должны иметь в виду, что PunkBuster не будет снимать скриншоты у игрока, который свернул свою игру или который открыл поверх нее другое приложение. В этих случаях на снимках будет черный экран, с надписью внизу, что не получилось сделать изображение. Кроме того, существует несколько видео установок, при которых не могут быть сделаны нормальные скриншоты. При этих настройках также невозможно сделать внутриигровой скриншот (F12).
Следующие настройки могут быть использованы для снятия скриншотов:
Команды PB_SV_SSWIDTH и PB_SV_SSHEIGHT используются, чтобы задать размер изображения в пикселях. По умолчанию это 320x240. Если запрашивается изображение большее, реального разрешения игрока, то PB автоматически уменьшит количество пикселей и подгонит его под разрешение игрока. Например, если запрашивается изображение 800х600, а у игрока стоит 640х480, то получившийся скриншот будет размеров 640х480.
Команды PB_SV_XPCT и PB_SV_YPCT используются, чтобы указать какая часть экрана должна быть в центре. По умолчанию это 50 и 50, что позволяет делать снимки центра экрана. Использование меньших значений приведет передвижению центра захвата влево (в случае XPCT) и вверх (в случае YPCT), и наоборот. Если XPCT и/или YPCT имеют значение -1, тогда будет использован случайное число в промежутке между 0 и 100 для каждого отдельного захвата изображения. В этом случае будет эффект захвата различных (случайных) частей экрана игры.
PB_SV_SSSRATE устанавливает интенсивность захвата. Интенсивность захвата используется, чтобы делать меньшее количество пикселей с большей площади. По сути, мы компактно увеличиваем картинку путем пропуска некоторых пикселей. Доступно три значения интенсивности: 1, 2 и 4. Использование PB_SV_SSSRATE 2 приведет к уменьшению изображения файла в четверть от нормального (PB_SV_SSSRATE 1), а при PB_SV_SSSRATE 4 в шестнадцатую часть. Уменьшение размера файла приводит к потери четкости изображения. Лучше всего использовать PB_SV_SSSRATE 1, если конечно вы не хотите захватить большую часть экрана и при этом вам не особо важно качество получившегося скриншота. Даже с пределом в 82,000 пикселей, можно снимать изображения с разрешением 1280x1024 (PB_SV_SSSRATE 4).
Команда PB_SV_SSDELAY указывает PB клиенту ждать случайное число секунд (до 60) между получением запроса и реальным снятием скриншота.
PB_SV_SSPATH может быть настроен для альтернативного место сохранения скриншотов. При желании, это может быть сетевой ресурс. По умолчанию, команда "" (пустая), это означает, что захваченные скриншоты и файлы поддержки будут находиться в каталоге pb/svss.
Команды PB_SV_SSFLOOR, PB_SV_SSCEILING и PB_SV_SSNEXT связаны с путем захвата изображения и названием файлов на сервере PB. Настройка PB_SV_SSNEXT содержит серийный номер, который PB будет использовать для следующего файла – например, при PB_SV_SSNEXT 250 следующей скриншот будет называться pb000250.png (и «вспомогательный» файл также будет называться pb000250.htm). Настройка PB_SV_SSNEXT поддерживается автоматически PB системой, но по необходимости ее можно настроить вручную. Использование команды PB_SV_SSPATH упоминалось выше; администраторам, которые держат мульти-сервера, может понадобиться отправка скриншотов на центральную «базу». Команды FLOOR и CEILING позволяют администратору задать каждому PB серверу индивидуальный спектр имен, во избежание дупликации в центральном архиве.
PB_SV_SSCMD содержит имя локального скрипт-файла, который PB будет автоматически выполнять после каждого успешно снятого скриншота. По умолчанию, значение этой настройки "" (пустое), которой обозначает, что PB не будет выполнять локальный скрипт после захвата изображения. PunkBuster пробивает полное название файла изображения в качестве параметра данного сценария. Конечно, это предназначено для более опытных администраторов, которые желают автоматизировать обработку, архивирование и/или публикацию скриншотов (таких, как веб-сервер).
PunkBuster Player Power
Эта система не связана с votekick (исключение с сервера путем открытого голосования) системой, которая встроена в саму игру. Обе системы работают независимо друг от друга и могут быть использованы вместе или порознь, в зависимости от желания администратора.
PB Player Power позволяет администраторам использовать своих проверенных игроков, с авторитетом, исключать недоброжелательных пользователей с сервера. Зачастую это люди, которые убивают товарищей по команде, блокируют проходы или каким-либо иным способом нарушают спокойствие игроков сервера. Эта новая система направлена на решение подобных проблем, чтобы на хороших серверах не страдала игра, при появлении таких назойливых игроков.
В принципе, каждый игрок на PB сервере имеет свой рейтинг. Каждый администратор может добавить определенных игроков в локальную базу данных, чтобы их рейтинг не менялся между сессиями. Кроме того, команда pb_sv_powerdef - «поймать всех», по умолчанию содержит рейтинг для игроков, которые не находятся в базе данных. Во время игры, пользователи с высоким рейтингом могут воспользоваться своей силой, чтобы выгнать игрока с сервера. Каждая такая заявка сообщается всем на сервере, так что все в состоянии будут видеть, когда игрок применяет данную возможность. Когда соберется достаточное количество очков против одного из игроков, он будет исключен с сервера, и вынужден ждать некоторые время до повторного подключения к серверу.
Чтобы добавить игрока в PB Player Power базу данных, используйте команду pb_sv_power; эта команда требует две переменные: слот # игрока для добавления и количество очков рейтинга. Используйте команду pb_sv_plist, чтобы узнать слот # всех игроков. База данных PB Player Power храниться файле pbpower.dat. Каждая запись основана на GUIDе игрока.
Рейтинг игроков может варьироваться от 0 до 100 очков. Присвоение нулевого рейтинга игроку означает, что этот человек не имеет никакого влияние не голосование и все запросы этого игрока об исключении того или иного нарушителя будут проигнорированы. Значение 0 выдается, как правило, тем игрокам, которые проявили себя, как ненадежные с точки зрения голосования. Присвоение сотого рейтинга игроку дает ему должность «заместителя». Когда на сервере находит как минимум один заместитель, то только они могут принимать участие в голосовании. Другие игроки в это время могут только апеллировать решения заместителей. Кроме того, заместители не могут быть исключены с сервера подобным голосованием.
Команда pb_sv_powerdef используется для установки количества очков рейтинга игрокам, находящимся не в базе данных PB Player Power. Используйте pb_sv_powermin, чтобы задать число, которое необходимо достигнуть для исключения игрока. Командой pb_sv_powerkicklen задается количество минут, которое игрок должен ждать, прежде чем сможет вернуться на сервер. Чтобы отключить ожидание - pb_sv_powerkicklen 0.
http://www.callofduty.ru/
|