Make sure Docker is running. From the root directory of your starter kit (where base-compose.yml and docker-compose.yml are located), run in your terminal:
It may take a few minutes to run the first time.
This will build the game server, and connect your starter agent. Since Bomberland is a 2-player environment, the game server will wait for a second agent to connect before starting.
Step 4: Join the game as a human player
In either a Firefox or Chrome browser, open the game client from:
Select 'Agent' as your role, leave 'Agent Id' as agentA and click 'Connect'.
Use the following keys to play as the Wizard:
Click a unit to control it
↑ / ↓ / ← / → - arrows to move the unit
SPACE - place a bomb
Click a bomb to detonate it
If you got here without any errors - congratulations you're all set up! 🥳
Below are additional tips for developing your agent.
Step 5: Choose agents to connect
Specify agent-a and agent-b in docker-compose.yml to choose which agents to play against each other:
Add a --build flag in your docker-compose up command whenever you make a change to the docker-compose.yml or base-compose.yml files. i.e.:
docker-compose up --abort-on-container-exit --force-recreate --build
Step 6: Change environment variables
Environment settings such as tick rate, map size, etc can be changed by adding them under environment in docker-compose.yml:
To submit your agent to the tournament server, you will need to push your Docker image to a public registry and upload your link to the Submissions page.
docker-compose up --abort-on-container-exit --force-recreate
agent-b:
extends:
file: base-compose.yml
# update next line with a service in base-compose.yml to change agent
service: typescript-agent-dev
environment:
- GAME_CONNECTION_STRING=ws://game-server:3000/?role=agent&agentId=agentB&name=python3-agent
- FWD_MODEL_CONNECTION_STRING=ws://fwd-server-b:6969/?role=admin
depends_on:
- game-server
- fwd-server-b
networks:
- coderone-tournament