League of Legends uses a mathematical system to match up players of similar skill in the “Normal” and “Ranked” game types. Each player is assigned a number that represents his relative skill level, which is determined by the outcomes of his previous games. When a player enters the queue for these game types, the system determines his relative skill level. This number is called an “Elo Rating”, taking its name from Arpad Elo, the mathematician who developed the system. The system then attempts to assemble two teams based upon the Elo Rating of all players in an attempt to create a game wherein both teams have as close to a 50% chance of winning as possible.
The system accounts for the advantage of pre-made teams by providing more difficult opponents.
The basic priorities of the system are (in respective order):
- Protecting new players from experienced players.
- Maintaining fairness and creating competitive matches.
- Finding a match at all – the longer the wait, the lower the priority given to #1 and #2 becomes.
How are matches made?
First, the system places players in the appropriate pool – which is basically the game type (normal, ranked solo/duo, ranked 5-man team, other game modes, etc). Once in the pool, the system starts trying to find matches, with the goal of creating teams that are equal and which both have a 50% chance of winning.
Step 1: Determine strength:
If a player is solo queued, the strength is determined by his personal Elo rating (i.e. ranked team rating for ranked team, normal games rating for normal games).
If a player is in a pre-made team, his rating is the average Elo of himself and his team members, along with an increase based on the number of people in the pre-made in order to ensure that you get tougher opponents, because being a pre-made team is a proven advantage.
Step 2: Determine eligible opponents:
Initially, the system will only match players with similar Elo ratings. When enough time elapses however, it will broaden the range it considers acceptable in order to find a match and prevent players from waiting too long.
New players get some special protection and are usually matched against other new players.
Step 3: Find a match:
Eventually, the system will assemble a group of players with comparable Elos and it will put the players into a game. The system then tries to balance the teams so that they each have a 50% chance of winning.
How is the Elo rating measured over time?
We use a modified version of the Elo system. Generally speaking, the Elo system mathematically compares two player ratings to predict what a player’s chances are of winning a game against another player. If a player wins, he gains points, if he loses, he loses points. If a player wins a game he had higher chances of losing, he gains a greater number of points with respect to how poor his odds were. Additionally, newer players gain and lose points more rapidly so that they reach an accurate skill level faster. This means that good players become highly rated because they win more often than the system expects, until the system is correctly predicting when they will win.
We modified the Elo system to adopt a team Elo based on whoever is on the team, and when a team wins, it’s assumed that everyone on the team was “better” than the guess, and each player on it gains points.
We use various proprietary methods to identify new players who are significantly more skilled than a typical new player, and they receive an Elo bonus.
Gaining summoner levels significantly boosts the Elo rating.
How does the system deal with pre-made teams against solo teams?
We performed analyses on hundreds of thousands of games to identify how much of a skill advantage this situation gives the pre-made. We found that a variety of factors influence it, including the size of the pre-made (i.e. 2, 3, 4, 5 people), the skills of the players involved, the combinations of experienced and new players, and a couple other minor factors.
Upon identification of these advantages, we boost the pre-made’s rating to create a fair match, applying the appropriate, mathematically-justified adjustment.
While we will not give precise values because those are trade secrets, we can say that:
- 5-man pre-mades are only moderately stronger than solo queuers
- Partial pre-mades have only a slight advantage
- New players don’t benefit much from being in a pre-made, while experts benefit a lot
Why even match pre-mades against non-premades at all?
It helps the system discover skill rating much faster, so that players get fair matches faster. This works because if players pre-make teams, it reduces the amount that players win or lose games based on “bad” or “good” luck in relation to the team with which they are paired. If a player pre-makes, he joins up with people of approximately similar skill, and he is partnered with fewer random teammates boosting or impairing him, so his rating reaches an accurate value more quickly because more of each game result is due specifically to him and his friend(s), who are likely close in skill.
We want people to easily play with their friends because they will have more fun if they do, and we can’t have a 5v5 matchmaking pool of all 2 man teams, or all 3 man teams – there needs to be a mixture for it to work. We chose to include 5-man because it’s a lot of fun and the collected data shows that excluding this won’t improve the fairness of matches much at all.
Why don’t you include other little details like how many kills I had, etc, to determine my rating?
If we did, it would encourage players to focus on killing other players, instead of strategically winning the game. For instance, healers would receive undesirable Elo modification. By putting as many measurements and incentives as possible on winning, we avoid side behaviors that aren’t as fun, and which confuse the rating process.
So, because I won a few games in a row, I’m going to get an impossible match now, right?
Not exactly. Your rating will rise, so you’ll be pit against increasingly difficult opponents – but the system doesn’t try to give you 50/50 win/loss record, it just attempts to secure accurate predictions of game results. Eventually, plays hit their limits, and average players WILL see a roughly 50/50 win loss ratio. Players who are above average will tend to do slightly better there are more players below them than above them, so matches, when made, will tend to be slightly “downwards”. Expert players near the top of our rankings will often run 90% win rates.
How will you do persistent teams, like in WoW arenas?
We will be implementing a system for this, and using new methods we develop to create a matchmaking infrastructure surrounding it. We will figure out how good you are in general (e.g. personal ratings), while allowing you to freely create/destroy teams.
Can I beat this system by leaving the game early?
No. You incur an Elo adjustment based upon the team’s result. If your team wins, you will gain points, if your team loses, you will lose points. You do, however, incur other penalties for leaving. This is because various other options (which we considered) to account for people leaving end up being exploitable or can otherwise cause undesirable effects on the system. For example, if we reduced the rating loss of your teammates if you leave, then you might leave to help them preserve their ratings. If we gave you a penalty even if they won, we would be “deflating” the entire system of ratings over time, causing new players to possibly run into professional players eventually. The system must be “capped” zero sum, in other words, players must gain and lose points equally overall so that the “average” score in the system remains consistent.