Bot Volley
A 3D volleyball arena where the players are JavaScript you write.

The problem
Programming games usually hide their physics or run your code on someone else's server. I wanted a game where a bot is a single function you can read, the simulation is honest enough to reason about, and every match counts towards a rating.
How it works
Each bot is a tick(gameState) function edited in Monaco, the editor behind VS Code, and executed in isolation in the browser. The game exposes arena dimensions, ball position and velocity, gravity and match state, so a bot can predict where the ball lands, account for wall bounces and plan an intercept.
Under it is a deterministic physics engine, so the same inputs always produce the same rally. Convex holds real-time match state and server functions, Clerk handles sign-in, and ranked matches adjust an Elo rating. The starter bot is about 26 lines; the best ones run to hundreds.
Highlights
- Deterministic physics engine written for the game
- User code runs live in the browser, isolated from the page
- Real-time state and server functions on Convex
- Elo rankings, match history and a practice mode against a training bot
Screens
