Введение:
Эта статья описывает некоторые способы оптимизации клиента / операционной системы для Counter-Strike 1.6 под Windows. Сама статья была написана мной в 2015-ом году для собственного проекта. Некоторая информация (например, настройки рейтов в зависимости от скорости Интернет-соединения) была заимствована со сторонних источников. К сожалению, я не помню, с каких именно источников я брал эту информацию, тем более сайты копируют материал друг у друга и найти первоисточник достаточно сложно. Поэтому сегодня я не буду ссылаться ни на один ресурс, и просто поблагодарю сообщество за эту информацию.
1. Отключить лишние приложения
Первое, что необходимо сделать — отключить все приложения, которые могут потреблять трафик и/или системные ресурсы: различные менеджеры загрузок, торрент-клиенты, веб-браузеры, антивирусные приложения, Skype/ICQ клиенты, различные утилиты для очистки системы, которые могут работать в фоновом режиме и т.п.
2. Проверить нагрузку на процессор
После этого запускаем Диспетчер задач Windows (нажимаем и удерживаем последовательно клавиши Ctrl + Shift + Esc), открываем вкладку Быстродействие.
Проверяем, не перегружена ли шкала Загрузка ЦП. Если процент загрузки высок (80% и выше), то открываем вкладку Процессы, ищем в списке процессов тот, который нагружает систему больше всего (ориентируемся по показаниям столбца ЦП, чем больше число — тем выше нагрузка на систему от данного процесса).
Как только находим проблеммный процесс — выделяем его нажатием левой кнопкой мыши один раз и нажимаем кнопку Завершить процесс и ещё раз Завершить процесс для подтверждения действия. Диспетчер задач пока не закрываем.
3. Задать приоритет для Counter-Strike
Запускаем Counter-Strike. В Диспетчере задач находим процесс hl.exe, нажимаем по нему правой кнопкой мыши, выбираем пункт Приоритет, выбираем Высокий, нажимаем кнопку Изменить приоритет.
4. Настроить конфигурацию игры
Заходим в игру, открываем игровую консоль (русская клавиша Ё) и выполняем следующие команды:
Затем, в зависимости от скорости Интернет-соединения, выполняем следующие команды:
5. Проверить соединение с сервером в игре
Подключаемся к нашему серверу. Обращаем внимание на небольшую панель в правом нижнем углу, где отображаются такие параметры, как fps, ping, in, out, loss и choke.
Нас, прежде всего, интересуют значения fps, loss и choke. fps — это число кадров в секунду; loss — это число подготовленных и отправленных пакетов, которые до сервера не дошли; choke — это число подготовленных пакетов, которые отправлены не были в связи с ограничением трафика. fps не должен проседать ниже заданного значения (в нашем случае это 100), loss и choke должны равняться нулю (при идеальном соединении клиента с сервером).
Если вы видите, что fps падает, вероятнее всего, неполадка на вашем компьютере. В этом случае необходимо ещё раз проверить запущенные приложения, нагрузку на процессор, не будет лишним проверить компьютер на наличие вирусов, а также настроить видеокарту таким образом, чтобы обеспечить максимальную производительность.
Если вы наблюдаете значение loss выше 5-10 пакетов, то этого уже может быть достаточно, чтобы вы ощутили определённый дискомфорт при игре. Если вы используете Wi-Fi роутер для подключения к Интернету, то можете попробовать избавиться от loss подключением напрямую (при помощи патч-корда или через Высокоскоростное подключение). Не будет лишним также перезагрузить роутер по питанию (извлечь блок питания роутера из розетки на 10 секунд). К сожалению, если потеря пакетов происходит за пределами вашего оборудования, то вы на это повлиять никак не сможете. Вы можете лишь отследить, на каком именно участке маршрута происходят потери, но об этом чуть позже.
Если же вы наблюдаете не очень большое значение choke (в пределах 10-20 пакетов), то от него можно попробовать избавиться путём корректировки значений cl_cmdrate и cl_updaterate. При корректировке значений следует придерживаться соотношения 3 (cl_updaterate) : 4 (cl_cmdrate), то есть cl_updaterate должен составлять 3/4 от cl_cmdrate. Например, если ваш choke составляет 10 пакетов, то и значения рейтов следует уменьшить на 10 единиц, не забывая при этом о формуле 3 к 4. Например, cl_cmdrate = 100. Тогда новое значение cl_cmdrate = 100 - 10 = 90, следовательно, cl_updaterate = ( 90 / 4 ) * 3 = 67,5 (округляем до 68). Необходимо заметить, что в начале и в конце раунда choke всегда увеличивается вне зависимости от значений рейтов, поскольку в эти моменты происходит очистка карты от временных объектов, обновление HUD'а и т.д. В процессе игры нормальным считается значение choke до 5 пакетов.
6. Проверить соединение с сервером программой
Если же после выполнения всех вышеописанных действий вы убедились, что fps не проседает, а лаги сохраняются — следует произвести диагностирование соединения от вашего компьютера до сервера при помощи программы WinMTR. Скачать её вы можете по прямой ссылке: Вы должны зарегистрироваться, чтобы видеть ссылки. или архивом во вложении. Порядок работы с программой следующий:
Важное примечание: тестировать соединение при помощи WinMTR необходимо непосредственно в тот момент, когда наблюдаются лаги. Производить сбор информации в то время, когда соединение работает корректно, — не имеет смысла.
Результат проверки WinMTR.exe на VirusTotal
Эта статья описывает некоторые способы оптимизации клиента / операционной системы для Counter-Strike 1.6 под Windows. Сама статья была написана мной в 2015-ом году для собственного проекта. Некоторая информация (например, настройки рейтов в зависимости от скорости Интернет-соединения) была заимствована со сторонних источников. К сожалению, я не помню, с каких именно источников я брал эту информацию, тем более сайты копируют материал друг у друга и найти первоисточник достаточно сложно. Поэтому сегодня я не буду ссылаться ни на один ресурс, и просто поблагодарю сообщество за эту информацию.
1. Отключить лишние приложения
Первое, что необходимо сделать — отключить все приложения, которые могут потреблять трафик и/или системные ресурсы: различные менеджеры загрузок, торрент-клиенты, веб-браузеры, антивирусные приложения, Skype/ICQ клиенты, различные утилиты для очистки системы, которые могут работать в фоновом режиме и т.п.
2. Проверить нагрузку на процессор
После этого запускаем Диспетчер задач Windows (нажимаем и удерживаем последовательно клавиши Ctrl + Shift + Esc), открываем вкладку Быстродействие.
Проверяем, не перегружена ли шкала Загрузка ЦП. Если процент загрузки высок (80% и выше), то открываем вкладку Процессы, ищем в списке процессов тот, который нагружает систему больше всего (ориентируемся по показаниям столбца ЦП, чем больше число — тем выше нагрузка на систему от данного процесса).
Как только находим проблеммный процесс — выделяем его нажатием левой кнопкой мыши один раз и нажимаем кнопку Завершить процесс и ещё раз Завершить процесс для подтверждения действия. Диспетчер задач пока не закрываем.
3. Задать приоритет для Counter-Strike
Запускаем Counter-Strike. В Диспетчере задач находим процесс hl.exe, нажимаем по нему правой кнопкой мыши, выбираем пункт Приоритет, выбираем Высокий, нажимаем кнопку Изменить приоритет.
4. Настроить конфигурацию игры
Заходим в игру, открываем игровую консоль (русская клавиша Ё) и выполняем следующие команды:
- Код: Выделить всё
cl_lc 1
cl_lw 1
fps_max 100
gl_vsync 0
net_graph 3
Затем, в зависимости от скорости Интернет-соединения, выполняем следующие команды:
- Код: Выделить всё
rate 3500
cl_cmdrate 35
cl_updaterate 35
cl_resend 4
cl_cmdbackup 2
- Код: Выделить всё
rate 15000
cl_cmdrate 75
cl_updaterate 75
cl_resend 5
cl_cmdbackup 2
- Код: Выделить всё
rate 30000
cl_cmdrate 100
cl_updaterate 100
cl_resend 6
cl_cmdbackup 2
5. Проверить соединение с сервером в игре
Подключаемся к нашему серверу. Обращаем внимание на небольшую панель в правом нижнем углу, где отображаются такие параметры, как fps, ping, in, out, loss и choke.
Нас, прежде всего, интересуют значения fps, loss и choke. fps — это число кадров в секунду; loss — это число подготовленных и отправленных пакетов, которые до сервера не дошли; choke — это число подготовленных пакетов, которые отправлены не были в связи с ограничением трафика. fps не должен проседать ниже заданного значения (в нашем случае это 100), loss и choke должны равняться нулю (при идеальном соединении клиента с сервером).
Если вы видите, что fps падает, вероятнее всего, неполадка на вашем компьютере. В этом случае необходимо ещё раз проверить запущенные приложения, нагрузку на процессор, не будет лишним проверить компьютер на наличие вирусов, а также настроить видеокарту таким образом, чтобы обеспечить максимальную производительность.
Если вы наблюдаете значение loss выше 5-10 пакетов, то этого уже может быть достаточно, чтобы вы ощутили определённый дискомфорт при игре. Если вы используете Wi-Fi роутер для подключения к Интернету, то можете попробовать избавиться от loss подключением напрямую (при помощи патч-корда или через Высокоскоростное подключение). Не будет лишним также перезагрузить роутер по питанию (извлечь блок питания роутера из розетки на 10 секунд). К сожалению, если потеря пакетов происходит за пределами вашего оборудования, то вы на это повлиять никак не сможете. Вы можете лишь отследить, на каком именно участке маршрута происходят потери, но об этом чуть позже.
Если же вы наблюдаете не очень большое значение choke (в пределах 10-20 пакетов), то от него можно попробовать избавиться путём корректировки значений cl_cmdrate и cl_updaterate. При корректировке значений следует придерживаться соотношения 3 (cl_updaterate) : 4 (cl_cmdrate), то есть cl_updaterate должен составлять 3/4 от cl_cmdrate. Например, если ваш choke составляет 10 пакетов, то и значения рейтов следует уменьшить на 10 единиц, не забывая при этом о формуле 3 к 4. Например, cl_cmdrate = 100. Тогда новое значение cl_cmdrate = 100 - 10 = 90, следовательно, cl_updaterate = ( 90 / 4 ) * 3 = 67,5 (округляем до 68). Необходимо заметить, что в начале и в конце раунда choke всегда увеличивается вне зависимости от значений рейтов, поскольку в эти моменты происходит очистка карты от временных объектов, обновление HUD'а и т.д. В процессе игры нормальным считается значение choke до 5 пакетов.
6. Проверить соединение с сервером программой
Если же после выполнения всех вышеописанных действий вы убедились, что fps не проседает, а лаги сохраняются — следует произвести диагностирование соединения от вашего компьютера до сервера при помощи программы WinMTR. Скачать её вы можете по прямой ссылке: Вы должны зарегистрироваться, чтобы видеть ссылки. или архивом во вложении. Порядок работы с программой следующий:
- Запускаем WinMTR.exe
- В поле Host пишем IP-адрес сервера без порта (без порта, то есть, без :27015, например, 212.76.128.6)
- Нажимаем кнопку Start
- Тестируем не менее 10 минут
- Нажимаем кнопку Stop
- Нажимаем кнопку Export TEXT
- Сохраняем результат в новый текстовый документ (например, WinMTR.txt)
- Передаём документ администратору сервера на рассмотрение
Важное примечание: тестировать соединение при помощи WinMTR необходимо непосредственно в тот момент, когда наблюдаются лаги. Производить сбор информации в то время, когда соединение работает корректно, — не имеет смысла.
Результат проверки WinMTR.exe на VirusTotal