Botskrieg (The Bot Battle Platform)
What's a Botskrieg?
Botskrieg is a platform to write bots to compete against other people's bots in games/programming challenges
Why Build Botskrieg?
- Botskrieg is the classroom "Learn Programming" assignment I always wanted!
- Other online games kick you off for writing bots, Botskrieg encourages it!
Getting Started
Project Goals
Easy to Debug >>> As Efficient as Possible
- Optimize for observability/debugability
- Choose human readable formats where possible
There is No Such Thing as Cheating
- Make it impossible to gain an advantage by being ...creative
BYOPL (Bring Your Own Programming Language)
- Make it easy to build new clients in any language
- Building a client should only require the following dependencies
- TCP Sockets
- JSON
Make it Easy to Write New Botskrieg Games
- Provide an easy to use runtime interface that handles all the messy/annoying parts of writing something like this. Writing a game should be as easy as writing a pure function.
- Make The Right Thing ™ the easy thing to do
Make Configuring/Running a Botskrieg Server Easy
- Security first
- Provide admin functionality to manage a server in the face of ...creative... players
- Minimize dependencies, strive for 100% Elixir/Erlang dependencies
- Optimize the server for ease of setup