延迟补偿
| “ | 停止卡顿,开始战斗!
点击试听 (英语)
— 士兵
|
” |
《军团要塞2》,一款基于起源引擎的游戏,经过了大量调整以使用延迟补偿(lag compensation)。很多时候,玩家们会在游戏中遇到一些不可能发生的事情或是达成一些不应该发生的击杀事件,而这些很多都是由延迟补偿造成的;例如玩家被狙击手“穿墙”击杀、被间谍以不正确的角度背刺(即众所周知的面刺)或是本该为背刺的攻击变为了普通攻击(即背刺失败)。
当一名高延迟(高 PING)玩家攻击时,游戏服务器就会对此行为的副本进行暂时的“倒带”,作为对这些高延迟玩家的一种补偿。例如,当敌方狙击手(高延迟玩家)看到你并朝你开枪,而那时候对于你以及其他大部分玩家(假设你们的延迟都不错)而言,可能认为你已经成功地躲到了障碍物后面;但由于延迟补偿功能,服务器在接收到狙击手开火的信息后,会将所发生的一切“倒带”进行分析,在结合狙击手的延迟数值以及其他信息经行分析后,得出了“狙击手击中了你”的结论,因此这时候就会对你加以伤害,所以就会出现你看似被狙击手“穿墙”击杀的现象。
延迟补偿是游戏中一种刻意的设定,是一种折中的选择,它牺牲了游戏在伤害判定方面的真实感来弥补攻击行为方面的真实感。若游戏的延迟补偿被禁用,那么就会由于命中判定而出现更多看似打中了对方却没有造成任何伤害的情况,这在近战武器上更为严重。
例外
火箭发射器、榴弹发射器、注射枪以及信号枪等武器不受延迟补偿的影响。火焰兵的压缩气爆和火焰喷射器也不受延迟补偿影响,虽然相关的攻击效果会立刻出现在玩家的游戏画面中。总之,火焰兵是在高延迟情况下最难玩的兵种。
观察者玩家没有延迟补偿。如果你正在以第一人称视角观察某个高延迟的玩家,那么你看到的画面与他所看到的画面是不完全一样的,你看到的画面与服务器认为的画面也不完全一样。这点在观察高延迟的狙击手玩家时尤为明显,从你的视角很可能会看到他漏枪但是却成功击杀对方或是画面不停的抖动。
更新历史
- 修复了当玩家使用近战武器攻击队友时的延迟补偿问题。
另见
外部链接
以下文章进一步说明了起源引擎游戏中的延迟补偿功能是如何工作的:
- Lag compensation (英语) ,源于 Valve 开发者社区 (英语)
- Latency_Compensating Methods in Client/Server In-game Protocol Design and Optimization (英语) ,源于 Valve 开发者社区 (英语)
- Source Multiplayer Networking (英语) ,源于 Valve 开发者社区 (英语)
- Prediction (英语) ,源于 Valve 开发者社区 (英语)
| ||||||||||||||