Клиентская часть

Что такое ex_interp в cs 1.6

Хотел с Вами уважаемые читатели поделится одной интересной статьёй, по данной команде. Но нашел на просторах интернета намного лучше, чем я сам смог бы написать. Читайте на здоровье…Многие слышали об этой команде, но далеко не все знают, за что она отвечает и как влияет на игру. Сам «я» об этой команде узнал много лет назад, от «Kashei’я«, тогда о ней вообще мало кто знал. Теперь я постараюсь поделиться своими наблюдениями и обобщить информацию, которую можно найти в интернете.

Что это?

Эта команда отвечает за интерполяцию. Интерполяция — сложный аналитический процесс. По полученным данным от сервера, клиент вычисляет приблизительное расположение игроков. То есть «картинка”, которую вы видите в игре, отличается от действительности. Значение параметра определяет частоту, с которой будет вычисляться новое расположение игроков.

Зачем это?

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

Чит это или нет?

Небольшая предыстория. До выхода версии 1.6 в сетевом коде игры был существенный недочет в системе компенсации лага. Система довольно сложная, но приведу простой пример, который покажет принцип ее работы. Между моментом, когда игрок выстреливает в оппонента и сервер получает эту информацию от клиента — проходит некоторое время, после получения команды сервер высчитывает, где находился оппонент в тот момент, когда был произведен выстрел, тем самым компенсировалась разница в скорости подключения игроков. Но, при обработке этой информации, сервер вычислял это используя свое значение ex_interp (0.1 секунда по умолчанию), даже если у клиента это значение отличалось. Это и давало преимущество игрокам, у которых значение было ближе к 0. В версии 1.6 эта проблема устранена.


В чем же заключается преимущество?

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

Можно ли поставить ex_interp 0?

Опять же, до версии 1.6, можно было это сделать. Я так даже играл на турнирах серии LCSC (Latvian Counter-Strike Cup) в Элике, хотя разрешено было 0.05. Преимущество это? Несомненно! Хоть модельки игроков слегка «телепортировались”, но это не мешало начинать стрелять в них немного раньше, чем они меня увидят.

Какое значение должно иметь ex_interp?

Сейчас оптимальное значение высчитывается по формуле 1/(значение cl_updaterate). cl_updaterate отвечает за частоту посылаемой сервером информации. Максимальное значение — 100. Соответственно самое низкое значение — 0.01. Если же Вы играете с другим значением cl_updaterate, то при попытке сменить ex_interp на более низкое значение, клиент автоматически выдаст уведомление и установит значение по выше указанной формуле.

Почему при значении 0.01 у меня на некоторых серверах модели «телепортируются”?

Это обусловлено настройками сервера, а именно значением sv_maxupdaterate. На некоторых серверах, особенно публичных, значение этой переменной порядка 60, что не позволяет серверу посылать достаточного, для столь частых обновлений, количества информации. В результате этой нехватки данных модельки «дергаются”.

Как визуально увидеть разницу между ex_interp 0.1 и 0.01?

Да, человеку очень трудно уловить такую разницу, если учесть, что среднее время реакции человека, даже при совершенных условиях, составляет не менее 150 миллисекунд. Этот способ мне показал crAzik, ещё в 2003 году. Для этого потребуется 2 игрока на одном сервере и pausable 1 на сервере. Встаньте в любом месте, а другой игрок должен на расстоянии от Вас (чем больше расстояние, тем нагляднее) двигаться перпендикулярно вашему взору, то есть пробежать мимо вас. В этот момент включите на сервере паузу и меняйте в консоли значение ex_interp и вы увидите разницу 😀

На закуску: интересные факты

Самым интересным фактом связанным с этой командой, я бы назвал победу российской команды M19, на финале WCG 2002 в Корее. Несмотря на то, что принудительно игроками выставлялся ex_interp и консоль на время игры отключалась, с помощью одного бага, который кстати уже тоже исправлен, можно было вводить команды в консоль через строчку «say”, игроки тем самым смогли себе поставить «читерские” значения ex_interp 😀

 

Автор статьи: Popcha
Источник: http://www.esports-club.ru/
5 3 голоса
Рейтинг статьи

poxmel

Администратор сервера, сайта и группы FanCS.Ru

Подписаться
Уведомление о
guest

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий!x