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