sc2-ai-match-controller is the next iteration of the arenaclient created for ai-arena to act as a proxy between bots and StarCraft II. It is made to specifically take advantage of the container infrastructure ai-arena uses to run its games, and it has split up into three main components:
This is the main controller, and it is in charge of fetching and starting games. The websocket proxy between bots and SC2 is also contained within this controller.
This controller is a simple API that is solely in charge of starting SC2 with the arguments received from the proxy_controller
This controller is a simple API that is solely in charge of starting bots with the arguments received from the proxy_controller
Although these controllers can all run in the same container, the goal of creating controllers for each aspect of the SC2 matches was to split up each controller into its own container.
Run cargo test
Please see Testing README
Please see the examples
directory.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update tests as appropriate.