|
On October 22 2010 18:01 Existor wrote: Epic work! Can you add column for zergs, how many larvae we have for a moment? My works have never been called epic before. o.O Added larvae to the results.
On October 22 2010 22:47 Bitters wrote: right but under your example of 15 Hatchery 14 Pool > Queen
That doesn't time the second queen starting off the expansion's finish (since the build I posted already was building a queen after the SP was done I changed the way in which prerequisites are checked. They are now checked as it executes the build order, instead of trying to tie everything up beforehand. As a result, your first notation will now work as you'd expect: 15 Hatchery > Queen 14 Spawning Pool It'll build the Queen right when the second Hatchery completes.
And the third and final change of the day: you can now specify a travel time for transferring probes. The notation for this is (any of these will work): 15 Hatchery > transfer 8 drones (10 seconds lost) 15 Hatchery > transfer 8 (10 seconds) 15 Hatchery > +8 (10s)
My next stop will be allowing you to specify a startup delay. I'm not sure what would be the most flexible way to write this. It depends on whether you send your probes first, or queue your probe. Personally, I start with the probes, and I assume most people do (mining outranks building). So for me, there is a maybe 2 second delay on startup mining and a 3 second delay on building the first probe. Any suggestions on how to write this down in a build order?
|
On October 22 2010 14:01 kidcrash89 wrote: 15 Hatch 14 Pool gets a Pool quicker than 14 Hatch 14 Pool, interesting
See, this is the problem with not trying to add a bit of reality in.
I'd bet you money that if you actually tested it in-game, that would not be true.
**Edit** Er, I misread something somehow. 15hatch 14pool will get the pool faster than 14hatch 14pool. Not by much, but slightly faster.
I did test it in-game, though, and came up with about the same time on both, with 15hatch being slightly faster, as expected.
However, the actual time is 10 or 11 seconds after the "theoretical" time, and my early game timings are pretty crisp, so it would be really tough to improve on that. I can manage everything just fine when there's not very much to do.
|
On October 22 2010 18:04 Haploid wrote:Show nested quote +On October 22 2010 10:55 Bitters wrote: 9 Overlord 15 Hatchery>Queen 14 Spawning Pool 15 Overlord 18 Queen 20 Zergling
... ya confirmed... using that hatchery>queen command has the code check current constraints instead of constraints after the hatch finishes in the above example is says queen requires spawning pool, which would be complete by time hatch is done. Yes, it picks up the jobs in the order in which they appear in the build. Even when you write 15 Hatchery>Queen, 14 Spawning Pool, it'll see the Queen first and throw an error. I've tried to make it so that "floating" jobs (jobs which don't depend on a specific supply count) such as ">Queen" can be moved to a later time to account for prerequisites. But it's not simple. It's actually an NP-complete problem, akin to the Travelling Salesman problem, which means that the computation becomes very expensive when a build has lots of floating jobs.
Seems like there's an easy solution here. Don't make it a "floating" job. Make it dependent on the thing that the > is after. So it doesn't do anything at all with the queen job until the hatchery is complete.
|
On October 23 2010 08:23 Haploid wrote: My next stop will be allowing you to specify a startup delay. I'm not sure what would be the most flexible way to write this. It depends on whether you send your probes first, or queue your probe. Personally, I start with the probes, and I assume most people do (mining outranks building). So for me, there is a maybe 2 second delay on startup mining and a 3 second delay on building the first probe. Any suggestions on how to write this down in a build order?
Starting the worker first is typical and recommended by just about everybody, and I'm like 99% sure that's what all of the pros are doing, because a delay on the first worker isn't just a delay on the first worker.
I think you're severely underestimating your response time though. 3 seconds is a *long* time. You're probably quite a bit faster than that.
As for suggestions about how to write in delays, it could be as simple as
delay X > job
Especially if you change > jobs so they're dependent jobs, rather than floating ones.
Hmm. Except that would only work for things that you call out, and you don't call out workers mining.
Meh, I don't think the syntax matters that much though, as long as the instructions say what to do.
|
On October 23 2010 10:44 Skrag wrote:
Starting the worker first is typical and recommended by just about everybody, and I'm like 99% sure that's what all of the pros are doing, because a delay on the first worker isn't just a delay on the first worker.
For zerg if you go 9 overlord then the the drones you build up to 12 supply are all mineral or supply limited (and if supply limited depend on the overlord timing which is in turn mineral limited) and in practice it's up to 13 supply even if the calculator claims it's larva limited at that point. So all those drones except the first are faster if you mine first, unless mining first delays the first drone 6 times more than it speeds up the mining.
Now, after that point, you will be ahead on larva if you built the worker first and might make up the mineral disadvantage, unless you hit 3 larva before making the 9 overlord. If you hit 3 larva before making the 9 overlord, the larva timer now depends on when that overlord was produced, and not when the first drone was produced. The calculator claims that the overlord will be produced with 4 seconds to spare, but this assumes perfect mining (each new drone going directly to an available patch and also without causing an existing worker returning to the patch from shifting to another, also the larva position relative to the minerals matters). In practice, looking at some replays of Idra (who builds the drone first) I see that he hits 3 larvae before making the overlord most of the time, although sometimes he does build the overlord before then. The delay is small enough that he would probably be making the overlord before the larvae count reached 3 if he mined first, so it's not 100% clearcut without actually doing math that he would be better off mining first, but for less good players like myself who can't direct each drone to the best mineral patch very well, and/or are less good at making that overlord immediately when 100 minerals is reached, the larva is probably going to reach 3 before the overlord anyway, so we should defininitely mine first.
tl;dr - if you are a pro zerg player making a drone first might or might not be a good idea (more research needed). If you are zerg and not pro then mine first (with a 9 overlord build).
|
13 Assimilator > transfer 3 22 Nexus > transfer 8
Line 1 : transfer 3 is not a structure or unit.
Doesn't function, although it is stated this way in the 'How to use'. It only functions if you add the worker's name. It would be nice if you could update this.
|
On October 23 2010 10:39 Skrag wrote: Seems like there's an easy solution here. Don't make it a "floating" job. Make it dependent on the thing that the > is after. So it doesn't do anything at all with the queen job until the hatchery is complete. Oh, it already is. When I say "floating" jobs, I mean that it is not pegged to some supply count or resource count. This means that the calculator can continue processing other jobs until this one becomes available. In some cases, this involves a choice.
Consider, for example, this snippet: 14 Drone > Spawning Pool 13 Hatchery Clearly, the 14 Drone will finish very quickly, and the calculator will then have a choice: a) Drone, Spawning Pool, then another Drone, then the Hatchery b) Drone, Hatchery, then Spawning Pool It'll always prefer to build the Hatchery first, because it has a given supply count that is already achieved. So in that sense, the Spawning Pool job is floated to a future time.
In the other example: 14 Spawning Pool > Queen 13 Hatchery In this case, the choice will be: a) Spawning Pool, then Queen, then Hatchery b) Spawning Pool, then Hatchery, then Queen Again, it will build the Hatchery first, because the given supply count for the Hatchery would be exceeded if it starts the Queen first. Again, the Queen job is "floated" until it can fit somewhere in the build order.
On October 23 2010 14:21 Sidus wrote: tl;dr - if you are a pro zerg player making a drone first might or might not be a good idea (more research needed). If you are zerg and not pro then mine first (with a 9 overlord build).
Wow, very thorough analysis. I'm a Protoss player, and I know there's a gap right after I build my 9 Pylon where I have to wait a few seconds to start another Probe. So my thoughts are that if I start mining first, I can minimize that gap a bit.
On October 23 2010 14:27 Perscienter wrote: Line 1 : transfer 3 is not a structure or unit.
Got it. Funny how two question marks in a regular expression can cancel each other out.
|
I've added some options to increase realism:
Worker can be sent early when building a structure, e.g. 12 Gateway (send @120 minerals) Startup delay for mineral mining, e.g. #Startup mining delay = 3 seconds Startup delay for worker production, e.g. #Startup build delay = 3 seconds
So a more realistic 10/10-gate would be something like:
#Startup mining delay = 2 seconds #Startup build delay = 1 seconds 10 Pylon (send @80 minerals) > Gateway (send @120 minerals) [2] 12 Zealot* [3] 18 Pylon (send @80 minerals) Which only delays the third Zealot by about 2 seconds, not too bad.
Note that if you switch the delays, you'll get that Zealot out one second sooner. Which would seem to indicate that it's better to send your workers first, then produce a new worker.
|
Could you also implement the Extractor trick Zergs can do?
|
Halpoid has already instituted a 3 second delay on mining at the start and a 3 second loss of mining time every time you build a structure. That is very consistent with actual game timing. Now if you are a Terran or Toss walling, it might be 2-3 seconds more for the first few structures, but I think it is fine.
At least that is what I suggested and then he said, "Got it." or something to that effect.
|
This is very interesting. I'm curious would it be possible to give the option of setting a goal and then the program would determine the fastest way to do it. I can only hope .
If not, then it would be nice to add a command for constant worker or unit production. It would allow more abstract builds. Something like this:
10 supply depot 12 barracks & constant marine production; constant scv production @100 mineral supply depot @400 mineral Command center @150 orbital command & stop scv production & stop marine production @150 mineral barracks @150 mineral barracks @150 mineral barracks & constant scv production & constant marine production @100 mineral supply depot @75 mineral refinery > +2 @75 mineral refinery > +2
Edit: I am also curious about the supply triggers. I assume they trigger as soon as you hit the stated supply (if minerals are available). This would mean that if you want to state workers to be created at certain supply to emulate worker production, you would actually have one scv constantly queued as opposed to queuing it just before the previous worker finishes.
Edit2: OK it seems that constant production can be somewhat emulated by doing say barracks > marine [5] but it somehow messes with supply timings. It would be nice if it could show the result until the point where it requires more supply instead of showing only an error. Heh I suppose that it would be asking for too much if you could implement some sort of priority system for commands .
|
Is something like this possible?
14 cybernetics core > warpgate AND stalker
|
Ok right i want to work out a Terran CC first build. I put in: '10 Supply Depot' '15 Command Center' This wasn't on strict mode also, and i only have 70-ish busy percentage on my CC. How do i find out the way to do a CC first with constant worker production?
|
On October 23 2010 21:52 XGDragon wrote: Could you also implement the Extractor trick Zergs can do? In the next version.
On October 23 2010 22:45 Sleight wrote: Halpoid has already instituted a 3 second delay on mining at the start and a 3 second loss of mining time every time you build a structure. That is very consistent with actual game timing. Now if you are a Terran or Toss walling, it might be 2-3 seconds more for the first few structures, but I think it is fine.
At least that is what I suggested and then he said, "Got it." or something to that effect. Well, not 3 seconds hard-coded. You can manually set the startup delay with the #Startup Mining Delay=3 seconds command, and you can send a worker early when building a structure by writing 12 Barracks (send @120 minerals).
And in actuality, the travel time to a walloff is often much bigger than 3 seconds. More like 6 seconds on Lost Temple.
On October 23 2010 22:59 kme wrote:This is very interesting. I'm curious would it be possible to give the option of setting a goal and then the program would determine the fastest way to do it. I can only hope . It's an entirely different problem, and I'm not sure how I'd approach it in a way that allows for the whole myriad of units, morphs, upgrades and various dependencies.
On October 23 2010 22:59 kme wrote: Edit: I am also curious about the supply triggers. I assume they trigger as soon as you hit the stated supply (if minerals are available). This would mean that if you want to state workers to be created at certain supply to emulate worker production, you would actually have one scv constantly queued as opposed to queuing it just before the previous worker finishes.
When a unit, structure, upgrade or morph can be produced depends on when: a) enough minerals are available; b) enough gas is available; c) larvae are available (for zerg units); d) supply capacity is sufficient (for units); e) production queue is available (for non-zerg units, upgrades and structure morphs); f) spellcaster energy is available (for abilities); g) prerequisite structures are completed; h) job dependencies are completed (such as 12 Gateway > Zealot. The Zealot job depends on the completion of the 12 Gateway job.). That's part of why an optimizer would be... complex.
I'll think about an option to let you build something constantly (Marines, SCVs); it's not an easy addition, though. Maybe a priority system, like you mentioned. For the mean time, you'll have to add those units to the build order yourself and fiddle with when you can build them.
|
How do you take drones off gas?
|
something is wrong with inject larva, it does not build drones right after that.
Ex: 10 Overlord 10 Spawning Pool 16 Queen > Spawn Larvae 18 Hatchery > transfer 3 drones 18 Extractor > transfer 3 drones (2 seconds lost) 18 Overlord 20 Queen 22 Overlord 22 Spawn Larvae 24 Spawn Larvae 28 Lair 32 Overlord 35 Overlord 38 Spawn Larvae 48 Zergling
|
On October 24 2010 00:19 Perscienter wrote: 14 cybernetics core > warpgate AND stalker Yes, just write: 14 Cybernetics Core > Warpgate & Stalker It'll start the Warpgate research first, then the Stalker without waiting for the research to complete.
On October 24 2010 03:08 icezar wrote: How do you take drones off gas? It's in one of the examples: @100 gas take 3 workers off gas
On October 24 2010 06:08 icezar wrote: something is wrong with inject larva, it does not build drones right after that.
Lol, actually, it injected the larvae on the second Hatchery, the one which hadn't finished yet. Should be fixed now.
|
Thanks. Got another one now. 9 Overlord 14 Hatchery 13 Spawning Pool 16 Overlord 19 Queen > Spawn Larvae 21 Extractor > transfer 3 drones 20 Queen > Spawn Larvae 26 Overlord 29 Overlord @100 gas take 3 workers off gas 30 Lair 34 Spawn Larvae 40 Spawn Larvae 41 Overlord 48 Zergling
No hatcheries are producing larvae. ??? It is ok until 41 Overlord....
|
On October 24 2010 15:32 icezar wrote: No hatcheries are producing larvae. ??? It is ok until 41 Overlord....
That, too, should be fixed now. Thanks again.
|
Thanks for the fast updates but i keep getting errors :-(( 9 Overlord 14 Hatchery 14 Spawning Pool 17 Overlord 18 Extractor > transfer 3 drones 18 Queen 20 Queen > Spawn Larvae 26 Overlord 29 Overlord @100 gas take 3 workers off gas 30 Lair 40 Spawn Larvae 40 Spawn Larvae 41 Overlord 48 Zergling
here: 22 3:33 4:23 20 / 28 0, 1 Queen 25 7 23 4:15 4:32 22 / 28 3, 2 Drone 401 85
why does it wait so long to build that drone? and larva count i think it is wrong
|
|
|
|