archive by month
Skip to content

SSCAIT Steamhammer prospects

Steamhammer won all but 2 of its regames, shifting its score up minutely from 79-33 to 80-32. It is tied with WillyT, which means it’s not definite which opponent it will face. Depending on whatever rule is used to pair tied bots, it might face Hao Pan, PurpleWave, or Dragon. PurpleWave is a possible opponent only if Hao Pan wins its last regame, which is likely.

Halo by Hao Pan would be its ideal opponent. Steamhammer would stand a good chance to upset the higher ranked bot.

PurpleWave would almost certainly win.

Dragon is in between. Steamhammer’s score ratio versus Dragon on BASIL is around 2:3, so it has a theoretical chance of winning a match. But Steamhammer will do worse on SSCAIT because it has less data to go on. There would be a slight chance of an upset.

SSCAIT round robin results

The SSCAIT round robin crosstable has just filled up with all games played. I hope and expect that games where one bot failed to start due to server problems will be replayed, as they were last year, so the rankings should shuffle a bit.

BananaBrain and Krasi0 are tied at the top, closely followed by Monster and Stardust. There’s a gap before PurpleWave at #5. Winning percentages at the top are down somewhat from over 95% last year. A little lower in the rankings, starting from #8, winning percentages are up. I think it shows the pattern of improvement. The topmost bots are well ahead of all others, and close in strength. They consistently defeat lower ranks and have hard fights among themselves, so the winning percentages are slightly down. But all the top 16 are stronger than last year, and they scored better against the remainder.

Bots that have not been updated: BetaStar fell from #4 last year to #6. Iron fell from #7 to #9. Xiao Yi fell from #9 to #14. TyrProtoss bucked the trend and rose from #17 to #13. To pick a couple other prominent examples, Skynet by Andrew Smith fell from #19 and 58.33% to #25 and 51.79%. On the other hand, XIMP by Tomas Vajda went from #23 and 56.48% to #21 and 55.36%, holding its position. In the overall bot pool, specialized anti-carrier play has not improved.

Steamhammer stands at #10 and 70.54%, about the same as last year’s #12 and 65.74%. In both years, bots at that level are closely spaced in results, and a couple slots up or down is not significant. Steamhammer was able to keep pace without updates because it has more learning data than last year, when its data had been cleared recently. Even so, many of its losses to the lower ranks were due to lack of experience. It could have scored better if I had copied learning data from BASIL for some opponents.

SSCAIT PurpleWave-Steamhammer game

Another interesting game was PurpleWave v Steamhammer.

PurpleWave opened with two gates on one base but noticed a lot of zerglings. It cautiously added cannons at its ramp before moving out to pressure. It was an overstep: The ramp with zealots was unassailable, but as it happened Steamhammer defeated the zealots in the field and then the cannons over the ramp in detail, before being chased out by new zealots. On the next moveout, zerglings again broke into the base, killed the new cannon, and did away with many probes. Zerg evened the worker count but could not quite pull a win. Stamhammer switched to droning up, and it was the start of a long fight. PurpleWave spent a lot of gas replacing observers.

A couple cannons are little defense if unsupported, and take away from the zealot count. The bigger issue is, how do you know when it’s safe to move out? The scouting probe was long dead, and sending a new probe does not necessarily reveal the zergling count. Speedlings could easily catch it before it gets far. For zerg, the eternal issue is the economy/army tradeoff. If Steamhammer had kept up zergling production, it would likely have won quickly because of the overconfident protoss play. But if PurpleWave held the ramp instead, zerg would have fallen behind and had no chance. Steamhammer is weak at managing the tradeoff in the middle game.

Starcraft. It’s a hard game.

SSCAIT game Stardust-Dragon

Today’s tournament game Stardust v Dragon was fun and instructive. Dragon used vulture mines aggressively, and shifted gradually from all vultures to all tanks. The effectiveness of a small number of tanks with a large number of vultures is worth understanding, but don’t overlook that the terran army was larger. It’s interesting to compare the changing worker counts throughout the game.

2 tanks and vultures hold off dragoons

SSCAIT losing after winning

Watching the ongoing tournament, I see that some older bots are being given losses after they eliminate the opponent. The symptom is that A eliminates B, then right away the notification comes up “waiting for player A”, its time runs out, and A is counted as the loser. I’ve seen it several times.

Jakub Trancik is an obvious example. For example, it happened in today’s game Jakub Trancik - Yuanheng Zhu. Jakub Trancik has recorded no replays in the whole tournament, and this can only be why. Jakub Trancik’s sole recorded win so far is versus MegaBot2017, which crashes often. And yet Micky Holdorf’s tournament page gives Jakub Trancik only 3 timeouts and 14 crashes in 64 games.

Jakub Trancik also scored at the bottom last year, with similar numbers, but scored about 23% in the 2020-2021 tournament. Presumably a change made in 2021 caused the bot’s “game over” code to no longer work. Does it disconnect before Starcraft recognizes the win? Or what?

It would be nice to fix the issue, since it messes up the definition of winning. But as far as I’ve seen the affected bots are very old. If that’s true, then disabling them would probably not hurt much.