FlexMatchdefinizioni delle proprietà dei set di regole - Amazon GameLift

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

FlexMatchdefinizioni delle proprietà dei set di regole

Questa sezione definisce ogni proprietà nello schema del set di regole. Per ulteriore assistenza sulla creazione di un set di regole, consultaCrea un set di FlexMatch regole.

name

Un'etichetta descrittiva per il set di regole. Questo valore non è associato al nome assegnato alla GameLift MatchmakingRuleSetrisorsa Amazon. Questo valore è incluso nei dati di matchmaking che descrivono una partita completata, ma non viene utilizzato da alcun processo AmazonGameLift.

Valori consentiti: String

Obbligatorio? No

ruleLanguageVersion

La versione del linguaggio delle espressioni delle FlexMatch proprietà utilizzato.

Valori consentiti: «1.0"

Obbligatorio? Sì

playerAttributes

Una raccolta di dati dei giocatori inclusa nelle richieste di matchmaking e utilizzata nel processo di matchmaking. Qui puoi anche dichiarare gli attributi per includere i dati del giocatore nei dati di matchmaking che vengono passati ai server di gioco, anche se i dati non vengono utilizzati nel processo di matchmaking.

Obbligatorio? No

name

Un nome univoco per l'attributo del giocatore che deve essere utilizzato dal matchmaker. Questo nome deve corrispondere al nome dell'attributo del giocatore a cui si fa riferimento nelle richieste di matchmaking.

Valori consentiti: String

Obbligatorio? Sì

type

Il tipo di dati del valore dell'attributo del giocatore.

Valori consentiti: «string», «number», «string_list», «string_number_map»

Obbligatorio? Sì

default

Un valore predefinito da utilizzare quando una richiesta di matchmaking non ne fornisce uno per un giocatore.

Valori consentiti: qualsiasi valore consentito per l'attributo player.

Obbligatorio? No

algorithm

Impostazioni di configurazione opzionali per personalizzare il processo di matchmaking.

Obbligatorio? No

strategy

Il metodo da usare quando si costruiscono fiammiferi. Se questa proprietà non è impostata, il comportamento predefinito è «ExaustiveSearch».

Valori consentiti:

  • «ExhaustiveSearch»: metodo di abbinamento standard. FlexMatchforma una corrispondenza in base al ticket più vecchio di un batch valutando gli altri ticket del pool in base a una serie di regole di abbinamento personalizzate. Questa strategia viene utilizzata per partite con 40 giocatori o meno. Quando si utilizza questa strategia, batchingPreference deve essere impostato su «casuale» o «ordinato».

  • «bilanciato»: metodo ottimizzato per formare rapidamente partite di grandi dimensioni. Questa strategia viene utilizzata solo per partite da 41 a 200 giocatori. Organizza le partite preordinando il pool di biglietti, costruendo potenziali partite e assegnando i giocatori alle squadre, quindi bilanciando ogni squadra in una partita utilizzando un attributo del giocatore specificato. Ad esempio, questa strategia può essere utilizzata per pareggiare i livelli medi di abilità di tutte le squadre in una partita. Quando si utilizza questa strategia, balancedAttribute deve essere impostato e batchingPreference deve essere impostato su «LargestPopulation» o «FastestRegion». La maggior parte dei tipi di regole personalizzate non viene riconosciuta con questa strategia.

Obbligatorio? Sì

batchingPreference

Il metodo di preordinamento da utilizzare prima di raggruppare i ticket per il match building. Il preordinamento del pool di biglietti fa sì che i biglietti vengano raggruppati in base a una caratteristica specifica, il che tende ad aumentare l'uniformità tra i giocatori nelle partite finali.

Valori consentiti:

  • «random» — Valido solo con strategy = «ExaustiveSearch». Non viene effettuato alcun pre-ordinamento; i biglietti nel pool vengono raggruppati casualmente. Questo è il comportamento predefinito per una strategia di ricerca esaustiva.

  • «sorted» — Valido solo con strategy = «ExaustiveSearch». Il pool di biglietti è preordinato in base agli attributi dei giocatori elencati in. sortbyAttributes

  • «LargestPopulation»: valido solo con strategy = «balanced». Il pool di ticket è preordinato per regioni in cui i giocatori segnalano livelli di latenza accettabili. Questo è il comportamento predefinito per una strategia bilanciata.

  • «fastestRegion»: valido solo con strategy = «balanced». Il pool di ticket è preordinato per regioni in cui i giocatori segnalano i livelli di latenza più bassi. Le partite risultanti richiedono più tempo per essere completate, ma la latenza per tutti i giocatori tende a essere bassa.

Obbligatorio? Sì

balancedAttribute

Il nome di un attributo del giocatore da utilizzare quando si costruiscono partite di grandi dimensioni con una strategia bilanciata.

Valori consentiti: qualsiasi attributo dichiarato in playerAttributes con type = «numero».

Obbligatorio? Sì, if strategy = «bilanciato».

sortByAttributes

Un elenco di attributi dei giocatori da utilizzare per preordinare il pool di ticket prima della creazione in batch. Questa proprietà viene utilizzata solo quando si preordina con la strategia di ricerca esaustiva. L'ordine dell'elenco degli attributi determina l'ordinamento. FlexMatchutilizza una convenzione di ordinamento standard per i valori alfabetici e numerici.

Valori consentiti: qualsiasi attributo dichiarato inplayerAttributes.

Obbligatorio? Sì, if batchingPreference = «ordinato».

backfillPriority

Il metodo di prioritizzazione per abbinare i ticket di riempimento. Questa proprietà determina quando FlexMatch elabora i ticket di backfill in un batch. Viene utilizzato solo quando si preordina con la strategia di ricerca esaustiva. Se questa proprietà non è impostata, il comportamento predefinito è «normale».

Valori consentiti:

  • «normale»: il tipo di richiesta di un ticket (backfill o new match) non viene preso in considerazione quando si formano le partite.

  • «alto»: un batch di ticket viene ordinato per tipo di richiesta (e quindi per età) e FlexMatch tenta innanzitutto di abbinare i ticket di riempimento.

  • «basso»: un batch di ticket viene ordinato per tipo di richiesta (e quindi per età) e FlexMatch tenta innanzitutto di abbinare i ticket non di backfill.

Obbligatorio? No

expansionAgeSelection

Il metodo per calcolare il tempo di attesa per l'espansione di una regola di corrispondenza. Le espansioni vengono utilizzate per ridurre i requisiti di una partita se una partita non è stata completata dopo un certo periodo di tempo. Il tempo di attesa viene calcolato in base all'età dei biglietti già presenti nella partita parzialmente riempita. Se questa proprietà non è impostata, il comportamento predefinito è «più recente».

Valori consentiti:

  • «più recente» — Il tempo di attesa per l'espansione viene calcolato in base al ticket con il timestamp di creazione più recente nella partita parzialmente completata. Le espansioni tendono ad essere attivate più lentamente, perché un ticket più recente può riavviare l'orologio del tempo di attesa.

  • «più vecchio»: il tempo di attesa per l'espansione viene calcolato in base al ticket con il timestamp di creazione più vecchio della partita. Le espansioni tendono ad essere attivate più rapidamente.

Obbligatorio? No

teams

La configurazione delle squadre in una partita. Fornisci un nome e un intervallo di dimensioni per ogni squadra. Un set di regole deve definire almeno una squadra.

name

Un nome univoco per la squadra. È possibile fare riferimento ai nomi delle squadre nelle regole e nelle espansioni. In una partita di successo, i giocatori vengono assegnati in base al nome della squadra nei dati del matchmaking.

Valori consentiti: String

Obbligatorio? Sì

maxPlayers

Il numero massimo di giocatori che possono essere assegnati alla squadra.

Valori consentiti: Numero

Obbligatorio? Sì

minPlayers

Il numero minimo di giocatori che devono essere assegnati alla squadra prima della partita è valido.

Valori consentiti: Numero

Obbligatorio? Sì

quantity

Il numero di squadre di questo tipo da creare in una partita. Le squadre con quantità superiori a 1 sono designate con un numero aggiunto («Red_1", «Red_2", ecc.). Se questa proprietà non è impostata, il valore predefinito è «1".

Valori consentiti: Numero

Obbligatorio? No

rules

Una raccolta di regole che definiscono come valutare i giocatori per una partita.

Obbligatorio? No

name

Un nome univoco per la regola. Tutte le regole di un set di regole devono avere nomi univoci. I nomi delle regole sono indicati nei registri degli eventi e nelle metriche che tengono traccia delle attività correlate alla regola.

Valori consentiti: String

Obbligatorio? Sì

description

Una descrizione testuale della regola. Queste informazioni possono essere utilizzate per identificare lo scopo di una regola. Non viene utilizzato nel processo di matchmaking.

Valori consentiti: String

Obbligatorio? No

type

Il tipo di dichiarazione della regola. Ogni tipo di regola ha proprietà aggiuntive che devono essere impostate. Per ulteriori dettagli sulla struttura e sull'uso di ogni tipo di regola, vedereFlexMatchtipi di regole.

Valori consentiti:

  • «absoluteSort»: ordina utilizzando un metodo di ordinamento esplicito che ordina i biglietti in un batch in base al confronto tra un attributo del giocatore specificato e il ticket più vecchio del batch.

  • «collezione»: valuta i valori di una collezione, ad esempio un attributo del giocatore che è una collezione o un insieme di valori per più giocatori.

  • «confronto»: confronta due valori.

  • «compound»: definisce una regola di matchmaking composta utilizzando una combinazione logica di altre regole nel set di regole. Supportato solo per partite con 40 o meno giocatori.

  • «distanza»: misura la distanza tra i valori numerici.

  • «BatchDistance»: misura la differenza tra il valore di un attributo e lo utilizza per raggruppare le richieste di corrispondenza.

  • «DistanceSort»: ordina utilizzando un metodo di ordinamento esplicito che ordina i biglietti in un batch in base al confronto tra un attributo giocatore specificato con un valore numerico e il ticket più vecchio del batch.

  • «latenza»: valuta i dati di latenza regionali riportati per una richiesta di matchmaking.

Obbligatorio? Sì

expansions

Regole per allentare i requisiti di una partita nel tempo quando una partita non può essere completata. Imposta le espansioni come una serie di passaggi da applicare gradualmente per rendere più facile trovare le corrispondenze. Per impostazione predefinita, FlexMatch calcola il tempo di attesa in base all'età dell'ultimo biglietto aggiunto a una partita. È possibile modificare la modalità di calcolo dei tempi di attesa dell'espansione utilizzando la proprietà dell'algoritmoexpansionAgeSelection.

I tempi di attesa per l'espansione sono valori assoluti, quindi ogni passaggio dovrebbe avere un tempo di attesa più lungo del passaggio precedente. Ad esempio, per pianificare una serie graduale di espansione, è possibile utilizzare tempi di attesa di 30 secondi, 40 secondi e 50 secondi. I tempi di attesa non possono superare il tempo massimo consentito per una richiesta di partita, impostato nella configurazione del matchmaking.

Obbligatorio? No

target

L'elemento del set di regole per rilassarsi. È possibile ridurre le proprietà relative alle dimensioni del team o qualsiasi proprietà delle istruzioni delle regole. La sintassi è "<component name>[<rule/team name>]. <property name>». Per esempio, per modificare le dimensioni minime del team:teams[Red, Yellow].minPlayers. Per modificare il requisito minimo di abilità in una dichiarazione della regola di confronto denominata «minSkill»:rules[minSkill].referenceValue.

Obbligatorio? Sì

steps
waitTimeSeconds

Il periodo di attesa, in secondi, prima di applicare il nuovo valore per l'elemento del set di regole di destinazione.

Obbligatorio? Sì

value

Il nuovo valore per l'elemento del set di regole di destinazione.