This readme is for developers that want to develop a bot to play Etimo Diamonds. When your bot is playing, you can watch it in realtime at http://diamonds.etimo.se.
If you want to run the backend on your own computer (which you don't have to) then read the docker readme instead.
The purpose of the game is to collect as many diamonds as possible and deliver them in the base within one minute. The bot can carry at most 5 diamonds, so it needs to deliver the diamonds to the base often. The difficult part is to write an algorithm that calculates the most efficient path to diamonds and back to the base.
Here is some info to get you started:
Register Botto register a bot. The endpoint returns a token that you should keep and treat as a password.
Get all boardsto get the ID of the board. Currently there is only one board.
Get board by idto get information about the board. You will need to call this endpoint quite often to get board information such as where diamonds are, where your bot is etc.
minimumDelayBetweenMovesindicates how long time in milliseconds your bot must wait between each move.
All bots on the board are returned in an array and you need to know the name of your bot to find your bot in the array. You set the name of the bot when you registered the bot. If you forget the name, you can get it by using endpoint
Get bot by token.
Join boardto join the board.
Move botto move your bot one step in some direction.
We also have some example bots to get you up and running faster.