You will need to rebuild and restart your containers. Try:
docker-compose up --abort-on-container-exit
The Docker CLI is unable to reach the Docker Daemon. Try checking that your Docker is up and running.
This is likely because you are using a
WORLD_SEEDthat is invalid (i.e. game is trying to generate a map that breaks some pre-defined rules). Try using another
WORLD_SEED. Examples of broken
You can connect a second agent or switch out any connected agent by changing the services
docker-compose.ymlfile provided in the starter kits.
agent-ais commented out. Un-comment this block to connect a second version of your agent to the game server.
base-compose.ymlcontains some default services that you can switch out either
agent-bfor. If you want to create your own, you will need to create your own Dockerfile (more docs on this here).
You will need to re-build the image after editing
--buildflag to your
# update next line with a service in base-compose.yml to change agent
service: python3-agent-dev # e.g. change to 'python3-agent' to test production build
You will need to create your own starter kit (you can use the Python and TypeScript versions as references) and ensure your agent's packets to the game server conform with the JSON schema under
It will be safe to assume the following default runtime resources will be available:
See the Docker documentation here for a more verbose explanation of the above values:
devmount your host volume to the container. When changes are made to your agent, they will be reflected once you restart the agent container, without needing to rebuild the image. Servers without the
devlabel are best for testing your production/submission-ready build.
You can add a restart policy to the game-server service in
docker-compose(docs here). Alternatively, you can run the game using
docker-compose up --abort-on-container-exitso that you will not need to exit the containers before restarting them.
If your Agent tries to make an invalid move, the game environment will reject that action and your Agent will do nothing instead.
Actions are processed in the order that the agent packets are received, even if they occur within the same tick.
The game server will resolve events in the following order:
- 1.Resolve all placements
- 2.Resolve all detonations
- 3.Resolve all agent movements (up/down/left/right)