對網絡游戲信息進行處理的方法及服務器的制造方法
【技術領域】
[0001]本發明涉及網絡信息處理技術,尤其涉及對網絡游戲信息進行處理的方法及服務器。
【背景技術】
[0002]網絡游戲,英文名稱為Online Game,又稱“在線游戲”,簡稱“網游”。指以互聯網為傳輸媒介,以游戲運營商服務器和用戶計算機為處理終端,以游戲客戶端為信息交互窗口的個體性多人在線游戲。
[0003]網絡游戲是區別與單機游戲而言的,指玩家必須通過互聯網連接來進行多人游戲;一般指由多名玩家通過計算機網絡在虛擬的環境下對人物角色及場景進行操作以達到互動目的的游戲產品集合。
[0004]下面具體以網絡游戲中的桌游為例進行說明,桌游泛指諸如棋類、牌類、益智游戲等,具體如游戲運營商推出的游戲大廳中的斗地主、英雄殺等游戲。實際應用中,一個房間內有多個桌子;如在斗地主游戲中3個人在一起玩,就對應一個桌子,每個玩家手上的牌稱為卡牌。在游戲過程中,玩家出牌,客戶端向服務器發送包含游戲數據的網絡游戲請求;月艮務器對網絡游戲請求進行處理,并反饋處理后的響應提示消息。
[0005]下面結合圖1的實例,對現有技術中對網絡游戲信息進行處理的方案進行說明。
[0006]該實例中,一個房間有兩個桌子,每個桌子是獨立的,相互之間沒有交互,這里以桌子I為例,該桌子有3個玩家,玩家a、玩家b和玩家C,分別采用各自計算機上的游戲客戶端與服務器進行信息交互。在服務器側,進程創建桌子1,進程為桌子I申請內存空間1,用于存儲游戲數據;在游戲過程中,進程單元接收來自玩家的包含游戲數據的網絡游戲請求后,直接對網絡游戲進行管理,包括:結合游戲數據和游戲額外狀態,確定于網絡游戲請求匹配的邏輯模塊,將網絡游戲請求發送給確定出的邏輯模塊;相應邏輯模塊對網絡游戲請求進行處理,并將處理過程中生成的上下文數據反饋給進程單元;進程單元在內存空間I中對應各邏輯單元存儲上下文數據。圖1的實例中,當玩家a發送包含數據I的網絡游戲請求到桌子I;在服務器側,進程單元判斷出需要邏輯模塊I處理,則調用邏輯模塊1,邏輯模塊I處理完后,將處理過程中生成的上下文數據反饋給進程進行存儲,并返回處理結果給玩家b ;玩家b發送包含數據2的網絡游戲請求給桌子1,在服務器側,進程單元判斷出需要邏輯模塊2處理,則調用邏輯模塊2,邏輯模塊2處理完后,將處理過程中生成的上下文數據反饋給進程進行存儲,并返回處理結果給玩家c ;類似地,后續需要邏輯3處理。邏輯模塊I處理時執行邏輯1,邏輯模塊2處理時執行邏輯2,邏輯模塊3處理時執行邏輯3 ;從圖中可以看出,邏輯I與邏輯2之間實際上是兩條不同的路徑,兩者之間需要通過上下文數據來聯系,所以進程單元需要對應邏輯模塊I保存上下文數據,供邏輯模塊2使用,同理進程需要對應邏輯模塊2保存上下文數據,供邏輯模塊3使用;如果游戲中交互次數較多,則需要進程調用更多邏輯模塊進行處理,保存的數據就會增多,相應地進程單元需要進行管理的數據增多。
[0007]發明人在實際應用中發現,由于一個進程單元可以創建多個桌子,且邏輯較多、分布發散;當進程單元接收某一桌子的網絡游戲請求后,需要找到與相應桌子對應的內存空間,進而確定并查找對應的邏輯;但由于進程創建的桌子較多,且包含的邏輯較多,這容易導致邏輯容易混亂,可能出現操作錯誤。
【發明內容】
[0008]本發明提供了一種對網絡游戲信息進行處理的方法,該方法能夠使對網絡游戲信息的邏輯處理更加清晰,提高操作準確度。
[0009]本發明提供了一種對網絡游戲信息進行處理的服務器,該服務器能夠使對網絡游戲信息的邏輯處理更加清晰,提高操作準確度。
[0010]一種對網絡游戲信息進行處理的方法,該方法包括:
[0011]進程單元接收游戲編號和包含游戲數據的網絡游戲請求,將網絡游戲請求發送給與游戲編號對應的協程單元;
[0012]協程單元獲取自身存儲空間內的上下文數據,根據游戲數據和上下文數據確定出與網絡游戲請求對應的邏輯模塊,將網絡游戲請求發送給確定出的邏輯模塊;
[0013]邏輯模塊結合游戲數據和上下文數據,進行對網絡游戲請求的處理,并在所述存儲空間中存儲處理過程中生成的上下文數據。
[0014]一種對網絡游戲信息進行處理的服務器,該服務器包括進程單元和協程單元,所述協程單元包括邏輯判斷模塊、邏輯模塊和存儲模塊;
[0015]所述進程單元,接收游戲編號和包含游戲數據的網絡游戲請求,發送給與游戲編號對應的協程單元的邏輯判斷模塊;
[0016]所述邏輯判斷模塊,接收來自所述進程單元的網絡游戲請求,在存儲模塊獲取存儲的上下文數據,根據游戲數據和上下文數據確定出與網絡游戲請求對應的邏輯模塊,將網絡游戲請求發送給確定出的邏輯模塊;
[0017]所述邏輯模塊,接收來自所述邏輯判斷模塊的網絡游戲請求,結合游戲數據和上下文數據,進行對網絡游戲請求的處理,并將處理過程中生成的上下文數據發送給所述存儲模塊進行存儲;
[0018]所述存儲模塊,用于存儲上下文數據。
[0019]從上述方案可以看出,本發明中,進程單元接收游戲編號和包含游戲數據的網絡游戲請求,將網絡游戲請求發送給與游戲編號對應的協程單元;協程單元獲取自身存儲空間內的上下文數據,根據游戲數據和上下文數據確定出與網絡游戲請求對應的邏輯模塊,將網絡游戲請求發送給確定出的邏輯模塊;邏輯模塊結合游戲數據和上下文數據,進行對網絡游戲請求的處理,并在所述存儲空間中存儲處理過程中生成的上下文數據。本發明設置協程單元,每個協程單元不僅包含各自的存儲空間,還包含邏輯模塊;本發明中,由協程單元確定進行游戲處理的邏輯模塊,并由協程單元對處理過程中生成的上下文數據進行存儲。將現有技術中由進程單元直接完成的游戲處理劃分給協程單元,每個協程單元只對應一個游戲編號的游戲處理,其處理更加清晰;這樣,無需進程單元對每個邏輯的上下文數據進行管理,避免了現有技術中容易出現邏輯混亂的缺陷。
【附圖說明】
[0020]圖I為現有技術對網絡游戲信息進行處理的邏輯示意圖;
[0021]圖2為本發明對網絡游戲信息進行處理的方法示意性流程圖;
[0022]圖3為本發明對網絡游戲信息進行處理的方法流程圖實例;
[0023]圖4為本發明對網絡游戲信息進行處理的邏輯示意圖;
[0024]圖5為本發明對網絡游戲信息進行處理的服務器結構示意圖。
【具體實施方式】
[0025]為使本發明的目的、技術方案和優點更加清楚明白,下面結合實施例和附圖,對本發明進一步詳細說明。
[0026]本發明設置協程單元,每個協程單元不僅包含各自的存儲空間,還包含邏輯模塊;本發明中,由協程單元確定進行游戲處理的邏輯模塊,并由協程單元對處理過程中生成的上下文數據進行存儲;這樣,無需進程單元直接調用每個邏輯模塊,也無需進程單元對每個邏輯模塊的上下文數據進行保存管理,簡化了進程模塊的處理操作,避免了現有技術中容易出現邏輯混亂的缺陷。參見圖2,為本發明對網絡游戲信息進行處理的方法示意性流程圖,其包括以下步驟:
[0027]步驟201,進程單元接收游戲編號和包含游戲數據的網絡游戲請求,將網絡游戲請求發送給與游戲編號對應的協程單元。
[0028]以斗地主的游戲為例,一個房間中有6張桌子,本步驟所述的游戲編號即桌子標識,也就是桌子編號;每個協程單元完成一張桌的網絡游戲信息處理。
[0029]在服務器側,所述進程