archive by month
Skip to content

Steamhammer status

As I write, in SSCAIT Steamhammer is tied with BananaBrain for #8-#9, at just under 80% win rate. I’m happy with it. But Steamhammer is one of only 2 bots (the other is #26 NLPRbot) which has not yet played any games against the current top 5. I expect to take losses and slip down in the ranking. A finish near the middle of my predicted range of #7-#13 seems likely.

For some reason I don’t feel like analyzing CherryPi and SAIDA yet, though I’m sure I’ll get around to it. I’ve been working on the upcoming Steamhammer 2.2 instead. I’ve removed all references to BWTA other than regions, and I’m making good progress in implementing my own regions; the outline of the code is there, and supporting data is calculated and looks correct. Finish that and replace references to BWTA regions, and only a few small odds and ends remain before I can drop BWTA. Debugging time is unpredictable, because my regions will be different and may affect play. But I’m likely to be done in time for the end of the tournament.

Today I decided to take a break from that and fix a critical bug instead. I verified what I have been suspecting: There is a deadly one in the new micro system, causing it to reissue commands far too often. That makes the APM shoot over 90K and probably saturates Starcraft’s queues so that commands are lost in transit. That explains unit freezing and misbehavior once the zerg army grows large, and I hope it explains the production freezes too. The bug is resisting me so far; something behind the scenes is mysteriously resetting the “yeah yeah, I already did that” marker. But the code is simple and I’ll nail it before long. The bug is responsible for a lot of bad play during the tournament, but strangely for only a few losses.

As the tournament approached I was trying to make low-risk changes. The code is simple, but I still misstepped. I think my first cut of the micro system was OK, since it passed tests then, and the bug was introduced in later changes as I “improved” it.

Trackbacks

No Trackbacks

Comments

Antiga / Iruian on :

From previous experiments it seems somewhere around 50k is the limit of what you can shove into the game engine safety, past that and commands start dropping.

krasi0 on :

With everyone reinventing the wheel with their own TAs and region implementations, we should just join effort and implement support for regions into BWEM-community :)

Jay Scott on :

I think it’s good for people to reinvent the wheel—at least to a limited extent. There should be choices.

Tully Elliston on :

The problem with everyone using a common component that isn't necessarily perfect is that it moulds thinking. And then potentially another team comes along, takes a different route and does much better.

I think basing large army decisions on FAP combat sim results will go in the bin eventually, there has got to be better & cheaper ways of gauging combat outcomes.

Joseph Huang on :

There might be better ways, but i doubt there will be cheaper ones. It doesn't get much simpler than how FAP works.

MicroDK on :

BWEM has something similar: Areas. But they are properly not identical to BWTA regions.

MicroDK on :

Getting rid of BWTA is good thing and I have the same goal. BWTA is a mess with the current commit having problems detecting chokepoints on some maps (eg. Python 12 o'clock) and the latest release being dependent on a lot of other libraries that requires recompilation if you want to upgrade to newer versions of VS2017. But this is a big change so it will be done in steps... ;)

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.