Games-Fun.Ru

Последний ответ

  • Анонс игры Dead Rising 2: Off the Record (66)

    • Страница 1 из 1
    • 1
    Модератор форума: Axon  
    Форум » Игровой форум » Counter-Strike » Понижение пинга
    Понижение пинга
    1LifeДата: Четверг, 06.08.2009, 11:58 | Сообщение # 1
    Сообщений: 8050
    Статус: Offline
    На сегодняшний день тема является очень актуальной для стран бывшего СНГ, где играет через выделенку не так много народу. В этой статье я детально рассмотрю команды, которые помогут понизить пинг, а также те, которые сберегут FPS(количество показываемых кадров в секунду). Все эти команды желательно прописать в конфиге, хотя некоторые лучше менять(например, pushlatency) в зависимости от ситуации и от сервера, на котором вы играете. Начнем:
    cl_allowdownload, cl_allowupload - при значении "1" разрешают игроку скачивать и закачивать модели, карты и т.д. В принципе на пинг влияет незначительно, поэтому лучше оставить 1.

    cl_cmdbackup - количество пакетов, посылаемых на сервер в секунду. ИМХО, лучше ставьте примерно 2.

    cl_cmdrate - скорость посылки команд на сервер. Наиболее оптимальное значение для игры по модему - 20-30

    cl_download_ingame - скачивание моделей, логосов в игре... а нам это надо?:) Значит, ставим 0.

    cl_lc - компенсация лагов на стороне сервера, поэтому лучше поставить 1. К сожалению, работает только при включенной команде sv_unlag на сервере.

    cl_lw, cl_lb - для обоих ставим значение 1, действия, связанные с оружием будут просчитываться на стороне клиента, как впрочем и эффекты крови и т.д.

    cl_nodelta - запрещает дельта сжатие, советую поставить "0".

    cl_nopred - если хотите видеть плавное передвижение игроков - поставьте "0"

    cl_resend - время, через которое будет послан пакет, если предыдущий не дошел. Лучше установить примерно 4-5.

    cl_updaterate - скорость обновления сведений об игре. "20" является оптимальным значением.

    fps_modem - увеличивает FPS при игре по модему. Ставьте 28.

    mp_decals - количество одновременно видимых эффектов. Чтобы меньше лагало - ставьте 0.

    pushlatency - эта команда сглаживает лаги. Должно стоять значение от 50 до 100% пинга со знаком "-". Например, -150 при пинге 250.

    Теперь рассмотрим другие полезные команды:

    r_drawviewmodel - при значении "0" уменьшается FPS, да и играть, ИМХО, лучше.

    r_drawviewentities - хорошая команда, только моделей видно не будет:(. Оставьте 1.

    hud_fastswitch - быстрая смена оружия. Я использую значение "1"

    max_shells - число одновременно видимых гильз. Ставим "0"

    fastsprites - качество дыма. Лучше установить "2"

    max_smokepuffs - количество одновременно видимых клубов дыма... чем меньше, тем лучше:)

    Вот вроде и все... остается на сервере прописать следующие команды и тогда совесм хорошо будет:

    sv_unlag - Компенсировать лаги клиентов т.е. разрешить cl_lc, cl_lw и cl_lb (значение = 1).

    sv_unlagmax - Максимальное время компенсации задержки в секундах. Оставьте значение по умолчанию - 0.5 секунды.

    sv_unlagsamples - Сколько предыдущих пакетов используются для вычисления задержки клиентов. Хватит одного пакета (значение = 1).

    На последок хотелось бы добавить, что с этими командами необходимо эксперементировать, найти оптимальные значения для себя... а может быть и добавить другие команды, которые снизят пинг/понизят FPS.

    fan-gameДата: Воскресенье, 06.09.2009, 17:42 | Сообщение # 2
    Ученик
    Сообщений: 9
    Репутация: 0
    Статус: Offline
    спс

    The Best сайт :D
    dimka1995Дата: Суббота, 03.10.2009, 10:48 | Сообщение # 3
    Ученик
    Сообщений: 9
    Репутация: 0
    Статус: Offline
    спс
    so1oДата: Понедельник, 17.05.2010, 07:49 | Сообщение # 4
    Лейтенант
    Сообщений: 58
    Репутация: 3
    Статус: Offline
    а у меня в дыму лагает, в чем может быть дело?
    в инете искал, но не помогло




    Сообщение отредактировал so1o - Понедельник, 17.05.2010, 07:49
    1LifeДата: Понедельник, 17.05.2010, 15:15 | Сообщение # 5
    Сообщений: 8050
    Статус: Offline
    so1o, в дыму surprised 1 раз слышу о таком
    so1oДата: Среда, 09.06.2010, 04:10 | Сообщение # 6
    Лейтенант
    Сообщений: 58
    Репутация: 3
    Статус: Offline
    ага ага
    я не пизжу х)


    h0kДата: Воскресенье, 24.10.2010, 02:08 | Сообщение # 7
    Ученик
    Сообщений: 25
    Репутация: 3
    Статус: Offline
    so1o, какая у тебя видео карта?
    пиши мне в skype:baker_akype помогу тебе с проблемой


    fpsДата: Пятница, 13.05.2011, 16:08 | Сообщение # 8
    Генерал-майор
    Сообщений: 489
    Репутация: 197
    Статус: Offline
    Большинство проблем возникает из-за пропускной спосбности канала. Совет простой - перед игрой в 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, пусть я и увижу свою стрельбу с небольшой задержкой, но противник быстрее будет повержен.


    MauOpДата: Пятница, 13.05.2011, 18:04 | Сообщение # 9
    Подполковник
    Сообщений: 130
    Репутация: 124
    Статус: Offline
    fps, а ex_interp разьве может быть нуль ??? он по минимуму просто ставится вроде,если 0 прописываешь. я просто тоже этой командой пользуюсь
    AlexandrWoWДата: Суббота, 14.05.2011, 00:55 | Сообщение # 10
    Полковник
    Сообщений: 192
    Репутация: 248
    Статус: Offline
    да, полезно но у меня с пингом проблем нету happy

    помог?
    рассмешил?
    подсказал?
    будь другом поставь +
    Ghost_40rusДата: Четверг, 02.06.2011, 09:48 | Сообщение # 11
    Ученик
    Сообщений: 15
    Репутация: 0
    Статус: Offline
    Спс!
    fpsДата: Пятница, 03.06.2011, 12:45 | Сообщение # 12
    Генерал-майор
    Сообщений: 489
    Репутация: 197
    Статус: Offline
    MauOp, вот смотри.

    ex_ - тип консольных команд (обычно применяются разработчиками и при отладочных мероприятиях), отвечающих за перемещение игрока (предметов) в пространстве, точность стрельбы и передаче (и обработке) этих данных к серверу или/и к клиенту. Эта команда отвечает за интерполяцию. Интерполяция - сложный аналитический процесс. По полученным данным от сервера, клиент вычисляет приблизительное расположение игроков. То есть "картинка”, которую вы видите в игре, отличается от действительности. Значение параметра определяет частоту, с которой будет вычисляться новое расположение игроков.

    Дело в том, что сетевой код игры устроен так, что бы игроки с плохим соединением могли играть без особых проблем. Чем ниже значение, тем чаще клиент вычисляет новые положения всех игроков, игра становится более "реалистичной”, так как "картинка” максимально приближена к действительности.

    Преимущество в том, что игрок, у которого это значение ниже, чем у оппонента, видел его на экране раньше, чем соперник на самом деле выходил, скажем из ворот, и начинал стрелять раньше, хотя сам сервер при вычислении местоположения игрока считал, что игрок еще выходит из ворот. То есть игроки, которые знали об этом параметре, компенсировали свою игровую реакцию.


    IIJAMUJIbДата: Пятница, 03.06.2011, 15:12 | Сообщение # 13
    Подполковник
    Сообщений: 120
    Репутация: 121
    Статус: Offline
    Андрюхааа((( я люблю читать и очень но то что ты печатаешь у меня от этого голова колом (((( Ты нихрена не Толкиен, и даже ни Нортон!((((

    fpsДата: Пятница, 03.06.2011, 16:17 | Сообщение # 14
    Генерал-майор
    Сообщений: 489
    Репутация: 197
    Статус: Offline
    Только после нескольких книжек или журналов, сушняк и голова как у тебя братан - КОЛОМ )))))))))))))

    Форум » Игровой форум » Counter-Strike » Понижение пинга
    • Страница 1 из 1
    • 1
    Поиск: