本發明涉及網絡游戲技術領域,特別涉及一種網絡游戲名片的生成方法及裝置。
背景技術:
網絡游戲(簡稱網游),指玩家必須通過互聯網連接來進行多人游戲,然而網游并不僅僅限于玩游戲的內容,還為玩家們提供了一個便捷的社交方式,來滿足不同階層的人們進行交流的需求。目前市面上的網游包括競技游戲,甚至一些單機游戲,都會借助社交平臺來讓玩家進行交流。由于可以在游戲之中結交朋友、PK互動、分享交流,玩家自然就樂于持續玩下去,游戲也就有了較高的粘性。同現實世界類似,網絡游戲名片(簡稱名片)是網游角色相互認識、自我介紹最快、最有效的辦法。在網絡游戲過程中,虛擬角色通常會攜帶名片,也會查看所關注角色的名片,根據名片信息選擇性地開展社交活動,如聊天、交友、對戰或協作。雖然展現形式多種多樣,但名片對于網游是重要和不可或缺的;而網游產品本身,需要對名片提供軟硬件的支撐和技術的實現。
現有技術中,對于采用C/S(客戶端/服務端)結構的游戲軟件來說,服務端維護著所有與用戶相關的數據(如個人信息、組織信息、游戲信息),并且能最快感知數據的變化,通常在服務端生成名片,并保存在自身存儲中。當客戶端請求獲取名片數據,服務端響應請求、返回數據,客戶端做解析并顯示就可以了。該種名片生成方法的重點在于傳統意義上的服務器包辦名片相關數據的計算和存儲事務,并提供查詢服務,客戶端只做名片查詢和展示,然而該方式的缺點也是顯而易見的:由于數據計算量大,需要投入較多的服務器軟硬件資源。如果游戲玩家規模較大,例如百萬級別以上的峰值在線,那么實時生成或更新名片對于服務器的壓力是巨大的,難以保證實時性要求;為了保證名片生成的實時性,往往需要采用分布式計算和存儲,這需要投入較多的軟硬件資源,從而增大游戲提供方的運營成本。
技術實現要素:
本發明提供一種網絡游戲名片的處理方法及裝置,能夠方便、快捷地生成網絡游戲名片,且成本低廉,能有效減少服務器端的數據處理量。
一方面,本發明提供一種網絡游戲名片的生成方法,應用于客戶端,包括:
檢測客戶端是否發生登錄行為;
當檢測到所述客戶端發生登錄行為后,從所述客戶端中獲取數據背包,所述數據背包為所述客戶端根據服務器返回的網絡游戲數據所生成的;
確定生成網絡游戲名片所需要的數據;
判斷所述數據背包中是否存儲有所述生成網絡游戲名片所需要的數據;
如果是,則從所述數據背包中獲取所述生成網絡游戲名片所需要的數據;否則,從所述服務器中獲取所述生成網絡游戲名片所需要的數據;
根據所述生成網絡游戲名片所需要的數據在所述客戶端中生成網絡游戲名片。
其中,所述確定生成網絡游戲名片所需要的數據,包括:
獲取配置文件;
從所述配置文件中讀取網絡游戲名片的數據條目;
根據所述數據條目確定所述生成網絡游戲名片所需要的數據。
進一步地,在所述客戶端中生成網絡游戲名片后,所述方法還包括:
將所述網絡游戲名片存儲在所述客戶端中,并向所述服務器發送所述網絡游戲名片。
進一步地,所述方法還包括:
當接收到所述服務器發送的更新后的網絡游戲數據后,判斷是否存在網絡游戲名片更新需求;
如果是,則根據所述服務器發送的更新后的網絡游戲數據重新生成網絡游戲名片;
將重新生成的網絡游戲名片在所述客戶端中存儲,并向所述服務器發送所述重新生成的所述網絡游戲名片;
判斷在預設時間段內是否接收到需求對象發送的所述網絡游戲名片獲取需求;
如果是,則向所述需求對象發送所述重新生成的網絡游戲名片。
其中,所述判斷是否存在網絡游戲名片更新需求,包括:
檢測所述客戶端的登錄對象是否存在以下行為,所述行為包括完成網絡游戲比賽報名,或者正處于網絡游戲比賽過程中;
如果是,則判斷存在網絡游戲名片更新需求。
另一方面,本發明提供了一種網絡游戲名片的生成裝置,應用于客戶端,包括:
檢測單元,用于檢測客戶端是否發生登錄行為;
第一獲取單元,用于當檢測到所述客戶端發生登錄行為后,從所述客戶端中獲取數據背包,所述數據背包為所述客戶端根據服務器返回的網絡游戲數據所生成的;
確定單元,用于確定生成網絡游戲名片所需要的數據;
第一判斷單元,用于判斷所述數據背包中是否存儲有所述生成網絡游戲名片所需要的數據;
第二獲取單元,用于在判斷所述數據背包中存儲有所述生成網絡游戲名片所需要的數據后,從所述數據背包中獲取所述生成網絡游戲名片所需要的數據;否則,從所述服務器中獲取所述生成網絡游戲名片所需要的數據;
第一生成單元,用于根據所述生成網絡游戲名片所需要的數據在所述客戶端中生成網絡游戲名片。
其中,所述確定單元,包括:
第一獲取模塊,用于獲取配置文件;
讀取模塊,用于從所述配置文件中讀取網絡游戲名片的數據條目;
確定模塊,用于根據所述數據條目確定所述生成網絡游戲名片所需要的數據。
進一步地,所述裝置還包括:
第一存儲及發送單元,用于在所述客戶端中生成網絡游戲名片后,將所述網絡游戲名片存儲在所述客戶端中,并向所述服務器發送所述網絡游戲名片。
進一步地,所述裝置還包括:
第二判斷單元,用于當接收到所述服務器發送的更新后的網絡游戲數據后,判斷是否存在網絡游戲名片更新需求;
第二生成單元,用于判斷存在網絡游戲名片更新需求后,根據所述服務器發送的更新后的網絡游戲數據重新生成網絡游戲名片;
第二存儲及發送單元,用于將重新生成的網絡游戲名片在所述客戶端中存儲,并向所述服務器發送所述重新生成的所述網絡游戲名片;
第三判斷單元,用于判斷在預設時間段內是否接收到需求對象發送的所述網絡游戲名片獲取需求;
發送單元,用于判斷在預設時間段內接收到需求對象發送的所述網絡游戲名片獲取需求后,向所述需求對象發送所述重新生成的網絡游戲名片。
其中,所述第二判斷單元,包括:
檢測模塊,用于檢測所述客戶端的登錄對象是否存在以下行為,所述行為包括完成網絡游戲比賽報名,或者正處于網絡游戲比賽過程中;
判斷模塊,用于檢測到所述客戶端的登錄對象存在所述行為包括完成網絡游戲比賽報名,或者正處于網絡游戲比賽過程中,判斷存在網絡游戲名片更新需求。
本發明實施例提供的網絡游戲名片的生成方法及裝置,通過檢測客戶端是否發生登錄行為;當檢測到客戶端發生登錄行為后,從客戶端中獲取數據背包,數據背包為客戶端根據服務器返回的網絡游戲數據所生成的;確定生成網絡游戲名片所需要的數據;判斷數據背包中是否存儲有生成網絡游戲名片所需要的數據;如果是,則從數據背包中獲取生成網絡游戲名片所需要的數據;否則,從服務器中獲取生成網絡游戲名片所需要的數據;根據生成網絡游戲名片所需要的數據在客戶端中生成網絡游戲名片。該方法及裝置能夠方便、快捷地生成網絡游戲名片,成本低廉,且能有效減少服務器端的數據處理量。
本發明的其它特征和優點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本發明而了解。本發明的目的和其他優點可通過在所寫的說明書、權利要求書、以及附圖中所特別指出的結構來實現和獲得。
下面通過附圖和實施例,對本發明的技術方案做進一步的詳細描述。
附圖說明
附圖用來提供對本發明的進一步理解,并且構成說明書的一部分,與本發明的實施例一起用于解釋本發明,并不構成對本發明的限制。在附圖中:
圖1為本發明實施例中提供的一種網絡游戲名片的生成方法的流程圖;
圖2為本發明實施例中提供的一種網絡游戲名片的生成方法的框圖。
具體實施方式
以下結合附圖對本發明的優選實施例進行說明,應當理解,此處所描述的優選實施例僅用于說明和解釋本發明,并不用于限定本發明。
以下對本專利申請中用到的相關專用術語進行解釋說明。
網絡游戲(Online Game):又稱“在線游戲”,簡稱“網游”。指以互聯網為傳輸媒介,以游戲運營商服務器和用戶計算機為處理終端,以游戲客戶端軟件為信息交互窗口的旨在實現娛樂、休閑、交流和取得虛擬成就的具有可持續性的個體性多人在線游戲。
網絡游戲名片:簡稱名片,又稱卡片,是標示姓名及其所屬組織、公司與頭銜以及聯系方式等信息的紙片。在現實世界,名片是新朋友互相認識、自我介紹的最快最有效的方法。同樣,在網絡游戲中,虛擬角色通常也會攜帶和查看名片,以滿足角色間的社交需求。
數據背包:是數據全集的一個數據子集。在C/S結構(客戶端/服務端結構)的軟件中,通常是從數據全集服務器中按需獲取并更新,保存在客戶端內存或者本地數據庫而形成,背包中的數據通常是重要和高頻訪問的。
本發明實施例提供一種網絡游戲名片的生成方法,主要應用于客戶端,如圖1所示,包括如下步驟S101-步驟S107:
步驟S101:檢測客戶端是否發生登錄行為;
步驟S102:當檢測到客戶端發生登錄行為后,從客戶端中獲取數據背包,數據背包為所述客戶端根據服務器返回的網絡游戲數據所生成的;
步驟S103:確定生成網絡游戲名片所需要的數據;
步驟S104:判斷數據背包中是否存儲有生成網絡游戲名片所需要的數據;
在上述步驟S104中,判斷數據背包中存儲有生成網絡游戲名片所需要的數據后,執行步驟S105從數據背包中獲取生成網絡游戲名片所需要的數據;否則,執行步驟S106從服務器中獲取生成網絡游戲名片所需要的數據;
步驟S107:根據生成網絡游戲名片所需要的數據在客戶端中生成網絡游戲名片。
本實施例所提供的網絡游戲名片生成方法,當數據背包中存儲有生成網絡游戲名片所需要的數據時,直接從數據背包中獲取生成網絡游戲名片所需要的數據,在客戶端生成網絡游戲名片。需要說明的是,如果數據背包中不存在生成網絡游戲名片所需要的數據時,可以從服務器獲取相關數據,然后在客戶端生成網絡游戲名片。由于數據運算及生成都在客戶端完成,不需要服務端參與,從而能夠有效節省服務器的運算開銷,對軟硬件資源的要求較低,成本低廉。與傳統方法相比,網絡游戲名片生成相關的數據計算,全部由服務端完成遷移到客戶端完成,服務端僅提供存儲和查詢服務,完全消除了計算壓力;對于客戶端,有多少用戶登錄,就相應存在多少個客戶端,每個客戶端只計算當前登錄用戶的名片數據,基本不存在數據壓力問題,從而有效保證了網絡游戲名片生成的實時性。
在另外一個實施例中,上述步驟S103確定生成網絡游戲名片所需要的數據,包括:
步驟S1031:獲取配置文件。
其中,配置文件標明了具體某款游戲其名片需要展示玩家的哪些游戲數據條目。例如:斗地主游戲展示玩家大師分、等級;麻將游戲則只展示等級,不展示大師分等。
步驟S1032:從配置文件中讀取網絡游戲名片的數據條目。
步驟S1033:根據數據條目確定生成網絡游戲名片所需要的數據。
在另外一個實施例中,在客戶端中生成網絡游戲名片后,上述方法還包括:
將網絡游戲名片存儲在客戶端中,并向服務器發送網絡游戲名片。
在另外一個實施例中,上述方法還包括:
當接收到服務器發送的更新后的網絡游戲數據后,判斷是否存在網絡游戲名片更新需求;
如果是,則根據服務器發送的更新后的網絡游戲數據重新生成網絡游戲名片;
將重新生成的網絡游戲名片在所述客戶端中存儲,并向服務器發送重新生成的網絡游戲名片;
判斷在預設時間段內是否接收到需求對象發送的網絡游戲名片獲取需求;
如果是,則向需求對象發送重新生成的網絡游戲名片。
在本實施例中,服務器在接收到網絡游戲名片查詢需求后,會向發送查詢請求的人員發送最新版的網絡游戲名片。例如:在比賽過程中,如果某玩家對其他某玩家特別關注,有溝通或者交友的需求,可以查看對方的網絡游戲名片,具體可以通過向服務器發送網絡游戲名片獲取請求來獲取關注的玩家的網絡游戲名片情況,服務器會向發送該請求的一方發送相應的網絡游戲名片數據,并且在后續該玩家的網絡游戲名片信息發生更新后,會將更新后重新生成的網絡游戲名片向發送請求方發送,以便接收方能夠及時獲取其關注的玩家的最新情況。
在另外一個實施例中,上述判斷是否存在網絡游戲名片更新需求,包括:
檢測客戶端的登錄對象是否存在以下行為,行為包括完成網絡游戲比賽報名,或者正處于網絡游戲比賽過程中;
如果是,則判斷存在網絡游戲名片更新需求。
由于網絡游戲名片需要根據網絡游戲玩家所參與的網絡游戲情況及時進行更新,才能更加真實地反映玩家的當前情況,可以在檢測到玩家瀏覽客戶端賽事列表,并完成比賽報名后會認為玩家的網絡名片需要更新,當然在檢測到玩家當前正處于某個網絡游戲比賽過程中,也認為需要對該玩家的網絡游戲名片進行更新。
以下對本發明實施例中涉及的相關內容進一步做詳細說明:
網絡游戲玩家在客戶端登錄后,優先從數據數據背包中獲取數據,按需生成該玩家的網絡游戲名片數據,并以XML格式發送給服務器,由服務器響應網絡游戲名片的查詢請求。其中,數據背包可以存儲在客戶端,數據背包中的數據是從服務器獲取、維持和更新的游戲數據。
在實際使用中,在玩家登錄網絡游戲客戶端,客戶端會獲取玩家的游戲數據,需要說明的是,向數據服務器獲取玩家游戲數據是游戲客戶端初始化的必要環節,會形成一個數據背包,為游戲的順利進行提供數據支持。其中,在客戶端登錄成功后,可以通過拉取或者接收推送兩種方式獲取玩家的游戲數據,例如經驗、等級、金融、虛擬物品、歷史戰績等相關數據。
客戶端通過讀取配置文件,根據配置文件所列名片條目從數據背包獲取對應數據,例如頭像ID、所在地、游戲等級、游戲經驗、歷史戰績等數據,按需生成名片數據。
客戶端在生成網絡游戲名片后,會向服務端發送網絡游戲名片數據,其中,例如可以將網絡游戲名片數據以XML格式發送給服務器。
服務器在接收網絡游戲名片后,會將網絡游戲名片進行存儲,當將所有客戶端上傳的網絡游戲名片數據全部存儲到服務器后,服務器也就維護了網絡游戲名片數據的全集,可以供任何客戶端進行查詢和展現,從而實現了全部的名片數據共享。
其中,上述服務器在接收到網絡游戲名片數據后,可以將網絡游戲名片數據保存在緩存,也可以保存在數據庫中。可以是永久進行保存,也可以按照設定的時間策略進行保存,例如存儲1年后自動清除等,具體可以根據實際需要進行設定。
需要說明的是,當服務器接收客戶端發送的網絡游戲名片后,當有其它客戶端需要查看某玩家的網絡游戲名片數據時,可以向服務器發起請求,來獲取網絡游戲名片數據。客戶端接收到服務器返回的網絡游戲名片數據后,可以對相應的數據格式(例如XML格式)進行解析,根據配置項展示特定的名片數據。
本發明實施例提供的網絡游戲名片的生成方法,通過檢測客戶端是否發生登錄行為;當檢測到客戶端發生登錄行為后,從客戶端中獲取數據背包,數據背包為客戶端根據服務器返回的網絡游戲數據所生成的;確定生成網絡游戲名片所需要的數據;判斷數據背包中是否存儲有生成網絡游戲名片所需要的數據;如果是,則從數據背包中獲取生成網絡游戲名片所需要的數據;否則,從服務器中獲取生成網絡游戲名片所需要的數據;根據生成網絡游戲名片所需要的數據在客戶端中生成網絡游戲名片。該方法能夠方便、快捷地生成網絡游戲名片,成本低廉,且能有效減少服務器端的數據處理量。
本發明實施例另外提供一種網絡游戲名片的生成裝置,如圖2所示,主要應用于客戶端,包括:
檢測單元201,用于檢測客戶端是否發生登錄行為;
第一獲取單元202,用于當檢測到客戶端發生登錄行為后,從客戶端中獲取數據背包,數據背包為客戶端根據服務器返回的網絡游戲數據所生成的;
確定單元203,用于確定生成網絡游戲名片所需要的數據;
第一判斷單元204,用于判斷數據背包中是否存儲有生成網絡游戲名片所需要的數據;
第二獲取單元205,用于在判斷數據背包中存儲有生成網絡游戲名片所需要的數據后,從數據背包中獲取生成網絡游戲名片所需要的數據;否則,從服務器中獲取生成網絡游戲名片所需要的數據;
第一生成單元206,用于根據生成網絡游戲名片所需要的數據在客戶端中生成網絡游戲名片。
在另外一個實施例中,上述確定單元203,包括:
第一獲取模塊,用于獲取配置文件;
讀取模塊,用于從配置文件中讀取網絡游戲名片的數據條目;
確定模塊,用于根據數據條目確定生成網絡游戲名片所需要的數據。
在另外一個實施例中,上述裝置還包括:
第一存儲及發送單元,用于在客戶端中生成網絡游戲名片后,將網絡游戲名片存儲在客戶端中,并向服務器發送網絡游戲名片。
在另外一個實施例中,上述裝置還包括:
第二判斷單元,用于當接收到服務器發送的更新后的網絡游戲數據后,判斷是否存在網絡游戲名片更新需求;
第二生成單元,用于判斷存在網絡游戲名片更新需求后,根據服務器發送的更新后的網絡游戲數據重新生成網絡游戲名片;
第二存儲及發送單元,用于將重新生成的網絡游戲名片在客戶端中存儲,并向服務器發送重新生成的網絡游戲名片;
第三判斷單元,用于判斷在預設時間段內是否接收到需求對象發送的網絡游戲名片獲取需求;
發送單元,用于判斷在預設時間段內接收到需求對象發送的網絡游戲名片獲取需求后,向需求對象發送重新生成的網絡游戲名片。
在另外一個實施例中,上述第二判斷單元,包括:
檢測模塊,用于檢測客戶端的登錄對象是否存在以下行為,所述行為包括完成網絡游戲比賽報名,或者正處于網絡游戲比賽過程中;
判斷模塊,用于檢測到客戶端的登錄對象存在行為包括完成網絡游戲比賽報名,或者正處于網絡游戲比賽過程中,判斷存在網絡游戲名片更新需求。
本發明實施例提供的網絡游戲名片的生成裝置,通過檢測客戶端是否發生登錄行為;當檢測到客戶端發生登錄行為后,從客戶端中獲取數據背包,數據背包為客戶端根據服務器返回的網絡游戲數據所生成的;確定生成網絡游戲名片所需要的數據;判斷數據背包中是否存儲有生成網絡游戲名片所需要的數據;如果是,則從數據背包中獲取生成網絡游戲名片所需要的數據;否則,從服務器中獲取生成網絡游戲名片所需要的數據;根據生成網絡游戲名片所需要的數據在客戶端中生成網絡游戲名片。該裝置能夠方便、快捷地生成網絡游戲名片,成本低廉,且能有效減少服務器端的數據處理量。
本領域內的技術人員應明白,本發明的實施例可提供為方法、系統、或計算機程序產品。因此,本發明可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器和光學存儲器等)上實施的計算機程序產品的形式。
本發明是參照根據本發明實施例的方法、設備(系統)、和計算機程序產品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數據處理設備的處理器以產生一個機器,使得通過計算機或其他可編程數據處理設備的處理器執行的指令產生用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導計算機或其他可編程數據處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產生包括指令裝置的制造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數據處理設備上,使得在計算機或其他可編程設備上執行一系列操作步驟以產生計算機實現的處理,從而在計算機或其他可編程設備上執行的指令提供用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
顯然,本領域的技術人員可以對本發明進行各種改動和變型而不脫離本發明的精神和范圍。這樣,倘若本發明的這些修改和變型屬于本發明權利要求及其等同技術的范圍之內,則本發明也意圖包含這些改動和變型在內。