Уменьшаем ping на выделенном сервере Counter-Strike 1.6Настройка Windows
Большинство проблем возникает из-за пропускной спосбности канала.
Совет простой - перед игрой в Counter Strike отключаем все сетевые программы
(Чат-клиенты, программы для работы с ftp, P2P и пр.)
Настройка Counter Strike
Что нам потребуется, так это подобрать значение rate под нашу ширину канала
и выставить значения cl_cmdrate и cl_updaterate.
Диагностика сетевых проблем в CS
net_grath 2 Красный цвет это очень плохо, жёлтый не очень хорошо, зелёный всё отлично.
Входящие пакеты отражаются в виде небольших линий, движущихся справа налево.
Высота каждой линии отражает размер пакета.
Если между линиями возникает разрыв, это значит что пакеты пришли в
некорректном порядке или были потеряны.
Цвет линий отражает содержащуюся в пакете информацию.
Пинг (Latency) - Время задержки сервера. Время
отправки-получения пакета данных за секунду.
Чем выше пинг, тем задержка больше и наоборот.
Причина резкого роста пинга - увеличение объема принимаемой клиентом от
сервера информации сверх возможностей существующего канала,
проблемы со связью, перегруженная сеть и прочее.
Сервер передает больше, чем может пройти по сети,
сетевые пакеты становятся в очередь и ждут отправки.
Loss - показывает сколько пакетов было потеряно во время передачи от сервера к вам.
Если есть Loss, то уменьшаем значение cl_updaterate(min 10, max 101)
Choke - показывает сколько пакетов ваш компьютер не может передать серверу.
Если есть Choke, то уменьшаем значение cl_cmdrate(min 10, max 101)
Основные команды
Первым делом смотрим значения sys_ticrate и sv_maxupdaterate на сервере CS
sys_ticrate - количество "кадров" в секунду, которые сервер может вычислить
sv_maxupdaterate - максимальное количество пакетов/секунду, которое сервер может послать
Далее смотрим и правим следующие команды у нас:
rate - ограничение входящего трафика от сервера в байтах в секунду (По умолчанию: 3500; min=2500 ;max=20000)
Объем входящего трафика зависит от количества игроков, объектов, стрельбы и т.п. вокруг
Оптимальное значение 20000. При больших значениях может привести к снижению производительности.
10 Мбит/сек=10000бит/сек. Далее отнимаем 10% занятых под заголовки
пакетов и пр., получаем 9000 бит/сек. Делим на 8 и получаем значение
rate в байтах 1125.
100 Мбит/сек=100000бит/сек. Далее отнимаем 10% занятых под заголовки
пакетов и пр., получаем 90000 бит/сек. Делим на 8 и получаем значение
rate в байтах 11250.
Для модема 56К: 3500-5000
DSL: 7500
LAN: 9999
cl_rate - ограничивает исходящий трафик к серверу в байтах в секунду (По умолчанию: - ; min= ;max=)
Оптимальное значение 20000.
cl_updaterate - количество обновлений информации от сервера к клиенту, в секунду (По умолчанию: 20; min=10 ;max=100)
Ставим равным серверному fps (значение sys_ticrate сервера) и не выше значения sv_maxupdaterate сервера
cl_cmdrate - количество обновлений информации от клиента к серверу, в секунду (По умолчанию: 30; min=10 ;max=100)
Ставим равным серверному fps (значение sys_ticrate сервера) или выше
cl_resend - вpемя, чеpез котоpое бyдет снова послан пакет, если пpедыдyщий не дошел.
Чем меньше, тем лучше. Ставим 1, если постоянно возникает ошибка Connection Problem, то увеличиваем значение. (По умолчанию: 6)
Ни в коем случае не ставим в 0!!! На плохих соединениях получится эффект стрельбы холостыми патронами.
cl_cmdbackup - сколько дублей пакетов посылать. На хорошем
соединении ставим в 0 (меньше трафика, выше пинг), на плохом повышаем
1,2,3 и т.д.
Дополнительные команды
Следующие команды не влияют на пинг, но улучшают игру при большом пинге.
Отвечают они за сжатие данных, интерполяцию, предсказание и лаго-компенсацию.
cl_allowdownload 1 - скачивание карт, моделей и декалей с сервера при подключении (1-Разрешить, 0-Запретить)
cl_allowupload 1 - загрузка карт, моделей и декалей на сервер при подключении (1-Разрешить, 0-Запретить)
cl_download_ingame 0 - скачивание карт, моделей и декалей с сервера прямо в игре ((1-Разрешить, 0-Запретить)
cl_lc 1 - компенсация лагов на стороне сервера
cl_lb 1 - все последствия перестрелки т.е. пятна крови, дыры на стенах и т.д. просчитываются на стороне клиента
cl_lw 1 - все эффекты и действия связанные с оружием просчитываются на стороне клиента.
Если 0, то будем слышать звуки выстрелов с задержкой.
ex_interp 0 - количество времени (в секундах) для интерполяции между каждым "удачным" обновлением с сервера
Интерполяция - это восстановление значения функции в промежуточной точке по известным ее значениям в соседних точках
Ставим в ноль, при этом CS будет вычислять ex_interp по следующей формуле ex_interp=1/cl_updaterate
cl_smoothtime - время в мсек сглаживания действий клиента. Менее дерганно бегаем. (По умолчанию 0.1). Ставим cl_smoothtime=Пинг/1000
Для хорошего канала
fps_max 101
rate 20000
cl_updaterate 101
cl_cmdrate 101
ex_interp 0.01
cl_resend 1
cl_cmdbackup 1
cl_allowdownload 1
cl_download_ingame 1
cl_lc 1
cl_lb 1
cl_lw 1
Монитор
У моего LCD монитора оптимальное разрешение 1280x1024,
частота обновления экрана 75 Гц.
Т.е. монитор может показать только 75 кадров в секунду.
Многие советуют отключать вертикальную синхронизацию в настройках видео карты,
уменьшить разрешение экрана до 640x480,
уменьшить цветопередачу с 32 бит до 16 бит.
Но мне не комфортно так играть. Да и Вам советую пожалеть свое зрение!
fps_max у меня выставлен 101
Количество обновлений информации от сервера cl_updaterate
мне не имеет смысла выставлять более 75, соответственно и
ex_interp у меня 0, что вижу, туда и стреляю.
А вот cl_cmdrate у меня 101, пусть я и увижу
свою стрельбу с небольшой задержкой, но противник быстрее будет повержен.
Автор: Неизвестен :)
|