#1 04.03.07 16:37
CS: что делать с лагами?
Лаги на канале stormnet-hostel-standard
http://hostel.nstu.ru/resources/gallery.php?pid=8498
раз в 3-5 секунд постоянная потеря пакетов. казалось бы "ничего страшного" но из за этой потери пакетов я теряю пули и выстрели и постоянно гибну.
предполагаю причины:
1) на сервере Стандарта запущено какое-то приложение, или слишком много приложений, которые перегружают возможности сервака.
2) в сети на этом маршруте есть поврежденная сетевая карта, которая "сыпет" сбойные пакеты в сеть
3) сбоит некий маршрутизатор.
что делать? как жить дальше?
Offline
#4 04.03.07 19:14
Re: CS: что делать с лагами?
Уменшаем PING
Если вы играете по модему, то выключайте icq, останавливайте закачки и всё
остальное, что создаёт лишний трафик.
Затем сделайте в своём конфиге переключатель настроек сети.
Делается он очень просто:
В файл cstrike/autoexec.cfg добавьте вот это:
alias net0 "rate 1400; cl_rate 1000; cl_updaterate 10; cl_cmdrate 15; alias netsw net1; echo *** Net: 24.0k, updates: 12; speak ten"
alias net1 "rate 2600; cl_rate 1500; cl_updaterate 15; cl_cmdrate 20; alias netsw net2; echo *** Net:
26.4k, updates: 15; speak fifteen"
alias net2 "rate 3100; cl_rate 2000; cl_updaterate 20; cl_cmdrate 25; alias netsw net3; echo *** Net:
31.2k, updates: 20; speak twenty"
alias net3 "rate 3300; cl_rate 2500; cl_updaterate 25; cl_cmdrate 30; alias netsw net4; echo *** Net: 33.6k, updates: 25; speak twenty.five"
alias net4 "rate 6000; cl_rate 5000; cl_updaterate 50; cl_cmdrate 50; alias netsw net0; echo *** Net: all must die, updates: 50; speak fifty"
net0
В файл cstrike/config.cfg нужно добавить вот это:
bind ALT netsw //вместо ALT можно поставить любую клавишу.
net_graph 1
net_scale 5
net_graphpos 2
Прямо в игре нажимая клавишу ALT подберите оптимальную скорость для вашего
коннекта.
По моему опыту при коннекте в инет 33600 нормально без лагов можно играть на
значении 10-15.
Расшифровка:
rate - Ограничение входящего трафика (Байт/сек.)
cl_rate - Ограничение исходящего трафика (Байт/сек.)
cl_updaterate - Число обновлений от сервера к клиенту (входящий трафик) в
сек.
cl_cmdrate - Число обновлений от клиента к серверу (исходящий трафик) в сек.
Ещё некоторые полезные установки конфига(файл cstrikeconfig.cfg):
ex_interp 0.1
cl_allowdownload - Разрешить скачивание ресурсов с сервера к игроку. Влияет только на время и шанс подключения. Т.е, если неактивно (стоит в 0), а на сервере модель, которой у вас нет вам не удастся завершить процесс подключения. Рекомендую активизировать (значение = 1).
cl_allowupload - Разрешить скачивание сервером ресурсов клиента. Та же ситуация, если у вас модель есть, а на сервере ее нет, то вашу модель никто не увидит. Рекомендую активизировать (значение = 1).
cl_cmdbackup - Количество пакетов посланных на сервер. То есть сколько отсылается серверу пакетов в секунду. Чем меньше значение чем меньше пинг, но злоупотреблять тоже не следует. Оптимальным значением будет 2.
cl_cmdrate - Скорость с которой посылаются комманды на сервер. Для оптимальной работы значние должно соответствовать параметру framerate. Если говорить про модемное соединение, то значение должно быть от 20 до 30. Для начала поставьте 20. но лучше всего значение- 101
cl_download_ingame - Разрешить скачивание ресурсов прямо в игре. На ваш выбор т.к. сказывается на скорости соединения только если у кого-нибудь наставлено фичей на CS и он только что присоединился к игре. Я обычно разрешаю скачивание в игре (значение = 1).
cl_lc - Компенсация лагов на стороне сервера. Данный параметр заставляет сервер принять во внимание ваш пинг и значительно оптимизировать работу, но эта опция может быть отключена на сервере (sv_unlag 0). Если это так, то cl_lc да впрочем и cl_lw игнорируются. Значение cl_lc как вы поняли нужно поставить 1.
cl_lw - Все эффекты и действия связанные с оружием просчитываются на стороне клиента. Это помогает значительно оптимизировать работу, но у вас не будет 100%-ой гарантии, что то что вы видите действительно так. Хотя сколько я играл ни разу не заметил каких либо отклонений от реально происходящего. Хотите играть без лагов ставьте значение 1.
cl_lb - Все последствия перестрелки т.е. пятна крови, дыры на стенах и т.д. просчитываются на стороне клиента. Такой же принцип оптимизации как и в предыдущих двух коммандах. Значение 1 для оптимизации.
cl_nodelta - Запретить дельта сжатие. Никогда не делайте этого т.к. скорость соединения это не улучшит и предназначено для хороших локальных сетей и убогих компов. Для игры по модему значение должно быть 0.
cl_nopred - Не предугадывать движения игрока. Если хотите видеть плавные передвижения других игроков да и себя не включайте эту опцию (значение = 0).
cl_resend - Время через которое будет снова послан пакет, если предыдущий не дошел. Чем меньше тем быстрее будет исправлена ошибка при передаче пакета данных, но иногда стоит ставить значение не 1, а 2 или даже 3 т.к. если на линии есть шумы и следующий пакет тоже не дойдет, будет критическая ошибка и вылет с сервера (в правом-верхнем углу сообщение Connection Problem). Для начала поставьте значение 1.
cl_showfps - Показать FPS в левом-верхнем углу. В левом-верхнем углу будет показан ваш текущий FPS. Если график соединения отключен (net_graph 0), то можете включит счетчик FPS (значение = 1). Но если следуете всем моим рекомендациям не включайте (значение = 0).
cl_updaterate - Cкорость с которой обновляются сведения об игре. Если значение параметра 20, то сведения об игре обновляются 20 раз в секунду. Кстати значение 20 является оптимальным, но лучше выставить 101 !!!
rate 25000
fastsprites - Вид спрайтов дыма. Выглядят ужасно. Значение может быть 0, 1, 2 или 3. Где 0 - реалистичные, а 2 - самые простые (и убогие). На скорость соединения значение сказывается не особо, скорее на быстродействие самого CS. Рекомендую для начала в качестве значения - 2.
fps_modem - FPS максимально по модему. Как и обычное FPS, но действительно только при игре по модему. Ставьте 28.
max_shells - Максимальное количество одновременно отрисовываемых патронов. Для любителей спецэффектов. Советую сразу поставить в 0.
max_smokepuffs - Максимальное количество одновременно отрисовываемых клубов дыма. Аналогичен предыдущему параметру, но тут речь идет о клубах дыма.
mp_decals - Количество отображаемых одновременно дыр от выстрелов, пятен крови и т.д. Чтобы не ущемлять себя в эффектах и одновременно сэкономить на системных ресурсах поставьте 10. Кстати для одиночной игры параметр другой - r_decals.
mp_footsteps - Звук шагов. Если уж очень пингует отключите, но вообще без них играть невозможно.
net_graph - График скорости соединения. Значения: 1- статистика и график соединения, 2 - статистика, график соединения и график передачи данных, 3 - только статистика и 0 - неактивен.
net_graphwidth - Ширина графика скорости соединения. Следует оставить значение по умолчанию - 192.
net_graphpos - Расположение графика скорости соединения. Т.е. слева, по центру или справа. Оставьте по умолчанию слева (значение = 1).
Pushlatency - Сглаживать / компенсировать задержку. Равна 50 или 100% пинга взятыми с противоположным (отриц.) знаком. К примеру, если пинг 300 по значение pushlatency должно быть (-150) или (-200). Пока поставьте (-150).
Исправлено 2fastbl4 (04.03.07 19:15)
Offline
#5 04.03.07 19:17
Re: CS: что делать с лагами?
texno, а вообще обращайся лучше сюда
http://portal.standard.net.ru/viewtopic.php?id=117
Исправлено 2fastbl4 (04.03.07 19:20)
Offline
#6 04.03.07 19:39
Re: CS: что делать с лагами?
Трассировка маршрута к standard.hostel.nstu.ru [217.71.142.11]
с максимальным числом прыжков 30:
1 <1 мс <1 мс <1 мс hostelgate.stormnet.loc [200.100.100.113]
2 * 1 ms 2 ms crossroad.hostel.nstu.ru [192.168.1.1]
3 * 10 ms 3 ms standard.hostel.nstu.ru [217.71.142.11]
стандард не причем я так думаю, пакеты пропадают на пути до crossroad
Offline
#7 04.03.07 21:06
Re: CS: что делать с лагами?
монитор у меня ж\к. держит 60-75 фпс. так что не 100, да и 100 - это не нужно для хорошей игры.
100 фпс - ни есть хорошо, потому что для этих ста должен быть более высокий трафик, загрузка сервера на передачу, а значит больше лагов. да и глазу человеческому 100 фпс - ничего уже не дают. :) у меня то и на 60-и мерцания не имеется.
спасибо, 2fastbI4, я перечитал это все и еще перековырял сеть найдя несколько развернутых статей о сетевом коде и настройках сети для цс.
я очень долго варьировал настроечки, пытаясь найти оптимум, и избавиться от лагов.
я думал что у меня запущены лишние сетевые службы и идут скрытые процессы в системе.
нет, дело не в этом.
даже при установки минимальных fps 30, cl_updaterate 30, cl_cmdrate 30
игра идет очень хорошо, и снабжает информацией достаточно чтобы преуспевать.
кусок статьи кстати относится к устаревшей версии контры и большая чать команд - устарела или не работает.
например - не существует команды pushlatency, cl_lb и некоторых других. увы, я бы не беспокоил вас думая над проблемой лагов только программно :)
неделе как неделю назад, в прошлое воскресение в 2 часа ночи я наблюдал следующее - лаги полностью исчезли до 8 утра. Это было замечательное время. Это означает что
1) либо некий комп "гадивший" в сеть был отключен
либо некая программа на магистрали или на сервере временно приостановилась.
так что это явно не от моих настроек.
Offline
#10 04.03.07 21:36
#11 04.03.07 21:39
#12 04.03.07 21:47
#13 04.03.07 22:14
#14 04.03.07 22:19
#15 04.03.07 22:31
#16 04.03.07 22:43
#17 04.03.07 22:56
#18 05.03.07 00:28
#19 05.03.07 00:35
#20 05.03.07 03:11
#21 05.03.07 03:24
#22 05.03.07 03:29
#23 05.03.07 14:18
Re: CS: что делать с лагами?
Ребят есть на скок я знаю в одном забавном месте сетевик который плохо закреплен - его задевают вообще вылетает народ - решите етот вопрос
p.s. общаги не лагуют Стандарт не при чем - если лагует Стандарт обычно складываем сервак
Исправлено Чукча (05.03.07 14:19)
Offline

