Skip to main content

Restock farm supplies

The SkyBlock Farm Builder recipe can pause construction, buy a useful batch of materials and return to its confirmed placement. It uses ordinary movement, item controls and observed shop menus. This page describes the development branch contract, not completed live acceptance on Hexis or Hypixel.

Use the farm recipe

require("hexis/skyblock/building").run() handles positioning, construction and refills. Starting it opens the placement editor. Choose and position the farm, then confirm Build before it inspects tools or travels. If Garden travel changes the world, the editor opens again so you can confirm placement there. It does not force an initial Hub trip. A server without a supported shopping profile uses ordinary construction and requires carried supplies.

For automatic SkyBlock supplies, bring a Builder's Wand and an InfiniDirt Wand. The InfiniDirt Wand may be carried or confirmed inside tool storage. A Builder's Ruler, Prismapump, Hoe of Greater Tilling, Basket of Seeds and Nether Wart Pouch are preferred when the layout supports their abilities. Ordinary recipe tools, including usable hoes and non-Silk-Touch ice-breaking tools where needed, are still required; listing a supply source does not waive tool checks.

A standalone script can delegate the workflow:

local building = require("hexis/skyblock/building")

function hexis.main()
building.run()
end

Declare the library's capabilities: input.control, world.blocks.read, checkpoint, inventory, interaction, camera.scan, area.travel, navigation, pathfinding, gui.read, gui.interact, routes.read, chat.command, chat.read and world.entities.read. Required capabilities do not follow automatically from a filename. Use the bundled Farm Builder to get its supplied area catalog, HUD and manual stop controls.

Where materials come from

The recipe groups purchases from the Builder, Mad Redstone Engineer, Wool Weaver and Bazaar. Each profile lists supported items and observed menu rules. An unsupported item produces a source error; the recipe does not guess a shop or silently replace the block. Hexis and Hypixel use explicit profiles. Passing checks on Hexis does not establish that current Hypixel menus work identically.

Remote Bazaar access uses /bz. An observed access denial switches to the physical Bazaar NPC. A timeout with no clear result stops instead of sending another potentially conflicting interaction. A known NPC introduction can permit a second interaction to open its shop.

Before each purchase, the recipe rereads the purse and checks inventory room, the menu quote and available stock. It uses an unabridged numeric sidebar balance; Hexis can fall back to its Personal Bank menu. An abbreviated or missing balance cannot authorize a purchase. Coins needed for the next InfiniDirt operation are reserved before shopping.

A confirmed daily-limit refusal may switch to a configured Bazaar source. Insufficient Bazaar offers may reduce a batch. An explicit quote-change rejection permits at most two fresh-quote retries. An uncertain transaction is never retried. Neither a changed menu nor a submitted click proves that an item was bought. The recipe verifies the item change and corresponding transaction evidence before counting the purchase.

Inventory and selling

The recipe counts confirmed contents in carried storage tools as well as player inventory. It packs building blocks into compatible tools and reserves three usable player inventory slots while shopping. Preparing the next operation may use two of those slots, keeping one free. Before returning, it checks that the next operation is funded, even if other materials were bought successfully. It can split a stack to sell only its surplus. A full inventory may still require you to free working space.

Hotbar slot 9, menu items, server tools and items marked protected are excluded from ordinary stock and sale candidates. Only recognized ordinary items with a supported sale route can be sold. Remaining build materials are retained; unknown, customized or unsupported items are left alone. Materials already stored in tools count toward what the farm still needs.

The ruler uses the first eligible stored material. The recipe can put the selected block ahead of competing stock; a material's position in storage matters. Matching stock does not need to be emptied merely because the tool is being checked. See building tools for activation and storage rules.

Water and crop choices

Farm Builder permits water to leave the selected volume. It does not add walls or glass to the imported file. Permitted water flowing into an otherwise empty selected cell does not force removal when construction resumes. Water cannot replace a required solid block or a crop's reserved growth space.

Where a Prismapump batch does not apply, the shopping recipe can use ordinary ice when the planned support and current environment permit it to become water when broken. This requires a usable non-Silk-Touch tool and a compatible game mode. Farm Builder allows at most 16 ordinary bucket placements for a small water job. Larger jobs need pump batches or eligible ice conversion; otherwise the placement check explains why it cannot proceed. Bucket activations for Prismapump batches do not count toward this limit. The recipe does not wait for glowstone to melt ice or assume every ice type becomes water.

Farm establishment places cane and cactus bases and allows their upper growth. Exact source copying remains available through the generic API. See construction intent.

Write a refill-aware script

The generic API does not choose shops. A script supplies these editor options:

FieldDefaultMeaning
required_toolsEmptyUp to 16 concrete item IDs that must remain available.
supply_itemsEmptyUp to 512 item IDs the script can replenish. Other missing materials still block admission.
max_bucket_placementsUnlimitedMaximum ordinary bucket operations across the farm after tool and ice planning. The bundled script uses 16; pump activations are excluded.
supply_summaryAbsentPresentation-only required/preferred server tools, spending, selling and source text. This does not grant purchase or tool authority.
farm_establishmentfalseDerive plantable farm goals without editing the file.
allow_water_escapefalsePermit water outside containment and in selected empty cells.

building.edit waits for confirmation. building.observe then exposes the selected placement. building.run takes selection, the current world_generation, an optional timeout in seconds and an optional checkpoint from a previous refill. A successful action is not necessarily a completed farm: inspect result.data.reason.

  • complete means the final survey accepted the selected goals.
  • refill means construction released its controls at a confirmed shortage. The result contains checkpoint, selection, world_generation, position, needs, remaining, minimum and next_tool.

needs describes a useful material batch. minimum funds the next operation; next_tool identifies its batch tool, or is empty for ordinary placement. The Lua shopper accounts for InfiniDirt costs in this batch before buying other materials. remaining is a conservative remaining bill used to retain useful inventory. A recipe may buy a smaller batch that funds the next operation. It must not interpret refill as permission to repeat an unconfirmed world click.

require("hexis/skyblock/restock").profile(name) selects hexis or hypixel. Its run(profile, refill_result) buys and returns, while the higher-level hexis/skyblock/building library also resumes the native build. Prefer that complete workflow unless your script already owns placement and travel.

Resume and stop

A native refill checkpoint belongs to the same live script run and confirmed placement. Returning uses current world evidence and a native observed area arrival; a Lua string alone cannot claim that the destination is correct. Changing the source file, connection or account, an unexpected world change, manual stop, or an expired checkpoint prevents reuse. Tokens expire after one hour. A saved checkpoint receipt does not allow resuming a new game session.

Before a purchase or sale, the recipe records its intent. It clears that pending transaction only after confirmation or a definite rejection. An unresolved transaction remains a reason to inspect the last trade before restarting; it is never replayed automatically.

Only final construction completion turns the bundled Farm Builder off automatically. A failure ends the current attempt and releases controls. Farm Builder stays enabled and shows its Paused reason. Resolve the cause, then use Build farm to start a fresh survey. Use Stop building or Exit to leave the workflow.

Clear an inspected, unresolved trade

There is no reset button for a pending supply trade. Restarting Minecraft does not clear it, and another Lua script cannot clear Farm Builder's scoped state.

  1. Stop Farm Builder. Check the last purchase or sale, your purse, player inventory and tool storage to establish what actually happened.
  2. Fully exit Minecraft. Back up this instance's config/hexis/script-checkpoints.json before editing it.
  3. Identify the entry for this Farm Builder run, account and server. Its value.kind is builder_trade; the file's entry keys are opaque, so that label alone may not identify the right entry. If there is any ambiguity, contact support instead of guessing.
  4. Remove only that entry's value.pending property. Keep valid JSON and preserve all other entries and properties. Do not delete the whole file.
  5. Restart Minecraft and start a fresh build survey. This clears the inspected trade hold; it does not replay the trade or restore the previous live build checkpoint.