自訂大型比對的比對演算法 - Amazon GameLift Servers

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

自訂大型比對的比對演算法

如果尚未存在演算法元件,請將演算法元件新增至規則集。設定下列屬性。

  • strategy (必要) – 將 strategy 屬性設定為「平衡」。此設定會觸發 FlexMatch進行額外的配對後檢查,以根據 balancedAttribute 屬性中定義的指定玩家屬性來尋找最佳團隊平衡。平衡策略取代了自訂規則建置平均配對團隊的需求。

  • balancedAttribute (必要) – 識別在配對中平衡隊伍時要使用的玩家屬性。此屬性必須具有數值資料類型 (雙或整數)。例如,如果您選擇平衡玩家技能, FlexMatch 會嘗試指派玩家,讓所有隊伍擁有盡可能平均配對的彙總技能等級。平衡屬性必須在規則集的玩家屬性中宣告。

  • batchingPreference (選用) – 選擇您希望為玩家設定最低延遲配對的重點程度。此設定會影響在建置相符項目之前,配對票證的排序方式。選項包括:

    • 最大人口。 FlexMatch 允許配對使用集區中具有可接受延遲值的所有票證,在至少一個共同位置。因此,潛在的票證集區往往很大,因此更容易更快地填滿相符項目。玩家可能會放置在具有可接受但不一定最佳延遲的遊戲中。如果未設定 batchingPreference 屬性,則當 strategy 設定為「平衡」時,這是預設行為。

    • 最快的位置。 會根據報告最低延遲值的位置,FlexMatch預先排序集區中的所有票證。因此,配對通常會與在同一位置報告低延遲的玩家形成。同時,每個配對的潛在票證集區較小,這可能會增加填滿配對所需的時間。此外,由於延遲的優先順序較高,因此配對中的玩家在平衡屬性方面可能會有更大的差異。

下列範例會將比對演算法設定為行為如下:(1) 預先排序票證集區,以依其具有可接受延遲值的位置分組票證;(2) 形成排序票證的批次以進行比對;(3) 建立與批次票證的比對,並平衡團隊以平衡平均玩家技能。

"algorithm": { "strategy": "balanced", "balancedAttribute": "player_skill", "batchingPreference": "largestPopulation" },