/gather¶
Script-provided
Registered by gather. Start it with /lua run gather.
Syntax¶
/gather <subcommand>
Description¶
Automated gathering — navigates to the nearest harvestable node, interacts with it until it despawns, then moves on to the next one. Supports all harvesting types: Gather, Mine, Chop, Fish, Trap, and Collect.
Requires a navmesh loaded for the current zone (/navmap will show whether one
is available). Without a navmesh, nav.moveto falls back to straight-line
movement which may get stuck on terrain.
Subcommands¶
| Subcommand | What |
|---|---|
start |
Begin (or resume) the gathering loop. |
stop |
Pause gathering. The script stays loaded; resume with start. |
allow <verbs> |
Filter by verb — comma-separated, e.g. Mine,Gather. Only matching nodes are targeted. |
allow all |
Reset to gather all node types (default). |
allow |
Show the current verb filter. |
delay <ms> |
Set the delay between interactions in milliseconds (default 10000, minimum 1000). |
radius <units> |
Set the search radius in game units (default 200). |
arrive <dist> |
Set how close the character walks before interacting (default 4.0). |
status |
Print current settings: state, delay, radius, arrive distance, allow filter, nodes gathered. |
Verb types¶
Each harvestable node has a verb that maps to a harvesting skill:
| Verb | Skill | Example nodes |
|---|---|---|
Gather |
Gathering | unnatural garden, fiery ore, twisted roots |
Mine |
Mining | unearthed ore |
Chop |
Foresting | felled wood |
Trap |
Trapping | creature den |
Fish |
Fishing | seared char |
Collect |
Collecting | shinies (unnamed collectibles) |
Examples¶
/lua run gather # load the script and start gathering
/gather allow Mine # only mine ore nodes
/gather allow Mine,Gather # mine and gather
/gather allow all # reset to all node types
/gather delay 8000 # 8 second delay between interactions
/gather stop # pause
/gather start # resume
/gather status # show current settings
/lua stop gather # unload the script entirely
How it works¶
- Scans all actors for the nearest node matching
actor.is_harvestable()and the verb filter. - Uses
nav.moveto()to walk there via the zone navmesh. - Targets the node with
eq2.target_by_id(), then sends the interaction viaeq2.zone_door.interact(). - Polls every 500ms for the node to despawn; re-interacts after the configured delay.
- Once the node despawns, finds the next nearest node and repeats.