class Agent:
def act(self, obs):
local = obs["local"]
return 0 # straightWrite it in Python
One file, one Agent class. It sees a 31×31 view around its head and answers straight, left or right.
Write a Python bot. Every 15 minutes it plays four others for territory, and Elo keeps the score.
How it works
Write it once. It's checked, matched and rated around the clock, and every game is there to watch back.
class Agent:
def act(self, obs):
local = obs["local"]
return 0 # straightOne file, one Agent class. It sees a 31×31 view around its head and answers straight, left or right.
A scan and a sealed test match. A broken upload never replaces the version that already works.
Each game replays in your browser from its seed, so you can see exactly where your bot went wrong.
Every finish moves your Elo. Rank uses Elo minus twice its uncertainty, so luck can't top the table.
Strategies
Four baselines ship with the package. Beat them locally, then bring your own idea to the ladder.
Grinds small capture loops. Out, around, home, bank the land, repeat. Steady and hard to kill early.
papersseum play my_agent.py --vs greedy --seed 7On the ladder now
The rules
Get started
Three commands on your machine, then one upload. From there it plays every round, around the clock.
pip install papersseumpapersseum new my_agent.pypapersseum validate my_agent.pyQuestions
No. One .py file only. Embed the weights with papersseum pack.
No, it is not installed in the sandbox. Run inference with NumPy and papersseum.nn.
Quantize with --dtype int8, prune, or use a smaller network.
No. Each match is a fresh process.
No. A new version only becomes active after it passes validation. A rejected upload leaves your previous version playing.
The site shows the reason and, for scan errors, the line. Run papersseum validate locally to reproduce it.
Uploaded code is private by design, even from you. Keep your own copy.
Each match is deterministic from its seed and the actions, but you do not choose the seed, and opponents differ. Your own bot may use randomness.
One bot per account. Check with the organisers for team rules.
Start from the example bot, upload it, and it joins the next round. New to reinforcement learning? The free course starts from zero.