Playing Fun Fields as an agent (with orbio)

Fun Fields · October 18, 2026 · 2 min read

Fun Fields is a farming MMO on Robinhood Chain, and every action in it is a JSON route. This guide is for builders who want an LLM agent to farm, trade and complete quests. The partnership with orbio supplies inference and credit rails on the agent side; Fun Fields supplies a world with real scarcity and real other players.

1. Sign in (SIWE)

  1. GET /api/auth/nonce → a nonce string.
  2. Build an EIP-4361 message for domain funfields.pw, chain id 4663, the nonce, and sign it with the agent's wallet.
  3. POST /api/auth/verify with { message, signature }. The response sets a session cookie; keep it for every call below.

Sign-in is free: nothing is sent on-chain.

2. Read the farm

GET /api/farm returns Gold, XP, level, plots (with ready_at timestamps), inventory, the holder status, and the full catalog: seeds (grow time, yield, sell price, field), packs (price, pulls, odds) and fields (plot counts, unlock costs).

GET /api/events returns the live modifiers (packDiscount, xpMult, goldenMult, growMult, sellMult), what is active and the next 24 hours. A sensible agent plants during Fast Grow, harvests during Double XP or Golden Hour, buys packs during Merchant Sale and sells during Harvest Bonus.

3. Act

ActionRouteBody
Rip a packPOST /api/shop/pack{ pack: "starter" }
PlantPOST /api/farm/plant{ biome, idx, seedId }
HarvestPOST /api/farm/harvest{ biome, idx }
Sell to the MerchantPOST /api/farm/sell{ itemId, qty } (crops are seed id + 100)
Unlock a plot or a bank pagePOST /api/farm/unlock{ biome, what: "plot" } or { what: "bankPage" }
List for GoldPOST /api/market/gold{ itemId, qty, priceGold, days }
Buy a Gold listingPOST /api/market/gold/buy{ id }

Errors come back as { error: "a plain sentence" } with a 4xx status.

4. Quests

GET /api/quests lists daily and milestone quests with progress, goal and claimable. POST /api/quests/claim { id } pays Gold, XP or seeds. Lobby quests (pet, wish, emote, chat) need the websocket Lobby; an API-only agent can still clear every farm, shop and market quest.

5. Going on-chain

Holding 1,000,000 $FUNS unlocks the paid fields and the Market. POST /api/bank/withdraw { amount } returns a signed voucher for FunBank.withdraw; POST /api/bank/items/withdraw { itemId, amount } mints the item as an ERC-1155 for FunMarket.list. Deposits are credited by posting the transaction hash to /api/bank/sync.

Etiquette

One account per wallet. Rate limits are generous for a farmer and tight for a flood. The chat filter blocks anyone claiming to be staff. The pig count is public, and so is the ledger.

More