Difference between revisions of "Lag compensation/ru"

From Team Fortress Wiki
Jump to: navigation, search
m (Little update)
 
(17 intermediate revisions by 12 users not shown)
Line 1: Line 1:
 
{{DISPLAYTITLE:Компенсация задержки}}
 
{{DISPLAYTITLE:Компенсация задержки}}
 +
{{Quotation|'''Шпион''' о разведчике с высоким пингом|Думал ты хитрее всех, да?|sound=Spy_dominationscout05_ru.wav}}
  
 +
Игра Team Fortress 2, как и другие игры на [[Source Engine/ru|движке Source]], приспособлена для компенсирования сетевых задержек.
 +
Именно задержки сети — та техническая причина, по которой в игре случаются совсем неправдоподобные вещи: [[Sniper/ru|снайпер]] убивает игрока сквозь стену, удар в грудь засчитывается [[Spy/ru|шпиону]] как удар [[backstab/ru|в спину]], а удар в спину — не засчитывается вообще.
  
Игра Team Fortress 2 создана на [[Source Engine/ru|движке Source]], и максимально приспособлена, чтобы компенсировать задержку в игре.
+
Дело вот в чём. Когда игрок с большой задержкой стреляет, сервер «отматывает» время назад на величину задержки. Например, вражеский снайпер с высокой задержкой стреляет сразу после того, как заметил вас, но остальным видно, что вы уже забежали за угол. После «перемотки» сервер замечает, что в вас был произведен точный выстрел, и наносит вам повреждение, оставляя ощущение «убийства сквозь стену».
А что такое задержка в принципе? Задержка - это техническая причина(и явление это, не частое), по которой происходит заторможенность в действиях игроков. Например: вы - снайпер. Стреляя противнику в голову, вы промахиваетесь, при том, что выстрел был точным. Или же играя за шпиона, совершая удар в спину вы внезапно узнаете, что совершили так называемый удар в лицо (неудачная атака).
 
  
Чтобы такое не случалось - сервер пытается как можно точно "перемотать", прочитать информацию о выстреле или ударе и реализовать ее. Таким образом мы можем видеть, что неудачный выстрел снайпера окажется точным через некоторое время(например,когда враг зайдет в укрытие), и все подумают, что убийство произошло сквозь стену.
+
Такое решение проблемы сделано намеренно для увеличения реализма атак за счёт реализма повреждений. При отключенной компенсации задержки многие игроки жалуются на то, что их выстрел не доходит до цели, хотя они точно целятся и вовремя стреляют.
 
 
Такое решение проблемы сделано намеренно, чтобы не возникало казусов с задержкой.
 
  
 
== Исключения ==
 
== Исключения ==
Тем не менее такая система не используется для гранат и ракет. Различные взрывы зарядов тоже не применяются.
+
Данная система не используется для [[grenade/ru|гранат]], [[rocket/ru|ракет]], [[syringe/ru|шприцов]] и [[flare gun/ru|зарядов ракетницы]]. У [[Pyro/ru|поджигателя]] не компенсируется ни [[flamethrower/ru|огонь]], ни [[compression blast/ru|сжатый воздух]], несмотря на то, что на стороне игрока эффекты применяются моментально после выстрела. Из-за этого становится очень трудно играть за поджигателя при высокой задержке.
И не известно, есть ли компенсация задержки у огнемета и шприцемета.
 
  
Если вы - зритель и следите за каким-либо человеком, то вы не сможете видеть точно то, что видит он.
+
Зрители не имеют компенсации задержки. Если вы — зритель и следите за каким-либо человеком с высоким пингом, то вы не сможете видеть то же самое, что видит он. Это особенно заметно при наблюдении за снайпером с высокой задержкой: если вы видите промах, то на деле может оказаться, что цель поражена, и наоборот.
Таким образом если вы видите промах, то на деле оказывается, что цель поражена.
 
  
== См. Также ==
+
== См. также ==
* [[Backstab/ru|Удар в спину]]
+
* [[Backstab/ru#Проблемы|Проблемы с ударом в спину]]
 
* [[Source Engine/ru|Движок Source]]
 
* [[Source Engine/ru|Движок Source]]
  
 
== Ссылки ==
 
== Ссылки ==
Просмотрите дополнительный материал, для того, чтобы узнать как работает [[Source Engine/ru|движок Source]]:
+
Дополнительный материал о работе [[Source Engine/ru|движка Source]]:
  
 
* {{vdc|Lag compensation}}
 
* {{vdc|Lag compensation}}
 +
* {{vdc|Latency_Compensating Methods in Client/Server In-game Protocol Design and Optimization}}
 
* {{vdc|Source Multiplayer Networking}}
 
* {{vdc|Source Multiplayer Networking}}
 
* {{vdc|Prediction}}
 
* {{vdc|Prediction}}
 +
 +
{{Mechanics Nav}}
  
 
[[Category:Gameplay/ru]]
 
[[Category:Gameplay/ru]]

Latest revision as of 20:00, 20 August 2024

«
Думал ты хитрее всех, да?
Шпион о разведчике с высоким пингом
»

Игра Team Fortress 2, как и другие игры на движке Source, приспособлена для компенсирования сетевых задержек. Именно задержки сети — та техническая причина, по которой в игре случаются совсем неправдоподобные вещи: снайпер убивает игрока сквозь стену, удар в грудь засчитывается шпиону как удар в спину, а удар в спину — не засчитывается вообще.

Дело вот в чём. Когда игрок с большой задержкой стреляет, сервер «отматывает» время назад на величину задержки. Например, вражеский снайпер с высокой задержкой стреляет сразу после того, как заметил вас, но остальным видно, что вы уже забежали за угол. После «перемотки» сервер замечает, что в вас был произведен точный выстрел, и наносит вам повреждение, оставляя ощущение «убийства сквозь стену».

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

Исключения

Данная система не используется для гранат, ракет, шприцов и зарядов ракетницы. У поджигателя не компенсируется ни огонь, ни сжатый воздух, несмотря на то, что на стороне игрока эффекты применяются моментально после выстрела. Из-за этого становится очень трудно играть за поджигателя при высокой задержке.

Зрители не имеют компенсации задержки. Если вы — зритель и следите за каким-либо человеком с высоким пингом, то вы не сможете видеть то же самое, что видит он. Это особенно заметно при наблюдении за снайпером с высокой задержкой: если вы видите промах, то на деле может оказаться, что цель поражена, и наоборот.

См. также

Ссылки

Дополнительный материал о работе движка Source: