Arcaea 反作弊測(cè)試
只是總結(jié)一下我測(cè)試并證實(shí)的信息。
(1) 信息只會(huì)在小p少于一定程度時(shí)上傳至服務(wù)器,條件并非單純的理論或PM。具體閾值有待測(cè)試。
(2) 信息會(huì)累積,每一次開(kāi)始游玩(點(diǎn)擊START進(jìn)入打歌頁(yè)面)時(shí)都會(huì)記錄,且即便中途暫停,重開(kāi)或退出,數(shù)據(jù)也會(huì)被記錄。累積數(shù)量有待測(cè)試。
(3) 信息記錄了從開(kāi)始游玩到結(jié)算(或退出)時(shí),每隔一定時(shí)間的當(dāng)前的游玩分?jǐn)?shù)情況:(分?jǐn)?shù),?連擊數(shù), 血條值, Lost數(shù)量, Far數(shù)量,?小P數(shù)量, 大P數(shù)量)。
(4) 信息中的小數(shù)列表,確認(rèn)為屏幕的按壓壓力,但不一定是真實(shí)的按壓壓力。對(duì)于沒(méi)有壓感的設(shè)備,這個(gè)值是使用ABS_MT_TOUCH_MAJOR和ABS_MT_TOUCH_MINOR計(jì)算的。關(guān)于這些參數(shù)的含義以及如何使用這類(lèi)參數(shù)計(jì)算壓力,請(qǐng)自行參考Linux多點(diǎn)觸控協(xié)議。
(5) 信息中有一個(gè)令人在意的元組,包含四個(gè)整數(shù),形如(int a, int b, int c, int d),目前已經(jīng)確認(rèn)如下:
(暫停次數(shù), 上述小數(shù)列表的參數(shù)(即壓感值)個(gè)數(shù), 正常的點(diǎn)擊屏幕次數(shù), 點(diǎn)擊屏幕次數(shù))。
點(diǎn)擊屏幕“正?!钡呐袛喾椒ǎ?/p>
Arcaea游戲記錄了本次開(kāi)始游玩后所有點(diǎn)擊的屏幕坐標(biāo),如果點(diǎn)擊的屏幕坐標(biāo)已經(jīng)被記錄過(guò)(即已經(jīng)被點(diǎn)按過(guò)),那么該點(diǎn)擊行為判定為不正常,否則記為正常,計(jì)數(shù)+1,并將該坐標(biāo)加入已經(jīng)點(diǎn)擊過(guò)的坐標(biāo)列表。
——
以下是有關(guān)目前版本下變速齒輪、改判、自動(dòng)腳本等識(shí)別情況的分析:
- 變速齒輪可以被精確識(shí)別。根據(jù)上述(3),倘若兩次記錄游玩分?jǐn)?shù)信息間隔的時(shí)間過(guò)長(zhǎng)或進(jìn)度太慢,但游戲暫停次數(shù)對(duì)不上,那么可以直接判定為變速齒輪。
-?完全不點(diǎn)擊屏幕的改判也可以被精確識(shí)別,因?yàn)檫@類(lèi)改判完全不需要點(diǎn)擊屏幕,在上述(5)的參數(shù)將會(huì)明顯異常。
-?只是調(diào)大判定范圍的改判,以我目前了解的信息較難被識(shí)別,因?yàn)檫@類(lèi)改判需要玩家正常點(diǎn)擊屏幕,且分?jǐn)?shù)確實(shí)隨游玩進(jìn)度而上漲。這只是猜測(cè),因?yàn)槲覜](méi)有見(jiàn)過(guò)這樣的程序,無(wú)法測(cè)試。
- 不作任何混淆或反作弊嘗試的模擬觸控自動(dòng)腳本可以被輕易精確識(shí)別,但自動(dòng)腳本也可以輕易繞過(guò)如上的所有信息。我無(wú)法在此展開(kāi)模擬觸控的具體細(xì)節(jié),請(qǐng)根據(jù)(5)自行推斷。目前版本的自動(dòng)腳本已經(jīng)可以在現(xiàn)版本繞過(guò)所有已發(fā)現(xiàn)的信息,即,表現(xiàn)得與真人無(wú)異。