Building off the numbers collected below, I ran a "normalizing" algorithm to attempt to discover how raw number of players reflected actual chances. I added up the matchup ELO of all "good" players in a race, and divided it by the total number of "good" players of all races. I then obtained a standard figure by averaging the vs [race] ELO of all "good" players and dividing that by 3. Higher is better. Results:
X vs Protoss
Zerg: 761.59
Protoss: 750.18
[All: 717.65]
Terran: 641.18
Conclusions: Zerg have a small advantage in the matchup (taking the ZvP number compared to the mirror) but not much. Terran are at a significant disadvantage against Protoss. Also, PvP is a matchup in which it is possible to be very good.
X vs Terran:
Terran: 973.85
[All: 721.32]
Protoss: 652.80
Zerg: 537.30
Conclusions: As noted in the OP, this seems skewed due to the larger number of good TvT players compared to PvT and ZvTers. My guess was that this was due to a larger number of Terrans overall. I would also venture that TvT is the most disparate mirror: you're either good or bad with little middle ground. Other than that, Protoss do significantly better than Zerg against Terran.
X vs Zerg:
Terran: 894.00
[All: 723.41]
Zerg: 638.88
Protoss: 637.35
Conclusions: As before, ZvP seems to correspond well with ZvZ, the mirror, indicating a well-balanced matchup. Terran have a significant advantage over Zerg. I find it interesting that the average good ZvZer doesn't have that great an advantage; this may also indicate a little Z>P.
I also ran similar tests comparing all "good" players by general ELO, using the same "good" >= 2100 definition. When looking at overall ELO, this is probably not quite accurate: 2120 might be a better cut-off. However, I was unwilling to change the definition. This gave 11 Protoss, 11 Terran, and 11 Zerg. Results:
X vs X
Terran: 726.03
[All: 723.84]
Protoss: 723.30
Zerg: 722.18
Conclusion: going by ELO, with the particular sample I took, Terran has a small overall advantage, and Zerg a miniscule overall disadvantage. MSL semifinals notwithstanding. (I'm not sure whether that indicates a flaw in the method or not: Stork vs ZerO was an unfortunate for Stork but in better condition he might have won; Snow vs Jaedong could have gone either way; in the great vs Kal match the clearly better player choked hard.)
+ Show Spoiler [OP] +
Somebody in the PR was talking about HiyA's TvP, which used to be excellent, and how was it now? I thought I'd see, so I took a look at the ELO table (answer: not bad). Then I got carried away into balance issues.
I realize nobody's debating BW balance. We all know it's pretty good, but not quite perfect. I'm going to merely illustrate that, so:
In looking at the ELO tables, I've estimated that a player who's "good" in a matchup right now corresponds to an ELO at or over 2100. Over 2200 we can call "very good". Over 2300 is matchup-bonjwa level. (Hi Flash.) I'm theorizing that a balanced matchup should have an equal number of "good" players of each race.
Numbers:
X vs Protoss: 17 "good" players.
6 Protoss: Bisu, Horang2, Shuttle, Kal, free, Stork
5 Terran: Flash, fantasy, Sea, Bogus, HiyA
6 Zerg: Jaedong, Calm, ZerO, Hydra, Hyuk, RorO
(Very Good: Flash, Jaedong, fantasy)
Balance Grade: A
X vs Terran: 20 players.
6 Protoss: Stork, BeSt, Bisu, Snow, free, Kal
9 Terran: Flash, fantasy, sKyHigh, Sea, Leta, Iris, Mind, Light, BaBy
5 Zerg: Jaedong, ZerO, Hydra, Shine, RorO
(Very Good: Flash, Jaedong, Stork, fantasy)
Balance Grade: ...Hell, I don't know. Why so many extra Terran?
X vs Zerg: 17 "good" players.
5 Protoss: Bisu, Stork, Stats, Kal, Movie
7 Terran: Flash, Light, Midas, fantasy, Sea, TurN, BaBy
5 Zerg: Jaedong, Shine, Hydra, great, Modesty
(Very Good: Flash, Jaedong, Bisu, Light)
Balance Grade: B
(Very Good in 3 Matchups: Flash, Jaedong
Very Good in 2 Matchups: fantasy
Balance Grade: B-)
Mostly irrelevant. Mostly balanced but imperfect. I get that we know this. But I like to confirm things we know, and I'd like some opinions about the XvT weirdness.
I realize nobody's debating BW balance. We all know it's pretty good, but not quite perfect. I'm going to merely illustrate that, so:
In looking at the ELO tables, I've estimated that a player who's "good" in a matchup right now corresponds to an ELO at or over 2100. Over 2200 we can call "very good". Over 2300 is matchup-bonjwa level. (Hi Flash.) I'm theorizing that a balanced matchup should have an equal number of "good" players of each race.
Numbers:
X vs Protoss: 17 "good" players.
6 Protoss: Bisu, Horang2, Shuttle, Kal, free, Stork
5 Terran: Flash, fantasy, Sea, Bogus, HiyA
6 Zerg: Jaedong, Calm, ZerO, Hydra, Hyuk, RorO
(Very Good: Flash, Jaedong, fantasy)
Balance Grade: A
X vs Terran: 20 players.
6 Protoss: Stork, BeSt, Bisu, Snow, free, Kal
9 Terran: Flash, fantasy, sKyHigh, Sea, Leta, Iris, Mind, Light, BaBy
5 Zerg: Jaedong, ZerO, Hydra, Shine, RorO
(Very Good: Flash, Jaedong, Stork, fantasy)
Balance Grade: ...Hell, I don't know. Why so many extra Terran?
X vs Zerg: 17 "good" players.
5 Protoss: Bisu, Stork, Stats, Kal, Movie
7 Terran: Flash, Light, Midas, fantasy, Sea, TurN, BaBy
5 Zerg: Jaedong, Shine, Hydra, great, Modesty
(Very Good: Flash, Jaedong, Bisu, Light)
Balance Grade: B
(Very Good in 3 Matchups: Flash, Jaedong
Very Good in 2 Matchups: fantasy
Balance Grade: B-)
Mostly irrelevant. Mostly balanced but imperfect. I get that we know this. But I like to confirm things we know, and I'd like some opinions about the XvT weirdness.
+ Show Spoiler [SC2 fun] +
If I take a wild guess that we can apply the same 2100 = Good criterion to SC2 (I suspect BW ranking has a little inflation, so this might actually be 2050-2080 for SC2 but I'm not going to try to peg it exactly) we have some interesting results.
KOREA
X vs Protoss: 7 players. 1 Protoss, 5 Terran, 1 Zerg.
Balance Grade: F
X vs Terran: 6 players. 1 Protoss, 4 Terran, 1 Zerg.
Balance Grade: F
X vs Zerg: 4 players. 1 Protoss, 2 Terran, 1 Zerg
Balance Grade: B+
NOT KOREA
X vs Protoss: 19 players. 6 Protoss, 8 Terran, 5 Zerg.
Balance Grade: C
X vs Terran: 23 players. 7 Protoss, 13 Terran, 3 Zerg.
Balance Grade: F
X vs Zerg: 17 players. 5 Protoss, 10 Terran, 2 Zerg.
Balance Grade: WTF why do Zerg suck vs Zerg.
Disclaimer: Although I think there's clear illustration of current imbalance in SC2, I firmly believe that at this point we have to attribute this (mainly) to lack of a fully developed metagame. (Compare Broodwar Terran before Slayers"Dropship"Boxer.)
What I find most intriguing here is that in both BW and SC2 we currently have more Terrans good at TvT than Protoss good at PvT or Zerg good at ZvT. I'd take a wild guess (in fact I'm pretty sure it's very true in SC2) that this is due to Terran being the highest percentage of players.
KOREA
X vs Protoss: 7 players. 1 Protoss, 5 Terran, 1 Zerg.
Balance Grade: F
X vs Terran: 6 players. 1 Protoss, 4 Terran, 1 Zerg.
Balance Grade: F
X vs Zerg: 4 players. 1 Protoss, 2 Terran, 1 Zerg
Balance Grade: B+
NOT KOREA
X vs Protoss: 19 players. 6 Protoss, 8 Terran, 5 Zerg.
Balance Grade: C
X vs Terran: 23 players. 7 Protoss, 13 Terran, 3 Zerg.
Balance Grade: F
X vs Zerg: 17 players. 5 Protoss, 10 Terran, 2 Zerg.
Balance Grade: WTF why do Zerg suck vs Zerg.
Disclaimer: Although I think there's clear illustration of current imbalance in SC2, I firmly believe that at this point we have to attribute this (mainly) to lack of a fully developed metagame. (Compare Broodwar Terran before Slayers"Dropship"Boxer.)
What I find most intriguing here is that in both BW and SC2 we currently have more Terrans good at TvT than Protoss good at PvT or Zerg good at ZvT. I'd take a wild guess (in fact I'm pretty sure it's very true in SC2) that this is due to Terran being the highest percentage of players.