麻豆精品无码国产在线播放,国产亚洲精品成人AA片新蒲金,国模无码大尺度一区二区三区,神马免费午夜福利剧场

游戲對手匹配方法和裝置與流程

文檔序號:12347268閱讀:660來源:國知局
游戲對手匹配方法和裝置與流程

本發明涉及計算機技術領域,具體而言,涉及一種游戲對手匹配方法和裝置。



背景技術:

目前的手游市場中,單人匹配的PVP(人人戰斗)的玩法被廣泛應用,例如皇室戰爭,單人匹配的PVP的玩法能為玩家匹配到水平相近的玩家,進行PK,相比PVE(人機戰斗)的玩法,PVP的玩法更具有趣味性和挑戰性,越來越多的手游都開發了PVP玩法。

目前,大部分實時匹配方法,都是基于積分,該積分代表玩家的戰斗力,為玩家匹配積分相近的玩家,為玩家提供良好的游戲體驗。但是,如何能夠比較優的匹配到實力比較近似的玩家,目前尚未提出有效的解決方案。



技術實現要素:

根據本發明實施例的一個方面,提供了一種游戲對手匹配方法,包括:根據玩家控制的第一角色對應的積分將所述第一角色放入到隊列中,其中,所述積分用于為所述第一角色匹配對手,所述隊列為按照所述積分大小對角色進行排序的隊列;按照預定方向從所述隊列中距離所述角色最近的角色開始逐個角色進行匹配,匹配到符合預定條件的一個或多個第二角色,其中,所述預定條件至少包括:所述第二角色在所述第一角色的匹配范圍內并且所述第一角色在所述第二角色的匹配范圍內;所述匹配范圍用于指示能夠作為該角色的對手的積分范圍;從所述一個或多個第二角色中選擇作為所述對手的角色。

進一步地,所述隊列為按照積分由高到低或者由低到高排序的雙向鏈表。

進一步地,在未匹配到符合所述預定條件的所述一個或多個第二角色的情況下,所述方法還包括:設置定時器;在所述定時器到期之后,再次按照所述預定方向從所述隊列中距離所述角色最近的角色開始逐個角色進行匹配。

進一步地,在未匹配到符合所述預定條件的所述一個或多個第二角色的情況下,所述方法還包括:增大所述第一角色的匹配范圍;再次按照所述預定方向從所述隊列中距離所述角色最近的角色開始逐個角色進行匹配。

進一步地,在未匹配到符合所述預定條件的所述一個或多個第二角色達到預定次數的情況下,或者,所述第一角色的匹配范圍大于預定范圍的情況下,所述方法還包括:為所述第一角色分配非玩家控制角色NPC。根據權利要求1至3中任一項所述的方法,其特征在于,所述預定條件還包括:將作為所述第一角色對手的角色在預定時長內未作為所述第一角色的對手。

進一步地,從所述一個或多個第二角色中選擇作為所述對手的角色包括:從所述一個或多個第二角色中選擇與所述第一角色積分差距最小的角色,作為所述對手。

進一步地,還包括:將所述第一角色以及作為所述第一角色對手的角色從所述隊列中刪除。

根據本發明實施例的另一個方面,還提供了一種游戲對手匹配裝置,包括:處理單元,用于根據玩家控制的第一角色對應的積分將所述第一角色放入到隊列中,其中,所述積分用于為所述第一角色匹配對手,所述隊列為按照所述積分大小對角色進行排序的隊列;匹配單元,用于按照預定方向從所述隊列中距離所述角色最近的角色開始逐個角色進行匹配,匹配到符合預定條件的一個或多個第二角色,其中,所述預定條件至少包括:所述第二角色在所述第一角色的匹配范圍內并且所述第一角色在所述第二角色的匹配范圍內;所述匹配范圍用于指示能夠作為該角色的對手的積分范圍;選擇單元,用于從所述一個或多個第二角色中選擇作為所述對手的角色。

進一步地,所述隊列為按照積分由高到低或者由低到高排序的雙向鏈表。

根據本發明實施例,采用了根據玩家控制的第一角色對應的積分將所述第一角色放入到隊列中,其中,所述積分用于為所述第一角色匹配對手,所述隊列為按照所述積分大小對角色進行排序的隊列;按照預定方向從所述隊列中距離所述角色最近的角色開始逐個角色進行匹配,匹配到符合預定條件的一個或多個第二角色,其中,所述預定條件至少包括:所述第二角色在所述第一角色的匹配范圍內并且所述第一角色在所述第二角色的匹配范圍內;所述匹配范圍用于指示能夠作為該角色的對手的積分范圍;從所述一個或多個第二角色中選擇作為所述對手的角色。通過本發明解決了如何能夠比較優的匹配到實力比較近似的玩家的問題,改善了游戲對手匹配的效果。

附圖說明

此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,本發明的示意性實施例及其說明用于解釋本發明,并不構成對本發明的不當限定。在附圖中:

圖1是根據本發明實施例的一種游戲對手匹配方法的流程圖;以及,

圖2是根據本發明實施例的一種游戲對手匹配裝置的結構框圖。

具體實施方式

為了使本技術領域的人員更好地理解本發明方案,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分的實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都應當屬于本發明保護的范圍。

需要說明的是,本發明的說明書和權利要求書及上述附圖中的術語“第一”、“第二”等是用于區別類似的對象,而不必用于描述特定的順序或先后次序。應該理解這樣使用的數據在適當情況下可以互換,以便這里描述的本發明的實施例能夠以除了在這里圖示或描述的那些以外的順序實施。此外,術語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統、產品或設備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或對于這些過程、方法、產品或設備固有的其它步驟或單元。

實施例1

本發明實施例提供了一種游戲對手匹配方法。圖1是根據本發明實施例的一種游戲對手匹配方法的流程圖。如圖1所示,該方法包括如下步驟:

步驟S102,根據玩家控制的第一角色對應的積分將該第一角色放入到隊列中。

在該步驟中,角色對應的積分用于為該第一角色匹配對手,而隊列為按照積分大小對角色進行排序的隊列,這種排序的方式可以有很多種,例如,可以從積分高向積分低進行排列,也可以從積分低向積分高進行排列,在實施時根據游戲的不同需求可以進行靈活的選擇。

步驟S104,按照預定方向從上述隊列中距離上述角色最近的角色開始逐個角色進行匹配,匹配到符合預定條件的一個或多個第二角色。

為了更好的進行匹配在本步驟中引入了匹配范圍的概念,匹配范圍用于指示能夠作為該角色的對手的積分范圍。這個匹配范圍可以是有游戲默認配置的,也可以是游戲玩家進行配置的,在引入匹配范圍之后,上述預定條件至少包括:第二角色在第一角色的匹配范圍內并且第一角色在第二角色的匹配范圍內。該條件限定了第一角色和第二角色必須都是對方認可或者游戲認可的對手才可以。

步驟S106,從步驟S104匹配到的一個或多個第二角色中選擇作為第一角色對手的角色。

通過上述步驟,使用了隊列的方式進行對手的匹配,這種處理方式可以使對手的匹配更加有效率,并且還引入了匹配范圍,作為對手的雙方必須是在各自的匹配范圍之內的對手,這樣可以是角色的匹配更加準確,能夠在一定程度上提高游戲玩家的游戲體驗。

上述的隊列是一種排隊的方式,任何一種排隊的方式都可以實現上述技術效果,在具體實施時,可以根據需要選擇不同的數據結構來實現上述隊列,在本發明實施例中,提供了一種比較優的方式,即雙向鏈表,上述隊列可以為按照積分由高到低或者由低到高排序的雙向鏈表。雙向鏈表作為一種實現方式,其檢索速度比較快,有利于更快的進行對手的匹配。

雙向鏈表中的每個節點除了角色的積分之外,還可以記錄其他信息,雙向鏈表中的每個節點都可以保存該角色對應的信息。下面以一個例子進行說明。

例如,可以根據玩家的匹配積分和玩家ID,創建玩家匹配節點。節點可以包含如下信息的至少之一:玩家積分,玩家ID,玩家匹配范圍等級,玩家匹配定時器,玩家匹配前節點和后節點指針。匹配范圍等級用于標示節點當前的匹配積分范圍,分為1,2,3,4,標識的匹配積分范圍依次增大。將節點插入到匹配池中。匹配池是一個按積分由高至低排序的雙向鏈表。

向鏈表兩端按照以下規則搜索。以向前為例,以當前節點的前節點為目標節點,檢查目標節點的積分是否在當前節點的匹配范圍內,如果在范圍外則停止搜索,標記向前未找到合法節點;如果在匹配范圍內,則查看當前節點是否在目標節點的匹配范圍內,如果在則該目標節點為合法節點,并停止搜索,如果當前節點不在目標節點的匹配范圍內,則以目標節點的前置節點為目標節點,重復以上檢查,如果遍歷到鏈表頭還未搜索到合法節點,則標記向前未找到合法節點。完成上述步驟之后,再向后遍歷鏈表,做相同檢查,找到向后的合法節點。

經過上述搜索之后,如果向前向后均為找到合法節點,則增加定時器,等待下次搜索。如果找到了,對合法節點做如下操作,在已匹配池中,查找在指定的時間內,當前節點和合法節點是否已匹配過,如果未匹配過,則該合法節點為候選節點,否則丟棄該節點。對步驟3中找到的合法節點做上述檢查,找到所有候選節點,如果無候選節點,則增加定時器,等待下次搜索;如果有候選節點,則從中找出所有候選節點中和當前節點分差最小的節點為最終匹配節點,匹配完成,將兩個節點從匹配池中刪除,并插入已匹配池,進入新建戰斗。

在上述定時器經過指定時間觸發之后,對當前節點的匹配范圍等級加1,如果匹配范圍大于4,則為玩家分為NPC對手,進入新建戰斗。否則重復搜索。

新建戰斗,戰斗結束之后,根據玩家積分以及勝負情況,重新計算玩家積分。

在該例子中,涉及到玩家匹配定時器,該定時器是一個可選的實施方式,該定時器用于在未檢索到合適的節點時,等待一定的時間,在該時間內可能會有新的玩家加入,即在未匹配到符合上述預定條件的上述一個或多個第二角色的情況下,設置定時器;在定時器到期之后,再次按照上述預定方向從隊列中距離該角色最近的角色開始逐個角色進行匹配。這樣處理有一個優勢:可以避免在檢索不到的情況下,一直進行檢索,等待一定的時間后,隨著新玩家的加入,檢索到合適玩家的概率將會增加。

在該例子中,還涉及到玩家匹配范圍等級,匹配范圍的等級用來標識匹配范圍的大小,這也是一種在未匹配到合適對手的處理方式,可以增加匹配范圍,即在未匹配到符合上述預定條件的上述一個或多個第二角色的情況下,增大上述第一角色的匹配范圍;再次按照預定方向從隊列中距離該角色最近的角色開始逐個角色進行匹配。

定時器和增加匹配范圍可以單獨使用,也可以結合使用,例如,在定時器到期之后仍然檢索不到合適的對手,此時可以考慮增加匹配范圍;又例如,也可以先增加匹配范圍,如果檢索不到合適的對手再使用定時器。

作為另外一種可選的實施方式,在未匹配到符合上述預定條件的一個或多個第二角色達到預定次數的情況下,或者,第一角色的匹配范圍大于預定范圍的情況下,為上述第一角色分配非玩家控制角色NPC。這種情況作為確實無法匹配到對手的情況下一種選擇,可以讓玩家先和電腦角色玩一會兒。

在上述匹配的過程中,可能出現重復匹配到相同對手的情況下,此時,可以考慮增加一個條件,即上述預定條件還可以包括:將作為上述第一角色對手的角色在預定時長內未作為上述第一角色的對手。這樣可以增加玩家的新鮮感。

為了防止匹配到相同的對手,還可以將第一角色以及作為第一角色對手的角色從上述隊列中刪除。

在上述例子中,如果匹配到了多個第二角色作為對手,則可以從多個第二角色中選擇與第一角色積分差距最小的角色,作為對手。

通過以上例子,優先匹配分數相近的玩家,隨著時間,逐漸擴大匹配范圍。通過已匹配池的記錄,可以避免重復匹配同一玩家。通過匹配范圍的擴大,最后匹配NPC戰斗,可以解決匹配人數少時無法匹配的問題。能為玩家提供較好的匹配體驗。

實施例2

在本實施中還提供了一種游戲對手匹配裝置,圖2是根據本發明實施例的一種游戲對手匹配裝置的結構框圖,如圖2所示,該裝置包括:

處理單元22,用于根據玩家控制的第一角色對應的積分將上述第一角色放入到隊列中,其中,上述積分用于為上述第一角色匹配對手,上述隊列為按照上述積分大小對角色進行排序的隊列;

匹配單元24,用于按照預定方向從上述隊列中距離上述角色最近的角色開始逐個角色進行匹配,匹配到符合預定條件的一個或多個第二角色,其中,上述預定條件至少包括:上述第二角色在上述第一角色的匹配范圍內并且上述第一角色在上述第二角色的匹配范圍內;上述匹配范圍用于指示能夠作為該角色的對手的積分范圍;

選擇單元26,用于從上述一個或多個第二角色中選擇作為上述對手的角色。

通過上述單元,使用了隊列的方式進行對手的匹配,這種處理方式可以使對手的匹配更加有效率,并且還引入了匹配范圍,作為對手的雙方必須是在各自的匹配范圍之內的對手,這樣可以是角色的匹配更加準確,能夠在一定程度上提高游戲玩家的游戲體驗。

作為一個可選的實施方式,上述隊列可以為按照積分由高到低或者由低到高排序的雙向鏈表。

作為一個可選的實施方式,在未匹配到符合預定條件的一個或多個第二角色的情況下,該裝置還可以包括:定期器單元,用于設置定時器。在定時器到期之后,再次調用匹配單元24按照預定方向從隊列中距離角色最近的角色開始逐個角色進行匹配。

作為一個可選的實施方式,在未匹配到符合預定條件的一個或多個第二角色的情況下,匹配單元24還用于增大第一角色的匹配范圍;再次按照預定方向從隊列中距離角色最近的角色開始逐個角色進行匹配。

作為一個可選的實施方式,在未匹配到符合預定條件的一個或多個第二角色達到預定次數的情況下,或者,第一角色的匹配范圍大于預定范圍的情況下,匹配單元24還用于為第一角色分配非玩家控制角色NPC。

作為一個可選的實施方式,預定條件還可以包括:將作為第一角色對手的角色在預定時長內未作為第一角色的對手。

作為一個可選的實施方式,選擇單元26用于從一個或多個第二角色中選擇與第一角色積分差距最小的角色,作為對手。

作為一個可選的實施方式,上述裝置還可以包括:刪除單元,用于將第一角色以及作為第一角色對手的角色從隊列中刪除。

通過上可選實施方式,使用一個有序隊列(例如雙向列表)作為匹配池,新節點插入匹配池,向兩端搜索的方式,查找符合要求的節點,這樣保證了優先匹配積分相近的玩家。并采用已匹配池將已匹配玩家加入已匹配池,匹配時不匹配已匹配池中的玩家,排除已匹配玩家,避免短時間重復匹配同一玩家。通過匹配范圍等級逐漸增加,并限制最高等級,避免玩家匹配時間太長,控制了匹配時間。

需要說明的是,對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發明并不受所描述的動作順序的限制,因為依據本發明,某些步驟可以采用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬于優選實施例,所涉及的動作和模塊并不一定是本發明所必須的。

在上述實施例中,對各個實施例的描述都各有側重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關描述。

在本申請所提供的幾個實施例中,應該理解到,所揭露的裝置,可通過其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統,或一些特征可以忽略,或不執行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性或其它的形式。

所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。

另外,在本發明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現,也可以采用軟件功能單元的形式實現。

所述集成的單元如果以軟件功能單元的形式實現并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。基于這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的全部或部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可為個人計算機、移動終端、服務器或者網絡設備等)執行本發明各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:U盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、移動硬盤、磁碟或者光盤等各種可以存儲程序代碼的介質。

以上所述僅為本發明的優選實施例而已,并不用于限制本發明,對于本領域的技術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。

當前第1頁1 2 3 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
主站蜘蛛池模板: 胶州市| 安多县| 柳河县| 伊春市| 贺兰县| 阳原县| 梁平县| 定安县| 徐水县| 海丰县| 平安县| 全南县| 德江县| 图木舒克市| 汤原县| 上林县| 和田县| 图们市| 松潘县| 买车| 阿拉善盟| 霍邱县| 韶关市| 修文县| 汉中市| 沅江市| 金沙县| 广水市| 浦北县| 六枝特区| 石河子市| 综艺| 井研县| 澄江县| 宁晋县| 石狮市| 青川县| 都匀市| 青海省| 疏附县| 合作市|