AIIDE StarCraft AI Competition - Survey Feel free to answer as many questions as you like, but it would be great if everyone answered everything! Please feel free to provide external references/links as necessary Bot Name: McRave Bot Race: Protoss Author Name(s): Christian McCrave Affiliation(s): Independant Nationality(s): Canada Occupation(s): Controls Engineer (These will be listed on the competition website) Bot URL: https://github.com/Cmccrave/McRave Personal URL: Affiliation URL: Questions about your bot (please answer as many as you can, especially Q 1-3) Q: What is the overall strategy/strategies of your bot? Why did you choose them? McRaves overall strategy is to play for the midgame when its strong micro can win the game outright. The AIIDE version plays 3 builds, which are relatively safe except against a few hardcoded matchups. The PvZ is a very safe FFE with at least 3 cannons, the PvP is a fairly safe ZZCore, which can apply pressure with the initial zealots and the PvT is a very greedy 12 Nexus. All tech chosen by McRave is based on enemy unit composition, there is no hardcoded tech choices. Q: Do you incorporate learning of any form in your bot? If so, how was it accomplished? In AIIDE 2017 there is no learning, in the current form on SSCAIT there is opponent modeling for build orders between safe and greedy builds, there is no cheese currently. Q: Please describe all AI techniques / algorithms used in your bot. (For example: What parts of your bot are 'hard-coded', which use learning, search, decision trees, state machines, etc) McRave has no enemy specific hardcoding. As noted above, there is no learning in the AIIDE version, but there is a lot of decision making based on what is scouted. For example, McRave forces to tech up to a Robo/Obs if we scout DT Tech or Lurker Tech. There is decision making for what it calculates as being the strongest tech and production choice based on a scoring system of each enemy unit type. Q: How did you become interested in Starcraft AI? Not really sure, I came across SSCAIT somehow and decided to spend time learning to code and develop a bot of my own. Q: How long have you been working on your bot? 8 months, of which I have 8 months of coding experience too. Q: About how many lines of code is your bot? As of 09/25/17, git shows 14,063 lines of code. Q: Why did you choose the race of your bot? Protoss has always been my favorite race, just a subjective thing. Q: Did you use any existing code as the basis for your bot? If so, why, and what did you change? None, I've had help from people on the SSCAIT Twitch/Discord, but other than that it's all from scratch. Q: What do you feel are the strongest and weakest parts of your bot's overall performance? Strongest part of my bot is the micro and adaptation, the weakest being the lack of drop usage and drop defense as well as building placement for forge fast expands. Q: If you competed in previous tournaments, what did you change for this year's entry? N/A. Q: Have you tested your bot against humans? If so, how did it go? Poorly, it's capable of steamrolling large engagements with better micro, but loses to drops in mineral lines. Q: Any fun or interesting stories about the development / testing of your bot? When I got bored of losing to Terrans tanks, I made my own Terran bot from McRaves foundation in about an hour. It uses the Sparks terran build and promptly beat my own Protoss bot with it who was doing 12 Nexus strategies. Q: Any other projects you're working on that you'd like to advertise? None currently, looking towards SC2 AI possibly in the future with a few other participants. Optional Opinion Questions: Q: What is your opinion on the current state of StarCraft AI? How long do you think before computers can beat humans in a best-of-7 match? Bots are slowly starting to shadow early stages of Broodwar competition and important aspects of the game that humans developed. A strong indication of this is AI now need scouts to stay alive as long as possible to see what tech is being chosen. With Facebook being involved, I'd expect a bot capable of winning a bo7 by late 2018 or early 2019. Q: What do you feel is the biggest hurdle (technological or otherwise) in improving your bot's AI? Easily trying to find ways of putting human abstract thoughts into code. (Dropping in mineral lines, harassing exposed bases, spreading units out.) Q: Which bots are the most interesting to you and why? Any bot that can make really strong drop plays.