Updated 2/23/2011: Added to the resources section, a post from maxwellb which analyzes an SC2gears log. Don't ruin his server.
Larva Inject Analysis.
Greetings my TL friends. Let me first start with a little background, I'm a 2800 Diamond Terran player. The reason for this analysis was a result of a "lmfao terran imba" comment before a zerg left a ladder game I was playing. Now with my feelings hurt of both myself and that of the race I play, I said "why would this nice fellow who "gl hf"ed me at the start of the game be so angry at losing, losing's a part of the game. But then I realized, he's mad because he lost to a terran and terran is overpowered!!! (or so they say in many popular internet strategy forums). Determined, I looked at the replay to see if I had used my inherently overpowered abilities to defeat this poor zerg player in a rousing ladder match on scrap station.
Anyone who ever reads my posts about TvZ (which are few and I'm sure no one does). I am of a camp that says zerg is still a young race with a very different mechanic than the other two and might actually be an over-complicated race. Additionally zerg players have not yet matured skillwise to master their race. Simply put, they aren't being used to their potential by a majority of players. Top level zergs have already harnessed a lot of power, but I don't think we have seen a true master of the zerg race yet. My own prediction is that within the next year of the game, provided zerg's mechanic doesn't change zerg will be the best race.
I wanted to see how well my poor opponent used his queens. I felt that this was a great place to start, and as I watched the replay I started to notice the lack of spitting at times. This sparked my interest to I grabbed a pencil, some paper, a google doc, and my phone (stopwatch) and checked it out further.
Disclaimer: I should state that this is a very crude study with the bare minimum sample size. In the graph I post the results of only 2 of the 4 games I had looked at. This takes into account larva injects ONLY. The passive larva spawn, unit composition, micro, build order have zero to do with the purpose of this post. I am merely looking at the total larva produced over time via the Larva Inject mechanic. This post also has no discussion comparing it to protoss or terran (except for a few comments I make later). Those 2 are independant and I think the zerg community should look at these numbers by themselves before looking to how they balance among other races. Because it was a TvZ matchup that spawned the idea the replays analyzed are TvZ only. This really should be negligible since regardless of matchups, zerg need to inject their hatcheries
Larva Inject Analysis Method:
For this I looked at the down time on the hatchery in which 2 things were satisfied; The Queen had 25+ energy, and the hatchery was not in the process of "spawn larva". This downtime I call the Missed Injection Window (MIW or "MOO" if you say it I guess). The first thing to satisfy the MIW is that a queen must be paired with a hatchery. Once a hatchery is paired with a queen that has 25 energy, the timer is started. So the minute the first hatchery spawns its queen, the timer begins since queens will start with 25 energy. That is to say, that if your 2nd hatch pops while and then begins a queen to pair it, the timer is not running. If a creep tumor is placed, the MIW is from the moment the injection finishes the tumor is placed and then stops. It will restart the moment that the respective queen hits 25 energy again.
In the event a queen is killed: If the queen is killed during an injection the MIW timer starts at the time the injection completes until the next queen spits on it. This only occured in a replay I won't be posting the results here for (needless to say it can be devastating).
The Graph:
Haypro vs StarWEmpty
+ Show Spoiler +
Direct Link to graphic 1280x1080px
Ret vs tGcBosseR
+ Show Spoiler +
Direct Link to graphic 1280x1080px
The Analysis:
Well what are we looking at?
The span of each line represents the length of the entire game, and each line also represents a hatchery. Red indicates a time period in which a larva inject was available to the player but not used. Green then beings the spawn larva process, at the end of the green bar the number above it in the graph is how many total larva have been produced via Larva Inject among the hatcheries.
The numbers at the end of each bar represent the total time PER hatchery that spits were missed and roughly (rounded down) the amount of injections missed per hatchery. If you multiply that number by 4 and you can see the total units that could have been available.
Again, the plotted points above the bars represent the total larva to date produced, not army count, workers, or specific units. This is a cumulative representation of how many larva (via larva inject) have entered the game. Death of units made from the larva are also not included, this number can only go up.
Lastly, the 3rd section at the bottom is visualization of my poor zerg opponent had he been an insane ai (I haven't checked but I imagine that insane zerg never misses a spit)and hit every spit when he was able to.
Results:
Well there are some rather telling points in this visualization. Now, mind you I don't know how well Haypro was playing that day or if he was trying something new. You can see that his visualizations have many strings of smaller red bars. You can also see that Haypro got into a significant 'groove' around the 13' minute mark syncing his spits. When looking at the numbers, you can also see that haypro had significantly outproduced my opponent in larva even from an early point in the game.
You may also notice that Haypro's main and natural hatches had higher MIWs for the total game. Aside from the fact his game went longer, Haypro's 3rd and 4th hatches essentially had covered for the spits missed from his 1st and 2nd (e.g. the roughly 11 spits missed were canceled out by the addition of 2 more hatcheries).
Now I should mention that Haypro's 3rd hatch was in his main prior to taking his 3rd base. I will also note that his 3rd base never fully got up and running (it was being contested by his opponent) but it was still a vital production facility.
Updated: I've added a replay from Ret and compared to that of Haypro. I've also added some overlays to Ret's visualization to also highlight key events. You can see the stretches in his MIWs pretty much are relative to when he had to micro his units (the first larva inject window is slightly longer due to a creep tumor being spawned. He gains a slight edge over Haypro due to spitting so soon after his creep spawns. Because it's just 2 replays I don't think you can say Ret is better than Haypro, I didn't do an event overlay for Haypro though I can say from memory that the stretches are results of fighting. I think what we can see is that, better players, are better at their spits. You can see that during "peace time" Ret is really good about his spits, between 2-7 seconds.
Conclusions & an Open Challenge:
I think first and foremost what we can take from this is: Don't miss spits, or be as close as possible to making them. This obviously is nothing new to anybody. But perhaps this visualization puts things in a better perspective. From this I can only conclude is that the spits missed from your MIWs are esentially units that will not enter the game. This is slightly different from chronoboost and orbitals (provided they have not maxed out) in that those 2 can still be using on something. Mules can still work on mineral patches, and chronoboost can be used on something like an upgrade (or two), a robo/stargate unit. It is somewhat similar to the concept of using your warpgate cooldowns, but warpgates are still limited by economy. You don't need an economy to spawn larva, just a queen with energy.
Perhaps players who don't build a 3rd hatch in main will consider adding a hatchery in their main prior to trying to take secure a 3rd base and droning it right away. If we look at the numbers haypro was producing after the 13th minute mark, he was able to produce 12 units at a time. Now if you compare that to a terran or protoss on 2 bases, they too will most likely have the infastructure of 8-10 production buildings. You also have to consider that some of those larva need to be produced into overlords for supply, so in one instance, you could consider one of those missed spits a curcial supply cap increase.
Edit: I missed an important point I wanted to make. Yes, the queen larva inject is much more unforgiving as a mechanic, if you fall behind, the only way you can capitalize is if you invest in another hatchery. Whereas terran and protoss can spend it elsewhere, queens can't exactly dump it, creep spread and transfusion are dumps but not in the same value of getting larva. I won't say whether this is broken and should be fixed, but i will say that if you want to be good at zerg, this is ability is paramount to your success in the game's current incarnation.
Also, imagine what a robot haypro would produce?
Anyway, I challenge zerg players to go back and watch a replay that they lost or won and actually sit and see how much their total MIW was and how many larva they could be missing out on. I hope this doesn't turn into a discussion about race balance, but simply people discussing how to use their queens and ways to get better at syncing your spits.
Resources:
XLS file by ExoTau. I don't have Office, so I can't test it though he's made one and it's there. Use at your own risk. This utilizes SC2gears' log file. Larva Inject XLS macro
His post can be found here.
Another Analyzer script based on SC2Gears from posted Maxwellb: http://inject.maxwellb.com/
see his post here on how to use it
Lastly: I was inspired by Lalush's Post about macro mechanics to take a bit more of an empirical approach to SC2, I graduated with a degree in digital media so I'm not terribly on top of numbers so there is perhaps a bit of a margin of error. However, I don't think it is wide enough to make these numbers completely inconsequential. Grammar also isn't a strong suit so don't crucify me about my excessive comma use, I know it's a problem, and I am getting, help! The replay of Haypro can be found Here a la sc2rep.com. The Ret replay can be found Here
Questions and comments are welcome.