Spawning Tool and the philosophy of FiveThirtyEight

This past week, ESPN launched FiveThirtyEight, a website dedicated to data journalism. The lead for the site is Nate Silver, a statistician and writer, who most famously correctly predicted the winner of all 50 states in the 2012 US presidential elections. Roughly, the site is dedicated to to the use of quantitative methods in journalism across politics, economics, science, life, and sports.

Silver outlines a manifesto for the site, and I want to draw attention to a few points he makes. First, he leads with the point that his presidential prediction was not impressive by comparing it to other models, but instead by comparing it to pundits. I think the framing of his argument is very important here because it points out the type of thinking that we’re used to. Second, he points out the spectrum along quantitative and qualitative approaches to journalism. Both types of analysis are important, but he sees quantitative as being under-represented, hence the creation of FiveThirtyEight. Third, he outlines an approach to journalism as collection, organization, explanation, and generalization. Particularly, he criticizes the last two steps in in conventional journalism. Explanation in often missing as journalists fail to properly attribute causation, and predictions (as part of generalization) are under-scrutinized and often inaccurate. Continue reading

In-game scorekeeping for StarCraft?

So far, Blizzard has given the community amazing tools for doing replay analysis, and the community has compiled a lot of stats and built services to work with that data. Even so, I think there’s a gap in levels of analysis. At the top, we have aligulac, which compiles win-loss data into accessible predictions but doesn’t give much insight into a playstyle or why the data is the way it is. At the bottom, we have ggtracker, which provides graphs and data for individual games and can compile stats from low-level mechanics in games, but is missing higher-level analysis.

In-between is where I think theorycrafting reigns: strategy. What build orders work against what? Which players are the best at worker harass? Who has the best forcefield placement? These details lie below win-loss analysis, and although these may be extractable from the replay data, this analysis requires some qualitative analysis to determine what constitutes specific tactics or plays. Even the best machine learning techniques (supervised learning) require labeled examples to learn from. Continue reading

“How important is having a supply advantage?” continued

A week and a half ago, I slapped together some graphs about the importance of supply differences and posted it to reddit. There were a ton of very thoughtful comments from the community, some of which I riffed on to create more graphs and investigate more of the data. This post is a summary of the rest of what I found, with all data available in this spreadsheet.

Win Rates by Supply Difference

The first graph shows the global win rates and win rates in mirror matchups given certain supplies. The most direct way to use the data is to observe a game and point back to the graph at any time to figure out how much of an edge someone has. Continue reading

Explanation of win rates by supply difference

Casters use a lot of different information to make predictions and analyze the state of a game of StarCraft 2. One often used stat is supply difference: if player A has 120 supply and player B has 100 supply, we might say that player A has a 20 supply advantage. I wanted to determine how important a supply advantage is by looking a lot of data and seeing what a player’s win percentage is given a certain supply advantage.

Results and Discussion*

Win Rates by Supply Difference

You can view the original data at https://docs.google.com/spreadsheet/ccc?key=0AjlUNdJN-kiedFc5QkZxRVRoUHBWNGRCUUVjOGFmVUE&usp=sharing Continue reading

Analysis of ByuL’s reactive ZvP in Proleague

Proleague (SPL) is back for 2014. I have become a bit of a StarCraft snob and think that Proleague is by far the most exciting and interesting StarCraft out there. It’s a bummer that they have changed the time this year so that all matches start at 2AM (at the earliest) for me, but I’ll happily follow along with Fantasy Proleague and by watching VODs.

Having just rewritten my Zerg versus Protoss strategy guide, I’m very excited about a game I just watched between IM ByuL and Remember Prime. Played on the new map Sejong Science Base, I think it perfectly illustrates with the type of safe, reactive Zerg style that I had seen before and was recommending for you to try.

Link to the VOD

ByuL opens with a 15 Hatchery, 16 Spawning Pool. He takes his gas at 3:35 (17 supply, after the Overlord), which allows him to get Metabolic Boost for his Zerglings early. He makes 4 Zerglings as soon as the Pool finishes and sends them to scout his opponent.

ByuL Zergling Scout Continue reading

Zerg versus Protoss Strategy Updated

After playing primarily team games with my friends over the past few months, I am getting back into playing 1v1. This time around, I think I’ll be playing Zerg. I admittedly was somewhat lost in how to play out my games, then I remembered that I had a guide on how to do it. Then I read it and realized that some of the strategies were painfully outdated. Here’s an update. As usual, feel free to comment if you have any thoughts or feedback.

Zerg versus Protoss (ZvP)

Since the release of Heart of the Swarm, ZvP has become much more interesting. Previously, Protoss only fast expanded into 2 base timing attacks, but recently, Protoss have mixed in more 1 Gate Expand builds and early pressure. There might also be 2 base all-ins, Stargate openings, or just macro into deathballs. All of this means that Zerg must be more flexible. Continue reading

Spawning Tool update after a hiatus

Sorry things have gone silent on Spawning Tool recently. Various personal factors (some mentioned in my personal blog) took precedence over Spawning Tool, but I’m somewhat back now. Although most things tend to slow down around the holiday season, I’ll be trying to ramp up as I find more free time to be working on it. As such, I have a few different updates. Continue reading

Reviewing stats from Blizzcon yesterday

Unfortunately, I didn’t actually get to watch any of the WCS Grand Finals at Blizzcon yesterday. Thankfully, there are VODs (stream 1, stream 2) for me to leaf through, so I’m watching just enough of the games to evaluate my predictions. Let’s see how those turned out

SoulKey (Z) v. NaNiwa (P)

I predicted that SoulKey would play a lot of different strategies. He used a 9 Pool, Hatch first into Roach Hydra, a Pool double expand into defense, and then another 9 Pool. That’s quite varied.

Bomber (T) v. MMA (T) Continue reading

Stats for the BlizzCon round of 16 matchups

Over the past week and a half, I have been going through games from the BlizzCon round of 16 players and tweeting out interesting things that I have found by going through the Spawning Tool research page. I just posted a summary of that to TL. That’s reproduced below for your convenience.

BlizzCon is approaching, and there are some pretty amazing match-ups in the round of 16. In anticipation of that, I went through each player’s history in the match-up to see there were any interesting statistics that came out of it. Here’s what I came up with (methodology at the bottom):

SoulKey (Z) v. NaNiwa (P)

  • SoulKey does a little of everything in this matchup. Just check out the tags (ref)

Bomber (T) v. MMA (T)

  • Expect Banshees. They both open Banshees in ~45% of TvT games (ref 1)(ref 2)
  • MMA plays a very Marine-heavy bio in TvT. He made ~80% more Marines on his opponents and went bio in 10/13 games (ref)

HerO (P) v sOs (P)

  • They before in the WCS season 1 finals. They games were really cheesy (ref)
  • HerO likes early Stalkers in PvP, making ~50% more in the first 10 minutes than his opponent (ref)

Polt (T) v. aLive (T)

  • They played in season 1. aLive won 2-1 (ref)
  • By the unit counts, Polt’s TvT looks remarkably normal. One thing is that he doesn’t really play mech much (ref)
  • aLive doesn’t 1 rax expand much in TvT. He does, however, really like to open 1/1/1 into some nifty tech (ref)

Dear (P) v. TaeJa (T)

  • In TvP, TaeJa is 32-2 in games less 25 minutes and 2-5 in games longer than 25 minutes. I guess the strategy is to wear out his wrists (ref)
  • TaeJa also scans on average 2 more times per game (MULEs 2 less times) than other WCS TvZ players. I think this is attributed to his eagle eye in sniping Observers (ref 1)(ref 2)

Jaedong (Z) v. Mvp (T)

  • In ZvT, Jaedong is 11-4 in games less than 20 minutes and 4-17 in games longer than 20 minutes. I think there’s some bias in the quality of the opponents, but that’s still pretty striking (ref)
  • In comparison, Mvp is 8-5 in TvZ longer than 20 minutes, and 62% of his games went that long. (ref)

Maru (T) v. MC (P)

  • Maru could use anything. In 11 games, he went proxy 2 rax twice, 1/1/1 twice, 14 CC 3 times, and 1 rax expand in 4 games. This guy knows how to mix it up (ref)
  • MC has a strange win rate in TvP: he’s 5-0 in games less than 12 minutes, 1-3 in games 12-16 minutes, and 5-3 in games longer than 16 minutes. Looking at the games, he wins fast with cheese in a lot of games, loses mid-length games after failed cheese (usually Oracles), and then does okay in long games (ref)

INnoVation (T) v. duckdeok (P)

  • The only INnoVation TvP games I have are the season 1 finals against sOs. Here’s the link for fun (ref)
  • duckdeok plays REALLY short TvPs. None of 8 games went longer than 20 minutes (ref)

Methodology

I used Spawning Tool for all of these stats. For each, player, I pulled up all of their games in the relevant matchup and, if feasible, looked at the builds (and some replays in ambiguous cases) to determine what builds they used. If you’re interested, I recommend you also play around with the system to see if you can find anything interesting in the data as well.

The replays are largely from major tournament over the past 6 months or so. The data may skewed for 2 major reasons. First, WCS season 3 replays have not been released and are not in the data. Second, WCS season 1 replays are pre-Hellbat nerd. Of course, the usual disclaimer is that players do change styles.

These stats originally appeared on twitter @spawningtool.

And the pitch: the site is only as good as the data, so if you have replays, please upload them! Also, if you’re interested in labeling replays or have ideas for features, PM me or tweet at me. And to stay updated, follow me on twitter @spawningtool. I’ll try to put more stats out as we find out what the match ups for the later rounds are

Protoss versus Protoss Strategy Updated

I have to admit, I don’t really understand PvP. Nowadays, the community agrees that Protoss is the most build order-focused, so there must be some structure in there. Here’s my shot at updating this section with some trends in Protoss play, which will appear on the Protoss Strategy page.

Protoss versus Protoss

PvP is volatile. It’s the only matchup where 1 base play is standard. Because of that, build orders and scouting are very important to ensure that you counter builds and attack effectively. Continue reading