Sicuramente molteplici volte vi sarete chiesti come League of Legends faccia a gestire il proprio matchmaking, magari dopo essere stati matchati con compagni di squadra di lega nettamente inferiore alla vostra o con avversari molto più abili in confronto al vostro team, ebbene finalmente gli sviluppatori di Riot Games hanno reso di pubblico dominio qualche informazione in più riguardante il sistema di abbinamento che ci accompagna nelle nostre (talvolta) adorate sessioni di ranked. Prima di iniziare mi è d’obbligo specificare, come molti di voi già sapranno, che l’algoritmo di matchmaking varia in base al tipo di coda (ossia le partite normali e quelle classificate non scelgono gli altri giocatori della partita allo stesso modo), in questo articolo parleremo nello specifico delle code classificate. Dopo questa premessa, partiamo subito con le tre variabili su cui si basa il sistema:
Fattori Principali
Come già preannunciato, l’intero algoritmo è stato creato tenendo conto di 3 fattori qui riassunti:
- Incontri Imparziali: ossia entrambe le squadre sono allo stesso livello, ovviamente nei limiti del possibile;
- Preferenze di Posizione: ossia viene tenuta da conto la posizione scelta da ogni giocatore con l’entrata in coda, poco spesso vi troverete a dover giocare in un ruolo che non avete scelto;
- Tempi di Coda ridotti: ossia anche far durare la coda il meno possibile rientra nelle priorità.
In sostanza l’obiettivo principale del matchmaking è trovare una partita tenendo conto di queste 3 variabili, facendo in modo che il bilanciamento tra esse sia il migliore possibile.
Andiamo ad osservare più da vicino ognuno di questi punti per poi andare più a fondo con il concetto di MMR (MatchMaking Rating).
[amazon_link asins=’B07178LQB6,B071JYSCC1,B078GHSSFD’ template=’ProductCarousel’ store=’outplayedit-21′ marketplace=’IT’ link_id=’9d1e6031-38c0-11e8-83c1-1366e749042e’]
Incontri Imparziali
Questo indicatore si basa completamente sul punteggio MMR di cui parleremo tra poco; con il termine “imparziale” si intende una partita nella quale le possibilità di vittoria di ogni team vanno dal 49% al 51% (queste percentuali vengono rispettate da ogni partita che si trova durante la ricerca). Esse dipendono dall’MMR medio di ogni squadra, di solito la massima differenza di questo punteggio equivale a 4 o 5 punti (in caso la differenza valga uno tra questi due valori, la percentuale di vittoria di un team sarà molto vicina al 49% mentre quella dell’altro sarà molto vicina al 51%). Un caso ancora più raro è quello della partita perfetta ossia quello in cui ogni giocatore si trova nel suo ruolo preferito ed ha lo stesso MMR di tutti gli altri.
Preferenze di Posizione
Le due posizioni scelte dal giocatore, quella principale e quella secondaria, sono sempre le prioritarie rispetto alle altre (ovviamente la principale a sua volta ha priorità sulla secondaria) e nella maggior parte dei casi vengono rispettate. Nonostante questo esistono ovviamente dei casi in cui si incorre nell’autoriempimento (o autofill), questo accade quando si è in coda da molto tempo ed in quel momento non è possibile trovare giocatori con MMR simile che hanno scelto ruoli diversi dai nostri. E’ necessario sottolineare che comunque questa viene tenuta come “ultima spiaggia” per entrare in una partita quando i tempi della coda diventano eccessivi.
Tempi di Coda Ridotti
Abbiamo già parlato di qualche caratteristica della durata della coda nell’ultimo punto, ma non in modo completo, quindi vediamola meglio:
In casi estremi, ossia quando i tempi nella coda si fanno troppo lunghi e non si trovano giocatori con un MMR simile al nostro, il sistema tende a prediligere partite più equilibrate in termini di abilità piuttosto che una durata minore della coda, anche se questo può risultare in un impatto negativo sul giocatore (si pone l’equilibrio al di sopra dei tempi, “la fretta è cattiva consigliera”!).
Da questo scaturisce il fatto che nella stragrande parte dei casi, un coda molto lunga tende a sfociare in una partita dove la differenza di MMR tra le due squadre è sui 4 o 5 punti.
[amazon_link asins=’B00ABS62C6,B01LZ0VSIH,B075FW4X8V’ template=’ProductCarousel’ store=’outplayedit-21′ marketplace=’IT’ link_id=’bec44480-38c0-11e8-b55e-5f27c95cf0c9′]
MMR
L’MMR (o MatchMaking Rating o ancora Punteggio di MatchMaking) è un valore assegnato ad ogni giocatore di ranked che viene utilizzato dagli sviluppatori di Riot Games (e ovviamente dai loro software) per stabilire il suo livello di abilità. Prima di giocare la propria prima partita classificata ogni evocatore ha un MMR di default, valore che poi aumenta con ogni vittoria e quindi diminuisce con ogni sconfitta; ovviamente ad ogni giocatore corrispondono due valori diversi per quanto riguarda SoloQ e FlexQ, i quali sono completamente separati ed indipendenti l’uno dall’altro.
Purtroppo non sono state fornite informazioni più precise riguardo questo numero, quindi al momento per i giocatori non è ancora possibile calcolarlo in modo preciso.
Altre difficoltà
I punti precedentemente nominati non sono gli unici di cui l’algoritmo deve tenere conto, infatti sono presenti altri fattori esterni di cui esso deve necessariamente preoccuparsi, che spesso rendono la ricerca più lunga data la difficoltà che impongono nel matching di persone con tutti i requisiti necessari. Alcuni tra questi sono:
- La minore quantità di giocatori attivi in determinate fasce di tempo;
- Gruppi di premades con MMR particolarmente diverso;
- Mancanza di giocatori per una determinata posizione.
Questi casi sono tutti stati già implementati nel sistema di matchmaking ma sono presenti anche variabili che attualmente sono per la maggior parte imprevedibili e rappresentano quindi problemi a cui è molto difficile trovare una soluzione, le quali rovinano spesso l’esperienza di gioco; tra esse troviamo le seguenti:
- Giocatori che provano un nuovo ruolo/un ruolo che non giocano spesso;
- Giocatori che provano un nuovo campione/un campione che non giocano spesso;
- Scontri non equilibrati in una lane che hanno troppo impatto sull’andamento della partita;
- Partite che trovano il loro termine troppo in fretta, la causa è spesso da attribuire a campioni da early game o ad assassini;
- Giocatori che semplicemente non sono in forma.
Differenze tra lega e MMR
Nonostante sia la lega che l’MMR abbiano la stessa finalità, ossia entrambi mirano a fornire un indicatore delle skills di un evocatore, presentano alcune differenze soprattutto riguardo il loro ruolo nel matchmaking, vediamo qualche esempio:
- Quando un giocatore si trova in un momento nel quale riesce a portare a casa molte più vittorie che sconfitte, lo stesso verrà matchato contro persone più forti, ecco un esempio pratico: un giocatore che sta vincendo molte partite (e ne sta quindi perdendo meno rispetto alle vinte) si ritroverà probabilmente a fronteggiare avversari superiori in termini di lega (o di divisione). Questa probabilità ed il possibile divario aumentano in caso di serie di vittorie molto lunghe.
- Un giocatore che sta invece perdendo molte partite verrà probabilmente abbinato ad avversari inferiori (di nuovo, in termini di lega o divisione) in modo da capire, tramite confronto, le sue abilità rispetto a quelle degli altri giocatori.
- Nonostante l’MMR medio relativo ai due team che si fronteggiano sia pressoché lo stesso, potrebbero capitare grandi disparità tra un giocatore e l’altro, questo problema si presenta soprattutto a causa dell’entrata in coda con un gruppo di premades, mentre è piuttosto raro nel resto dei casi. Gli sviluppatori sono comunque al lavoro per il miglioramento di questa parte dell’algoritmo.
Conclusioni
Molto spesso ci troviamo in partite che sembrano decisamente impari (ad esempio con delle rese già a 15 minuti), ma gli sviluppatori tramite il sistema di matchmaking fanno il possibile per garantire equilibrio delle possibilità di vittoria, fatto molto complicato da ottenere a causa delle innumerevoli variabili (e della loro complessità) di cui dover tenere conto ;
Con queste informazioni siamo finalmente riusciti a fare un po’ di chiarezza su quello che è il funzionamento delle code, nonostante permangano molti dubbi; sicuramente in futuro Riot Games non mancherà nel fornire ulteriori spiegazioni.