A slow start
Haiku’s openings were slow even by this field’s standards. On seed 1 its third hay program ran for almost eight minutes for a single hay, and wood didn’t arrive until 21 minutes in. On seeds 2 and 3 its first bush programs harvested before anything had grown, the same slip Sol and Astra made, but it took ten to fifteen minutes to sort out rather than five. By about 35 minutes in, it had a working mixed farm on every seed, a little behind the rest.
The step it never took
The game’s late economy hangs on a chain. Plants grown with fertilizer come out “infected”, and half of an infected plant’s harvest is weird substance. Weird substance makes mazes, mazes pay out gold, and gold buys more drones. Every model above Haiku went through that chain, and Opus was doing it within the first hour. Haiku never started it: no program it wrote, on any seed, used fertilizer.
It wasn’t for lack of looking. On seed 1 at 1h45m it searched the docs for weird substance, then for gold, and read the Fertilizer and Mazes pages. But the short Fertilizer page only says “Grow plants instantly”, and the search results showed what weird substance is spent on, not where it comes from. Its end-of-run summary put it plainly:
… Gold and weird substance; I couldn't find how either is produced in the docs.
Seed 2 is the odd one. At 1h32m Haiku read the full Fertilizer tutorial, which goes on to explain exactly this: fertilised plants are infected, and half their yield becomes weird substance. Nothing changed afterwards; fertilizer kept piling up unused, and it finished the seed holding over 5,000. Seed 3 went like seed 1, with the short page and the same searches.
Without gold there was never a second drone. Haiku farmed every seed with one, while Sonnet, in the same agent, had four to eight.
Sorted cactus, one row at a time
What Haiku did build, it built carefully. On seeds 1 and 3 it kept a row of cactus sorted by size with neighbour swaps, so harvesting one cactus takes the whole row:
def sort_pass():
while get_pos_x() < 11:
if measure(East) < measure():
swap(East)
move(East)
move(East)A sorting pass along the cactus row: swap with the neighbour to the east whenever it is smaller.
… That changed cactus from about 40 per minute to roughly 400 per minute. …
That rate is Haiku’s own estimate, and its seed 1 summary calls cactus its largest output, which the record doesn’t bear out (wood ran to 760,000 against 119,000 cactus). The sort clearly mattered, though: about 100,000 cactus on seeds 1 and 3, against 320 on seed 2, where it never built one.
What decided the score
With one drone, the last hours of every seed were a single farm program left to run: 55 unchanged minutes on seed 1, more than two hours on seed 3, each stretch adding under three points. Hay, wood, carrots and pumpkins reached about 100,000 to 760,000, five or six points each, and the three resources at the end of the chain scored nothing. Haiku did read the rules right in one respect that Sonnet didn’t, noting at the end of seed 2:
… Stock is not the score. Production is what counts …
It finished fifth on every seed, 10 to 30 points ahead of Luna and 12 to 24 behind Sonnet, at $0.61 to $1.11 a run.