7 August 2010 | |
Heartbourne
Now that we have the basics down from the previous article, let’s look at how the MMR and rankings in StarCraft II.
One of the design goals of StarCraft II‘s multiplayer is to match players with opponents such that they win 50% of their games on average. The system does this by matching players very close in MMR (matchmaking rating); the closer the MMRs, the better. Players identical in skill level should often have close and exciting games, a recipe for fun! The details of the search algorithm are not known, but it seems that it begins by searching for players in a a very small range around your MMR and slowly expands it (perhaps the “expanding search?”) (and probably in a logarithmic range as opposed to linear) as time searching progresses. Once players are found, they are put into a game.
MMR itself is never displayed and as such the details of its calculation are very hard to gleam. Assuming its similar to Elo, the system will increase a player’s MMR by more if they defeat a relatively more skilled opponent and decrease it by less if they lose to a more skilled opponent. The Elo-style math is a bit messy, but essentially the algorithm calculates a percentage chance that each player will win based on the players’ MMRs. The chance scales logarithmically with their differences; a 400 point rating difference might means A has a ten times greater chance of winning than B, eg, about a 90% chance to win. If a player wins, the system increases their MMR by the chance that they would lose times some system-wide constant, K, and does the opposite for their opponent. For example, if K is set to 12 and player A has a 90% chance of winning against B, and A does indeed win, his rating would increase by only .1*12=1.2, while B’s rating would decrease by the same. If B won, his rating would increase by .9*12=10.8 and A‘s would decrease by the same amount. The system does not punish B very much for having to play A, but rewards him significantly if he does well.
Continue Reading
4 August 2010 | |
Heartbourne
Starcraft 2 has one of the most robust systems for ranking players of all skill levels and giving them fair games and a sense of progression. Blizzard doesn’t want to reveal too much detail about the way the rankings work as to prevent gaming of the system, and as such, a lot of speculation has caused a lot of misunderstanding among the player base. Still, we know that the ladder system is based around a few core principles and we have a lot of information that can be pieced together, so let’s examine the inner workings of the ladder system.
First, let’s tackle something a lot of people don’t know: the only thing that affects your ranking is winning or losing. Any good rating system for a competitive game must operate in this way. If it was based on how long the match takes, actions-per-minute (APM), or other factors, players could easily inflate those numbers to artificially increase their rating. Like ELO, the chess rating system on which Blizzard’s rating systems are based, each player has an associated number representing their skill level. In addition, there is an important second statistic called volatility that represents the algorithm’s confidence that your matchmaking rating (MMR) is accurate. This innovation allows players to be ranked very quickly and jump right into a range close to their skill. In other systems, like Warcraft III and even WoW’s arena system (to a degree), players must start at the bottom and work their way upward. The Starcraft 2 system prevents “n00b stomping” by creating new accounts and other abuses.
If you’ve tried the Starcraft 2 multiplayer, you are familiar with the process of acquiring a ranking. It asks you if you first want to play some practice games, which are played on a slower speed with “no rush” rules enforced. It is unclear if this data is incorporated into your early MMR, but I suspect that it is, as there is no drawback to starting players with an accurate rating. You then play 5 “placement” matches, where it chooses opponents from across the spectrum to try to get a general idea of your MMR. Keep in mind that it is only looking at win/loss data, and there are a lot of variables that go into deciding victory in a Starcraft 2 game. As such, with just five data points, the MMR it approximates for you is going to have a very high volatility.
Continue Reading