Esempio: crea una grande partita a più squadre - Amazon GameLift Servers

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à.

Esempio: crea una grande partita a più squadre

Questo esempio illustra come impostare un set di regole per gli abbinamenti con più team che possono superare i 40 giocatori. Questo esempio illustra come creare più team identici con una definizione e come vengono completati i team di dimensioni asimmetriche durante la creazione dell'abbinamento.

Il set di regole di esempio crea un abbinamento utilizzando le seguenti istruzioni:

  • Crea dieci team di "cacciatori" identici con un massimo di 15 giocatori e un team di "mostri" con esattamente 5 giocatori.

  • Criteri di bilanciamento: seleziona i giocatori in base al numero di abilità dei mostri. Se i giocatori non segnalano il numero di uccisioni, utilizza un valore predefinito di 5.

  • Preferenza di raggruppamento: raggruppa i giocatori in base alle regioni che segnalano la latenza del giocatore più veloce.

  • Regola di latenza: imposta una latenza massima accettabile per il giocatore di 200 millisecondi.

  • Se l'abbinamento non viene completato rapidamente, rendi più flessibili i requisiti per completare un abbinamento in tempi ragionevoli.

    • Dopo 15 secondi, accetta i team con 10 giocatori.

    • Dopo 20 secondi, accetta i team con 8 giocatori.

Note sull'utilizzo di questo set di regole:

  • Questo set di regole definisce le squadre che possono contenere fino a 155 giocatori, il che la rende una partita di grandi dimensioni. (10 x 15 cacciatori+5 mostri = 155)

  • Poiché l'algoritmo utilizza la preferenza di raggruppamento "regione più veloce", i giocatori tendono a essere collocati in regioni in cui segnalano una latenza più rapida e non in regioni in cui presentano una latenza elevata (ma accettabile). Allo stesso tempo, è probabile che gli abbinamenti abbiano meno giocatori e che i criteri di bilanciamento (numero di abilità dei mostri) possano variare in modo più ampio.

  • Quando viene definita un'espansione per una definizione per più team (quantità> 1), l'espansione si applica a tutti i team creati con quella definizione. Quindi, rendendo più flessibile l'impostazione minima dei giocatori del team di cacciatori, tutti e dieci i team di cacciatori sono ugualmente interessati.

  • Poiché questo set di regole è ottimizzato per ridurre al minimo la latenza del giocatore, la regola di latenza funge da catch-all per escludere i giocatori che non hanno opzioni di connessione accettabili. Non abbiamo bisogno di rendere più flessibile questo requisito.

  • Ecco come FlexMatch riempie i valori corrispondenti a questo set di regole prima che le espansioni abbiano effetto:

    • Nessun team ha raggiunto il numero di minPlayers ancora. I team di cacciatori dispongono di 15 slot aperti, mentre il team di mostri ha 5 slot aperti.

      • I primi 100 giocatori vengono assegnati (10 ciascuno) ai dieci team di cacciatori.

      • I successivi 22 giocatori vengono assegnati sequenzialmente (2 ciascuno) ai team di cacciatore e al team di mostri.

    • I team di cacciatori hanno raggiunto il numero di minPlayers di 12 giocatori ciascuno. Il team di mostri ha 2 giocatori e non ha raggiunto il numero di minPlayers.

      • I successivi tre giocatori vengono assegnati al team di mostri.

    • Tutti i team hanno raggiunto il numero di minPlayers. I team di cacciatori hanno tre slot aperti. Il team di mostri è pieno.

      • Gli ultimi 30 giocatori vengono assegnati in sequenza ai team di cacciatori, garantendo che tutti i team di cacciatori abbiano quasi le stesse dimensioni (più o meno un giocatore).

  • Se hai attivato il backfill per gli abbinamenti creati con questo set di regole, non rendere più flessibili i requisiti di numero dei giocatori troppo rapidamente o potresti avere troppe sessioni di gioco parzialmente completate. Ulteriori informazioni in Allenta i requisiti delle partite di grandi dimensioni.

{ "name": "monster-hunters", "ruleLanguageVersion": "1.0", "playerAttributes": [{ "name": "monster-kills", "type": "number", "default": 5 }], "algorithm": { "balancedAttribute": "monster-kills", "strategy": "balanced", "batchingPreference": "fastestRegion" }, "teams": [{ "name": "Monsters", "maxPlayers": 5, "minPlayers": 5 }, { "name": "Hunters", "maxPlayers": 15, "minPlayers": 12, "quantity": 10 }], "rules": [{ "name": "latency-catchall", "description": "Sets maximum acceptable latency", "type": "latency", "maxLatency": 150 }], "expansions": [{ "target": "teams[Hunters].minPlayers", "steps": [{ "waitTimeSeconds": 15, "value": 10 }, { "waitTimeSeconds": 20, "value": 8 }] }] }