本發(fā)明涉及學習游戲技術領域,尤其涉及一種游戲狀態(tài)更新方法、裝置及系統(tǒng)。
背景技術:
近年來,隨著信息技術的普及和教育游戲的快速發(fā)展,游戲化學習成為目前比較流行的教學理論和教育實踐。游戲化學習,又稱學習游戲化,即采用游戲化的方式進行學習。
目前市面的學習游戲絕大部分為單機游戲,基本沒有多人完成的游戲。而學習游戲的面向群體大多為線下的同班同學,利用的是課間或放學后的碎片時間,因此希望加入多人游戲,以鍛煉學生的配合與溝通能力。現(xiàn)有技術為每一個游戲配置一臺游戲服務器,用于對游戲玩家狀態(tài)進行分發(fā)和游戲進程信息進行保存。
然而,由于學習游戲通常針對每一個學習主題來設計,且學習主題數(shù)量龐大(如成百上千個學習主題),因此,為數(shù)量龐大的學習主題中的每個主題對應的游戲均配置一臺服務器,將導致使用過多的服務器(如成百上千個服務器),成本過高,同時需要為數(shù)量過多的服務器配置相應的服務器維護人員,導致服務器維護成本過高。
技術實現(xiàn)要素:
本發(fā)明實施例提供一種游戲狀態(tài)更新方法、裝置及系統(tǒng),能夠實現(xiàn)使用兩個服務器為多個游戲提供游戲狀態(tài)更新的服務,降低服務器成本。
第一方面,本發(fā)明實施例提供了一種游戲狀態(tài)更新方法,包括:
當?shù)谝挥脩舻卿浀谝粦贸绦驎r,通過存儲服務器獲取所述第一用戶的游戲狀態(tài)信息,并在所述第一應用程序中更新所述第一用戶的游戲狀態(tài)信息;
在所述第一應用程序的運行過程中,若所述第一用戶的游戲狀態(tài)信息發(fā)生變化,則通過分發(fā)服務器向所述至少一個第二用戶發(fā)送已變更的第一用戶的游戲狀態(tài)信息,所述至少一個第二用戶包括所述第一應用程序對應的除所述第一用戶以外的用戶。
第二方面,本發(fā)明實施例提供了一種游戲狀態(tài)更新的裝置,包括:
第一獲取模塊,用于當?shù)谝挥脩舻卿浀谝粦贸绦驎r,通過存儲服務器獲取所述第一用戶的游戲狀態(tài)信息;
更新模塊,用于在所述第一應用程序中更新所述第一獲取模塊獲取的所述第一用戶的游戲狀態(tài)信息;
發(fā)送模塊,用于在所述第一應用程序的運行過程中,當所述第一用戶的游戲狀態(tài)信息發(fā)生變化時,通過分發(fā)服務器向所述至少一個第二用戶發(fā)送已變更的第一用戶的游戲狀態(tài)信息,所述至少一個第二用戶包括所述第一應用程序對應的除所述第一用戶以外的用戶。
第三方面,本發(fā)明實施例提供了一種游戲狀態(tài)更新的系統(tǒng),包括:存儲服務器、分發(fā)服務器和至少一個權利要求8-12中任一項所述的游戲狀態(tài)更新裝置;所述游戲狀態(tài)更新裝置用于:
當?shù)谝挥脩舻卿浀谝粦贸绦驎r,通過存儲服務器獲取所述第一用戶的游戲狀態(tài)信息,并在所述第一應用程序中更新所述第一用戶的游戲狀態(tài)信息;
在所述第一應用程序的運行過程中,若所述第一用戶的游戲狀態(tài)信息發(fā)生變化,則通過分發(fā)服務器向所述至少一個第二用戶發(fā)送已變更的第一用戶的游戲狀態(tài)信息,所述至少一個第二用戶包括所述第一應用程序對應的除所述第一用戶以外的用戶。
本發(fā)明實施例提供的游戲狀態(tài)更新方法、裝置及系統(tǒng),能夠通過兩個服務器,即分發(fā)服務器和存儲服務器,為多個學習游戲進行服務?,F(xiàn)有技術中需要為每個學習游戲配置一個服務器。本發(fā)明實施例解決了多個游戲需要配置多個服務器的問題,實現(xiàn)使用兩個服務器為多個游戲提供游戲狀態(tài)更新的服務,降低服務器成本。
附圖說明
圖1A是本發(fā)明實施例一中的一種游戲狀態(tài)更新方法的流程圖;
圖1B是本發(fā)明實施例一中的一種游戲狀態(tài)更新方法的游戲應用界面示意圖;
圖1C是本發(fā)明實施例一中的一種游戲狀態(tài)更新方法的游戲應用連接方法涉及的網(wǎng)絡結構示意圖;
圖2是本發(fā)明實施例二中的一種游戲狀態(tài)更新方法的流程圖;
圖3是本發(fā)明實施例三中的一種游戲狀態(tài)更新方法的流程圖;
圖4是本發(fā)明實施例四中的一種游戲狀態(tài)更新方法的流程圖;
圖5A是本發(fā)明實施例五中的一種游戲狀態(tài)更新方法的流程圖;
圖5B是本發(fā)明實施例五中的一種游戲狀態(tài)更新方法的游戲應用連接方法涉及的網(wǎng)絡結構示意圖;
圖5C是本發(fā)明實施例五中的一種游戲狀態(tài)更新方法的游戲應用軟件架構圖;
圖6是本發(fā)明實施例六中的一種游戲狀態(tài)更新裝置的結構示意圖;
圖7是本發(fā)明實施例七中的一種游戲狀態(tài)更新裝置的結構示意圖。
具體實施方式
下面結合附圖和實施例對本發(fā)明作進一步的詳細說明。可以理解的是,此處所描述的具體實施例僅僅用于解釋本發(fā)明,而非對本發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關的部分而非全部結構,并且不限制于本實施例的步驟順序。
實施例一
圖1為本發(fā)明實施例一提供的一種游戲狀態(tài)更新方法的流程圖,本實施例可適用于多人進行多個學習游戲的情況,該方法可以由本發(fā)明實施例提供的智能輸入裝置來執(zhí)行,該裝置可采用軟件和/或硬件的方式實現(xiàn),軟件形式可以為插件形式,該裝置可集成在任何提供游戲信息的設備中,例如典型的是用戶終端設備,可以是電腦,也可以是移動終端(例如手機)和平板電腦等,如圖1所示,具體包括:
S110、當?shù)谝挥脩舻卿浀谝粦贸绦驎r,通過存儲服務器獲取所述第一用戶的游戲狀態(tài)信息,并在所述第一應用程序中更新所述第一用戶的游戲狀態(tài)信息。
具體的,第一用戶可以為學生,也可以為上班族,還可以為具有閑暇時刻的任意人。第一應用程序可以為游戲應用,包括學習游戲應用和休閑小游戲應用,第一應用程序也可以是上述游戲應用中包含的任意一個子游戲應用程序(一個游戲應用中可以包含多個游戲應用程序)。存儲服務器,擁有充足的存儲空間(如100TB等),存儲服務器可以只負責存儲信息,如只存儲游戲ID和游戲進程信息,包括如表一和表二所示。其中,游戲狀態(tài)信息包括用戶登錄狀態(tài)、個人信息以及個人游戲進程信息等。當用戶打開手機中的一個游戲應用時,選中某一子游戲應用程序,輸入個人賬號密碼,向存儲服務器獲取相應信息,調(diào)取用戶的個人信息(包括姓名、昵稱、性別、年齡、等級和興趣愛好等)以及用戶上次退出游戲時存儲的游戲進程信息,即可加載新的游戲應用界面。
表一
表二
例如,根據(jù)現(xiàn)在已有的游戲改編的一款關于學習的游戲軟件,如憤怒的小鳥中彈弓打的小鳥身上可以帶有漢字,消消樂中消的不是相同顏色的動物,而是成語、詞語或者單詞等。用戶A為一小學生,手機安裝有X學習游戲應用,X學習游戲應用中包含各個學習主題的子學習游戲應用程序,其中憤怒的小鳥游戲中用戶A過了11關,那么用戶A在課余時間打開X學習游戲應用,選擇憤怒的小鳥游戲輸入個人賬號密碼后,向存儲服務器獲取和用戶A相匹配的個人信息和游戲進程信息,調(diào)取用戶的個人信息如圖1B所示,以及加載憤怒的小鳥游戲12關的游戲應用界面。
S120、在所述第一應用程序的運行過程中,若所述第一用戶的游戲狀態(tài)信息發(fā)生變化,則通過分發(fā)服務器向所述至少一個第二用戶發(fā)送已變更的第一用戶的游戲狀態(tài)信息,所述至少一個第二用戶包括所述第一應用程序對應的除所述第一用戶以外的用戶。
具體的,典型的服務器會被配置來執(zhí)行多種功能,如它可以作為文件服務器、打印服務器、應用數(shù)據(jù)庫服務器和Web服務器,甚至可以是集以上多種功能于一身。這樣,它就必須有快速的處理器芯片、比較多的RAM以及足夠的內(nèi)部磁盤空間,以便應對終端用戶隨時可能出現(xiàn)的應用調(diào)配需求。不過,分發(fā)服務器與存儲服務器一樣,是為特定的目標而設計,配置方式也不同,并且只負責消息分發(fā),功能與路由服務器類似,每個用戶端在線期間與分發(fā)服務器保持長連接,保存所有當前在線用戶的連接信息。需要特殊說明的是,用戶和分發(fā)服務器、存儲服務器通過信號連接,執(zhí)行主體可以為用戶終端,可以為用戶終端安裝的應用程序,還可以為應用程序中編輯的程序代碼或者一個具有通信功能的插件,如X學習游戲應用如圖1C所示的多人游戲插件。
其中,第二用戶可以為第一應用程序中除用戶本身以外的其他所有在線用戶,也可以是第二應用程序對應的在線用戶信息,其中第二應用程序仍然可以為游戲應用程序和任意一個子游戲應用程序中對應的在線用戶的信息。游戲狀態(tài)信息發(fā)生變化可以包括通關狀態(tài)信息、登錄狀態(tài)信息和預設任務達成狀態(tài)信息中的至少一個。當用戶剛剛登陸學習游戲應用中的某一子游戲應用程序時,分發(fā)服務器會調(diào)取有關學習應用程序中的所有在線用戶ID,或者調(diào)取有關該子游戲應用程序中所有在線用戶ID,向已調(diào)取的學習應用程序或者該子游戲應用程序中的所有其他在線用戶發(fā)送用戶登錄上線的信息,包括用戶ID、游戲ID和游戲進程信息;當用戶進行學習游戲應用中的某子游戲應用程序過程中有任何的游戲狀態(tài)信息變更,如通關、退出學習游戲應用時,分發(fā)服務器也會調(diào)取有關學習應用程序中的所有在線用戶ID,或者調(diào)取有關該子游戲應用程序中所有在線用戶ID,向已調(diào)取的學習應用程序或者該子游戲應用程序中的所有其他在線用戶發(fā)送用戶游戲狀態(tài)信息變更的信息。
例如,一小學為提高學生學習興趣,老師利用課余時間組織班級對班級的友誼聯(lián)賽,比賽內(nèi)容為在手機里X學習游戲應用中包含的所有子游戲,X學習游戲應用中的流程服務器將兩個班級的所有學生關聯(lián)在一起,比賽時間為一個月,最終成績可以以一個月內(nèi)班級里所有學生完成游戲進度的加和為準。上述中學生用戶A屬于其中一個班級,當用戶A剛剛登陸X學習游戲應用中的憤怒的小鳥游戲時,分發(fā)服務器會調(diào)取有關X學習應用程序中的兩個班級中所有在線用戶ID,向已調(diào)取的兩個班級中除了用戶A以外的所有在線用戶發(fā)送用戶A登錄上線的信息,如“用戶A登錄憤怒的小鳥,進入12關啦!”;當用戶A進行憤怒的小鳥游戲過程中,進入13關了,那么分發(fā)服務器也會調(diào)取有關X學習應用程序中的兩個班級中所有在線用戶ID,向已調(diào)取的兩個班級中除了用戶A以外的所有在線用戶發(fā)送用戶A闖關成功的信息,如“用戶A闖進憤怒的小鳥13關啦!”;當用戶A沒有通過14關,退出憤怒的小鳥游戲時,分發(fā)服務器同樣也會調(diào)取有關X學習應用程序中的兩個班級中所有在線用戶ID,向已調(diào)取的兩個班級中除了用戶A以外的所有在線用戶發(fā)送用戶A退出游戲的信息,如“用戶A已退出憤怒的小鳥13關!”。
再例如,用戶A不僅參加了班級聯(lián)賽,還參加了單人賽,單人賽的成績包括X學習游戲程序中某一個子游戲的成績。具體例如,當用戶A剛剛登陸X學習游戲應用中的憤怒的小鳥游戲時,分發(fā)服務器會調(diào)取有關憤怒的小鳥游戲所有在線用戶ID(包括但不限于兩個班級中玩兒憤怒的小鳥游戲的在線用戶),向已調(diào)取的除了用戶A以外的所有在線用戶發(fā)送用戶A登錄上線的信息,如“用戶A登錄憤怒的小鳥,進入12關啦!”;當用戶A玩兒憤怒的小鳥游戲過程中,進入13關了,那么分發(fā)服務器也會調(diào)取有關憤怒的小鳥游戲所有在線用戶ID,向已調(diào)取的除了用戶A以外的所有在線用戶發(fā)送用戶A闖關成功的信息,如“用戶A闖進憤怒的小鳥13關啦!”;當用戶A沒有通過14關,退出憤怒的小鳥游戲時,分發(fā)服務器同樣也會調(diào)取有關憤怒的小鳥游戲所有在線用戶ID,向已調(diào)取的除了用戶A以外的所有在線用戶發(fā)送用戶A退出游戲的信息,如“用戶A已退出憤怒的小鳥13關!”。
本實施例提供的游戲狀態(tài)更新方法,能夠通過兩個服務器,即分發(fā)服務器和存儲服務器,為多個學習游戲進行服務?,F(xiàn)有技術中需要為每個學習游戲配置一個服務器。本實施例解決了多個游戲需要配置多個服務器的問題,實現(xiàn)使用兩個服務器為多個游戲提供游戲狀態(tài)更新的服務,降低服務器成本,同時不影響多人體驗。
實施例二
圖2為本發(fā)明實施例二提供的一種游戲狀態(tài)更新方法的流程圖,本實施例在上述實施例的基礎上還包括:當?shù)谝挥脩舻卿浀谝粦贸绦驎r,通過所述存儲服務器獲取所述至少一個第二用戶的游戲狀態(tài)信息,并在所述第一應用程序中更新所述至少一個第二用戶的游戲狀態(tài)信息。
相應的,本實施例的方法包括:
S210、當?shù)谝挥脩舻卿浀谝粦贸绦驎r,通過存儲服務器獲取所述第一用戶的游戲狀態(tài)信息,并在所述第一應用程序中更新所述第一用戶的游戲狀態(tài)信息。
S220、當?shù)谝挥脩舻卿浀谝粦贸绦驎r,通過所述存儲服務器獲取所述至少一個第二用戶的游戲狀態(tài)信息,并在所述第一應用程序中更新所述至少一個第二用戶的游戲狀態(tài)信息。
具體的,存儲服務器中存儲著使用第一應用程序中每個人的游戲ID和游戲進程信息。在上述學習游戲應用中,通過存儲服務器獲取至少一個第二用戶的游戲狀態(tài)信息可以是用戶上次登錄與本次登錄時間之間的所有其他用戶使用第一應用程序的最新更新狀態(tài),也可以是截止用戶登錄前,使用第一應用程序的最佳成績及用戶,還可以是用戶在使用第一應用程序過程中可以收到其他用戶更新的游戲狀態(tài)信息時,如通關狀態(tài)信息、登錄狀態(tài)信息和預設任務達成狀態(tài)信息。
例如,在班級聯(lián)賽中,上述用戶A剛剛登陸X學習游戲應用中的憤怒的小鳥游戲時,存儲服務器獲取用戶A上次登錄與本次登錄時間之間的所有其他用戶使用憤怒的小鳥游戲的最新更新狀態(tài),以了解其他用戶使用憤怒的小鳥游戲的進程,如提示:“用戶B闖進憤怒的小鳥15關啦?。挥脩鬋闖進憤怒的小鳥16關啦?。挥脩鬌闖進憤怒的小鳥17關啦!”等;或者,上述用戶A剛剛登陸X學習游戲應用中的憤怒的小鳥游戲時,存儲服務器獲取截止用戶A登錄前,兩個班級范圍內(nèi)使用憤怒的小鳥游戲的最佳成績及用戶,如提示:“用戶D闖進憤怒的小鳥17關啦!”;還或者,上述用戶A在玩兒憤怒的小鳥游戲過程中,可以收到兩個班級內(nèi)其他用戶更新的游戲狀態(tài)信息時,如“用戶E闖進消消樂10關啦!”、“用戶F已退出消消樂10關!”、用戶G登錄憤怒的小鳥,進入10關啦!”等。
S230、在所述第一應用程序的運行過程中,若所述第一用戶的游戲狀態(tài)信息發(fā)生變化,則通過分發(fā)服務器向所述至少一個第二用戶發(fā)送已變更的第一用戶的游戲狀態(tài)信息,所述至少一個第二用戶包括所述第一應用程序對應的除所述第一用戶以外的用戶。
本實施例提供了一種游戲狀態(tài)更新的方法,通過使用兩個服務器,即分發(fā)服務器和存儲服務器,存儲器自動發(fā)送相應其他用戶的游戲狀態(tài)信息,使得用戶更多的了解游戲其他用戶最新狀態(tài)。使用兩個服務器實時更新游戲信息狀態(tài),提高了用戶與用戶之間的互動,增加樂趣的同時,降低了使用服務器的成本。
實施例三
圖3為本發(fā)明實施例三提供的一種游戲狀態(tài)更新方法的流程圖,本實施例在上述實施例的基礎上進行優(yōu)化,進一步的,通過所述存儲服務器獲取所述至少一個第二用戶的游戲狀態(tài)信息的處理方法,具體是,向存儲服務器發(fā)送第一應用程序標識,以便所述存儲服務器根據(jù)所述第一應用程序標識確定至少一個第二用戶的游戲狀態(tài)信息;接收所述存儲服務器發(fā)送的所述至少一個第二用戶的游戲狀態(tài)信息。
相應的,本實施例的方法包括:
S310、當?shù)谝挥脩舻卿浀谝粦贸绦驎r,通過存儲服務器獲取所述第一用戶的游戲狀態(tài)信息,并在所述第一應用程序中更新所述第一用戶的游戲狀態(tài)信息.
S320、當?shù)谝挥脩舻卿浀谝粦贸绦驎r,向存儲服務器發(fā)送第一應用程序標識,以便所述存儲服務器根據(jù)所述第一應用程序標識確定至少一個第二用戶的游戲狀態(tài)信息。
其中,第一應用程序標識可以為游戲ID,在上述學習游戲應用中,存儲服務器中存儲著使用第一應用程序中每個人的游戲ID和游戲進程信息。在上述學習游戲應用中,用戶登錄子游戲應用程序時,存儲服務器根據(jù)用戶登錄的游戲ID,調(diào)取用戶上次登錄與本次登錄時間之間的該子游戲應用程序中其他用戶的最新更新狀態(tài),如通關狀態(tài)信息。
S330、接收所述存儲服務器發(fā)送的所述至少一個第二用戶的游戲狀態(tài)信息,并在所述第一應用程序中更新所述至少一個第二用戶的游戲狀態(tài)信息。
具體的,用戶可以接收到根據(jù)存儲服務器調(diào)取到的其他用戶的最新更新狀態(tài),從而了解其他用戶的狀態(tài)信息。例如,上述用戶A剛剛登陸X學習游戲應用中的憤怒的小鳥游戲時,會向存儲服務器發(fā)送游戲ID,即憤怒的小鳥。存儲服務器獲取用戶A上次登錄與本次登錄時間之間的所有其他用戶使用憤怒的小鳥游戲的最新更新狀態(tài),發(fā)送回用戶A,如提示:“用戶B闖進憤怒的小鳥15關啦!;用戶C闖進憤怒的小鳥16關啦?。挥脩鬌闖進憤怒的小鳥17關啦!”。
S340、在所述第一應用程序的運行過程中,若所述第一用戶的游戲狀態(tài)信息發(fā)生變化,則通過分發(fā)服務器向所述至少一個第二用戶發(fā)送已變更的第一用戶的游戲狀態(tài)信息,所述至少一個第二用戶包括所述第一應用程序對應的除所述第一用戶以外的用戶。
本實施例提供了一種游戲狀態(tài)更新的方法,通過使用兩個服務器,即分發(fā)服務器和存儲服務器,用戶通過向存儲器發(fā)送用戶本身游戲ID,使得存儲器調(diào)取并發(fā)送與用戶本身游戲ID相應的其他用戶的游戲狀態(tài)信息,使得用戶更多的了解同一游戲中其他用戶的最新狀態(tài),進一步提高了游戲狀態(tài)更新的方法,并且節(jié)約成本。
實施例四
圖4為本發(fā)明實施例四提供的一種游戲狀態(tài)更新方法的流程圖,本實施例在上述實施例的基礎上進行優(yōu)化,進一步的,通過所述存儲服務器獲取所述至少一個第二用戶的游戲狀態(tài)信息的處理方法,具體是,向所述分發(fā)服務器發(fā)送分發(fā)指令,所述分發(fā)指令包括第一用戶標識、已變更的第一用戶的游戲狀態(tài)信息,以便所述分發(fā)服務器根據(jù)保存的連接信息表將所述已變更的第一用戶的游戲狀態(tài)信息發(fā)送至所述至少一個第二用戶。
相應的,本實施例的方法包括:
S410、當?shù)谝挥脩舻卿浀谝粦贸绦驎r,通過存儲服務器獲取所述第一用戶的游戲狀態(tài)信息,并在所述第一應用程序中更新所述第一用戶的游戲狀態(tài)信息;
S420、當?shù)谝挥脩舻卿浀谝粦贸绦驎r,向所述分發(fā)服務器發(fā)送分發(fā)指令,所述分發(fā)指令包括第一用戶標識、已變更的第一用戶的游戲狀態(tài)信息,以便所述分發(fā)服務器根據(jù)保存的連接信息表將所述已變更的第一用戶的游戲狀態(tài)信息發(fā)送至所述至少一個第二用戶。
其中,分發(fā)指令,即分發(fā)請求,也就是說用戶有分發(fā)需求時,向分發(fā)服務器發(fā)送一條消息,該消息包含用戶本身ID、游戲ID和已經(jīng)變更的游戲狀態(tài)信息。分發(fā)服務器只提取在線的需要通知的用戶ID,并向除了用戶自己給其他用戶轉發(fā)該消息。分發(fā)服務器有一連接信息表,可以為Hash表(即散列表,根據(jù)關鍵碼直接訪問數(shù)據(jù)結構),保存在線的需要通知的用戶ID,如表三所示。
表三
例如,表一中的游戲1為憤怒的小鳥游戲,上述用戶A在進行憤怒的小鳥游戲過程中表現(xiàn)很好,連續(xù)通關,想讓其他用戶知道自己的成績,那么用戶A向分發(fā)服務器發(fā)送一分發(fā)請求,分發(fā)請求中包含信息有“用戶A闖進憤怒的小鳥17關啦!”。此時,分發(fā)服務器從Hash表中提取游戲1的所有在線用戶,并將信息“用戶A闖進憤怒的小鳥17關啦!”發(fā)送給用戶B和用戶C。
S430、在所述第一應用程序的運行過程中,若所述第一用戶的游戲狀態(tài)信息發(fā)生變化,則通過分發(fā)服務器向所述至少一個第二用戶發(fā)送已變更的第一用戶的游戲狀態(tài)信息,所述至少一個第二用戶包括所述第一應用程序對應的除所述第一用戶以外的用戶。
本實施例提供了一種游戲狀態(tài)更新的方法,通過使用兩個服務器,即分發(fā)服務器和存儲服務器,實現(xiàn)了用戶根據(jù)自己意向決定是否向其他用戶發(fā)送用戶本身游戲ID,提高了游戲狀態(tài)更新的靈活性,節(jié)約了成本。
實施例五
圖5A為本發(fā)明實施例五提供的一種游戲狀態(tài)更新方法的流程圖,本實施例在上述實施例的基礎上還包括:當所述第一用戶登錄的所述第一應用程序進入記錄點時,向所述存儲服務器記錄請求,以便所述存儲服務器根據(jù)所述記錄請求保存所述記錄點對應的第一用戶的游戲狀態(tài)信息。
相應的,本實施例的方法包括:
S510、當?shù)谝挥脩舻卿浀谝粦贸绦驎r,通過存儲服務器獲取所述第一用戶的游戲狀態(tài)信息,并在所述第一應用程序中更新所述第一用戶的游戲狀態(tài)信息;
S520、若所述第一用戶的游戲狀態(tài)信息發(fā)生變化,則通過分發(fā)服務器向所述至少一個第二用戶發(fā)送已變更的第一用戶的游戲狀態(tài)信息,所述至少一個第二用戶包括所述第一應用程序對應的除所述第一用戶以外的用戶。
S530、當所述第一用戶登錄的所述第一應用程序進入記錄點時,向所述存儲服務器記錄請求,以便所述存儲服務器根據(jù)所述記錄請求保存所述記錄點對應的第一用戶的游戲狀態(tài)信息。
具體的,存儲服務器只負責存儲信息,每個客戶的在線期間與存儲服務器保持短鏈接。用戶在有存儲需求時向該存儲服務器發(fā)起存儲請求。記錄點可以只是用戶最后退出第一應用程序時的游戲狀態(tài)信息,那么存儲服務器只保存用戶最后退出時的第一應用程序與游戲狀態(tài)信息,如圖5B所示。當學習游戲玩家A在游戲進程中時,游戲狀態(tài)數(shù)據(jù)交給多人游戲插件進行多人轉發(fā),同步游戲狀態(tài)。游戲進程進入記錄點時,向存儲服務器發(fā)起記錄申請,保存游戲狀態(tài)。游戲玩家B上線時,向多人游戲插件發(fā)起載入請求,插件向存儲服務器讀取游戲進程信息,獲取信息后則立即載入游戲,進入當前游戲的最新狀態(tài),其在軟件架構圖如5C所示,從圖中可見,多人插件與游戲無關,像渲染插件一樣,提供給各個游戲進行調(diào)用,加快開發(fā)效率。
例如,上述用戶A只在退出憤怒的小鳥游戲時,才向存儲服務器發(fā)送存儲請求。如果用戶A在退出憤怒的小鳥游戲時過了17關,18關還沒有通關,那么存儲服務器更新用戶A的存儲信息為“用戶A,憤怒的小鳥,18關”。下次用戶A再登錄憤怒的小鳥游戲時,游戲應用界面加載憤怒的小鳥第18關的游戲場景。
本實施例提供了一種游戲狀態(tài)更新的方法,由于存儲服務器不需要處理游戲邏輯,也不需要解釋游戲狀態(tài)信息,因此服務器的負擔較小,可以支撐大量用戶,實現(xiàn)了用戶在結束游戲時的游戲信息狀態(tài)的更新,提高了游戲狀態(tài)更新的完整性。
實施例六
圖6為本發(fā)明實施例六提供的一種游戲狀態(tài)更新裝置的結構圖,本實施例可適用于多人完成多個學習游戲的情況,該方法可以由本發(fā)明實施例提供的智能輸入裝置來執(zhí)行,該裝置可采用軟件和/或硬件的方式實現(xiàn),該裝置可集成在任何提供游戲信息的設備中,例如典型的是用戶終端設備,可以是電腦,也可以是移動終端(例如手機)和平板電腦等,如圖6所示,具體包括:第一獲取模塊61、更新模塊62和發(fā)送模塊63。
所述第一獲取模塊61用于當?shù)谝挥脩舻卿浀谝粦贸绦驎r,通過存儲服務器獲取所述第一用戶的游戲狀態(tài)信息;
所述更新模塊62用于在所述第一應用程序中更新所述第一獲取模塊獲取的所述第一用戶的游戲狀態(tài)信息;
所述發(fā)送模塊63用于在所述第一應用程序的運行過程中,當所述第一用戶的游戲狀態(tài)信息發(fā)生變化時,通過分發(fā)服務器向所述至少一個第二用戶發(fā)送已變更的第一用戶的游戲狀態(tài)信息,所述至少一個第二用戶包括所述第一應用程序對應的除所述第一用戶以外的用戶。
本實施例所述的游戲狀態(tài)更新裝置用于執(zhí)行上述各實施例所述的游戲狀態(tài)更新方法,其技術原理和產(chǎn)生的技術效果類似,這里不再贅述。
實施例七
圖7所示為本發(fā)明實施例六提供的一種游戲狀態(tài)更新裝置的結構示意圖,如圖7所示:
在上述實施例的基礎上,所述裝置還包括:第二獲取模塊71。
所述第二獲取模塊71用于當?shù)谝挥脩舻卿浀谝粦贸绦驎r,通過所述存儲服務器獲取所述至少一個第二用戶的游戲狀態(tài)信息;所述更新模塊還用于,在所述第一應用程序中更新所述第二獲取模塊獲取的所述至少一個第二用戶的游戲狀態(tài)信息。
在上述實施例的基礎上,第二獲取模塊具體用于,向存儲服務器發(fā)送第一應用程序標識,以便所述存儲服務器根據(jù)所述第一應用程序標識確定至少一個第二用戶的游戲狀態(tài)信息,接收所述存儲服務器發(fā)送的所述至少一個第二用戶的游戲狀態(tài)信息。
在上述實施例的基礎上,所述發(fā)送模塊具體用于,向所述分發(fā)服務器發(fā)送分發(fā)指令,所述分發(fā)指令包括第一用戶標識、已變更的第一用戶的游戲狀態(tài)信息,以便所述分發(fā)服務器根據(jù)保存的連接信息表將所述已變更的第一用戶的游戲狀態(tài)信息發(fā)送至所述至少一個第二用戶。
在上述實施例的基礎上,所述裝置還包括:記錄請求模塊72。
所述記錄請求模塊72用于當所述第一用戶登錄的所述第一應用程序進入記錄點時,向所述存儲服務器記錄請求,以便所述存儲服務器根據(jù)所述記錄請求保存所述記錄點對應的第一用戶的游戲狀態(tài)信息。
上述裝置可執(zhí)行本發(fā)明前述所有實施例所提供的方法,具備執(zhí)行上述方法相應的功能模塊和有益效果。未在本實施例中詳盡描述的技術細節(jié),可參見本發(fā)明前述所有實施例所提供的方法。
實施例八
在上述實施例的基礎上,本實施例提供了一種游戲狀態(tài)更新系統(tǒng),該系統(tǒng)的系統(tǒng)架構可參照圖1C所示的系統(tǒng)機構示意圖,該系統(tǒng)包括:存儲服務器、分發(fā)服務器和至少一個實施例六或實施例七所示的游戲狀態(tài)更新裝置;所述游戲狀態(tài)更新裝置用于:
當?shù)谝挥脩舻卿浀谝粦贸绦驎r,通過存儲服務器獲取所述第一用戶的游戲狀態(tài)信息,并在所述第一應用程序中更新所述第一用戶的游戲狀態(tài)信息;
在所述第一應用程序的運行過程中,若所述第一用戶的游戲狀態(tài)信息發(fā)生變化,則通過分發(fā)服務器向所述至少一個第二用戶發(fā)送已變更的第一用戶的游戲狀態(tài)信息,所述至少一個第二用戶包括所述第一應用程序對應的除所述第一用戶以外的用戶。
本實施例所述的游戲狀態(tài)更新系統(tǒng)用于執(zhí)行上述各實施例所述的游戲狀態(tài)更新方法,其技術原理和產(chǎn)生的技術效果類似,這里不再贅述。
注意,上述僅為本發(fā)明的較佳實施例及所運用技術原理。本領域技術人員會理解,本發(fā)明不限于這里所述的特定實施例,對本領域技術人員來說能夠進行各種明顯的變化、重新調(diào)整和替代而不會脫離本發(fā)明的保護范圍。因此,雖然通過以上實施例對本發(fā)明進行了較為詳細的說明,但是本發(fā)明不僅僅限于以上實施例,在不脫離本發(fā)明構思的情況下,還可以包括更多其他等效實施例,而本發(fā)明的范圍由所附的權利要求范圍決定。