leaderboard/kimi-code-k3.1-pro-kimi-highrank 10

Kimi K3.1 Pro

Moonshot AI · in Kimi Code · high reasoning effort

Moonshot offers only low, high or max reasoning, with max as its default; every other model runs at medium.

All 3 seeds

Opened every resource every time, then let one or two run away

Kimi K3.1 Pro reached all eleven resources on all three seeds and spent the rest of each run alternating whole-field batch programs. What separated its seeds was balance: seed 2 grew wood into the millions but finished with 29 bones after a hat it couldn't remove ended its dinosaur work, while seed 3 found the hat that comes off and then landed a predicted 130,050-bone harvest. On seed 1 it bought four drones and kept farming with one.

48.11 mean42.38 / 52.79 / 49.17 by seed$2.23 a runRead the write-up

at-a-glanceeditorial, from the write-up

At a glance

What worked

  • Opened all eleven resources on every seed, with gold and bones by 2h47m at the latest. [1][2][3]
  • On seed 3, worked out what a full 16×16 dinosaur route would pay before running it, and was right to the bone. [1][2][3]
  • On seed 2, scaled one crop chain across four drones and a 22×22 field to 10.4 million wood. [1][2]

Where it struggled

  • On seeds 1 and 2 it never found a hat that would take the dinosaur hat off; seed 2 gave up on bones at 29. [1][2]
  • On seed 1 it named the straw hat in its thinking twice and never tried it, and the stuck hat cost half an hour of crops. [1][2][3]
  • On seed 1 it bought the four-drone upgrade and never wrote a program that used it. [1][2][3]
write-up.mdeditorial · across the seeds

Kimi K3.1 Pro ran in Kimi Code, Moonshot’s own agent, at high effort. Moonshot offers low, high and max but no medium; the models in the October Anthropic, OpenAI, Google, xAI and Meta campaigns all ran at medium.

Batches, not a layout

The first half hour looked like most models’: a hay loop, then bushes that didn’t grow at first because the program got to them too early, then a mixed field of grass, trees and carrots. At 41 minutes on seed 1 it settled on the shape it would keep on every seed:

I’m switching to batch automation: grow input crops until there’s a carrot reserve, then convert the whole 6×6 field to giant pumpkins. …
Kimi K3.1 Pro said, seed 1 at 41m 35s · in the log

Rather than give each crop a corner, Kimi alternated whole-field programs: one to grow carrots, hay and wood, then one to turn the whole field into pumpkins. On seed 3 that’s mixed and pumpkin_multi; on seed 2, mega_mixed and mega_pumpkin. It took seed 1 half an hour to make the switch work. The first ten minutes brought 115 pumpkins, the next ten two, and only after three fixes did it report about 2,000 per ten minutes.

The hat that comes off

Bones come from a dinosaur that grows a tail by eating apples, paid out when the dinosaur hat comes off. Taking it off means putting another hat on, and all three seeds reached for the same two first, green and gray, and found both locked (seed 1, seed 2, seed 3).

Seed 3 tried a third:

… Perhaps need equip `Hats.Straw_Hat` default. …
Kimi K3.1 Pro thought, seed 3 at 2h 46m · in the log · thinking as the agent reported it

It worked, and the next run paid two full tails of 1,225 bones each. Seed 1 had the same idea, twice, and didn’t act on it:

… Should default `Hats.Straw_Hat` perhaps actual default. …
Kimi K3.1 Pro thought, seed 1 at 2h 36m · in the log · thinking as the agent reported it

It tried brown and purple instead, both locked. Meanwhile the dinosaur hat stayed on after its program stopped, and a drone in that hat can’t wrap round the field’s edges. The crop program, which relies on wrapping, ran from 2h57m to 3h29m and added half a point while Kimi puzzled over missing pumpkins, until it found the cause:

The dinosaur hat persisted after stopping its program and blocked border wrapping in the crop loop. …
Kimi K3.1 Pro said, seed 1 at 3h 29m · in the log

Its way out was to spawn a fresh drone to do the farming and let the hatted one finish. Seed 2 tried the dinosaur once, judged it inefficient without a way to unequip, and never came back. It ended with 29 bones.

Bone producedcumulative, log scale
Seed 3132.5KSeed 13KSeed 229
Bones produced: 2,964 on seed 1, 29 on seed 2 and 132,500 on seed 3, almost all of them in one harvest at 5h12m.

Seed 1: four drones, one worker

Seed 1 bought the first drone upgrade at 2h33m and the second, for four drones, at 4h21m:

… I’m upgrading to four drones and doubling grass and tree yields; the remaining time will go into parallel production and final stockpiling.
Kimi K3.1 Pro said, seed 1 at 4h 21m · in the log

No program after that split the work. main was last revised at 3h29m, and its one spawn_drone call is the hat workaround: a single worker running the whole field. The game’s telemetry shows one drone flying for the whole run. Its closing summary still listed “Four-drone capacity”. With one drone, seed 1’s crops stayed in the thousands to tens of thousands: 11,721 hay, 28,300 wood, 5,695 carrots.

Seed 2: wood by the million

Seed 2 went the other way. From 2h44m it ran four drones, and it put almost everything into growing the field: 12×12 at 2h56m, 16×16 at 3h25m, and, after a long pumpkin drive for the 512,000 the upgrade cost, 22×22 at 5h29m. In its last half hour the four workers of mega_mixed22 made 1.4 million wood in ten minutes.

Seed 2 at 5h56m, its last few minutes: four drones on the 22×22 field, with grass on the left, carrot columns among the trees and bushes, and sunflowers down the right edge. Exact replay of seed 2, 5h 55m–5h 57m, running mega_mixed22.py · 8× speed · the run

The detour that didn’t pay came in the middle. At 3h32m it set out to buy eight drones with gold from 16×16 mazes, but its depth-first solver managed seven mazes in fifteen minutes. It dropped the plan for a sorted 16×16 cactus field:

… A sorted 16×16 cactus harvest can yield 65,536 cactus in one run and is a much better use of time.
Kimi K3.1 Pro said, seed 2 at 3h 53m · in the log

cactus16 bubble-sorts the field, pass after pass, until a pass makes no swaps. After twenty minutes it hadn’t finished; a 12×12 retry ran another twelve before Kimi stopped it. Those 54 minutes added half a point, and cactus stayed at the 4,096 of its first harvest.

Seed 3: one harvest, five points

Seed 3 reached 16×16 at 4h42m and tried the same pair of big harvests. Its first sort did a fixed number of passes and harvested a field that wasn’t sorted yet, for 412 cactus. It went back to sorting until nothing moves, the same loop as seed 2’s:

cactus.pyseed 3 · r5 · written at 4h 53m · ran · lines 19–32 of 39in the run
def sort_field(size):
	changed = True
	while changed:
		changed = False
		for y in range(size):
			for x in range(size):
				if x < size - 1 and measure() > measure(East):
					swap(East)
					changed = True
				if y < size - 1 and measure() > measure(North):
					swap(North)
					changed = True
				move(East)
			move(North)

Seed 3's sorter: sweep the field swapping neighbours until a full sweep changes nothing.

This time it finished: 65,536 cactus within ten minutes. The record doesn’t show why the same idea stalled on seed 2. With apples to spare, seed 3 then scaled its dinosaur route to the full field, and costed it first:

Now dinosaur16 full yields bone tail²*2 ~130k …
Kimi K3.1 Pro thought, seed 3 at 5h 03m · in the log · thinking as the agent reported it

A tail that fills 255 of the 256 squares, squared, and doubled by the dinosaur upgrade it had just bought, is 130,050 bones, and that is what the run paid.

dinosaur.pyseed 3 · r4 · written at 5h 03m · ran · lines 13–48 of 48in the run
change_hat(Hats.Straw_Hat)
go_home()
size = get_world_size()
for y in range(size):
	for x in range(size):
		if can_harvest():
			harvest()
		move(East)
	move(North)
go_home()
change_hat(Hats.Dinosaur_Hat)
running = True
while running:
	if not travel(East, size - 1) or not travel(North, size - 1):
		running = False
		break
	up = False
	for x in range(size - 2, 0, -1):
		if not travel(West, 1):
			running = False
			break
		if up:
			if not travel(North, size - 2):
				running = False
				break
		else:
			if not travel(South, size - 2):
				running = False
				break
		up = not up
	if not running:
		break
	if not travel(West, 1) or not travel(South, size - 1):
		running = False
		break
change_hat(Hats.Straw_Hat)

Seed 3's full-field route: straw hat on to clear the board, dinosaur hat on for a loop that never crosses itself, straw hat back on to cash the tail in.

Seed 3 from 5h04m, the whole 7m50s run: the drone clears the board, puts the dinosaur hat on and drags a growing tail up and down the 16×16 field. Exact replay of seed 3, 5h 04m–5h 11m, running dinosaur.py · 12× speed · the run

That one harvest was worth 5.1 points. With gold from 16×16 mazes it bought eight drones for the last half hour.

What decided the score

The score adds up the logarithm of each resource’s production, so each tenfold increase in one resource adds a point, and a resource barely made drags the total down. Seed 2 scored highest, 52.79, from crops in the hundreds of thousands to millions, with 29 bones and 4,096 cactus holding it back. Seed 3, at 49.17, had nothing above 205,000, but its six biggest resources, from cactus and bones to wood, all landed between 114,000 and 205,000; power, at 135, was its weak spot. Seed 1, at 42.38, opened everything on one drone and stopped there.

The same seeds show how differently a similar total can be built. On seed 2, DeepSeek V4.1 Flash scored 51.07 from a farm shaped the opposite way: 229,000 wood against Kimi’s 10.4 million, but 1.29 million cactus and 33,668 bones.

Score on seed 2over game time
Kimi K3.1 Pro52.8DeepSeek V4.1 Flash51.1
Score on seed 2: Kimi 52.79, DeepSeek 51.07.

On seed 3 Kimi and Sonnet finished level, 49.17 each. Both scores rest on one big dinosaur harvest, Sonnet’s more than ten times larger; Kimi’s crops were larger, with 204,000 wood to Sonnet’s 120,000 and 114,000 cactus to 37,000.

Score on seed 3over game time
Claude Sonnet 5.549.2Kimi K3.1 Pro49.2
Score on seed 3: Kimi and Sonnet both 49.17.

The runs took 13 to 19 minutes of real time and $1.63 to $3.02 a seed at Moonshot’s list prices; they ran on a Kimi Code subscription.

The numbers every valid seed, from the published runs

pointslog₁₀(1 + produced)

Where the points came from

ResourceSeed 1Seed 2Seed 3Mean
Hay4.076.425.125.20
Wood4.457.025.315.59
Carrot3.765.985.234.99
Pumpkin4.255.805.265.11
Cactus4.583.615.064.42
Power2.883.902.132.97
Bone3.471.485.123.36
Weird substance4.455.903.914.75
Gold4.004.114.664.26
Water3.304.543.903.91
Fertilizer3.154.033.473.55
Total42.3852.7949.1748.11
unlocksfirst produced, game time

When each resource was first produced

ResourceSeed 1Seed 2Seed 3
Hay1m 20s1m 50s1m 10s
Wood7m 00s8m 40s8m 50s
Carrot18m 00s15m 20s16m 40s
Pumpkin53m 20s34m 30s42m 40s
Cactus1h 46m2h 22m2h 03m
Power3h 52m3h 30m2h 36m
Water28m 30s17m 50s15m 30s
Fertilizer2h 05m1h 27m33m 40s
Weird substance2h 08m1h 43m2h 09m
Gold2h 23m1h 48m2h 19m
Bone2h 35m2h 23m2h 47m
how-it-playsper seed, from the export's behaviour block

How it plays

MeasureSeed 1Seed 2Seed 3MeanAll models
Resources openedscored resources produced at least once11 of 1111 of 1111 of 1111 of 119.5 of 11
Studydocs and research reads3643243448
Action overheadgame time spent looking, reading and typing (10 s per call)8%12%9%10%10%
Tool callsevery action the agent took174255203211225
Program writesaccepted saves of a program3143423936
Program stintstimes a program was started and left running4784586341
Median stinthow long a program usually ran before the next change6m 50s3m 15s5m 10s5m 05s7m 29s
Cost per pointAPI-equivalent estimate ÷ score$0.039$0.057$0.041$0.046$0.053
runs3 valid