Codecraft Works Battle Scripts
Sign in

Write a program that plays the game

Battle Scripts lets you learn to code by writing autonomous players for classic games. Pick a game, learn the rules, then write a program that plays it. Forge it in the browser, test it instantly, and see how it stacks up against everyone else in the Arena.

How it works

  1. Step 1

    Choose a game

    Tic-Tac-Toe or Hide and Sink. Read the rules and what your script has to decide.

  2. Step 2

    Build it in the Forge

    Write Python or Java in the browser and run it against the Codecraft opponent as often as you like.

  3. Step 3

    Add it to your Armory

    Freeze a version you're happy with. That snapshot is what other people challenge.

  4. Step 4

    Fight in the Arena

    Battle other players' scripts, watch the game back turn by turn, and climb the leaderboard.

Available games

Tic-Tac-Toe

This classic game challenges you to create a script that can outsmart its opponent and achieve three in a row.

Sign in to enter the Forge Read the rules

The Arena

Every active script anyone has entered. Pick an opponent, put one of yours up against it, and watch the game play out move by move.

Go to the Arena

Daily Tournament

Every day the top 100 of each leaderboard are drawn into a bracket and fought to a champion. No entry needed — if you're on the board, you're in it.

See the latest results

Leaderboard

All Time leaderboard
#ScriptWin rate
1New Game100% (2/2)
2Smart?100% (2/2)
3TicTacToe-1100% (1/1)
4New Game100% (1/1)
5New Game100% (1/1)
6New Game100% (1/1)
7Marta's Tic Tac Toe100% (1/1)
8New Game100% (1/1)
9New Game100% (1/1)
10New Game100% (3/3)
11Bombastic Random Boats99% (171/173)
12New Game87% (13/15)
13New Game86% (6/7)
14New Game86% (6/7)
15New Game82% (9/11)
16New Game80% (8/10)
17New Game75% (3/4)
18CCPC Blocky 🥷🏾 173% (194/264)
19final272% (13/18)
20New Game67% (2/3)
21New Game67% (2/3)
22New Game67% (6/9)
23New Game67% (2/3)
24New Game67% (4/6)
25New Game67% (2/3)
26Glitch60% (3/5)
27K.O.'s Player60% (3/5)
28Robsons Tic Tac to60% (3/5)
29Default Blocks but with Functions59% (323/552)
30New Game50% (1/2)
31New Game50% (2/4)
32New Game50% (1/2)
33New Game50% (1/2)
34New Game50% (3/6)
35New Game50% (1/2)
36Gib TicTacToe50% (2/4)
37final50% (1/2)
38Alyssa50% (1/2)
39New Game50% (2/4)
40THIS50% (1/2)
41New Game43% (3/7)
42Chaotic Random Toffees43% (3/7)
43Aaden's Tic Tac Toe42% (5/12)
44BattleBot41% (229/552)
45New Game33% (1/3)
46New Game33% (2/6)
47New Game33% (1/3)
48New Game33% (1/3)
49marissa27% (3/11)
50Scary Random Snakes26% (65/248)
51New Game25% (1/4)
52New Game25% (2/8)
53New Game22% (2/9)
54New Game20% (1/5)
55New Game17% (2/12)
56New Game14% (1/7)
57New Game (0/0)
58New Game (0/0)
59cheese (0/0)
60New Game (0/0)
61New Game (0/0)
62Final0% (0/1)
63New Game0% (0/1)
64New Game0% (0/1)
65Shoot at 0, 0 <script>alert(1)</script>0% (0/1)
66New Game (0/0)
67New Game (0/0)
68New Game0% (0/2)
69New Game0% (0/2)
70New Game (0/0)
71Smart? (0/0)
72New Game (0/0)
73New Game0% (0/1)
74New Game0% (0/1)
75New Game (0/0)
76New Game0% (0/5)
77New Game (0/0)
78An attempt 2 (0/0)
79New Game0% (0/168)
80New Game (0/0)
81Smart? 20% (0/1)
82New Game (0/0)
83New Game (0/0)
84New Game (0/0)
85New Game (0/0)
86New Game (0/0)
87New Game0% (0/1)
88New Game0% (0/1)
89New Game0% (0/3)
90New Game0% (0/1)
91New Game (0/0)
92New Game (0/0)
93New Game0% (0/1)
94New Game0% (0/2)
95New Game (0/0)
96New Game (0/0)
97New Game0% (0/2)
98New Game (0/0)
99New Game (0/0)
100New Game (0/0)
Java Hide and Sink leaderboard
#ScriptWin rate
1Smart?100% (2/2)
2Bombastic Random Boats99% (171/173)
3New Game67% (6/9)
4New Game50% (3/6)
5New Game33% (2/6)
6Shoot at 0, 0 <script>alert(1)</script>0% (0/1)
7Smart? (0/0)
8New Game (0/0)
9New Game0% (0/168)
10Smart? 20% (0/1)
11Actually, you know what, don't even put in a position0% (0/2)
Python Tic-Tac-Toe leaderboard
#ScriptWin rate
1New Game100% (2/2)
2TicTacToe-1100% (1/1)
3New Game100% (1/1)
4New Game100% (1/1)
5Marta's Tic Tac Toe100% (1/1)
6New Game100% (1/1)
7New Game100% (1/1)
8New Game87% (13/15)
9New Game86% (6/7)
10New Game82% (9/11)
11New Game80% (8/10)
12New Game75% (3/4)
13CCPC Blocky 🥷🏾 173% (194/264)
14final272% (13/18)
15New Game67% (2/3)
16New Game67% (2/3)
17New Game67% (2/3)
18New Game67% (2/3)
19K.O.'s Player60% (3/5)
20New Game50% (1/2)
21New Game50% (2/4)
22New Game50% (1/2)
23New Game50% (1/2)
24New Game50% (1/2)
25Gib TicTacToe50% (2/4)
26final50% (1/2)
27Alyssa50% (1/2)
28THIS50% (1/2)
29New Game43% (3/7)
30New Game33% (1/3)
31New Game33% (1/3)
32New Game33% (1/3)
33marissa27% (3/11)
34Scary Random Snakes26% (65/248)
35New Game25% (1/4)
36New Game25% (2/8)
37New Game22% (2/9)
38New Game20% (1/5)
39New Game14% (1/7)
40New Game (0/0)
41cheese (0/0)
42New Game (0/0)
43New Game (0/0)
44New Game0% (0/1)
45New Game0% (0/1)
46New Game (0/0)
47New Game (0/0)
48New Game0% (0/2)
49New Game0% (0/2)
50New Game (0/0)
51New Game (0/0)
52New Game0% (0/1)
53New Game0% (0/1)
54New Game (0/0)
55New Game0% (0/5)
56An attempt 2 (0/0)
57New Game (0/0)
58New Game (0/0)
59New Game (0/0)
60New Game (0/0)
61New Game (0/0)
62New Game0% (0/1)
63New Game0% (0/1)
64New Game0% (0/3)
65New Game0% (0/1)
66New Game (0/0)
67New Game (0/0)
68New Game0% (0/1)
69New Game0% (0/2)
70New Game (0/0)
71New Game0% (0/2)
72New Game (0/0)
73New Game (0/0)
74New Game (0/0)
75New Game (0/0)
76New Game (0/0)
77New Game (0/0)
78An attempt (0/0)
79New Game (0/0)
80New Game (0/0)
81New Game (0/0)
82New Game (0/0)
83New Game (0/0)
84New Game (0/0)
85New Game0% (0/1)
86New Game (0/0)
87New Game0% (0/2)
88New Game0% (0/3)
Java Tic-Tac-Toe leaderboard
#ScriptWin rate
1New Game100% (1/1)
2New Game100% (3/3)
3New Game86% (6/7)
4New Game67% (4/6)
5Glitch60% (3/5)
6Robsons Tic Tac to60% (3/5)
7New Game50% (2/4)
8Chaotic Random Toffees43% (3/7)
9Aaden's Tic Tac Toe42% (5/12)
10New Game17% (2/12)
11New Game (0/0)
12Final0% (0/1)
13New Game (0/0)
14New Game (0/0)
15New Game (0/0)
Blockly Tic-Tac-Toe leaderboard
#ScriptWin rate
1Default Blocks but with Functions59% (323/552)
2BattleBot41% (229/552)