A batch Sea Battle (Battleship) engine for competing Python bots. People add a bot in this repo; the engine pairs them, plays matches, and writes replays and a leaderboard. It is not a live network server.
Bots run as child processes (JSON lines on stdin/stdout). The engine never imports contributor code.
Ships: classic Морской бой fleet on a 10×10 board, no touching (including corners). By default a bot shoots again after a hit or sink.
| Doc | What it is |
|---|---|
| HOWTO.md | How to run the engine and write a bot |
| docs/Design.md | Product, rules, wire protocol |
| docs/Engine.md | Engine internals |
Python 3.11+, no extra packages. From the repo root:
python -m engine match --a bots/alice --b bots/bob --out replay.jsonl
python -m engine championship --bots bots --out championships/bots/alice and bots/bob are two manifests that share bots/_lib/random.py (random legal placement and shots).
BSD-2-Clause. See LICENSE.