No description
.github/workflows | ||
maps | ||
planetwars-client | ||
planetwars-matchrunner | ||
planetwars-rules | ||
planetwars-server | ||
proto | ||
simplebot | ||
web | ||
.gitignore | ||
bot.toml | ||
Cargo.lock | ||
Cargo.toml | ||
Containerfile | ||
docker-compose.yml | ||
README.md | ||
start.sh |
planetwars
Planetwars is a competitive programming game. You implement a bot that will be pitted against all other bots.
Try it out at https://planetwars.dev !
Current features:
- write and publish a python bot in the demo web interface
- develop a bot locally and publish it as a docker container
- published bots will be ranked in the background
Creating a bot locally
For development, you can play a game with a locally running bot using planetwars-client
.
Once you are happy with your bot, you can publish it to the planetwars server as a docker container.
- Register your bot. In order to publish a bot version, you first have to register a bot name. You can do this by navigating to your profile after logging in (click your name in the navbar).
- Bake your bot into a docker container. If you'd like to test whether your container works, you can try running it using
planetwars-client
by usingdocker run -it my-bot-tag
as the run command. - Log in to the planetwars docker registry:
docker login registry.planetwars.dev
- Tag and push your bot to
registry.planetwars.dev/my-bot-name:latest
. - Your bot should be up and running now! Feel free to play a game against it to test whether all is well. Shortly, your bot should appear in the rankings.
Project
The repository contains these components:
planetwars-server
: rust webserverplanetwars-matchrunner
: code for running matchesplanetwars-rules
: implements the game rulesplanetwars-client
: for running your bot locallyweb/pw-server
: frontendweb/pw-visualizer
: code for the visualizer