Skip to content

Custom gather patterns in Bee Swarm Simulator

A gather pattern is the path your character walks while farming a field. Revolution ships built-ins such as Kettle, plus AI Gather and Bloom Gather. A custom pattern is your own path as a Lua script — once it loads, its name shows up under Gather → Fields → Select pattern like any built-in.

This page covers installing a finished script, copying pattern settings between field cards, and testing a pattern from the console with Dev Mode so the macro only runs what you queue.

PageUse it when
Writing your first gather patternYou are learning Walk, Sleep, and how to write a script
Custom patterns (this page)You have a .lua file ready, want to copy settings between fields, or need the console / Dev Mode loop
Pattern APIYou need a call-by-call lookup while editing a script

For picking fields and tuning Length, Position, and Tilt on a card, see Choose fields and patterns.

  1. Save a .lua file in the patterns gather folder.

    Use patterns\gather next to the Revolution app, or %APPDATA%\RevolutionMacro\patterns\gather when that folder is unavailable.

  2. Near the top of the file, call SetName("YourPattern") with the name you want in the picker. Put the rest of the script below it.

  3. Restart Revolution Macro so the pattern list reloads.

  4. Open Gather → Fields, edit a field, open Select pattern, and choose your name.

    Field pattern picker showing a custom Lua pattern name

    Field pattern picker showing a custom Lua pattern name

  5. Confirm the field row shows your pattern name. Leave Alignment Level at low unless you already know you need high alignment.

You should see: your SetName value next to Kettle, AI Gather, Bloom Gather, and any other loaded patterns. Writing the script body from scratch is covered in Writing your first gather pattern.

If someone shared field settings (or you want the same pattern setup on another field), use the field card menu instead of a new Lua file.

  1. On the source field card, open the grip menu and choose Copy.
  2. On the target field card, choose Paste.
  3. Check Select pattern, Size, Position, and Tilt — treat the paste as a starting point, not a finished setup.

Field card menu with Copy and Paste

Field card menu with Copy and Paste

Field card menu with Copy and Paste

The console is a command line inside Revolution. You type short commands and press Enter. Pattern authors use it to turn on Dev Mode and run a gather pattern without waiting for the normal gather → convert cycle.

  1. Open the Status tab.
  2. On the logs toolbar, click the terminal icon (Show Console). The same control switches back to Show Logs when the console is open.

Status logs toolbar with Show Console control

Status logs toolbar with Show Console control

Status logs toolbar with Show Console control
  1. You should see the console welcome text and an input row at the bottom (Type your command here...).

Revolution console open on the Status tab

Revolution console open on the Status tab

Revolution console open on the Status tab

Type a command and press Enter. Use ↑ / ↓ to step through recent commands. Type help to list application and macro commands. Type clear to clear the console panel.

While you are writing or tuning a gather script, Dev Mode lets you start the macro and drive it only from console commands. With Dev Mode on, Revolution skips the usual gather destinations and scheduled tasks, so it will not pull you into a full farming loop while you iterate.

  1. Open the console (steps above).

  2. Type devmode and press Enter.

    The console prints Dev Mode Toggled. The command flips Dev Mode on or off each time you run it. Leave it on for this setup.

  3. Start the macro as usual (play control). Keep Bee Swarm Simulator focused and stand where you want the pattern to begin — typically on the field you are testing.

  4. Queue your pattern by SetName value:

    execpattern YourPattern

    A success line says the pattern was queued. If you see Macro not started!, start the macro first. If you see Pattern "…" does not exist!, confirm SetName, restart Revolution if the file is new, or run listpatterns to see loaded names.

  5. Edit the .lua file, save it, then re-run the same pattern without typing the name again:

    execlastpattern

    That re-queues the last successful execpattern name. Use execpattern YourPattern again whenever you want a different pattern or after a full app restart.

  6. When you are done testing, type devmode again to turn Dev Mode off, then stop the macro if you no longer need it running.

CommandAliasWhat it does
devmodeToggles Dev Mode. When on, the macro skips normal gather destinations and tasks so console commands can drive what runs. Works before the macro is started.
execpattern <name>p <name>Queues a loaded pattern by name (the SetName("…") string). Requires the macro to be started.
execlastpatternlpQueues the same pattern as the last successful execpattern / p. Requires the macro to be started, and at least one of those in this session.
listpatternsLists loaded pattern names in the console. Handy when you are unsure of the exact SetName.
helpLists application and macro console commands.

So a typical Dev Mode loop is: devmode → start the macro → p YourPattern → edit and save → lp.

These short forms also work in the console (same as typing the full command):

AliasExpands to
p <name>execpattern <name>
lpexeclastpattern
vexecpattern vic_path
  • Match Player Movespeed under Settings → Game → Movement to in-game speed with no buffs. A mismatch makes every pattern drift, custom or built-in.
  • Corner patterns such as Kettle, Skillet, Bowl, and CornerXSnake turn off drift compensation on that field when it was enabled.
  • Prefer the Dev Mode + execpattern loop above while editing. Use Select pattern on the field card when you want the pattern in a normal gather session.

Failed to compile Lua pattern or Failed to extract metadata from Lua pattern

Section titled “Failed to compile Lua pattern or Failed to extract metadata from Lua pattern”

Cause: Revolution could not load your gather script or read SetName from it.

Fix:

  1. Confirm the file is under the gather folder.
  2. Keep SetName("YourPattern") as a string literal near the top.
  3. Fix any syntax error in the dialog, save, and restart Revolution.
  4. Until the custom name loads, pick Kettle or another listed pattern on the field card.

Cause: The pattern did not load into the picker, or logs show Invalid pattern and the field fell back to its default.

Fix:

  1. Open Gather → Fields, edit the field, and confirm your name under Select pattern. An empty search shows No Patterns Found.
  2. If it is missing, confirm the file saved under gather and that no compile dialog appeared at startup.
  3. Restart Revolution after saving, then check the picker again.
  4. In the console, run listpatterns and confirm your SetName appears.

Cause: Pattern execution commands need a running macro.

Fix: Start the macro, then run execpattern or execlastpattern again. Turn on devmode first if you want console-only control.

Cause: execlastpattern has nothing to replay until a successful execpattern in this session.

Fix: Run execpattern YourPattern once, then use execlastpattern for repeats.

If gather walks the wrong path or feels stuck after the pattern is set, see Macro resets or gets stuck and Choose fields and patterns.