Skip to main content

Run a local match

This runs the full game engine locally with no time limits — ideal for rapid iteration. The engine outputs a replay.replay26 file. Bot paths can be a directory containing main.py, a .py file, or a bot name from your bots_dir (set in cambc.toml). The optional map argument is a .map26 file — if omitted, the first map in your maps_dir is used.

View a replay

Opens the visualiser in your browser. Supports play/pause, round scrubbing, speed control, and keyboard navigation.

Run + watch in one command

View a platform match

Remote test runs

Remote commands require authentication — run cambc login first if you haven’t already. Test your bots on the same hardware that runs ladder matches, with full time limit enforcement:
This uploads both bots and runs a match on AWS Graviton3 instances with the 2ms CPU time limit enforced. Use this to catch performance issues before submitting. Bot paths for test-run must be a directory containing main.py or a .zip file (unlike cambc run, arbitrary .py files are not accepted).
Remote test runs are rate-limited: max 10 test/unrated matches per 5 minutes. Unrated matches also have a 5-minute cooldown per specific matchup.
You can also challenge another team to an unrated match using both teams’ latest submissions:

Debugging

  • stdout via print("msg") is captured and saved to the replay — view it per-unit in the visualiser
  • stderr prints to your console in real time
  • Use c.draw_indicator_line() and c.draw_indicator_dot() to draw debug overlays on the map

Next steps

Submit your bot

Upload your bot to compete on the ladder.

CLI reference

Full reference for all CLI commands.