聊聊遊戲的反作弊系統:為何射擊遊戲外掛現象難以避免?

導語

只要你在電腦上玩過射擊遊戲,或多或少你都聽過甚至遇到過所謂的“神仙”——即那些開掛的惡劣用戶,他們不僅嚴重影響了其他人的遊戲體驗,還讓遊戲本身失去了樂趣,那麼筆者朋友相信你也好奇過:為啥就不能有家遊戲廠商做到“天下無掛”呢?

要回答這個問題,首先我們要了解主流射擊遊戲都是怎麼反外掛的——除了騰訊以及V社外,大多數遊戲廠商選用的都是第三方的反作弊方案,比如《絕地求生》採用的BattleEye,《APEX 英雄》採用的Easy Anti-Cheat ,那麼這些反作弊軟件是如何工作的呢?

首先,反作弊系統本身分為二個目標——第一個是阻止作弊程序的運行,第二個是記錄玩家的軟件數據,以便後續分析及處理,讓我們我們先來談談反作弊軟件如何阻止作弊程序的運行,而外掛又是怎麼繞過去的。

傳統意義上的反作弊

類似BattleEye的反作弊系統第一部分有些類似殺毒軟件——在遊戲啟動前掃描運行環境確保足夠安全,而在運行時保護遊戲程序不受到外掛的修改來做到阻止外掛運行的目的,並確保全程數據都加密發送至相應服務器,如果數據中斷等情況則會中止玩家的會話,而且現代的反作弊軟件也是愈發的聰明瞭,通過可疑行為判斷等方式無需提前獲取外掛特徵碼即可阻止某些外掛的運行。

系統本身的缺陷


聊聊遊戲的反作弊系統:為何射擊遊戲外掛現象難以避免?


那麼外掛是如何破解上訴防禦的呢?一般來說,通過DLL注入甚至內核驅動程序來讓反作弊程序誤以為遊戲本體未作修改,達到癱瘓反作弊的“防禦”部分。為什麼遊戲開發商無法完全堵住這個明顯的漏洞?這因為Windows的漏洞不斷被發現,而由於內核驅動程序是硬件之間通信所需的文件,所以優先級往往高於反作弊程序,還有些作弊程序以(通過黑產等渠道獲取的)合法的數字證書給自身簽名....以致於開發者想完全堵住上述漏洞基本上是不可能完成的任務;話雖如此,開發者仍然可以保護相關內存區域,加密客戶端和服務器之間的通信並重新驗證客戶端中的值等手段來緩解和打擊上述問題。

有時候遊戲會讓這個問題更糟

聊聊遊戲的反作弊系統:為何射擊遊戲外掛現象難以避免?

BUG讓普通玩家被”透視“被”穿牆“

給每個遊戲寫外掛的難度是不太一樣的——例如《絕地求生》這種本身引擎就相對開放而自己代碼水平又不太行的大火遊戲和育碧熱門團隊戰術擬真遊戲《彩虹六號》來對比,你就會發現《絕地求生》的外掛可以說是多到不到哪裡去了,這是因為《絕地求生》寫外掛的時間成本較低,而且反作弊系統大多情況下仍然需要取得一定量的使用該外掛作弊玩家的數據才能封殺,這也就導致了《絕地求生》外掛屢禁不絕的現象...

隱私還是公平,這是一個問題

聊聊遊戲的反作弊系統:為何射擊遊戲外掛現象難以避免?

反作弊系統收集了很多信息

EasyAntiCheat等反作弊系統會在你運行遊戲的全程對你電腦的各種進程以及完整性做出檢驗——即使你運行的單人部分,而且你也不能將它關掉,這也引發了部分玩家對隱私性的擔憂,但實際上在嚴格的歐盟版權法的促進下,反作弊系統是絕對不能將收集到的信息用作其他目的的,他們也都承諾不將收集到的信息用作反作弊之外的用途,不論讀者是否贊同或認為他們的說法,你都不能關閉反作弊系統,因為那樣絕大多數情況下都會被“秋後算賬”

秋後算賬也是很重要的部分

現在,很多反作弊系統在人工的干預前就可以進行攻擊性防禦了——外掛無法篡改(因為加密了)或禁止(因為一禁止遊戲就掉了)反作弊系統發送給自家服務器的上述信息,而這也是反作弊系統打起反攻號角的地方了:別看現在鬧的歡,反作弊系統拉清單,那些異常數據的玩家往往會先暫時停權,檢查後再決定是否放回去。

聊聊遊戲的反作弊系統:為何射擊遊戲外掛現象難以避免?

暫時停權賬戶24小時的提示

遊玩過《絕地求生》的玩家應該知道這是什麼意思:如果一名玩家歷史戰績次次“落地成盒”,然後突然就“八百里外爆了一隊人的頭”,那麼很有可能本局還沒結束就被提示暫時封禁24小時了。

而這時候人工也要發揮作用了——大多數反作弊系統都有類似VAC“監察系統”的東西:即讓工作人員/志願者(一般是信譽較好的玩家)觀看第一人稱畫面,判斷是否玩家是否是外掛,這也是為啥大多數開掛者和主播都不會用“小陀螺”那種暴力外掛,因為一眼看過去就知道你是不是外掛了。

中國特色

這時候要提一下一個數據了——99%的《絕地求生》作弊玩家來自 ,國外在《絕地求生》最火熱的時候有不少網民請願對中國區域鎖定(因為他們受不了神仙),這似乎指出一個有些讓人尷尬的事實:中國的國情導致了外掛的猖獗,在鄰國韓國,開掛、代練等行為皆為犯罪,部分被暴雪抓到的韓國玩家因在《守望先鋒》中作弊被判緩刑2年並罰款,雖然傳播和售賣外掛在中國也屬違法行為,但是普通玩家作弊屬於違法行為這在中國是難以想象的。


聊聊遊戲的反作弊系統:為何射擊遊戲外掛現象難以避免?

某款主播定製外掛

更惡劣的是,某些主播為了自己人氣定製數千一個月的高級外掛,常人很難分辨出來,並且那些外掛本身不存在主播的電腦裡,而是通過虛擬專用網絡等將遊戲數據轉發至外掛服務器,然後讓主播可以通過手機等輕鬆查看敵人位置,這可能也是為什麼五五開敢說“我盧本偉沒有開掛”的原因吧。

非傳統意義反作弊

那麼外掛真的就沒有辦法了嗎?並不是,廠商實際上有二大殺敵神器,讓我來給大家介紹一下:

硬件封禁

聊聊遊戲的反作弊系統:為何射擊遊戲外掛現象難以避免?

開掛的成本很大程度上決定了一名玩家是否開掛——這也是為啥《穿越火線》的掛就基本沒辦法治理(儘管騰訊機智的通過“投票踢人““XX將您請出了房間”來解決付費玩家不爽的問題),畢竟《絕地求生》還要成本不是(雖然並不是98,詳細的產業鏈如果讀者有興趣我們可以那天詳細聊聊),如果一名作弊者面臨者幾千的電腦不能玩這個遊戲/被網管打一頓扭送公安局的風險,那麼他開掛的可能性也就大大降低啦。

實名驗證(中國特色)

聊聊遊戲的反作弊系統:為何射擊遊戲外掛現象難以避免?

現在每個人都用支付寶或微信註冊了自己的網絡實名信息,這也是一些遊戲反作弊採用的終極辦法——完美世界的國服CS就要求芝麻認證才能免費遊玩,這個方法可以極大的提高作弊成本(而且買賣個人實名信息非法),並能作為安全措施有效的減少被盜現象(也因此增加了開掛的成本),並能減少代練等行為,畢竟不太可能借別人自己支付寶微信不是。

延伸:為啥大多數廠商不採用此方法

那麼為啥大多數廠商不願意用這些非傳統方法呢?原因多種多樣,不願硬件鎖和不願實名認證的首要原因都是因為這樣的舉動會減少玩家數量,擔心網吧監管不力封禁設備後玩家轉投別的遊戲,擔心嚴格的實名制會減少某些未成年玩家數量,擔心會讓某些玩家擔心自己隱私等等等等,總之目前來說上述方法並不是主流,畢竟它們要求遊戲開發商犧牲自己的利益來達成一個宏偉的目標,雖然如果作弊現象真的非常猖狂且遊戲仍然火爆的不行(比如《絕地求生》)他們也不會不考慮這些方法——不過往往當作最後手段。

結語

上文就是對反作弊系統和外掛之間相愛相殺的大致介紹了,因為沒有一家反作弊系統會傻到公開自己到底怎麼查殺外掛的,所以說筆者這裡也不能詳細的介紹幕後的原理,也請各位見諒,而最行之有效的減少(並非杜絕)反作弊的方法是“增加開掛成本”,不論是要求玩家開啟二次驗證減少用於開掛的被盜號,還是用時間成本來加大開掛成本(比如《守望先鋒》必須25級才能遊玩競技),甚至一個遊戲多個反作弊系統,只要是對遊戲行之有效的方法我們都應該歡迎廠商的努力,但社會對作弊的認知及抵制也是很重要的——只有當我們像韓國等國學習,用法律而非道德來約束玩家,用切實的目標來讓電子競技成為真正被認可的東西的那一天,我們才有可能大幅度減少外掛玩家。

另外,除了遊戲廠商的不懈努力,作為普通玩家的我們應該在這場“誅仙”戰爭中做什麼呢?當然首先自己不要去嘗試外掛,不要讓他們把你變成和他們一樣的人,及時、詳細的描述疑似作弊玩家,有條件的玩家可以保存錄象作為證據發送給官方——短時間內這場外掛與反外掛之間,遊戲廠商與作弊者之間,我們與“神仙”的戰爭都不會結束,我們也非常需要你的幫助來打贏每一場戰鬥。


分享到:


相關文章: