JusT^MoRe
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Рекомендации для online игр
KrEsToДата: Вторник, 04.03.2008, 15:36 | Сообщение # 1
JusT^MoRe | clan
Группа: Модераторы
Сообщений: 38
Репутация: 0
Статус: Offline
ate: я практически уверен что значение 20000 будет доступно большинству высокоскоростных Интернет соединений. А вот использование значений выше 20000 может наоборот привести к снижению производительности.
Рекомендую: rate 20000

sv_maxrate: значение в большинстве своем равно 0. Объясню почему это скорее всего не оптимально для online игры. sv_maxrate "0" будет определять значение rate для каждого клиента и пытаться заполнить его заполнить. Представьте что движок HL позволяет игрокам использовать значения rate выше 20000 (например 999999999999), и сервер будет пытаться заполнить все 999999999999. Это приведет к пустому увеличению нагрузки на канал сервера. Я советую безопасное и вместе с тем хорошее значение sv_maxrate "20000". В большинстве случаев sv_maxrate 0 и sv_maxrate 20000 будут эквивалентны, но береженного бог бережет.
Рекомендую: sv_maxrate 20000

cl_cmdrate: в идеале значение этой команды должно быть равно серверному (!- большинство людей считают что клиентским – в корне не верно) fps. Если вы посылаете серверу пакеты чаще чем он способен обработать - (скажем серверный fps=80, а значение cl_cmdrate 101) то некоторые пакеты будут просто "скинуты" сервером, необработанны ( 101-80=21 необработанный пакет). По сути эти 21 пакета погоды не делают, просто приведут к забиванию вашего upload (и увеличению трафика), что тоже погоды не делает.
Рекомендую: смело ставим cl_cmdrate равное серверному fps либо выше.

ex_interp: ставим в 0 без размышлений. CS автоматически поставит ее значение ex_interp= 1/cl_updaterate (в консоли увидите “ex_interp forced up to xx msec”). При значении 0, изменение значения команды cl_updaterate будет автоматически менять и значение ex_interp. Я РЕКОМЕНДУЮ МЕНЯТЬ ЗНАЧЕНИЕ ТОЛЬКО CL_UPDATERATE, ПОЗВОЛЯЯ CS поменять значение ex_interp. Вы уже не можете поставить значение ex_interp ниже чем 1/cl_updaterate, а вот ставить его выше - это уже просто нечестно. Ставить значение выше 1/cl_updaterate приведет к тому, что вам придется стрелять немного позади модельки противника (получается так, что вы видите противника немного раньше, чем положено). К примеру, при использовании cl_updaterate 101, верное значение ex_interp= 1/101=0.009, но по умолчанию ex_interp= 0.1, а это выше чем 1/101- вот тут и возникает глюк...
Рекомендую: ex_interp 0- стреляем туда, куда целимся

cl_updaterate: бытует мнение что значение данной команды надо подбирать следующим методом: присваиваем значение cl_updaterate 101 и снижаем его до тех пор пока параметр choke (его можно увидеть, если набрать в консоли команду net_graph 3) не будет равен 0 или очень низок. По мне, так choke - это самое последнее о чем стоит беспокоиться. Правильное значение cl_updaterate - это более глубокий вопрос чем просто choke. Значение sv_maxupdaterate на сервере для чемпионатов должно иметь значение 101 (так настроен сервер для CAL CPL) - из этого можно сделать вывод, что в идеале значение cl_updaterate=101. Однако большинство серверов в online имеют значение sv_maxupdaterate "30" или просто неспособны, вычислить 101 sv_maxupdaterate. Из чего следует, что сервер просто неспособен послать вам 101 пакет/секунду. Так все-таки, какое значение? Большинство могут сказать "Я поставлю 101, а сколько дойдет - всё моё", но тут уже играет отрицательную роль высокое значение ex_interp, что нарушит баланс между этими командами.
Для того, чтобы подобрать оптимальное значение cl_upodaterate (ex_interp "0") ставить в 101 и начинаем снижать его до тех пор пока модельки игроков не будут слегка двигаться скачками (при ex_interp 0 и cl_updaterate 101 - они будут очень сильно пропускать). Не надо бояться ставить значение cl_updaterate ниже 50, если это необходимо. Большинство серверов sv_maxupdaterate "30" так что cl_updaterate 30 будет лучшим значением.
Стоит отметить, что начинать подборку cl_updaterate надо "сверху вниз" а не наоборот.
Рекомендую: равно серверному fps и не выше sv_maxupdaterate


CS 1.6 игра или смысл жизни!!!
 
KrEsToДата: Вторник, 04.03.2008, 15:37 | Сообщение # 2
JusT^MoRe | clan
Группа: Модераторы
Сообщений: 38
Репутация: 0
Статус: Offline
sys_ticrate: для нахождения оптимального значения данной переменной необходимо произвести несколько экспериментов. Прежде всего, если ваш сервер не "ускорен" то значение переменной ticrate выше 100 ни к чему не приведет. Если же сервер находится на хорошей платформе (богатый провайдер), то бишь "ускоренный", у вас появляется место для полета фантазии. Не смотря на то что "чем больше серверное fps тем лучше", эффект от увеличения sys_ticrate выше 200 (а может и еще меньше) на самом деле не окажут такого уж хорошего влияния на игру. А вот использовать sys_ticrate "200" или ниже сделает игру более стабильной даже если придется пожертвовать минимальным количеством производительности. Представьте вдобавок, что компьютер, используемый под игровой сервер тянет аж несколько HLDS (например CS1.6 и CZ) и для обоих sys_ticrate "10000" нагрузка на процессор возможно будет чрезмерной. Такое положение вещей может привести к потери производительности самой игры. В конце можно добавить, что если вы хотите получить, скажем, 140fps то вам нужно выставить значение sys_ticrate выше предполагаемого где-то на 20-50. (Например, сервер может спокойно тянуть 150fps, значит, значение sys_ticrate будет 150+30= 180.)
Рекомендую: sys_ticrate 110-180 - зависит от качества сервера.


CS 1.6 игра или смысл жизни!!!
 
  • Страница 1 из 1
  • 1
Поиск:

Copyright MyCorp © 2025
Конструктор сайтовuCoz