  И так server.cfg - это основа основ, и её настройка имеет очень важное значения для всего сервера и в первую очереть его работоспособности. Уменьшение лагов, задержек и удобная комфортная игра - это залог посещаемости вашего сервера! И так, что-же нужно для того, что-бы правильно и детально настроить server.cfg и весь гемплей в целом:
1. Ведём запись логов логов Что такое логи - спросят "юзеры", это основа основ, так-как если вашь сервер упадёт(самопроизвольно выключится), по неизвестной причине, то эту самую причину можно-будет найти в папке ваш сервер /cs/cstrike/addons/amxmodx/logs/ в файле с характерным именем error_20101130.log Для этого добавим в server.cfg следующие команды:
log on // вести лог сервера sv_logbans 1 // записывать в лог баны sv_logecho 1 // показывать информацию из логов сервера в консоль(сервера) sv_logfile 1 // записывать логи сервера в файл mp_logdetail 3 // записывать в лог повреждения от: 0 - выключено; 1 - противников; 2 - своих; 3 - и от противников и от своих.
После этого сервер начнет писать все происходящие действия на сервере в папку \cstrike\logs.
2. Команды и переменные для управления ботами
Блок команд ниже позволит вам контролировать поведение ботов не сервере:
bot_allow_grenades 0 // разрешить ботам использовать гранаты bot_allow_machine_guns 0 // разрешить ботам использовать пулемёты bot_allow_pistols 0 // разрешить ботам использовать пистолеты bot_allow_rifles 0 // разрешить ботам использовать винтовки bot_allow_shotguns 0 // разрешить ботам использовать дробовики bot_allow_snipers 0 // разрешить ботам использовать снайперские винтовки bot_allow_sub_machine_guns 0 // разрешить ботам использовать мини-пулемёты
3. Управление игроками
Далее идут команды управления поведением игрока на карте
mp_allowNPCs 1 // разрешить NPC на сервере mp_allowspectators 1 // разрешить игрокам после смерти наблюдать за другими игроками mp_autocrosshair 0 // разрешить автоприцеливание mp_autokick 0 // разрешить автокик за убийство игроков своей команды? mp_autoteambalance 1 // разрешить автоматическую балансировку команд mp_buytime 0.5 // время покупки в минутах mp_c4timer 35 // время таймера бомбы mp_chattime 10 // время, в течении которого игроки смогут разговаривать между собой после окончания текущей карты mp_decals 200 // Колличество разрешённых декалей (спреи, пятна крови, пулевые отверстия) mp_fadetoblack 0 // после смерти экран становится чёрным, не давая игроку смотреть за другими игроками в режиме спектатора mp_falldamage 1 // урон от падения mp_flashlight 1 // разрешить фонарик
mp_forcecamera 1 // разрешить переключения камер в режиме спектатора
mp_forcecamera 0 - после смерти можно наблюдать за противником; 1 - мертвые могут наблюдать только за своей командой; 2 - в режиме спектатора(после смерти), видишь тока ат лица своих тиммэйтов;
mp_forcechasecam 0 - после смерти игрок может наблюдать за всеми; 1 - после смерти игрок может наблюдать только за членами свой команды; 2 - после смерти игроку запрещено наблюдать за кем-либо, игрок может наблюдать за игрой только с места своей смерти;
mp_forcerespawn 1 // команда для Half-Life 2: Deathmatch. Игрок появляется сразу после смерти mp_fraglimit 0 // максимальное колличество фрагов, при достижении которого определённым игроком карта сменится на следующую mp_freezetime 5 // начальный отсчёт времени в начале каждого раунда(для покупки), в секундах mp_footsteps 1 // звуки шагов mp_friendlyfire 1 // возможность атаковать своих mp_hostagepenalty 0 // кикает террориста при убийстве заданного лимита заложников mp_limitteams 1 // максимальное количество игроков команды 1 которое может превышать количество игроков в команде 2 mp_maxrounds 0 // максимальное количество раундов на одной карте mp_playerid 1 // контролирует информацию которую игрок видет на панели статуса: 0 все имена; 1 только имена игроков своей команды; 2 без имён mp_spawnprotectiontime 10 // кикает игроков которые убивают членов своей команды в течении # секунд после перезапуска раунда mp_roundtime 3 // длина раунда в минутах mp_startmoney 800 // колличество начальных денег у игроков mp_teamplay 0 // команда для Half-Life 2: Deathmatch. Игра по командам(Альянс и повстанцы) mp_timelimit 30 // ограничение по времени на карту, в минутах mp_tkpunish 0 // в следующем раунде убить того, кто убил игрока своей команды mp_weaponstay 0 // команда для Half-Life 2: Deathmatch. После подбирания оружия оно остаётся на месте.(относится только к оружию заранее расположенному на карте разработчиками) mp_winlimit 0 // максимальное количество побед, после которой произойдёт смена карты
4. Управление сервером
Ниже идёт описание команд ,контролирующих гемплей сервера (основные настройки сервера):
sv_airaccelerate 10 // определяет ускорение игрока, когда он находится в воздухе(например падает) sv_allowdownload 1 // разрешить загрузку с сервера(например карт) sv_allowupload 1 // разрешить загрузку на сервер(например спреев) sv_alltalk 0 // разрешить всем слышать переговоры друг друга по микрофону, вне зависимости от команды sv_cheats 0 // разрешить игровые читы на сервере (пример: noclip) sv_consistency 1 // предписывает ли сервер последовательность файла для критических файлов sv_contact your@email.ru // e-mail администратора сервера sv_enableoldqueries 1 // разрешить поддержку старого стиля (Half-life 1) серверных запросов sv_footsteps 1 // использовать звук шагов при передвижении игрока sv_friction 4 // коэффициент трения в игре sv_gravity 800 // гравитация в игре sv_maxrate 20000 // максимальное колличество байт в секунду, которое может быть передано сервером(0 == без ограничения) sv_maxspeed 320 // максимальная скорость игрока sv_maxunlag 0.5 // максимальная лагокомпенсация, в секунду sv_maxupdaterate 40 // максимальное колличество обновлений(колличество пакетов) которое разрешено на сервере sv_minrate 0 // минимальное колличество байт в секунду, которое может быть передано сервером (0 == без ограничения) sv_minupdaterate 10 // минимальное колличество обновлений(колличество пакетов) которое разрешено на сервере sv_pausable 0 // разрешить ставить паузу во время игры sv_rcon_banpenalty 15 // колличество минут на которое банится игрок пытавшийся подобрать rcon-пароль к серверу sv_rcon_maxfailures 5 // максимальное колличество попыток при наборе rcon-пароля, после истечения которых игрок будет забанен sv_rcon_minfailures 5 // колличество попыток при наборе rcon-пароля во время заданное sv_rcon_minfailuretime, после истечения которых игрок будет забанен sv_rcon_minfailuretime 30 // колличество секунд для определения неверной rcon-аутенфикации sv_specaccelerate 5 // ускорение при передвижения в режиме spectator sv_specnoclip 1 // игрок в режиме spectator может пролетать через стены и объекты sv_specspeed 3 // скорость передвижения в режиме spectator sv_stats 1 // собирать статистику использования процессора sv_stepsize 18 // длинна шага в юнитах sv_stopspeed 75 // минимальная скорость остановки на поверхности sv_timeout 30 // если сервер не получает отклика от клиента в течении # секунд, клиент отключается от сервера sv_unlag 1 // лагокомпенсация sv_voiceenable 1 // разрешить использование микрофона
5. Другие команды
Далее идут прочие команды, не вошедшие в группы:
breakable_multiplayer 1 decalfrequency 10 host_framerate 0 rcon_password "password" // задать rcon-пароль для удалённого управления сервером exec banned_ip.cfg // добавляем в данный файл banned_ip.cfg список забаненных по Steam ID exec banned_user.cfg // добавляем в данный файл banned_user.cfg список забаненных по имени игрока writeid // записываем SteamID игроков writeip // записываем IP игроков hostname "Dedicated Server" // задаём имя сервера
Убедитесь, что команда rcon_password не пуста или не является слишком простым паролем, так как подобрав ее, злоумышленник получает полный доступ к серверным командам.
mp_ - Команды настройки параметров боя. Игровые переменные. Все что касаетса обстановки на карте. (Время раунда, слышимость шагов, время краты, режимы просмотра в спектаторе и .т.п.)
sv_ - Команды настройки параметров сервера. Касаетса условий и правил подключения к серверу (Ширина канала, частота обновлений сервера, частота обмена пакетами и т.п. Эти настройки зачастую определяют пинг сервера и качество вычислений событий на сервере)
cl_, а также hud_- Клиенские команды. Эти команды зачастую меняют визуальное отображе игры. Но все изменения касаютса лиш клиенской части. (Изсенения динамичности прицела, выбор способа отображения меню и т.п.) Эти команды также могут помоч установить более качественное соеденение с сервером путем подбора оптимальных значей, с учетом значей сервера и влияния канала на них. (Например cl_updaterate 20)
Кстате насчет cl_updaterate! По умолчанию его значение "cl_updaterate 20" Бытует мнение, что его нужно ставить cl_updaterate 101. Ну а кто себе задавал вопрос почему 101? Я и сам не знаю точного ответа, мне кажетса просто ктото когдато написал такое и все повериили. Давайте разберемся что это такое.
cl_updaterate - определяет частоту обмена данными с сервером. Да действительно занчение "20" - это мало, зачастую сервер способен обеспечить намного больше значение этого параметра. Потому повышая его вы тем самым улутшаете свой "Реалтайм" на сервере и как следствие качество игры. А теперь интересные моменты. Вопервых сам сервер тоже имеет ограничения этого значения. В конфиге любого сервра можно найти sv_maxapdaterate.
(Важно истина о передаче пакетов клиент - сервер и логичность настроек) Начинаем валить миф о cl_updaterate "101". Итак Ваш cl_updaterate никогда не сможет привысить sv_maxapdaterate. Что же случаетса при привышении значения? Пример... Допустим у сервера значение sv_maxapdaterate "50" а у Вас cl_updaterate "100". Результат: Вы получите cl_updaterate "50", а остальные 50 процентов пакетов будут проигнорены самим сервером и ничего кроме повышения трафика в пустую вы не получите. Еще интереные моменты. При самых идеальных условиях sv_maxapdaterate не сможет быть больше значения "100" Так как значение это зависит от другого параметра sv_maxrate. sv_maxrate никогда не привысит значения "30 000" Таково ограничение движка hlds. Итак получаем что sv_maxapdaterate не бывает больше "100", тогда зачем отправлять лишний пакет серверу cl_updaterate "101" ?? В реальных условиях неидельность канала не позволит быть sv_maxrate 30 000, а это означает что sv_maxapdaterate никогда не достигает значения "100", а значит что cl_updaterate "101" вместе с повышение частоты обмена, необоснованно повысит трафик (Для модемных соеденений весьма чуствительно)
Совет: Узнайте параметр конфига сервра sv_maxapdaterate, отнимите еще 5 и запишите свой cl_updaterate как = sv_maxapdaterate - 5 Так вы не будете зря проедать трафик и получете тоже качество игры что и при cl_updaterate 101
|