В связи с тем, что запарили орать по этому поводу последнее время, мое имхо такое: .. Хочется начать сначала, что такое вообще ЛАГ. .. хм, блин, лень писАть, долго, тем более я это уже где-то писал несколько раз. к делу - почему народ лагает. проблемы со связью, ретрейн модема, перегруженный канал провайдера и т.п. оставим, это тема другого базара, уже обсуждали не раз. причина резкого роста пинга (правильнее называть - latency) в игре при отсутствии вышеописанных факторов может быть увеличение объема принимаемой клиентом от сервера информации сверх возможностей существуещего канала. проще говоря, сервер передает больше, чем может прокачать, к примеру, ваш модем, в результате чего пакеты становятся и ждут в очереди, пинг легко поднимется до 2000 и более. объемы принимаемой и передаваемой информации можно посмотреть по net_graph 3 для рерулирования потока информации в HL есть ряд команд. cl_updaterate - число обновлений (посылок) информации от сервера клиенту, в секунду cl_cmdrate - число обновлений (посылок) информации от клиента серверу, в секунду rate - ограничение входящего трафика (от сервера к киенту) в байтах в секунду. так вот, у меня сложилось мнение, что rate теперь (начиная с 1.1.0.0.) работает не так как предполагалось, т.е. его изменение не оказывает влияния на входящий трафик, не ограничивает его. т.е. фактически вообще не работает. объем входящего трафика в конкретный момент времени зависит от того что происходить вокруг игрока - чем больше игроков, различных объектов, стрельбы и т.п. вокруг, тем больше трафик. опять же, это зависит от компоновки карты - я не маппер, точно не знаю как это называется, но вся инфа передается в пределах некоего ограниченного пространства (в простейшем случае - комнаты). Ес-но пинг в разных модах может отличаться (в чистом hl меньше передается по сравнению с cs, т.к. здесь сложнее графика, анимация, больше объектов) единственное мне известное средство ограничить входящий трафик - cl_updaterate. при его значении по умолчанию - 25, модемное соединение на 33.6 при игре более 10 человек практически 50% времени перегружается и пинг резко растет. единственный способ бороться с этим - умешать cl_updaterate эмпирически я подобрал примерно такие значения для соединения на 33.6: число игроков / значение cl_updaterate 0-8.....25 8-12....20 12-16...15 16-20...12 при другой средней скорости соединения значения можно пропорционально уменьшить/увеличить. удобно написать соответствующие алиасы. cl_cmdrate значение по умолчанию 25 можно не менять (при этом постоянно передается примерно 1.4КБ/с), если только обратная скорость не 9600 конкретно по поводу злополучного патча 1.1.0.4. - действительно, надо признать, что средний пинг в игре слегка вырос (примерно на 20-30% ), (я думаю, это может быть связано с проверкой на читерские прокси), но принципиально на геймплее это врядли отражается - лпб остались лпб, модемщики остались модемщиками, а лаггеры остались лаггерами. т.е. ситуация с лагом от перегрузки канала не изменилась, начиная с cs b6.5 и соотв. hl 1.1.0.0. по это поводу еще можно почитать здесь и здесь
|