|
Sorry if this topic is too hard on tiny details, but it's important to me.
According to liquipedia both worker build time and larva spawn time is the same at 20 seconds on normal game speed.
http://wiki.teamliquid.net/starcraft/Larva_(Unit)
http://wiki.teamliquid.net/starcraft/Drone
BWAPI website confirms this with Drones at 300 frames with equals 20 sec on normal speed: https://code.google.com/p/bwapi/wiki/UnitTypes#Zerg_Drone
There is sadly no info on larva spawn time from hatcheries there.
I have done some Starbow vs Brood War test with larva spawn time and there seems to be a tiny bit more time for larva to spawn than for drones to be built. I cannot confirm this anywhere, and it might just be some animation differences.
Could someone with a decent mpq reader and some programming skills find the exact amount of frames it takes for larva to spawn from a hatchery?
Edit: Best answer so far (I think): http://www.staredit.net/topic/16810/#5
|
|
|
Ok I might be mistaken here but, to my knowledge Liquipedia used to state that the spawn time for Larvae was 14 seconds [in game time (at the normal setting, I think)], which is in correspondence with how fast they seem to spawn in comparison to Drones.
But do let us know what number you eventually find. I am betting the 14 seconds (210 frames) is on the money.
|
United Arab Emirates9 Posts
I ran a test using BWAPI, just counting the frames on just a plain hactery. It gave inconsistent results weirdly. I got 335, 337, 339, 345, and a few random ones up to 400. BUT 337 to 345 was extremely common. I'm completing guessing but maybe it only runs the check ever so often (instead 1 decrement each frame) and just carries over the difference to the next larva. Or it could just be a weird BWAPI anomaly. I think 340 frames is a safe guess though.
|
On July 21 2015 14:43 avenmarine wrote: I ran a test using BWAPI, just counting the frames on just a plain hactery. It gave inconsistent results weirdly. I got 335, 337, 339, 345, and a few random ones up to 400. BUT 337 to 345 was extremely common. I'm completing guessing but maybe it only runs the check ever so often (instead 1 decrement each frame) and just carries over the difference to the next larva. Or it could just be a weird BWAPI anomaly. I think 340 frames is a safe guess though.
Wait, so the Larva spawn-interval is actually longer than the spawn time for Drones?! That's very unexpected. 340 seconds would then mean that the liquipedia-time/normal game-time should be about 22.666... ~ 22.5 seconds. Makes you wonder what, if any, significance that the developers saw in that specific spawn-interval. One might be able to get some information on that from the patch-logs.
Anyways, nice investigative work avenmarine!
|
On July 21 2015 14:43 avenmarine wrote: I ran a test using BWAPI, just counting the frames on just a plain hactery. It gave inconsistent results weirdly. I got 335, 337, 339, 345, and a few random ones up to 400. BUT 337 to 345 was extremely common. I'm completing guessing but maybe it only runs the check ever so often (instead 1 decrement each frame) and just carries over the difference to the next larva. Or it could just be a weird BWAPI anomaly. I think 340 frames is a safe guess though.
That's interesting. When I was running a test where I constantly made workers off of one hatch it seemed to sometimes line up with the drone and sometimes it would pop a tad later. The larva spawn time may have a random element to it.
|
On July 21 2015 14:43 avenmarine wrote: I ran a test using BWAPI, just counting the frames on just a plain hactery. It gave inconsistent results weirdly. I got 335, 337, 339, 345, and a few random ones up to 400. BUT 337 to 345 was extremely common. I'm completing guessing but maybe it only runs the check ever so often (instead 1 decrement each frame) and just carries over the difference to the next larva. Or it could just be a weird BWAPI anomaly. I think 340 frames is a safe guess though.
Maybe if the egg spawns ON the hatch like it often does, the unit must pop off from the hatchery before it can produce more larva. Units have different voices and sounds, maybe after larva is selected to build a worker, the sound sprite has to finish before hatch releases more space to another larva? silly guesses but those frame differences are strange too.
|
On July 21 2015 15:13 Tadah wrote:Show nested quote +On July 21 2015 14:43 avenmarine wrote: I ran a test using BWAPI, just counting the frames on just a plain hactery. It gave inconsistent results weirdly. I got 335, 337, 339, 345, and a few random ones up to 400. BUT 337 to 345 was extremely common. I'm completing guessing but maybe it only runs the check ever so often (instead 1 decrement each frame) and just carries over the difference to the next larva. Or it could just be a weird BWAPI anomaly. I think 340 frames is a safe guess though.
Wait, so the Larva spawn-interval is actually longer than the spawn time for Drones?! That's very unexpected. 340 seconds would then mean that the liquipedia-time/normal game-time should be about 22.666... ~ 22.5 seconds. Makes you wonder what, if any, significance that the developers saw in that specific spawn-interval. One might be able to get some information on that from the patch-logs. Anyways, nice investigative work avenmarine! That's really strange... I remember Blizzard themselves saying on their own forums that the larvae spawn rate got changed from 15 seconds on Normal (225 frames) to 20 seconds (300 frames) for the 1.04 patch. Would assume that statement was true.
So... they slowed it down more after 1.04? Or is BWAPI a bit off here?
Seems that a second system of measurement should be used to confirm, even if its just a stopwatch.
|
This is some really in depth Zen stuff here, really diving deep into the Zerg to figure them out. I like your style.
|
United Arab Emirates9 Posts
Did the test again, included lairs/hives. Basically the same story: 335, 444, 337, 337, 336, 336, 343, 347, 337, 335, 339, 339, 341 ,340 ,349, 340, 346, 338, 340, 349, 332, 402, 342. The average time was about 21.7 seconds game time, but again random. Sometimes it was 20, some times it was 22.
I did a similar test with drones, I got exactly 318 frames 8 times in a row. That seems significant to me that it is always the same. There could be some fudginess in whether the animation frames are included (larva->egg and egg->drone)
Based on the averages larva is 20 frames slower than the drone but that *might* overlap with animations.
|
If anyone suspects bias from BWAPI, it would be a good idea to cross check the data by recording a video at the same frame rate as SC and then measuring the amount of frames
|
On July 22 2015 10:46 avenmarine wrote: Did the test again, included lairs/hives. Basically the same story: 335, 444, 337, 337, 336, 336, 343, 347, 337, 335, 339, 339, 341 ,340 ,349, 340, 346, 338, 340, 349, 332, 402, 342. The average time was about 21.7 seconds game time, but again random. Sometimes it was 20, some times it was 22.
I did a similar test with drones, I got exactly 318 frames 8 times in a row. That seems significant to me that it is always the same. There could be some fudginess in whether the animation frames are included (larva->egg and egg->drone)
Based on the averages larva is 20 frames slower than the drone but that *might* overlap with animations.
This is interesting as the BWAPI is listing worker BT as 300 frames as well.
|
Once you figured that stuff out, please update the Wiki and link to this discussion / your findings.
|
|
I'm perplexed at how we are disecting this in 2015
|
Bisutopia19239 Posts
That answer is amazing. The math was like a brain massage it felt so good to read.
|
But why does it work with 2 counters? Why is this variance included? Very interesting.
|
Japan11286 Posts
I'm more perplexed at why there's a randomization factor included in one' of the game's fundamental mechanics.Or I just didn't understand.
|
Netherlands4990 Posts
Does latency have any influence? I remember playing Zerg on battle.net and very rarely have a larva pop immediately after I started 3 eggs. Maybe it only was on older patches or perhaps map max had to do with it.
|
Bisutopia19239 Posts
On July 22 2015 23:01 B-royal wrote: But why does it work with 2 counters? Why is this variance included? Very interesting. Noob/Brilliant coding.
|
So, if I'm calculating this right, larva spawn time can vary by as much as an entire second...
but... wtf why bizzard? LOL
|
On July 22 2015 23:01 B-royal wrote: But why does it work with 2 counters? Why is this variance included? Very interesting. Because not every programmer has brains. Perhaps they wanted more randomness to not make it too obvious but instead of adding a random delay they went for the option that seemed more complicated. Why? Because they can.
|
On July 23 2015 00:29 f10eqq wrote: So, if I'm calculating this right, larva spawn time can vary by as much as an entire second...
but... wtf why bizzard? LOL It is a WTF, but I guess it sort of fits.
I remember reading somewhere on BWAPI that unit attack cooldown varies by +2 to -1 from the baseline value each attack.
Guess there it makes the game feel more realistic, since you won't then have a bunch of units all firing together in absolute perfect, robotic lockstep in certain situations.
But for larvae spawn, I guess I don't see the compelling reason to make it somewhat variable. What's the point there? 
|
On July 23 2015 00:29 f10eqq wrote: So, if I'm calculating this right, larva spawn time can vary by as much as an entire second...
but... wtf why bizzard? LOL
Becauses, you must harness your inner Korean to spawn larva correctly.
|
Japan11286 Posts
On July 23 2015 09:55 GGzerG wrote:Show nested quote +On July 23 2015 00:29 f10eqq wrote: So, if I'm calculating this right, larva spawn time can vary by as much as an entire second...
but... wtf why bizzard? LOL Becauses, you must harness your inner Korean to spawn larva correctly. Only by being Jaedong can you spawn larva correctly.
|
I've updated the Liquipedia page to say "average every 342 frames" as well as write a better description for the unit.
|
On July 22 2015 21:19 BisuDagger wrote:That answer is amazing. The math was like a brain massage it felt so good to read. What it feels like to read through this thread
+ Show Spoiler +
|
On July 23 2015 10:23 xboi209 wrote: I've updated the Liquipedia page to say "average every 342 frames" as well as write a better description for the unit.
If my math is right, the timer icon on the right that says 20 sec should then be changed to 22.8 (average).
|
On July 23 2015 14:53 Xiphias wrote:Show nested quote +On July 23 2015 10:23 xboi209 wrote: I've updated the Liquipedia page to say "average every 342 frames" as well as write a better description for the unit. If my math is right, the timer icon on the right that says 20 sec should then be changed to 22.8 (average). I'm not sure if it's correct to modify that, idk
|
On July 23 2015 15:28 xboi209 wrote:Show nested quote +On July 23 2015 14:53 Xiphias wrote:On July 23 2015 10:23 xboi209 wrote: I've updated the Liquipedia page to say "average every 342 frames" as well as write a better description for the unit. If my math is right, the timer icon on the right that says 20 sec should then be changed to 22.8 (average). I'm not sure if it's correct to modify that, idk Would be more accurate if changed, though.
23 would probably be fine/close enough, if decimal numbers look weird as build/spawn times on the unit description sidebar.
|
Am I seeing 20 seconds for each larva spawn time?? I think it's 10 because another larva spawns before a drone morphs completely.
|
On July 23 2015 00:08 BisuDagger wrote:Show nested quote +On July 22 2015 23:01 B-royal wrote: But why does it work with 2 counters? Why is this variance included? Very interesting. Noob/Brilliant coding.
I haven't looked at the code, but if what they did with the Protoss Carrier is any indication, it's the former. It has its own class, just for itself, because the code that they wrote for the other units wouldn't work with a unit producing unit like the carrier, lmao
They didn't see it coming. Like they didn't foresee the problem of workers getting stuck on each other while mining, so they added the floating physics to harvesters
But you know what? They had a good idea, and they worked their asses off. And that's what matters, as long as the game runs smoothly. (for games, anyway. If you're programming for NASA, then I guess it's different)
For this, I applaud them.
|
On July 22 2015 Neiv wrote: Average larva spawn time 342 frames, best ~318, worst ~366. So converted into Normal speed, this would be 21.2-24.4 (av. 22.8) and at Fastest speed, it would be 13.25-15.25 (av. 14.25) game seconds.
On July 23 2015 15:28 xboi209 wrote:Show nested quote +On July 23 2015 14:53 Xiphias wrote:On July 23 2015 10:23 xboi209 wrote: I've updated the Liquipedia page to say "average every 342 frames" as well as write a better description for the unit. If my math is right, the timer icon on the right that says 20 sec should then be changed to 22.8 (average). I'm not sure if it's correct to modify that, idk At the very least, a little numerical footnote (right name) like ¹ could be added with a link to a note pointing this out, or at least to one of the "Additional Reading" links just added.
|
hold on why is the larva spawn time so complicated instead of being a constant ???? :o
YOU TELLING ME THERE IS RNG IN BW??!?!?!
|
It could be a possibility that it feels "random" could be attributed to the concept of Zerg. While Protoss and Terran have society, timings, mechanics, Zerg was more natural, meaning sometimes not everything will line up perfectly. We never have a constant rate of birth as humans, it fluctuates up and down with varying factors, sometimes an individual larva may have genetics that cause it to grow slower than others.
That's literally the only reason I can think of why they would include such variance in a mechanic as important as larva spawning.
|
On September 21 2015 09:46 Avexyli wrote: It could be a possibility that it feels "random" could be attributed to the concept of Zerg. While Protoss and Terran have society, timings, mechanics, Zerg was more natural, meaning sometimes not everything will line up perfectly. We never have a constant rate of birth as humans, it fluctuates up and down with varying factors, sometimes an individual larva may have genetics that cause it to grow slower than others.
That's literally the only reason I can think of why they would include such variance in a mechanic as important as larva spawning. Maybe the designers didn't like the idea that without the slight randomization, if you have multiple hatches on screen at the same time, all the larvae pop out at the exact same time in perfect robotic precision?
I dunno for sure... like you, I'm kinda guessing.
|
|
On September 21 2015 17:55 Bill Murray wrote: i like that guess Thanks.
Does fit in with some other aspects of the game design, such as cooldown being randomized by anywhere from +2 to -1, as per BWAPI.
The BW design team didn't seem to like things looking too synchronized/robotic in general.
|
|
|
|