為何FPS游戲總是外掛的重災區?
恰好昨天說到APEX,不少小伙伴也評論說這個游戲現在外掛同樣滿天飛了~而AKA晚上看直播,也剛好看到主播被外掛氣到換游戲。那么就說下為什么FPS游戲在外掛問題上如此難治理,回答內容涉及一些專業名詞也許有誤,歡迎專業人事指正。
FPS游戲玩的人多這是一句廢話,但也是最重要的原因。畢竟游戲玩的人多,外掛才好賣。那么有的人可能要問了,DOTA,LOL等MOBA游戲同樣玩的人很多,為何就不像射擊游戲那樣泛濫?這是因為這兩類游戲與服務器的數據交互方式不同所造成的。
外掛的工作機制先說個曾經最常見的MMORPG類型游戲,比如我們熟知的WOW。在這類游戲中,你的角色的一舉一動(例如:跑步,攻擊,放技能)都是由你向服務器發送了一個請求,服務器再返回給你的客戶端一個命令,你的角色才會執行這個操作。
這一點在游戲出現延遲的時候,最容易理解。例如上圖中這個角色,我按了快捷鍵釋放技能,角色在客戶端做出了放技能的動作,但是由于服務器延遲了,所以我的角色就只能一直搓啊搓,就是不把技能扔出來。
而現在外掛想把我的技能釋放時間從3s修改到瞬發,那么就要向服務器發送一個“不合理”的請求,服務器收到請求發現不合理啊~ 于是就先拿小本本把你記上,回頭分析一下再找你算賬。
而在FPS游戲中卻不是這樣,FPS游戲的運算量非常的大,你的視角每次移動,哪怕只動了0.1毫米,也要向服務器發送一次請求。而實際游戲中,人物移動,視角轉動的次數數不勝數,如果每一個動作都向服務器請求的話,那么數據量太大,服務器就會算不過來,然后造成延遲。
所以,FPS游戲中,我們的動作都是在你的電腦本地先算好了,再把算好的結果給服務器發過去。
我們還是拿游戲延遲的時候來舉例,APEX中如果出現高延遲,就不會像WOW里那樣,角色有跑步的動作,但是卻沒有移動。而是像圖中這樣移動了一段舉例,然后突然瞬移回原地,圖中你移動的這段距離就是本地運算完成的,而瞬移回來是服務器還沒收到你移動的結果,于是把你拎了回來。
既然FPS游戲是把本地運算后的結果交給服務器,那么本地運算的過程,外掛是可以對其進行修改的。FPS游戲中常見的鎖頭掛,外掛最終遞交給服務器的只是一個爆頭擊殺的結果,這個結果對服務器來說,是合理的。而不是像WOW里那樣3s的施法時間強行瞬發這樣“不合理”。
最后舉個例子來說明這兩種情況:
RPG游戲的外掛就像上課老師點名回答問題,你要立刻回答正確的答案,否則就罰站。
FPS游戲的外掛則像老師布置作業下午交,你可以去抄別人的,然后交給老師。
最后說回MOBA最后回答一開的問題,LOL,DOTA這些游戲人也很多,為何沒有那么嚴重的外掛情況?主要原因就是和WOW的情況相同,MOBA游戲同樣每個動作都要請求服務器來完成。
另外是AKA我個人看法,MOBA的戰況比較復雜,不像FPS游戲只要實現將子彈打到敵人頭上這個結果就OK了;而MOBA里,技能放給誰?放到哪?什么時候放?這里頭講究就太多了,所以MOBA常見的外掛僅僅是全圖而已。
以上,我是AKA君,都看到這了有氣質的你不加個關注么~?