Компенсация задержки
« | Думал ты хитрее всех, да?
Нажмите, чтобы прослушать
— Шпион о разведчике с высоким пингом
|
» |
Игра Team Fortress 2, как и другие игры на движке Source, приспособлена для компенсирования сетевых задержек. Именно задержки сети — та техническая причина, по которой в игре случаются совсем неправдоподобные вещи: снайпер убивает игрока сквозь стену, удар в грудь засчитывается шпиону как удар в спину, а удар в спину — не засчитывается вообще.
Дело вот в чём. Когда игрок с большой задержкой стреляет, сервер «отматывает» время назад на величину задержки. Например, вражеский снайпер с высокой задержкой стреляет сразу после того, как заметил вас, но остальным видно, что вы уже забежали за угол. После «перемотки» сервер замечает, что в вас был произведен точный выстрел, и наносит вам повреждение, оставляя ощущение «убийства сквозь стену».
Такое решение проблемы сделано намеренно для увеличения реализма атак за счёт реализма повреждений. При отключенной компенсации задержки многие игроки жалуются на то, что их выстрел не доходит до цели, хотя они точно целятся и вовремя стреляют.
Исключения
Данная система не используется для гранат, ракет, шприцов и зарядов ракетницы. У поджигателя не компенсируется ни огонь, ни сжатый воздух, несмотря на то, что на стороне игрока эффекты применяются моментально после выстрела. Из-за этого становится очень трудно играть за поджигателя при высокой задержке.
Зрители не имеют компенсации задержки. Если вы — зритель и следите за каким-либо человеком с высоким пингом, то вы не сможете видеть то же самое, что видит он. Это особенно заметно при наблюдении за снайпером с высокой задержкой: если вы видите промах, то на деле может оказаться, что цель поражена, и наоборот.
См. также
Ссылки
Дополнительный материал о работе движка Source:
- Lag compensation в Сообществе разработчиков Valve
- Latency_Compensating Methods in Client/Server In-game Protocol Design and Optimization в Сообществе разработчиков Valve
- Source Multiplayer Networking в Сообществе разработчиков Valve
- Prediction в Сообществе разработчиков Valve
|