延遲補(bǔ)償技術(shù)以及帶來的相關(guān)后果
一般情況下,游戲中高延遲的表現(xiàn),可能都是大家在多人游戲中經(jīng)歷過的,或是可以簡單理解的。如:高延遲的玩家在游戲中表現(xiàn)的不是正常的運(yùn)動而是兩點(diǎn)之間的瞬移;高延遲玩家可能對低延遲玩家的位置出現(xiàn)誤判。
但以上的現(xiàn)象顯然已近無法解釋目前現(xiàn)在大多數(shù)游戲的高延遲現(xiàn)象了,因?yàn)楝F(xiàn)在很多使用專用服務(wù)器的多人PVP游戲,會在游戲服務(wù)器中增加延遲補(bǔ)償作為補(bǔ)償高延遲玩家的機(jī)制。而正是這種機(jī)制,往往會讓游戲呈現(xiàn)另外一種景象。下面我們帶大家簡單地了解一下延遲補(bǔ)償?shù)木唧w運(yùn)行原理。
很多使用專用服務(wù)器游戲,首先會在游戲服務(wù)器中設(shè)置一個進(jìn)行延遲補(bǔ)償?shù)拈撝?,比如說,如果服務(wù)器檢測到玩家傳來的數(shù)據(jù)延遲在100ms以上,那就開始對其信息處理進(jìn)行“補(bǔ)償”。
補(bǔ)償機(jī)制簡單的工作流程是,服務(wù)器在接收到高延遲玩家的數(shù)據(jù)之后,在做出判定之前,會把相應(yīng)游戲的游戲世界環(huán)境“倒回”之前一段時間再做判定。
具體可以射擊游戲?yàn)槔?,假如玩?的延遲是50ms,玩家2的延遲是100ms,玩家2在自己的游戲中射擊并準(zhǔn)確地?fù)糁辛舜怪庇谧约阂暯堑呐軇又械耐婕?,玩家2射擊的信息傳輸經(jīng)過50ms到了游戲服務(wù)器,這時服務(wù)器則要根據(jù)目前玩家1的情況對玩家2的射擊是否擊中做出判定,但在這50ms期間,玩家1的位置數(shù)據(jù)恰巧已經(jīng)在服務(wù)器中更新了兩次,這時就極有可能玩家1在服務(wù)器中的位置信息已經(jīng)脫離了玩家2子彈打中的位置。
在沒有延遲補(bǔ)償?shù)那闆r下,玩家2也很可能最終從服務(wù)器那里得不到擊中玩家1的最終反饋。而在有延遲補(bǔ)償?shù)那闆r下,服務(wù)器會在判定玩家2射擊是否擊中玩家1時,會自動將玩家1在游戲服務(wù)器中的“位置(實(shí)際上是Hitbox,具體這里可以簡單地理解為玩家在服務(wù)器中的位置)”退回到之前一段時間,如果在這個例子中服務(wù)器的延遲補(bǔ)償恰好是50ms,那么這里服務(wù)器會判定玩家2恰巧是已經(jīng)擊中了玩家1。
也正是由于延遲補(bǔ)償這一機(jī)制只在服務(wù)器中“拉回”低延遲玩家的“位置(Hitbox)”并不改變低延遲玩家在游戲中的實(shí)際模型位置,所以,其在這種情況下,會很容易讓低延遲玩家在躲到掩體后依然受到傷害。如下圖:
其實(shí),這一奇怪的現(xiàn)象也讓很多玩家誤以為對面玩家是在開掛。至于游戲開發(fā)商為什么要在游戲中設(shè)置延遲補(bǔ)償這一折衷機(jī)制,大家可以在這里看V社關(guān)于這一機(jī)制的解釋(9.游戲涉及中延遲補(bǔ)償?shù)氖褂茫?/span>。
另外,現(xiàn)在也出現(xiàn)了一種EA旗下開發(fā)商DICE在《戰(zhàn)地1》的多人服務(wù)器中使用的新機(jī)制,簡單地說就是服務(wù)器會在一定延遲內(nèi)做少量補(bǔ)償,超過這個延遲則不進(jìn)行延遲補(bǔ)償,玩家需要根據(jù)游戲服務(wù)器的提示在射擊中“打提前量”,如下圖:
真不愧是狗界的kk園區(qū)。
十年磨一劍
你要是《更衣人偶墜入愛河》的粉絲,那接下來可就要做好破防的準(zhǔn)備了……