Диагностика через net_graph
TF2 построен на движке Source, где есть встроенный график сетевой статистики. Он показывает пинг, потери пакетов, частоту обновления и ряд других значений. Открывается консольной командой net_graph с числовым аргументом, подробность зависит от значения.
В рабочем режиме смотрите на пинг и на показатели потерь: они выводятся отдельными значениями. Если потери ненулевые в течение всего матча, то вопрос в канале. Если они появляются волнами, то ищите фоновые процессы.
Отдельно обратите внимание на файл конфигурации: старые записи, оставшиеся с прошлых лет, иногда содержат значения, которые больше не подходят современным серверам. Создайте резервную копию и проверьте работу на чистой конфигурации.
Игра давно на этом движке, поэтому большая часть накопленных советов в сообществах относится к разным эпохам обновлений. Проверяйте актуальность рекомендаций и не копируйте чужие конфиги целиком: часть параметров сегодня не имеет эффекта или ведёт себя иначе.
Интерполяция и cl_interp
Параметр cl_interp определяет, на сколько клиент задерживает отображение других игроков ради плавности. Слишком малое значение приводит к дёрганью при потерях пакетов, слишком большое даёт запаздывание попаданий по подвижным целям.
Связанные параметры — cl_updaterate и cl_cmdrate, они задают частоту обмена данными с сервером. Во многих сообществах рекомендуют значения, согласованные с настройками сервера, но универсального числа нет. Меняйте по одному параметру и проверяйте на нескольких матчах.
Выбор сервера в браузере
TF2 использует браузер серверов сообщества, и качество сильно зависит от конкретного сервера. Сортируйте список по пингу, но смотрите и на число слотов, а также на карту и режим. Сервер с пингом 40 мс и перегруженным процессором может быть хуже, чем сервер с пингом 60 мс, работающий стабильно.
Записывайте названия хороших серверов, куда стоит возвращаться. Это надёжнее, чем постоянно подбирать сервер по случайному признаку.
Также обратите внимание на серверы с плагинами: скрипты, работающие на каждый тик, нагружают процессор сервера и создают рывки при том же пинге, что и на соседнем чистом сервере.
Что учитывать в бою
В TF2 много проектилей: ракеты, гранаты, стрелы. Их траектория обрабатывается сервером, а не только вашим клиентом, поэтому при высокой задержке вы видите ракету дольше, чем она есть на самом деле. Научитесь упреждать чуть дальше цели, если ваш пинг выше среднего.
Хитсканеры устроены иначе: они опираются на компенсацию задержки, которая помогает игрокам с большим пингом, но создаёт эффект «я укрылся, а меня всё равно убили» у противников.
Порядок настройки
Сначала выключите фоновые загрузки, потом подключите компьютер кабелем. Затем откройте net_graph и запишите значения на разных серверах. Только после этого меняйте cl_interp и связанные параметры, и по одному.
Если вы возвращаете настройки к стандартным значениям, воспользуйтесь сбросом конфигурации: накопленные ручные правки иногда конфликтуют с обновлением игры и добавляют лишние проблемы.
После всех правок сыграйте не менее трёх матчей на разных серверах и сравните значения net_graph с записанными до изменений. Только устойчивое улучшение на нескольких серверах считается результатом, а разовое — случайностью.
Режимы серверов и настройки под них
В TF2 много режимов: классические карты, серверы сообщества с необычными правилами, соревновательные лобби. Они по-разному нагружают сеть. На серверах с большим числом слотов и множеством проектилей нагрузка выше, чем в компактном режиме шесть на шесть.
Если вы играете в соревновательном формате, пользуйтесь рекомендациями лиги: там часто есть жёсткие требования к сетевым параметрам, и разрешены не все изменения. Меняйте только то, что допустимо правилами, и не забывайте, что некоторые настройки сбрасываются при подключении к серверу с определёнными ограничениями.
На публичных серверах вы свободнее, но и там стоит использовать умеренные значения. Слишком агрессивные параметры частоты обновления могут перегрузить слабый канал и вызвать обратный эффект: потери пакетов вырастут, а картина ухудшится.