專利名稱:客戶端服務(wù)器、智能終端、網(wǎng)絡(luò)游戲系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)游戲,尤其涉及用于網(wǎng)絡(luò)游戲的客戶端服務(wù)器、智能終端、網(wǎng)絡(luò)游
戲系統(tǒng)和方法。
背景技術(shù):
目前,網(wǎng)絡(luò)游戲越來越受到廣大網(wǎng)友的喜愛,特別是大型多人在線角色扮演游戲(匪0RPG)越來越流行,這種類型的游戲使參與者通過扮演網(wǎng)絡(luò)上的虛擬角色實現(xiàn)虛擬人生,從某種意義上豐富了人們的生活。 —般而言,匪ORPG網(wǎng)絡(luò)游戲系統(tǒng)包括主服務(wù)器和客戶端,具體如圖1所示,圖1示出了傳統(tǒng)匪0RPG網(wǎng)絡(luò)游戲系統(tǒng)的架構(gòu)圖。其中,傳統(tǒng)匪0RPG網(wǎng)絡(luò)游戲系統(tǒng)的主服務(wù)器通常由匪0RPG網(wǎng)絡(luò)游戲的運營商提供,用于運行游戲程序,處理各個玩家扮演的角色之間以及玩家與非玩家扮演的角色之間的邏輯和功能,而客戶端掌握在各個游戲玩家手中,僅僅用于提供圖形化的界面和接收玩家的輸入,它們必須實時與主服務(wù)器交互,才能實現(xiàn)各自具體的游戲活動和交易。客戶端通常被設(shè)置在終端中,隨著移動終端網(wǎng)絡(luò)應(yīng)用的發(fā)展,客戶端越來越多地設(shè)置在移動終端(例如,手機)中,利用移動終端所在的移動通信網(wǎng)絡(luò)與主服務(wù)器進行通信,從而方便各個游戲玩家隨時隨地的參與匪0RPG網(wǎng)絡(luò)游戲。
但是,從這種匪0RPG網(wǎng)絡(luò)游戲系統(tǒng)的架構(gòu)可以看出,主服務(wù)器是整個網(wǎng)絡(luò)游戲的核心,承擔整個游戲的邏輯處理,每個游戲玩家都必須通過客戶端實時地與主服務(wù)器進行交互才能實現(xiàn)各自的游戲活動和交易,這樣,參與的玩家越多,主服務(wù)器負荷就越重,也就越容易造成主服務(wù)器無法正常工作,甚至造成主服務(wù)器癱瘓。 在這種情況下,有人提出由客戶端來實現(xiàn)主服務(wù)器的一些功能,以減輕主服務(wù)器的負荷。然而,這種方式將主服務(wù)器的一些功能暴露給了客戶端,使得有些游戲玩家容易利用客戶端進行作弊,例如利用外掛的手段來非法修改游戲程序和數(shù)據(jù),以此獲得其它游戲玩家無法獲得的或者需要長時間運行游戲程序才能獲得的游戲效果,這嚴重影響了網(wǎng)絡(luò)游戲的公平性,不利于網(wǎng)絡(luò)游戲的健康發(fā)展。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種機制,該機制既能減輕游戲主服務(wù)器的負荷又能防止外掛等作弊手段,從而維護網(wǎng)絡(luò)游戲的公平性和健康發(fā)展。 為了實現(xiàn)上述目的,本發(fā)明提供一種用于網(wǎng)絡(luò)游戲的客戶端服務(wù)器,其與用于網(wǎng)絡(luò)游戲的客戶端和該網(wǎng)絡(luò)游戲的主服務(wù)器通信,并包括 本地數(shù)據(jù)庫,用于存儲來自所述客戶端的信息,該信息包括所述客戶端登錄網(wǎng)絡(luò)游戲的登錄信息和所述客戶端的當前狀態(tài)信息; 判斷模塊,用于判斷來自所述客戶端的請求是否能在所述客戶端服務(wù)器的本地進行處理;和 本地邏輯模塊,用于在所述判斷模塊的判斷結(jié)果為來自所述客戶端的請求能在所述客戶端服務(wù)器的本地進行處理時,處理來自所述客戶端的請求;并用于將所述本地數(shù)據(jù) 庫中存儲的信息同步至所述主服務(wù)器。 本發(fā)明也提供一種智能終端,包括客戶端和上述的客戶端服務(wù)器。
本發(fā)明也提供一種網(wǎng)絡(luò)游戲系統(tǒng),包括上述的智能終端和網(wǎng)絡(luò)游戲的主服務(wù)器,
該網(wǎng)絡(luò)游戲主服務(wù)器用于與所述智能終端進行交互,實現(xiàn)所述智能終端的請求。
本發(fā)明還提供一種網(wǎng)絡(luò)游戲方法,包括步驟 用于網(wǎng)絡(luò)游戲的客戶端發(fā)起游戲請求; 所述客戶端對應(yīng)的客戶端服務(wù)器判斷所述客戶端發(fā)起的游戲請求是否能在客戶 端服務(wù)器的本地進行處理; 在所述客戶端發(fā)起的游戲請求能在客戶端服務(wù)器的本地進行處理的情況下,所述 客戶端服務(wù)器處理所述客戶端發(fā)起的游戲請求。
本發(fā)明的其他特征、目的和益處通過以下結(jié)合附圖的詳細描述將變得更加顯而易 見。其中 圖1示出了傳統(tǒng)匪0RPG網(wǎng)絡(luò)游戲系統(tǒng)的架構(gòu)圖;
圖2示出了根據(jù)本發(fā)明一個實施例的網(wǎng)絡(luò)游戲系統(tǒng)的架構(gòu)圖;
圖3示出了根據(jù)本發(fā)明一個實施例的客戶端服務(wù)器的方框圖;
圖4示出了根據(jù)本發(fā)明一個實施例的網(wǎng)絡(luò)游戲方法的流程圖。
具體實施例方式
下面,結(jié)合附圖詳細描述本發(fā)明的各個實施例。 在圖1所示的傳統(tǒng)匪ORPG網(wǎng)絡(luò)游戲系統(tǒng)中,用戶通過客戶端所進行的任何游戲活 動或交易都必須經(jīng)過主服務(wù)器的處理,因此,主服務(wù)器的負荷過重。事實上,在游戲過程中, 有一些活動沒有必要經(jīng)過主服務(wù)器的處理,例如,兩個確定的客戶端所進行的交易完全可 以在兩個客戶端側(cè)進行處理;客戶端自身所進行的活動或者該客戶端與非玩家扮演的角色 (NPC)所進行的活動,也可以在該客戶端側(cè)進行處理,而沒有必要經(jīng)過主服務(wù)器??紤]到這 種情況,本發(fā)明提出一種如圖2所示的網(wǎng)絡(luò)游戲系統(tǒng)。 圖2示出了根據(jù)本發(fā)明一個實施例的網(wǎng)絡(luò)游戲系統(tǒng)的架構(gòu)圖。如圖2所示,網(wǎng)絡(luò) 游戲系統(tǒng)包括主服務(wù)器1和一個或多個智能終端,智能終端包括一一對應(yīng)的客戶端服務(wù)器 和客戶端。在圖2所示的網(wǎng)絡(luò)游戲系統(tǒng)中,包括兩個智能終端2和3,智能終端2包括客戶 端服務(wù)器20和客戶端21,智能終端3包括客戶端服務(wù)器30和客戶端31,兩個智能終端2 和3具有相似的結(jié)構(gòu)和構(gòu)成。因此,下面省略對智能終端3的描述,僅參照智能終端2來描 述智能終端所包括的客戶端服務(wù)器和客戶端。 主服務(wù)器1運行網(wǎng)絡(luò)游戲程序,實現(xiàn)網(wǎng)絡(luò)游戲的各種邏輯和功能,包括數(shù)據(jù)庫10 和邏輯模塊ll。 數(shù)據(jù)庫10存儲參與該網(wǎng)絡(luò)游戲的各個智能終端的信息,包括智能終端登錄該網(wǎng) 絡(luò)游戲的登錄信息和智能終端的當前狀態(tài)信息。 邏輯模塊11是該網(wǎng)絡(luò)游戲系統(tǒng)的核心部件,與智能終端通信,對參與該網(wǎng)絡(luò)游戲的各個智能終端之間以及智能終端與主服務(wù)器1之間的游戲活動和交易進行邏輯處理。
智能終端2除了能提供輸出和接收游戲玩家的輸入之外,還能處理智能終端2自 身進行的游戲活動以及與特定的智能終端或NPC進行的游戲活動和交易。其中,特定的智 能終端是指在一次游戲活動或交易中,除了與該特定智能終端之外,智能終端2不在同時 與其它終端產(chǎn)生游戲活動或交易。 智能終端2所包括的客戶端服務(wù)器20對能在智能終端2本地進行的游戲活動和 交易進行處理,并與主服務(wù)器1的邏輯模塊11通信,將智能終端2的信息同步到主服務(wù)器1 的數(shù)據(jù)庫10中??蛻舳朔?wù)器20也能在獲得智能終端3的地址信息的情況下,與智能終 端3的客戶端服務(wù)器30進行點對點通信,從而在不需要主服務(wù)器1的參與下實現(xiàn)智能終端 2和3之間的游戲活動和交易。 智能終端2所包括的客戶端21與傳統(tǒng)的客戶端類似,主要提供圖形化界面并接收 游戲玩家的輸入。與傳統(tǒng)客戶端不同的是,客戶端21與唯一對應(yīng)的客戶端服務(wù)器20交互, 而不直接訪問主服務(wù)器l。 下面,參見圖3詳細描述客戶端服務(wù)器。圖3示出了根據(jù)本發(fā)明一個實施例的客 戶端服務(wù)器的方框圖。如圖3所示,客戶端服務(wù)器20包括本地數(shù)據(jù)庫200、判斷模塊210、 本地邏輯模塊220和檢測模塊230。 本地數(shù)據(jù)庫200存儲來自客戶端21的信息,包括客戶端21登錄網(wǎng)絡(luò)游戲的登錄 信息和當前的狀態(tài)信息。 判斷模塊210判斷來自客戶端21的游戲請求是否能在客戶端服務(wù)器20的本地進 行處理。 本地邏輯模塊220與網(wǎng)絡(luò)游戲的主服務(wù)器1通信,將本地數(shù)據(jù)庫200中存儲的來 自客戶端21的信息同步到主服務(wù)器1的數(shù)據(jù)庫10中。本地邏輯模塊220還能處理來自客 戶端21的、不涉及其它客戶端或僅與特定的客戶端發(fā)生游戲活動的游戲請求,這些請求由 于不需要其它各方的信息,所以可以在本地邏輯模塊220的本地進行處理。
檢測模塊230檢測客戶端服務(wù)器20與主服務(wù)器1之間是否通信連接。
下面,參見圖4描述利用上述的網(wǎng)絡(luò)游戲系統(tǒng)執(zhí)行的網(wǎng)絡(luò)游戲方法。圖4示出了 根據(jù)本發(fā)明一個實施例的網(wǎng)絡(luò)游戲方法的流程圖。在圖4所示的游戲方法中,使用智能終 端2和3的游戲玩家已經(jīng)分別通過客戶端21和31注冊并登錄到網(wǎng)絡(luò)游戲中。也就是說, 客戶端服務(wù)器20和30的本地數(shù)據(jù)庫中分別存儲有客戶端21和31的登錄信息和當前狀態(tài) 信息,這些信息經(jīng)過客戶端服務(wù)器20和30的同步使得主服務(wù)器1的數(shù)據(jù)庫10中也存儲有 客戶端21和31的登錄信息和當前狀態(tài)信息。 如圖4所示,首先,客戶端21向客戶端服務(wù)器20發(fā)請求(步驟S400)。 客戶端服務(wù)器20的判斷模塊210接收到來自客戶端21的請求后,判斷該請求是
否能在客戶端服務(wù)器20的本地進行處理(步驟S405)。 在步驟S405的判斷結(jié)果為來自客戶端21的請求能在客戶端服務(wù)器20的本地進 行處理時,本地邏輯模塊220對來自客戶端21的請求進行邏輯處理(步驟S410)。
檢測模塊230檢測客戶端服務(wù)器20與主服務(wù)器1之間是否通信連接(步驟S415)。
在步驟S415的檢測結(jié)果為肯定時,本地邏輯模塊220將對來自客戶端21的請求 的處理結(jié)果作為客戶端21的當前狀態(tài)信息存儲至本地數(shù)據(jù)庫200中,同時還將客戶端21的當前狀態(tài)信息同步至主服務(wù)器1的數(shù)據(jù)庫10中(步驟S420)。 在步驟S415的檢測結(jié)果為否定時,本地邏輯模塊220將對來自客戶端21的請求 的處理結(jié)果作為客戶端21的當前狀態(tài)信息,存儲至本地數(shù)據(jù)庫200中(步驟S425)。
在步驟S405的判斷結(jié)果為來自客戶端21的請求不能在客戶端服務(wù)器20的本地 進行處理時,判斷模塊210判斷客戶端21的請求是否是僅與一特定的客戶端進行游戲活動 (步驟S430)。 在步驟S430的判斷結(jié)果為客戶端21的請求是僅與一特定的客戶端進行游戲活動 時,例如客戶端21的請求是向客戶端31買一貨物時,本地邏輯模塊220向主服務(wù)器1獲取 該特定的客戶端的地址信息,即,客戶端31的地址信息(步驟S435)。 在本地邏輯模塊220獲取到客戶端31的地址信息后,與客戶端31對應(yīng)的本地邏 輯模塊進行點對點通信,以處理客戶端21與客戶端31之間的貨物交易(步驟S440)。
在客戶端21和31之間的貨物交易完成后,即客戶端21從客戶端31處獲得了貨物 并且客戶端31從客戶端21處獲得了貨幣之后,兩個客戶端的當前狀態(tài)信息都發(fā)生了變化, 于是,兩個客戶端所分別對應(yīng)的本地邏輯模塊將處理結(jié)果作為兩個客戶端的當前狀態(tài)信息 存儲至本地數(shù)據(jù)庫中,并同步至主服務(wù)器1的數(shù)據(jù)庫10中(步驟S445)。
在步驟S430的判斷結(jié)果為客戶端21的請求不是僅與一特定的客戶端進行游戲活 動時,本地邏輯模塊220將客戶端21的請求傳送至主服務(wù)器1的邏輯模塊11,由主服務(wù)器 1的邏輯模塊11進行處理(步驟S450)。 本領(lǐng)域的技術(shù)人員應(yīng)當理解,上述的客戶端可以是移動電話,上述的客戶端服務(wù) 器可以設(shè)置于移動電話的智能卡中。 本領(lǐng)域的技術(shù)人員應(yīng)當理解,在本發(fā)明上述實施例的啟示下,可以得到本發(fā)明實 施例的各種變形,并且在不偏離本發(fā)明的精神或范圍的情況下,本文中所定義的一般原理 也可以應(yīng)用到其他實施例中。因此本發(fā)明并不局限于上述的實施例,而且要求與上述所公 開的原理和新穎特征相一致的最廣的范圍。
權(quán)利要求
一種用于網(wǎng)絡(luò)游戲的客戶端服務(wù)器,其與用于網(wǎng)絡(luò)游戲的客戶端和該網(wǎng)絡(luò)游戲的主服務(wù)器通信,并包括本地數(shù)據(jù)庫,用于存儲來自所述客戶端的信息,該信息包括所述客戶端登錄網(wǎng)絡(luò)游戲的登錄信息和所述客戶端的當前狀態(tài)信息;判斷模塊,用于判斷來自所述客戶端的請求是否能在所述客戶端服務(wù)器的本地進行處理;和本地邏輯模塊,用于在所述判斷模塊的判斷結(jié)果為來自所述客戶端的請求能在所述客戶端服務(wù)器的本地進行處理時,處理來自所述客戶端的請求;并用于將所述本地數(shù)據(jù)庫中存儲的信息同步至所述主服務(wù)器。
2. 如權(quán)利要求1所述的客戶端服務(wù)器,其中,所述本地邏輯模塊進一步在所述判斷模 塊的判斷結(jié)果為來自所述客戶端的請求不能在所述客戶端服務(wù)器的本地進行處理時,將所 述客戶端的請求傳送至所述主服務(wù)器進行處理。
3. 如權(quán)利要求1所述的客戶端服務(wù)器,其中,所述判斷模塊進一步判斷所述客戶端的 請求是否是僅與一特定的客戶端進行游戲活動;并且所述本地邏輯模塊在所述判斷模塊的判斷結(jié)果為來自所述客戶端的請求不能在所述 客戶端服務(wù)器的本地進行處理并且所述客戶端的請求是僅與一特定的客戶端進行游戲活 動時,從所述主服務(wù)器獲取所述特定的客戶端的地址信息,并利用該地址信息與所述特定 的客戶端對應(yīng)的客戶端服務(wù)器進行點對點通信,以完成與所述特定的客戶端進行的游戲活 動。
4. 如權(quán)利要求1所述的客戶端服務(wù)器,其中,所述本地邏輯模塊還用于將處理來自所 述客戶端的請求所獲得的處理結(jié)果作為所述客戶端的信息存儲在所述本地數(shù)據(jù)庫中。
5. 如權(quán)利要求1所述的客戶端服務(wù)器,其中,所述客戶端服務(wù)器進一步包括 檢測模塊,用于檢測所述客戶端服務(wù)器與所述主服務(wù)器之間是否通信連接;并且 所述本地邏輯模塊在所述檢測模塊的檢測結(jié)果為肯定時,將所述本地數(shù)據(jù)庫中存儲的所述客戶端的信息和處理來自所述客戶端的請求所獲得的處理結(jié)果作為所述客戶端的當 前狀態(tài)信息同步至所述主服務(wù)器;在所述檢測模塊的檢測結(jié)果為否定時,將處理來自所述 客戶端的請求所獲得的處理結(jié)果作為所述客戶端的當前狀態(tài)信息存儲在所述本地數(shù)據(jù)庫 中。
6. 如權(quán)利要求1所述的客戶端服務(wù)器,其中,所述客戶端為移動電話,并且所述客戶端 服務(wù)器位于該移動電話所使用的智能卡中。
7. —種智能終端,包括 客戶端;和如權(quán)利要求1所述的客戶端服務(wù)器。
8. —種網(wǎng)絡(luò)游戲系統(tǒng),包括 如權(quán)利要求7所述的智能終端;禾口網(wǎng)絡(luò)游戲的主服務(wù)器,用于與所述智能終端進行交互,實現(xiàn)所述智能終端的請求。
9. 一種網(wǎng)絡(luò)游戲方法,包括步驟 用于網(wǎng)絡(luò)游戲的客戶端發(fā)起游戲請求;所述客戶端對應(yīng)的客戶端服務(wù)器判斷所述客戶端發(fā)起的游戲請求是否能在客戶端服務(wù)器的本地進行處理;在所述客戶端發(fā)起的游戲請求能在客戶端服務(wù)器的本地進行處理的情況下,所述客戶 端服務(wù)器處理所述客戶端發(fā)起的游戲請求。
10. 如權(quán)利要求9所述的網(wǎng)絡(luò)游戲方法,還包括在所述客戶端發(fā)起的游戲請求不能在客戶端服務(wù)器的本地進行處理的情況下,所述客 戶端服務(wù)器將所述客戶端發(fā)起的游戲請求傳送至該網(wǎng)絡(luò)游戲的主服務(wù)器進行處理。
11. 如權(quán)利要求9所述的網(wǎng)絡(luò)游戲方法,還包括所述客戶端服務(wù)器進一步判斷所述客戶端的游戲請求是否是僅與一特定的客戶端進 行游戲活動;并且在判斷結(jié)果為來自所述客戶端的游戲請求不能在所述客戶端服務(wù)器的本地進行處理 并且所述客戶端的游戲請求是僅與一特定的客戶端進行游戲活動時,從該網(wǎng)絡(luò)游戲的主服 務(wù)器獲取所述特定的客戶端的信息,并利用該信息與所述特定的客戶端對應(yīng)的客戶端服務(wù) 器進行點對點通信,以完成游戲活動。
12. 如權(quán)利要求9所述的網(wǎng)絡(luò)游戲方法,還包括所述客戶端服務(wù)器將處理所述客戶端發(fā)起的游戲請求所獲得的處理結(jié)果存儲在本地。
13. 如權(quán)利要求9所述的網(wǎng)絡(luò)游戲方法,還包括檢測所述客戶端服務(wù)器與網(wǎng)絡(luò)游戲的主服務(wù)器之間是否通信連接;并且 在檢測結(jié)果為肯定時,所述客戶端服務(wù)器將處理來自所述客戶端的游戲請求所獲得的處理結(jié)果同步至所述主服務(wù)器;在檢測結(jié)果為否定時,所述客戶端服務(wù)器將處理來自所述客戶端的游戲請求所獲得的處理結(jié)果存儲在本地。
全文摘要
本發(fā)明涉及客戶端服務(wù)器、智能終端、網(wǎng)絡(luò)游戲系統(tǒng)和方法。其中,客戶端服務(wù)器與客戶端和主服務(wù)器通信,并包括本地數(shù)據(jù)庫,用于存儲來自客戶端的信息;判斷模塊,用于判斷來自客戶端的請求是否能在客戶端服務(wù)器的本地進行處理;和本地邏輯模塊,用于在判斷模塊的判斷結(jié)果為來自所述客戶端的請求能在客戶端服務(wù)器的本地進行處理時,處理來自客戶端的請求;并用于將本地數(shù)據(jù)庫中存儲的信息同步至主服務(wù)器。利用本發(fā)明可以減輕網(wǎng)絡(luò)游戲的主服務(wù)器的負荷并防止外掛等作弊手段。
文檔編號G06F19/00GK101741653SQ200810177910
公開日2010年6月16日 申請日期2008年11月21日 優(yōu)先權(quán)日2008年11月21日
發(fā)明者劉子瑛, 李丞倍, 李相研, 羅棟元, 金亨一 申請人:愛思開電訊投資(中國)有限公司