the trend to switching races
There’s a trend for established bots to come out with a version playing a different race, or playing random. Why is that?
| race | bot | author | new race | new name |
|---|---|---|---|---|
| terran | Navinad | Sungguk Cha | zerg | Zia |
| terran | UPStartCraftAI | (team) | zerg | UPStarCraftAI 2016 |
| zerg | Steamhammer | Jay Scott | random | Randomhammer |
| protoss | McRave | Christian McCrave | terran | Sparks |
| zerg | bftjoe | Joseph Huang | terran | bftjoet |
| terran | Tyr | Simon Prins | protoss | TyrProtoss |
| WOPR | terran | Soeren Klett | zerg | WOPR Z |
| protoss | PurpleWave | Dan Gant | random | PurpleCheese |
| protoss | PurpleWave | Dan Gant | terran | PurpleSpirit |
Tscmoo was the first established bot to come out with a new race as a regular thing, as far as I can tell from records. Am I missing one? The next was Zia by Sungguk Cha. Both of these were before any visible trend started. I can imagine that Randomhammer may have started the trend; it was close enough in time.
The work I spend to make sure that Steamhammer can play every race—to make Randomhammer—definitely slows down the progress of Steamhammer’s zerg. Without the side work, Steamhammer by now would have fewer bugs and at least one major feature more from my to-do list, such as opening learning or decent mutalisk usage (possibly both). I wrote about the cost of playing random in going random. If you’re aiming for the strongest play, don’t switch races unless you think you can make the new race stronger. And even then, don’t underestimate the time and difficulty of bringing a new race up to speed. Few of the off-race bots have caught up with their parents.
So why the trend? Of course different authors may have different motivations, but there’s a coherent trend so likely there is one main underlying reason. I thought of a few, but I don’t know the answer. 1. People (suddenly) want more variety and less slogging down the same old path? (Probably not.) 2. Other bots are switching races, and it seems cool? (Call it “popularity inspiration.”) 3. The stronger community discussion this year means that more ideas circulate, and people want to try them? (“Idea inspiration.”) 4. Or the stronger community inspires people to contribute more to the community. ("Contribution inspiration.") 5. Authors believe they can do better by switching. (Maybe in some cases.) 6. There is more stuff going on in total this year, so more race switch bots come up too as part of that.
For TyrProtoss, Simon Prins can tell us his thoughts if he likes, but I have a guess: I suspect that the old codebase was getting clunky, and he wanted a fresh start. That explanation doesn’t fit most of the switchers, though. For Randomhammer, my goal as I see it now is more to lift community standards and reach the highest ultimate level of play than to reach strong play in the shortest time. I often leave important weaknesses unaddressed for a long time, because I want to fix them later as part of a major new feature; fixing them right away I see as a slowdown. A full-featured starter bot that can play all races reasonably well helps lift the community. A bot that is designed for customizability and releases its source will have a hard time staying on top for long!
Other ideas? What do you think? Maybe some of the authors will tell us.

