Back to Insights

Automation

I timed the farm bot

2026-08-26 / Marcos Defina

My farm bot already worked, but its pumpkins, carrots, trees, and hay shared one traversal schedule. Sunflowers and cactus were not part of the baseline, so I stopped guessing about where to add them and measured the game instead.

Public Farmer Was Replaced repository with research, runtime probes, scripts, and scheduling strategy
Public Farmer Was Replaced repository with research, runtime probes, scripts, and scheduling strategy.

The snake traversal was a good baseline

A full snake pass is simple, predictable, and hard to strand. The existing script uses it to maintain a mixed field of pumpkins, hay, carrots, and checkerboard trees. That reliability matters. The limit is scheduling: a pumpkin repair loop and a slow orchard shouldn't automatically receive the same revisit interval just because one path reaches every tile.

Static costs had stopped being trustworthy

Public tables describe useful mechanics, but planting costs scale with upgrades. The in-game get_cost() API showed the current state directly: one carrot cost 32 hay and 32 wood, one pumpkin cost 32 carrots, and one cactus cost 8 pumpkins in the recorded July 14 run. That makes cactus a competitor for pumpkin reserves, not a free side project. Runtime values now drive the allocation plan.

The timing changed the tree decision

The empty snake circuit took 32.99 seconds. A circuit with simple sensing took 33.46 seconds, about 0.47 seconds more in that run. A checkerboard tree has a mean mature time near 7 seconds, while an interior tree in a one-row lane is near 28 seconds under the measured assumptions. Because the circuit already exceeds that threshold, dedicated orchard lanes became plausible enough to test.

The next bot needs service classes

The proposed scheduler separates fast work, slow work, reserves, and batches. Pumpkins receive frequent repair until merged. Sunflowers run when power falls below a floor. Carrots and hay respond to the next known cost horizon. Trees wait for an orchard interval. Cactus runs only when pumpkin stock covers the batch and its reserve. Regions then follow crop timing instead of one universal loop.

A design isn't a result

The measurements support an experiment, not a throughput claim. A lane may simplify movement and still lose to checkerboard trees. Water, upgrades, world size, and game updates can change the result. The next comparison needs wood per minute, power uptime, carrot reserve, and pumpkin stock recorded across both allocations. The bot improves when a hypothesis can lose.

Still Waters

Discuss a Project

Discuss a Project