leaderboard/openrouter-deepseek-deepseek-v4.1-flash-1017-opencode-highrank 11

DeepSeek V4.1 Flash

DeepSeek · in OpenCode · high reasoning effort

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

All 3 seeds

Measured everything, then waited on one upgrade

DeepSeek V4.1 Flash read the manual closely, measured every program it ran, and wrote real algorithms once it understood a mechanic: a whole-field cactus sort, a maze solver, crops split across seven drones. What changed from seed to seed was when it bought fertilizer, the 500-wood upgrade whose page explains where weird substance comes from. On seed 1 it bought it at 27 minutes and had gold and drones within the hour. Seed 2 got there nearly two hours later and then declined the drones. Seed 3 decided weird substance had no source and spent its second half making bones.

46.84 mean57.39 / 51.07 / 32.06 by seed$0.13 a runRead the write-up

at-a-glanceeditorial, from the write-up

At a glance

What worked

  • Followed every program run with a measured rate, then bought or rewrote on the numbers. [1][2][3]
  • Wrote working algorithms for the hard mechanics, a whole-field cactus sort and a wall-following maze solver, on its first or second try. [1][2][3][4]
  • On seed 1, a seven-drone crop program that ran for over two of the last three and a half hours and took wood and hay past ten million. [1][2]

Where it struggled

  • Treated pages it couldn't read yet as missing information, and skipped fertilizer on seeds 2 and 3 instead of buying it to find out. [1][2]
  • On seed 2 it had 51,840 gold and judged drones too risky, so it played all six hours on one. [1][2]
  • Lost time to leftover farm state, starting new programs on a field still covered in maze hedges or dinosaur tail. [1][2][3]
write-up.mdeditorial · across the seeds

DeepSeek V4.1 Flash ran through OpenCode on DeepSeek’s own endpoint at high effort. DeepSeek offers low, high and max but no medium; the models in the October Anthropic, OpenAI, Google, xAI and Meta campaigns all ran at medium.

Read, then measure

On every seed it started with the manual and kept going back: 91, 83 and 91 documentation and research reads, against 24 to 35 for Opus and 25 for Sol on the same seeds. After each program ran it worked out a rate before deciding anything. On seed 1, after its first tree farm:

… Wood +1862 in 180s = 10.3 wood/s! Hay +736 = 4.1/s, carrot 1.1/s. Trees are great. …
DeepSeek V4.1 Flash thought, seed 1 at 26m 37s · in the log · thinking as the agent reported it

That habit made it good at the mechanics that need an algorithm. Its seed 1 cactus program splits the field between four drones, and each drone bubble-sorts its rows and columns four times before harvesting. On the first full run it found “full field sorted worked!”: 20,736 cactus a cycle.

cactus.pyseed 1 · r1 · written at 1h 43m · ran · lines 37–55 of 82in the run
def sort_rows_band(y0, band):
	n = get_world_size()
	for r in range(y0, y0 + band):
		for p in range(n):
			goto(0, r)
			for k in range(n - 1):
				if measure() > measure(East):
					swap(East)
				move(East)

def sort_cols_band(x0, band):
	n = get_world_size()
	for c in range(x0, x0 + band):
		for p in range(n):
			goto(c, 0)
			for k in range(n - 1):
				if measure() > measure(North):
					swap(North)
				move(North)

Seed 1's cactus sort: each drone sorts its band of rows, then its band of columns.

One cheap upgrade

The game hides some pages until you buy the upgrade they describe. The full fertilizer page, which explains that fertilized plants turn partly into weird substance, is one of them. Weird substance makes mazes, mazes pay gold, and gold buys drones. When the model bought fertilizer settled the rest of each seed.

On seed 1 it bought fertilizer at 27 minutes and read the page straight away. Weird substance followed at 54 minutes, mazes and gold at 55, and its first extra drone at an hour.

On seed 2 it couldn’t see what fertilizer was for:

Fertilizer item source unclear. …
DeepSeek V4.1 Flash thought, seed 2 at 35m 01s · in the log · thinking as the agent reported it

It bought it at 1h41m, read the page, and found the chain at once: “Weird substance from fertilizing plants”. Gold came at 2h46m.

On seed 3 it read only the one-line cost page, searched for weird substance twice, and found nothing it could read:

No clear weird_substance source. …
DeepSeek V4.1 Flash thought, seed 3 at 1h 35m · in the log · thinking as the agent reported it

The same thought ends “Skip mazes.” Seed 3 never made weird substance, gold or fertilizer.

Gold producedcumulative
Seed 159.2KSeed 251.8KSeed 30
Gold produced: from 56 minutes on seed 1, 2h46m on seed 2, never on seed 3.

Seed 1: seven workers

With gold flowing, seed 1 bought drones in steps, reaching eight at 2h16m. It also bought dinosaurs and hit a snag every seed would hit: every coloured hat was locked, and it found no way to take the dinosaur hat off.

… So the drone is permanently wearing the dinosaur hat, blocking wrap and slowing moves. …
DeepSeek V4.1 Flash thought, seed 1 at 2h 31m · in the log · thinking as the agent reported it

Its answer was to leave the hatted drone out of the work. mega8b cashes in the tail, spawns seven workers that each farm one or two rows of carrots, trees and grass, and parks the main drone doing flips.

mega8b.pyseed 1 · r2 · written at 2h 35m · ran · lines 27–47 of 47in the run
def worker(y0, cnt):
	n = get_world_size()
	while True:
		for i in range(cnt):
			goto(0, y0 + i)
			for j in range(n):
				do_tile()
				if j < n - 1:
					move(East)

change_hat(Hats.Dinosaur_Hat)
spawn_drone(worker, 0, 2)
spawn_drone(worker, 2, 2)
spawn_drone(worker, 4, 2)
spawn_drone(worker, 6, 2)
spawn_drone(worker, 8, 2)
spawn_drone(worker, 10, 1)
spawn_drone(worker, 11, 1)
goto(0, 0)
while True:
	do_a_flip()

Seed 1's mega8b: seven workers split the rows; the main drone, stuck in the dinosaur hat, waits.

Its first two minutes made 576 wood a second. From 3h27m it ran in half-hour stretches, broken by short sunflower and pumpkin runs, and each stretch added about three million wood.

Seed 1 at 4h10m: seven workers sweep their rows of carrots, trees and grass, while the main drone, still in the dinosaur hat, waits in the bottom-left corner. Exact replay of seed 1, 4h 10m–4h 11m, running mega8b.py · 4× speed · the run

That put seed 1 close to Grok 4.7, which also flew eight drones. Grok made more wood, carrots, pumpkins, weird substance and bones; DeepSeek more hay, cactus and gold.

Score on seed 1over game time
Grok 4.759.8DeepSeek V4.1 Flash57.4
Score on seed 1: Grok 59.78, DeepSeek 57.39.

Seed 2: gold and one drone

Seed 2 reached mazes late, but its maze solver followed the right-hand wall and worked first time, at 14.4 gold a second. By 4h26m it had 51,840 gold. It read the Megafarm entry and liked it (“Very worth unlocking if we have time to use”, step 361), then changed its mind:

Not enough docs. Megafarm risky/time sink. Skip. …
DeepSeek V4.1 Flash thought, seed 2 at 4h 26m · in the log · thinking as the agent reported it

Seed 2 played all six hours on one drone. Its largest single haul came at the end, when it left a single-drone cactus sort running for the last 53 minutes and made 1.2 million cactus.

Seed 3: the bone loop

Without gold, seed 3 put its effort into dinosaurs. After trying every coloured hat it found that Hats.Straw_Hat takes the dinosaur hat off, which seeds 1 and 2 never found. Then it wrote boneloop: farm until there are 300 cactus to buy apples with, clear the field, and walk the dinosaur round the whole board.

boneloop.pyseed 3 · r1 · written at 3h 30m · ran · lines 62–111 of 111in the run
while True:
    while num_items(Items.Cactus) < 300:
        for i in range(get_world_size()):
            for j in range(get_world_size()):
                crop(get_pos_x(), get_pos_y())
                move(East)
            move(North)
    for i in range(get_world_size()):
        for j in range(get_world_size()):
            if get_entity_type() != None:
                harvest()
                if get_entity_type() != None:
                    harvest()
            if get_ground_type() != Grounds.Soil:
                till()
            move(East)
        move(North)
    w = get_world_size()
    change_hat(Hats.Dinosaur_Hat)
    alive = True
    while alive and num_items(Items.Cactus) >= 2:
        x = get_pos_x()
        y = get_pos_y()
        if x == 0:
            if y == 0:
                alive = move(East)
            else:
                alive = move(South)
        elif y == 0:
            if x < w - 1:
                alive = move(East)
            else:
                alive = move(North)
        elif y % 2 == 0:
            if x < w - 1:
                alive = move(East)
            else:
                alive = move(North)
        else:
            if y == w - 1:
                if x > 0:
                    alive = move(West)
                else:
                    alive = move(South)
            else:
                if x > 1:
                    alive = move(West)
                else:
                    alive = move(North)
    change_hat(Hats.Straw_Hat)

Seed 3's boneloop: grow cactus, clear the field, then one full-board dinosaur run, forever.

Each run paid 20,449 bones, and the loop paid for its own apples. It ran for the last two and a half hours and made about 450,000 bones. At 4h31m the model listed what was missing:

… No gold, no weird_substance. Probably fine. …
DeepSeek V4.1 Flash thought, seed 3 at 4h 31m · in the log · thinking as the agent reported it
Seed 3 from 3h31m: eight minutes of boneloop, growing cactus, clearing the field, then the dinosaur's lap of the board. Exact replay of seed 3, 3h 26m–3h 34m, running boneloop.py · 24× speed · the run

What decided the score

The score adds up the logarithm of each resource’s production: a resource never made adds nothing, and each tenfold increase in one already made adds a single point. Seed 1 produced all eleven, with wood and hay above ten million. Seed 2 also opened all eleven, but on one drone its crops stayed between 70,000 and 230,000, and its 1.2 million cactus did most of the work. Seed 3 opened eight. Its 500,000 bones were worth 5.7 points, one more than 50,000 would have been, while gold, weird substance and fertilizer stayed at zero.

Scoreover game time
Seed 157.4Seed 251.1Seed 332.1
Score over game time on each seed.

Same model, same settings: the seeds came down to when it bought one cheap upgrade and whether it trusted itself to use drones. It was also cheap to run, at $0.09 to $0.15 a seed at list price.

The numbers every valid seed, from the published runs

pointslog₁₀(1 + produced)

Where the points came from

ResourceSeed 1Seed 2Seed 3Mean
Hay7.035.114.625.59
Wood7.095.364.825.76
Carrot6.354.854.525.24
Pumpkin4.444.934.554.64
Cactus5.226.113.985.11
Power4.924.120.303.11
Bone4.114.535.704.78
Weird substance5.153.73—2.96
Gold4.774.71—3.16
Water4.454.183.574.07
Fertilizer3.853.45—2.43
Total57.3951.0732.0646.84
unlocksfirst produced, game time

When each resource was first produced

ResourceSeed 1Seed 2Seed 3
Hay3m 10s3m 10s2m 40s
Wood8m 00s17m 30s7m 30s
Carrot15m 50s23m 50s15m 50s
Pumpkin37m 10s36m 10s38m 50s
Cactus1h 46m1h 29m1h 39m
Power1h 42m3h 30m1h 38m
Water15m 30s23m 10s32m 30s
Fertilizer27m 10s1h 42mnever
Weird substance54m 00s2h 39mnever
Gold55m 50s2h 46mnever
Bone2h 20m1h 38m2h 43m
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 118 of 1110 of 119.5 of 11
Studydocs and research reads9183918848
Action overheadgame time spent looking, reading and typing (10 s per call)12%12%15%13%10%
Tool callsevery action the agent took260254321278225
Program writesaccepted saves of a program3631503936
Program stintstimes a program was started and left running4640374141
Median stinthow long a program usually ran before the next change4m 50s3m 55s3m 20s4m 02s7m 29s
Cost per pointAPI-equivalent estimate ÷ score$0.0025$0.0018$0.0047$0.0030$0.053
runs3 valid