游戲作弊的識別及處理方法、裝置、系統(tǒng)及服務(wù)器的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及游戲控制領(lǐng)域,尤其涉及一種游戲作弊的游戲作弊的識別及處理方法、裝置、系統(tǒng)及服務(wù)器。
【背景技術(shù)】
[0002]隨著移動端游戲的用戶的飛速增長,移動端游戲類型也越來越多,與其他游戲類型一樣,移動端游戲一直飽受用戶作弊問題的困擾,特別是單機類型的移動端游戲。用戶通過篡改游戲客戶端數(shù)據(jù)、攔截付費、修改本地時間等行為可以在游戲中牟取利益,而通過這些不正當?shù)挠螒蚍绞侥怖男袨椴粌H難以監(jiān)控,同時給游戲開發(fā)者帶來大量的經(jīng)濟損失,因而防作弊設(shè)計在游戲開發(fā)中顯得尤為重要。
[0003]當下的移動端游戲通常會將游戲數(shù)據(jù)保存于移動客戶端與開發(fā)者服務(wù)器,根據(jù)游戲類型不同,數(shù)據(jù)保存的具體方式也有所差異。網(wǎng)絡(luò)游戲通常將用戶數(shù)據(jù)保存于服務(wù)端,而客戶端主要包含游戲資源等不會因為玩家行為而發(fā)生改變的數(shù)據(jù)。單機游戲由于其單機的性質(zhì),玩家無法在游戲過程中保持聯(lián)網(wǎng),因而無法將游戲數(shù)據(jù)實時傳入服務(wù)器,故單機游戲通常將游戲數(shù)據(jù)與游戲資源均保存于客戶端。
[0004]基于這樣的數(shù)據(jù)保存方式,通常的防作弊手段包含兩個層面,一是在游戲設(shè)計時通過系統(tǒng)設(shè)計建立合理的防范機制,另一層面是通過程序技術(shù)手段結(jié)合系統(tǒng)設(shè)計對游戲數(shù)據(jù)進行監(jiān)控防范以及防止游戲破解等。對于單機游戲而言,目前的防作弊手段均不能起到很好的效果。由于所有游戲數(shù)據(jù)都保存在客戶端,單機游戲甚至不能防范通過修改本地時間等簡單的作弊手段獲取游戲利益的問題。這使得開發(fā)者在制作單機游戲時,游戲系統(tǒng)受到了巨大的限制。如注重養(yǎng)成的游戲類型,由于資源獲取方式多以天為單位,以單機游戲形式存在時則很難防范玩家通過修改本地時間提前獲取游戲資源行為,而其他簡單的修改本地數(shù)據(jù)的作弊方式也均難以防范。故在此急需一種單機游戲防作弊設(shè)計,從游戲設(shè)計及程序設(shè)計層面解決單機游戲的作弊問題。
[0005]目前的防作弊方案有:
[0006]方案A、對客戶端代碼及數(shù)據(jù)進行程序加密,防止玩家破解客戶端并對客戶端數(shù)據(jù)進行篡改。該方案主要依賴于程序的加密方式。
[0007]通過對客戶端代碼及數(shù)據(jù)進行加密是非常常見的防作弊手段。特別是在單機游戲中,開發(fā)者無法將用戶數(shù)據(jù)儲存于服務(wù)端,只能通過加密保護的方式防止玩家篡改數(shù)據(jù)進行作弊。但是這樣的防作弊方案完全依賴于加密的可靠程度,通常無法徹底防止加密程序被用戶破解,而往往一旦被成功一次,其他用戶都可利用同樣的破解方法牟利。同時對于較為復(fù)雜的游戲系統(tǒng),通常會在游戲中設(shè)計依賴于時間的玩法系統(tǒng),通過程序加密的方式并不能防止玩家通過修改客戶端設(shè)備的本地時間,而從時間依賴型的玩法中獲利的情況。
[0008]方案B、將用戶數(shù)據(jù)儲存于服務(wù)端,在服務(wù)端對玩家的異常數(shù)據(jù)進行監(jiān)控篩查防止作弊行為發(fā)生。該方案包含對異常數(shù)據(jù)的甄別及作弊處理兩方面。
[0009]將用戶數(shù)據(jù)儲存于服務(wù)端是網(wǎng)絡(luò)游戲常用的防作弊手段。然而這種方式需要將用戶游戲過程中的重要數(shù)據(jù)實時傳送至服務(wù)端,才可以對其進行鑒別與處理,整個游戲過程中均要求客戶端與服務(wù)端保持暢通的實時通訊。對于單機游戲而言,這樣的防作弊設(shè)計幾乎是不可實現(xiàn)的,因為單機游戲的用戶多數(shù)情況下均處于非聯(lián)網(wǎng)狀態(tài),強聯(lián)網(wǎng)要求將嚴重影響用戶的正常游戲。
【發(fā)明內(nèi)容】
[0010]本發(fā)明目的在于提供一種通過系統(tǒng)設(shè)計結(jié)合弱聯(lián)網(wǎng)方法以達到防止游戲用戶通過作弊行為在游戲中牟利的方法,無需過度依賴客戶端加密的可靠性,同時結(jié)合弱聯(lián)網(wǎng)方式解決客戶端無法甄別本地時間篡改的問題,尤其針對單機游戲的特點,通過系統(tǒng)設(shè)計避開了傳統(tǒng)聯(lián)網(wǎng)防作弊手段需要實時聯(lián)網(wǎng)監(jiān)控要求。
[0011]為實現(xiàn)上述目的,本發(fā)明提供一種游戲作弊的識別及處理方法、裝置、系統(tǒng)及服務(wù)器,能夠在弱聯(lián)網(wǎng)的情況下,通過有效監(jiān)控客戶端的游戲數(shù)據(jù)來甄別玩家的作弊行為,并對發(fā)生作弊行為的客戶端數(shù)據(jù)進行處理。
[0012]本發(fā)明實施例提供了一種游戲作弊的識別及處理方法,包括:
[0013]在游戲過程中響應(yīng)用戶獲取虛擬物品/虛擬憑證的觸發(fā)請求,向服務(wù)器發(fā)送請求以獲取所述虛擬物品/虛擬憑證;其中,所述虛擬物品/虛擬憑證作為所述游戲中的必要資源的獲取路徑的權(quán)限鑰匙或游戲中主要玩法的開啟權(quán)限鑰匙;
[0014]在向服務(wù)器發(fā)送請求以獲取所述虛擬物品/虛擬憑證的同時,將所述游戲相關(guān)的第一游戲數(shù)據(jù)上傳給所述服務(wù)器,由所述服務(wù)器對所述第一游戲數(shù)據(jù)進行作弊識別及處理;
[0015]接收服務(wù)器返回的可發(fā)放虛擬物品/虛擬憑證信息及對應(yīng)的虛擬物品/虛擬憑證;其中,所述可發(fā)放虛擬物品/虛擬憑證信息為所述服務(wù)器對所述請求認證通過后生成的;
[0016]接收服務(wù)器返回的第二游戲數(shù)據(jù);其中,若服務(wù)器基于所述第一游戲數(shù)據(jù)識別用戶不存在作弊行為時,所述第二游戲數(shù)據(jù)與所述第一游戲數(shù)據(jù)一致;若服務(wù)器基于所述第一游戲數(shù)據(jù)識別用戶存在作弊行為時,所述第二游戲數(shù)據(jù)為服務(wù)器根據(jù)預(yù)設(shè)的作弊處理方案對所述第一游戲數(shù)據(jù)進行處理后得到的。
[0017]作為上述方案的改進,所述識別及處理方法還包括步驟:
[0018]接收服務(wù)器返回的不可發(fā)放虛擬物品/虛擬憑證信息;其中,所述不可發(fā)放虛擬物品/虛擬憑證信息為所述服務(wù)器對所述請求認證不通過后生成的。
[0019]作為上述方案的改進,在向服務(wù)器發(fā)送請求以獲取所述虛擬物品/虛擬憑證的同時,還將用戶的唯一ID信息附到所述請求中,使所述服務(wù)器基于所述ID信息對所述請求進行認證以及記錄用戶的虛擬物品/虛擬憑證獲取完成時間;其中,所述ID信息為用戶首次向服務(wù)器發(fā)送請求以獲取所述虛擬物品/虛擬憑證時由服務(wù)器分配的。
[0020]作為上述方案的改進,所述服務(wù)器基于所述ID信息對所述請求進行認證具體包括:
[0021]若所述ID信息對應(yīng)的用戶的虛擬物品/虛擬憑證獲取完成時間的記錄顯示用戶的獲取頻率大于預(yù)設(shè)的領(lǐng)取頻率,則對所述請求認證不通過;
[0022]若所述ID信息對應(yīng)的用戶的虛擬物品/虛擬憑證獲取完成時間的記錄顯示用戶的獲取頻率小于預(yù)設(shè)的領(lǐng)取頻率,則對所述請求認證通過。
[0023]作為上述方案的改進,所述預(yù)設(shè)的領(lǐng)取頻率為一天一次或一周一次。
[0024]作為上述方案的改進,所述將所述游戲相關(guān)的第一游戲數(shù)據(jù)上傳給所述服務(wù)器,由所述服務(wù)器對所述第一游戲數(shù)據(jù)進行作弊識別及處理具體包括:
[0025]將本地的第一游戲數(shù)據(jù)上傳給所述服務(wù)器,由所述服務(wù)器將所述第一游戲數(shù)據(jù)與所述ID信息對應(yīng)的服務(wù)端備份數(shù)據(jù)進行對比,從而識別出所述第一游戲數(shù)據(jù)是否存在作弊行為的異常數(shù)據(jù)并做相應(yīng)的處理。
[0026]作為上述方案的改進,所述預(yù)設(shè)的作弊處理方案包括:游戲鎖死或異常數(shù)據(jù)恢復(fù)。
[0027]本發(fā)明實施例對應(yīng)提供了一種游戲作弊的識別及處理裝置,包括:
[0028]請求憑證發(fā)送模塊,用于在游戲過程中響應(yīng)用戶獲取虛擬物品/虛擬憑證的觸發(fā)請求,向服務(wù)器發(fā)送請求以獲取所述虛擬物品/虛擬憑證;其中,所述虛擬物品/虛擬憑證作為所述游戲中的必要資源的獲取路徑的權(quán)限鑰匙或游戲中主要玩法的開啟權(quán)限鑰匙;
[0029]游戲數(shù)據(jù)上傳模塊,用于在所述請求發(fā)送模塊向服務(wù)器發(fā)送請求以獲取所述虛擬物品/虛擬憑證的同時,將本地的第一游戲數(shù)據(jù)上傳給所述服務(wù)器,由所述服務(wù)器對所述第一游戲數(shù)據(jù)進行作弊識別及處理;
[0030]第一憑證信息接收模塊,用于接收服務(wù)器返回的可發(fā)放虛擬物品/虛擬憑證信息及對應(yīng)的虛擬物品/虛擬憑證;其中,所述可發(fā)放虛擬物品/虛擬憑證信息為所述服務(wù)器對所述請求認證通過后生成的;
[0031]游戲數(shù)據(jù)接收模塊,用于接收服務(wù)器返回的第二游戲數(shù)據(jù);其中,若服務(wù)器基于所述第一游戲數(shù)據(jù)識別用戶不存在作弊行為時,所述第二游戲數(shù)據(jù)與所述第一游戲數(shù)據(jù)一致;若服務(wù)器基于所述第一游戲數(shù)據(jù)識別用戶存在作弊行為時,所述第二游戲數(shù)據(jù)為服務(wù)器根據(jù)預(yù)設(shè)的作弊處理方案對所述第一游戲數(shù)據(jù)進行處理后得到的。
[0032]作為上述方案的改進,所述裝置還包括:
[0033]第二憑證信息接收模塊,用于接收服務(wù)器返回的不可發(fā)放虛擬物品/虛擬憑證信息;其中,所述不可發(fā)放虛擬物品/虛擬憑證信息為所述服務(wù)器對所述請求認證不通過后生成的。
[0034]作為上述方案的改進,所述請求憑證發(fā)送模塊還用于:在向服務(wù)器發(fā)送請求以獲取所述虛擬物品/虛擬憑證的同時,還將用戶的唯一ID信息附到所述請求中,使所述服務(wù)器基于所述ID信息對所述請求進行認證以及記錄用戶的虛擬物品/虛擬憑證獲取完成時間;其中,所述ID信息為用戶首次向服務(wù)器發(fā)送請求以獲取所述虛擬物品/虛擬憑證時由服務(wù)器分配的。
[0035]作為上述方案的改進,所述服務(wù)器基于所述ID信息對所述請求進行認證具體包括:
[0036]若所述ID信息對應(yīng)的用戶的虛擬物品/虛擬憑證獲取完成時間的記錄顯示用戶的獲取頻率大于預(yù)設(shè)的領(lǐng)取頻率,則對所述請求認證不通過;
[0037]若所述ID信息對應(yīng)的用戶的虛擬物品/虛擬憑證獲取完成時間的記錄顯示用戶的獲取頻率小于預(yù)設(shè)的領(lǐng)取頻率,則對所述請求認證通過。
[0038]作為上述方案的改進,所述預(yù)設(shè)的領(lǐng)取頻率為一天一次或一周一次。
[0039]作為上述方案的改進,所述游戲數(shù)據(jù)上傳模塊將本地的第一游戲數(shù)據(jù)上傳給所述服務(wù)器后,由所述服務(wù)器將所述第一游戲數(shù)據(jù)與所述ID信息對應(yīng)的服務(wù)端備份數(shù)據(jù)進行對比,從而識別出所述第一游戲數(shù)據(jù)是否存在作弊行為的異常數(shù)據(jù)并做相應(yīng)的處理。
[0040]作為上述方案的改進,所述預(yù)設(shè)的作弊處理方案包括:游戲鎖死或異常數(shù)據(jù)恢復(fù)。
[0041]本發(fā)明實施例還提供了一種游戲作弊的識別及處理方法,包括:
[0042]接收客戶端發(fā)送的獲取所述虛擬物品/虛擬憑證的請求;其中,所述請求為所述客戶端在游戲過程中響應(yīng)用戶獲取虛擬物品/虛擬憑證的觸發(fā)請求而生成的;而所述虛擬物品/虛擬憑證作為所述游戲中的必要資源的獲取路徑的權(quán)限鑰匙或游戲中主要玩法的開啟權(quán)限鑰匙;
[0043]在接收所述請求的同時接收所述客戶端上傳的所述游戲相關(guān)的第一游戲數(shù)據(jù);
[0044]在對所述請求認證通過的情況下向所述客戶端返回發(fā)放虛擬物品/虛擬憑證信息及對應(yīng)的虛擬物品/虛擬憑證;
[0045]對所述第一游戲數(shù)據(jù)進行作弊識別及處理:若識別用戶不存在作弊行為時,則直接將所述第一游戲數(shù)據(jù)返回給所述客戶端;若識別用戶存在作弊行為時,則根據(jù)預(yù)設(shè)的作弊處理方案對所述第一游戲數(shù)據(jù)進行處理后得到的第二游戲數(shù)據(jù)并返回給