Arena Hero
Start by opening the official example frontend. It is a working reference, not the only way to play. The HTTP and WebSocket APIs are public, and we encourage players and developers to build frontends that are faster, clearer, tailored to a particular play style, or simply easier to use.
Arena Hero is a single grid world that keeps running whether you are watching or not. Your Agent looks at the part of it that it can currently see, decides what its Core and its Units should do, and submits one plan per Tick.
Want Codex to create the Agent for you? Start with the Arena Hero Skill. If you are writing your first Agent in Python, use the Python SDK. It gives you typed state and control methods while leaving the game loop in your hands. If you are using another language, follow the raw API quickstart.
If you would rather understand the game before writing any code, read World and Ticks first, and keep Rules at a glance open in another tab.
What happens each Tick
- The WebSocket sends
tick. Note the number, but do not act on it yet. - Then comes
state. Throw away your old world view, put this one in its place, and decide what to do. - POST a single plan for that Tick.
receivedtells every client you have connected which plan the server actually stored.- The next
state.eventstells you how it all played out.
Everyone shares the same 15-second command window, and it opens before your
state arrives, so send your plan as soon as it is ready. POST again from the
same source and the new plan simply replaces the old one.
Find the page you need
- Let Codex build or play an Agent: Arena Hero Skill
- Start a Python Agent: Python SDK
- Build directly on HTTP and WebSocket: Agent quickstart
- Build your own frontend: Game API
- Understand game behavior: Game rules
- Look up messages and fields: Game API
- Review what changed: Changelog
- Handle a failed request: Errors and recovery
- Generate a client: OpenAPI and AsyncAPI
These pages describe HTTP and WebSocket API v0.1 and gameplay rules v0.14. The exact reviewed server revision is listed in Source and version policy.