My method focuses on looking at players' records in a given matchup in recent games. I've attempted to limit it to games played in regular leagues in a past year, but made some allowances in order to get a reasonable number of games (≥ 10 if at all possible; not that 10 is a magic number but I had to pick one). This is mostly a problem with rookies & second year players; also EffOrt.
Based on that information I predict a win percentage between the two given players and assign a score by comparing that percentage to the actual result. As games build up, this will generate two scores for the map: an overall result score (RES), and a second indicator showing how the actual score compares to a hypothetical score if the results were the same but every game was a 50-50 matchup. I've tentatively assigned this second number the "balance" (BAL) designator, but in fact so far I am not sure which demonstrates actual balance best, if either. The combination gives a decent idea, I think.
In each matchup (PvT, TvZ, ZvT) a positive score indicates a map favoring the 1st race and a negative score indicates the map favors the second race. I also summed the absolute values to produce net scores, which represent even more loosely overall balance.
One other note is that I consider a good starting point for balance discussion the number of mirrors for each race on a given map.
THE MAPS
Chain Reaction
Mirror Bias: Zerg (5 of 9 total)
Matchups
PvT 1-1; RES -0.13, BAL -0.13
TvZ 2-0; RES 0.32, BAL -0.18
ZvP 4-3; RES 0.13, BAL -0.12
Net Results 0.58, Net Balance 0.43
Although I am really going through alphabetically, Chain Reaction allows me to talk about almost all of the features (and bugs) of the system right now. The PvT results are a nice demonstration of the problem of the small sample size. Due to the constraints of the data set,
![Terran (T)](https://tl.net/tlpd/images/Ticon_small.png)
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
![Terran (T)](https://tl.net/tlpd/images/Ticon_small.png)
We can also generate race balance guesstimates off the balance figure:
Protoss is -0.13 + 0.12 (the BAL values for or against a race) = 0.01; Terran 0.13 - 0.18 = -0.06; Zerg 0.18 - 0.12 = 0.06. This incidentally confirms the mirror results indicating the map is Z>P>T.
Electric Circuit
Mirror Bias: Zerg (5 of 8 total)
Matchups
PvT 2-2; RES -0.03, BAL -0.03
TvZ 1-4; RES -1.06, BAL -0.31
ZvP 1-2; RES -0.15, BAL 0.10
Net Results 1.24, Net Balance 0.44
Electric Circuit features both the most even matchup (PvT) and least even (TvZ) of any map so far. The PvT has featured eight good players with no notable upsets, while the TvZ has not only swung to Zerg, but every Zerg to win won as a (numerical) underdog; the only Terran to win was
![Terran (T)](https://tl.net/tlpd/images/Ticon_small.png)
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
![Terran (T)](https://tl.net/tlpd/images/Ticon_small.png)
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
Overall racial: Protoss -0.13, Terran -0.28, Zerg 0.41, Z>P>T (matches mirror numbers).
Ground Zero (as a Stars fan I keep typing this Ground
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
Mirror Bias: Terran (3 of 4)
PvT 3-1; RES 0.40, BAL -0.10
TvZ 5-2; RES 0.64, BAL -0.11
ZvP 1-2; RES -0.40, BAL -0.15
Net Results 1.40, Net Balance 0.42
Ground Zero nicely illustrates the problem with the pure result number. In both PvT and TvZ the wins have stacked up for one race, but in neither case have there been any significant upsets, which is reflected in the balance numbers that tell you there is not much to worry about. ZvP is a different matter: both Protoss wins have been large upsets (
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
Overal racial: Protoss 0.05, Terran -0.01, Zerg -0.04 (P>T>Z)
Early indications are that Ground Zero may quite likely be the best map of this year's selections.
Jade
Mirror Bias: Terran (5 of 9)
PvT 4-4; RES -0.30, BAL -0.30
TvZ 1-0; RES 0.20, BAL -0.05
ZvP 1-2; RES -0.26, BAL -0.01
Net Results 0.76, Net Balance 0.36
This map does tilt Terran, I think: other than
![Terran (T)](https://tl.net/tlpd/images/Ticon_small.png)
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
![Terran (T)](https://tl.net/tlpd/images/Ticon_small.png)
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
![Terran (T)](https://tl.net/tlpd/images/Ticon_small.png)
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
Overall racial: Protoss -0.29, Terran 0.25, Zerg 0.6 (T>Z>P)
This obviously needed to be said at some point: on almost every map I am looking at significantly different numbers of games in each matchup, meaning the numbers are probably not exactly analogous. I have not even begun to try to adjust for this yet, so feel free to comment but do be aware I am aware of the potential problem this represents.
Outlier
Mirror Bias: Protoss (8 of 13)
PvT none
TvZ 0-1; RES -0.19, BAL 0.06
ZvP 4-3; RES -0.04, BAL -0.29
I have to say Outlier is an aptly named map. I am not sure if the teams have even bothered to try playing a Terran on it even in practice.
![Terran (T)](https://tl.net/tlpd/images/Ticon_small.png)
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
I feel like this is a test case for the system. Every single Zerg but one (
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
There is little to no point computing any net results – you can work them out for yourself if you insist. The short version is: not really a good map within the current expectations of play.
Sniper Ridge
Mirror Bias: Terran (3 of 5)
PvT 4-1; RES 0.67, BAL -0.08
TvZ 3-0; RES 0.43, BAL -0.32
ZvP 3-2; RES 0.16, BAL -0.09
Net Results 1.26, Net Balance 0.49
Another map providing an interesting look into the balance discussion. The TvZ games were a series of heavily favored Terrans winning. The PvT and ZvP have been a mess of relatively closely handicapped games with a significant number of minor upsets. Sniper Ridge seems like a fairly solid map that basically no one has really figured out how to play yet, in my opinion. We'll see if this holds.
Overall racial: Protoss 0.01, Terran -0.24, Zerg 0.23 (Z>P>T)
Note that those numbers in this case seem to make very little sense whatsoever.
Obviously there's some room for improvement here. I thought I'd share the project so far with you; there's one particular adjustment I'm trying to work out formulaically which I think will significantly improve accuracy especially dealing with large numbers of "odd" results in a matchup.
UPSETS!
As part of the project, I had to handicap games. So I thought I'd share the list of "upsets" this produced. We start at 45% because we have to start somewhere but any higher than that it is not possible to make a good argument for the game being an upset.
Minor Upsets (41-45% chance of winning)
2011-11-26
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
2011-11-27
![Terran (T)](https://tl.net/tlpd/images/Ticon_small.png)
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
2011-11-27
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
2011-12-13
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
2011-12-17
![Terran (T)](https://tl.net/tlpd/images/Ticon_small.png)
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
2011-12-24
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
2011-12-25
![Terran (T)](https://tl.net/tlpd/images/Ticon_small.png)
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
2011-12-28
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
![Terran (T)](https://tl.net/tlpd/images/Ticon_small.png)
2011-12-31
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
2012-01-01
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
Significant Upsets (30-39% chance of winning)
2011-12-09
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
2011-12-14
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
2012-01-01
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
Major Upsets (<30% chance of winning)
2011-11-26*
![Zerg (Z)](https://tl.net/tlpd/images/Zicon_small.png)
![Terran (T)](https://tl.net/tlpd/images/Ticon_small.png)
2011-11-29**
![Terran (T)](https://tl.net/tlpd/images/Ticon_small.png)
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
2011-12-25
![Terran (T)](https://tl.net/tlpd/images/Ticon_small.png)
![Protoss (P)](https://tl.net/tlpd/images/Picon_small.png)
* I don't know what to make of this: BarrackS seems legitimately good at TvZ but ggaemo embarrassed him.
** While Wooki was 2-0 PvT in the previous year, BaBy's good enough that this isn't really an upset, whatever the numbers say. But it's a sweet game, so I put it in anyway.
EDIT 1 (12-01-02): Fixed game urls; now linked in dates. FYI TLPD inside URL tags invalidates the URL.
EDIT 2 (12-01-17): Adjusted game probabilities to reflect new counting method.