archive by month
Skip to content

Steamhammer 1.2.5, second test version

Since I got in trouble by not uploading often enough, until the release I decided to move closer to a “give us this day our daily fixes” model. Arbitrary version number 1.2.5 is now up.

The last Steamhammer upload fell in rating to about the same as Randomhammer, a little above 2100. I think the worst new bug is a new production freeze that didn’t happen before. It didn’t show up in my testing, but it seems sort of common in real games. Chasing the enemy scout too much doesn’t help either.

Anyway, for this test version I fixed a bunch of easy weaknesses.

• Fixed 2 possible causes of production freezes.

• If no buildings are in the building queue, recover any idle workers. It’s a quick fix so drones don’t stay idle forever.

• Since early days, Steamhammer has canceled uncompleted buildings that are about to be destroyed. I extended it a little to include lurker eggs and zerg cocoons. Recovering most of the gas from a lurker egg that’s about to die should make a difference.

• Photon cannons count as evidence that lurkers may be a bad idea. I made a few other tweaks to what-counters-what.

• Irradiated air units advance, hopefully leaving their non-irradiated colleagues behind. It’s a quick hack, and I’m not sure how well it will work. Also irradiated burrowed units try not to unburrow, to avoid exposing their friends to the radiation. An irradiated lurker will wait underground until it dies—not ideal, but maybe an improvement.

• Lurkers in small numbers try to burrow out of photon cannon range. It’s crude and definitely doesn’t always work, but I hope the effect will be to set up a containment until more units are available.

• Fixed a bug affecting the terran BBS opening: Units collected at home sometimes stayed there after "go aggressive". It was an interaction with unsticking units, which ironically caused marines to stick.

InformationManager knows that lurker eggs mean the enemy has cloak tech. It didn’t realize until now.

• If we’re planning to make gas units, hurry up and collect gas. If gas was turned off, the bot used to wait until the first gas unit came to the front of the queue.

Trackbacks

No Trackbacks

Comments

krasi0 on :

“give us this day our daily fixes” model - I try to do something similar. Even if I don't implement anything significant, it keeps me in good shape when I touch the code base (almost) daily.

Jay Scott on :

Maybe “give me this day my daily feedback” from server games is a better description of my motive. :-)

MicroDK on :

When I put Lurker Aspect into the Q, I get this error: !Assert: _type == MacroActs::Tech
File: ..\Source\MacroAct.cpp
Message: getTechType of non-tech
Line: 259
It is put into the Q and gets created. Did you encounter the same problem?

Jay Scott on :

No, I haven’t. I put that assert in myself, and I don’t think I’ve ever seen it trigger. UAlbertaBot originally had bugs where it would assume that an item in the queue was a unit when it might be something else. Here code seems to be assuming that a queue item is a tech type when it is something else.

MicroDK on :

That is strange, BWAPI::TechTypes::Lurker_Aspect is a tech type... is it not?

Jay Scott on :

It sure is. Maybe a bug was introduced into MacroAct? Maybe some other queue-manipulating code is confused about what it has?

MicroDK on :

I am using the exact same MacroAct code...

Joseph Huang on :

I suspect its your display research code that's triggering it.

MicroDK on :

Fixed the bug! :) It was not my display research code. I added bool BuildOrderQueue::anyInQueue(BWAPI::TechType type) since SH 1.2.3 did not have this and I had accidental used item.macroAct.isTech() instead of item.macroAct.isTech() in the IF. It was a copy of the UnitType override. ;)

Add Comment

E-Mail addresses will not be displayed and will only be used for E-Mail notifications.

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

Form options

Submitted comments will be subject to moderation before being displayed.