The game provides opponents and gameplay challenges, as well as a full way to test your code by saving specific opponents as your own unit tests. It’s basically test-driven development (TDD): you encounter an opponent, lose to them (red test), refine your code, beat them (green test), and move up the ladder. Opponents are saved autonomous versions of other players’ scripts, so online presence isn’t required.
There’s a free demo version with a live single-player tutorial available, but without access to multiplayer arenas.