當然,這些都是從職業(yè)賽事的角度出發(fā),盡可能降低網(wǎng)絡延遲追求公平。普通玩家的要求相對可能會更低一些,但由于自身網(wǎng)絡狀況波動等原因,總會遇上幾次網(wǎng)絡延遲超高,并且半天都沒改善的情況。
針對這種情況,很多游戲里都設定了所謂的延遲補償機制,盡可能讓玩家在網(wǎng)絡延遲不同的情況下,仍能擁有比較公平的競技環(huán)境以及流暢的游戲體驗。
游戲中強調(diào)的延遲高以及卡頓,直觀反映就是ping值過高。所謂的ping,就是玩家從客戶端將數(shù)據(jù)包發(fā)送到服務器然后重新返回的時間。
“敵人走到你面前,瞄準擊中敵人。”
在這個過程中,敵人走到你面前這件事,用了對方一半ping的時間上傳到服務器,再經(jīng)過你的一半ping時間后,服務器將數(shù)據(jù)發(fā)送給你的客戶端。然后下一瞬敵人出現(xiàn),你進行射擊,經(jīng)過你一半ping時間后,這次射擊被上傳到服務器,然后經(jīng)由服務器判定此次射擊是否有效。
即便敵我兩個人的ping完全相同,仍然會耗費一個半ping的時間來處理數(shù)據(jù)。當然,在低延遲狀態(tài)下,這個過程帶來的差異幾乎感受不到。
但如果兩人的ping值差距過大,那么差異就會相當明顯。這就是為什么“卡”的時候,你明明射中了敵人卻并沒有奏效——因為你射擊的敵人,是用了對方一半ping時間,將自己的位置數(shù)據(jù)上傳到服務器,然后又用了你一半ping的時間傳輸給你。
由于你的延遲過高,服務器給你發(fā)送數(shù)據(jù)包更慢,在你接收到數(shù)據(jù)并射擊的時候,敵人實際上已經(jīng)溜之大吉了。為了盡可能解決這個問題,就出現(xiàn)了所謂的延遲補償。
用CS:GO中你擊殺一名敵人這個過程來舉例。
當你開啟延遲補償這個機制之后,你向自己看到的敵人進行射擊,“你開槍”的這個信息便會被立即傳到服務器,而延遲補償機制會開始推算你究竟在哪個時刻開的槍——這個過程的延遲會被服務器回溯,然后檢查“你開槍”這個數(shù)據(jù)包發(fā)出來的情形,經(jīng)過運算后,服務器判定你成功擊中目標,然后這個事件得到更新,在你的一半ping時間后,你才能得知目標被擊中的消息。
有的玩家表示自己在開啟延遲補償后,會出現(xiàn)敵人跑過去,然后再倒地的烏龍,甚至有時會出現(xiàn)自己明明沒打到他,但敵人卻被擊中的現(xiàn)象。
圖源B站:BV1G44y1V7Sg
玩家和粉絲買賬才是硬道理。
君の偽中國語本當上手
大伙真是不管多少歲都有一顆叛逆的心啊。