這段時間有關英雄聯盟季中冠軍賽中RNG被迫重賽的消息,已經成了網路上的一個熱梗。
就算風波已經過去,但這次拳頭賽事官方的安排顯然無法讓人買賬。如果你現在去看比賽就會發現,往往某一邊出現重大失誤,導致局勢向一邊傾倒之後,彈幕往往都會以“不公平!不公平!”、“重賽!重賽!”來調侃(LCK隊伍失誤時,這類彈幕最多)。
之前的採訪中也有強調,職業選手在遊戲中,網路波動幅度達到10ping以上,他們就已經有比較明顯的感覺,而如果ping值太高,就會很大程度上影響選手們的操作。畢竟線上下比賽中,ping值最多也都只有個位數而已。
正是在這樣的情況下,由於賽事官方表示線下參賽隊伍的延遲達到了50ping左右,出於賽事公平的考慮,以RNG重賽三場作為處理辦法。中國觀眾不滿歸不滿,但這件事終究以RNG又一個3/0畫上了句號。
但延遲這個問題,顯然是事件中大家關注的焦點。
或者說,很多人因此開始討論的一個話題是,網路延遲真的有那麽大影響嗎?
我相信對大部分對戰遊戲玩家來說,答案都是肯定的。
網路延遲對於眾多網遊玩家,尤其是FPS玩家而言,應該是一件相當熟悉並且讓人感到痛苦的事情。延遲稍高的時候,可能只是會出現略微的卡頓,這時對於菜鳥(比如我)層面的對局來講,儘管稍有影響,但遊戲體驗整體還是可以接受的(100毫秒以下就是電競)。
可對於頂尖大佬而言,在遊戲裡往往都是見面分生死的節奏,這略微的卡頓,很有可能就是自己輸掉對槍的主要因素。如果自己的網路延遲一直很高,那麽必然會讓玩家感到苦不堪言(最多偶爾將對手“卡死”幾次)。
為了確保賽事抑或是普通玩家遊戲對局的公平性,盡可能地降低遊戲延遲,就成為了這些賽事舉辦方,抑或是遊戲廠商需要著重考慮的一個問題。
不可否認的是,網路延遲這個現象是客觀存在的,尤其是在玩家身處全球各個地區的情況下,就算你的網路狀態再好,地理位置帶來的物理延遲是無法避免的。
這也是強調線下賽事公平性的原因,RNG更是由於線上參賽惹了一身麻煩。但在疫情爆發後,線上賽逐漸成為了不少遊戲職業賽事的主流。去年英雄聯盟的季中冠軍賽就被取消,變成了所謂的季中杯賽,在LPL(中國大陸賽區)LCK(韓國賽區)之間展開。因為雙方距離較近,物理延遲不會太過影響選手們的操作。
同樣的例子,還有已經舉辦很長一段時間線上賽的鬥陣特攻聯賽(OWL),由於這些OWL戰隊分布在全球的天南地北,為了減少網路延遲帶來的影響,選擇按區域劃分了東西部賽區,西部賽區是歐美戰隊之間的較量,而東部賽區便是位於中韓兩國這些戰隊的較量。
但東西部賽區的比賽打完,兩邊的隊伍終究得碰面的,這時候該怎麽辦?答案是西部賽區的戰隊前往夏威夷,和東部賽區的隊伍完成後續比賽。賽事官方經過判斷後,認為延遲最高不會超過90ms——可以說,為了降低延遲好好舉辦一場比賽,大夥真的是用盡了一切手段。
當然,這些都是從職業賽事的角度出發,盡可能降低網路延遲追求公平。普通玩家的要求相對可能會更低一些,但由於自身網路狀況波動等原因,總會遇上幾次網路延遲超高,並且半天都沒改善的情況。
針對這種情況,很多遊戲裡都設定了所謂的延遲補償機制,盡可能讓玩家在網路延遲不同的情況下,仍能擁有比較公平的競技環境以及流暢的遊戲體驗。
遊戲中強調的延遲高以及卡頓,直觀反映就是ping值過高。所謂的ping,就是玩家從客戶端將資料包發送到伺服器然後重新返回的時間。
“敵人走到你面前,瞄準擊中敵人。”
在這個過程中,敵人走到你面前這件事,用了對方一半ping的時間上傳到伺服器,再經過你的一半ping時間後,伺服器將資料發送給你的客戶端。然後下一瞬敵人出現,你進行射擊,經過你一半ping時間後,這次射擊被上傳到伺服器,然後經由伺服器判定此次射擊是否有效。
就算敵我兩個人的ping完全相同,仍然會耗費一個半ping的時間來處理資料。當然,在低延遲狀態下,這個過程帶來的差異幾乎感受不到。
但如果兩人的ping值差距過大,那麽差異就會相當明顯。這就是為什麽“卡”的時候,你明明射中了敵人卻並沒有奏效——因為你射擊的敵人,是用了對方一半ping時間,將自己的位置資料上傳到伺服器,然後又用了你一半ping的時間傳輸給你。
由於你的延遲過高,伺服器給你發送資料包更慢,在你接收到資料並射擊的時候,敵人實際上已經溜之大吉了。為了盡可能解決這個問題,就出現了所謂的延遲補償。
用CS:GO中你擊殺一名敵人這個過程來舉例。
當你開啟延遲補償這個機制之後,你向自己看到的敵人進行射擊,“你開槍”的這個訊息便會被立即傳到伺服器,而延遲補償機制會開始推算你究竟在哪個時刻開的槍——這個過程的延遲會被伺服器回溯,然後檢查“你開槍”這個資料包發出來的情形,經過運算後,伺服器判定你成功擊中目標,然後這個事件得到更新,在你的一半ping時間後,你才能得知目標被擊中的消息。
有的玩家表示自己在開啟延遲補償後,會出現敵人跑過去,然後再倒地的烏龍,甚至有時會出現自己明明沒打到他,但敵人卻被擊中的現象。
發生這種事件,是因為在延遲補償狀態下,伺服器判定你和敵人位置時是建立在慣性上(也就是說它在預判)。伺服器傳遞給你的對方資料,以及傳遞給對方的你的資料,和實際資料相比都存在延遲。如果你的延遲過高並且開啟延遲補償,在遊戲中的直觀感受,就是對面的角色好像變寬並且更容易命中了。
相對來講,這種慣性預判式的延遲補償機制,更適用於馬裡奧賽車等競速遊戲——畢竟CS:GO裡玩家會經常出現peek身位這樣的突變式行動,慣性預測的機制在這時就可能會出現烏龍——你peek一下躲回了掩體,但對面的“高ping戰士”才剛剛看到你出現在螢幕上,然後一擊斃命。
相對來講,由於在賽車類遊戲中慣性明顯更大一些,同時很難像射擊遊戲玩家那樣出現突然的變相,所以將這個機制套用在它們身上的效果也會更好。就算玩家網路狀況不同,部分使用者處於高延遲的狀態下,但伺服器通過及時對玩家的狀態進行更新,就算偶爾出現丟包的情況,也能依靠對前後的資料包進行插值計算,呈現出比較流暢的遊戲體驗。
當然,有CS:GO等正面例子,同樣也會有在延遲補償機制上做得稀爛的反面例子。最為典型的,就是當年育碧的《虹彩六號:圍攻》。而這款曾被萌新和菜鳥戲稱為“虹彩六號:圍觀”的射擊遊戲,同樣也有延遲補償的設定。
只是這個機制實在有些太爛了,或者說是“太賴了”。
具體來說,與《CS:GO》不同,《虹彩六號:圍攻行動》的延遲補償機制,會導致你的位置資料提交給伺服器,伺服器傳輸給敵人的這個過程,擁有比較明顯的延遲。而這個延遲也就意味著,你自己在遊戲對局中的實際位置,永遠會領先於敵人看到的畫面,也就是說移動的人始終會先一步看到對方。
這樣奇怪甚至畸形的延遲補償,配合上這款遊戲本身極短的TTK,導致無數“高ping戰士”能夠輕鬆幹拉秒掉那些架槍的人——因為在你處於不動的狀態下,這個延遲補償機制顯然跟你沒太大關係。
兩個人的畫面看上去也迥然不同:在開啟延遲補償的“高ping戰士”的畫面裡,是自己從掩體後出來後,面前有個菜鳥在發愣,然後一槍秒掉。而這個過程在架槍的低延遲老哥看來,就是突然閃出來個人將自己秒掉,甚至有時候沒看到人,自己就已經不明不白的死了。
補償機制的缺陷,導致很多人在《虹彩六號:圍攻行動》裡動用包括“迅雷減速器(掛在後台下個片)”等各種手段,盡可能地將自己的延遲維持在150-200ping之間,然後就能化身戰神,擁有絲滑而又無敵的遊戲體驗。
這種事情育碧會坐視不管嗎?當然不會,既然我們不會做延遲補償,那我們就將它刪掉——現在的《虹彩六號:圍攻行動》裡,已經不存在所謂的“延遲戰神”,這也使得情況立即發生反轉,低延遲玩家占據絕對優勢,“9ping爺”在對局中更是無往不利。在高延遲的情況下,就算你先手開槍打的對面腦袋冒血,但還是會被對面反手秒掉,看一眼重播,甚至會發現對面一滴血都沒掉……
當然,儘管說了這麽多,大夥真的在玩遊戲的時候,還是盡可能配個狀態好點的網路。畢竟不論廠商對於延時是否有一套“平衡”設定,在化身“高ping戰士”時,無論對敵人還是你自己,都是一次體驗極差的折磨。而平常的排位賽,可不會因為延遲重賽(攤手)。
來源:遊俠網