Gleaner
A gathering GPS for World of Warcraft. Records nodes as you gather, plans an
efficient loop through them, and guides you round it — with a nav arrow, a route
line on every map, and a live HUD showing Blizzard's own tracking blips.
Zero dependencies. No Ace3, no HereBeDragons, no embedded libraries — just
Blizzard's C_Map, C_VignetteInfo and Minimap APIs, so there's nothing
external to rot when Blizzard patches.
What it does
Gathers. Records herb, ore, fishing pool, treasure and lumber nodes with
proximity de-dupe. Detection is self-teaching — /glean learn <type> binds the
next gather cast, so a patch renumbering spell IDs doesn't break it. Fishing
pools are identified from the pool's own tooltip, so open-water casts and your
own bobber never get recorded by mistake.
Routes. Solves a loop through the zone (nearest-neighbour + 2-opt) and
clusters dense patches into single stops. Record a node mid-run and it's spliced
into the loop you're already walking rather than re-solved from scratch. The nav
arrow follows your actual travel direction — leave a stop behind and it
re-targets forward along your path instead of dragging you back.
Shows. Pins on the world map, minimap, a radar HUD, and a live map HUD. The
live HUD borrows the real minimap so Blizzard's tracking blips show — the only
way to see genuinely live nodes and mailboxes. Terrain fades away, the blips
stay, and movement passes straight through so you can play with it up.
Hunts. Bundled rare locations for Eversong Woods, Zul'Aman, Harandar and
Voidstorm; everywhere else it learns rares from their vignettes as you meet them.
Tracks which you've done this reset and drops them from your route.
Install
Copy the Gleaner folder intoWorld of Warcraft\_retail_\Interface\AddOns\, then /reload.
Getting started
/glean route plan a loop through this zone
/glean arrow point me at the next stop
/glean live the live map HUD
/glean config everything else
Gathering detection needs teaching once per type — it's the design that keeps it
alive across patches:
/glean learn herb then gather one herb. Done, herbs record forever.
/glean learn mine then mine one vein.
Taught IDs are saved, so a patch renumbering spells costs you ten seconds rather
than a broken addon. Treasure needs no teaching (detected from world-object
loot), and fishing ships with the universal IDs already.
Commands
| Command | Does |
|---|---|
/glean config |
Options window — every setting lives here |
/glean route |
Plan an efficient loop through this zone |
/glean arrow |
Toggle the nav arrow to the next stop |
/glean hud |
Toggle the radar HUD |
/glean live |
Toggle the live map HUD (real minimap, terrain faded) |
/glean mode <name> |
mining / herbalism / fishing / treasure / lumber / dual / rare / everything |
/glean rare, /glean rares |
Toggle rare pins; count what's still up here |
/glean killed |
Mark the nearest rare killed this reset |
/glean learn <type> |
Teach the next gather cast (survives patches) |
/glean pool |
Mark a fishing pool at your feet |
/glean gathermate |
Import GatherMate2's node database |
/glean export, /glean import |
Share data |
/glean count, /glean clear <type>, /glean wipe |
Manage recorded nodes |
Key bindings for the HUD, live HUD, nav arrow and pool marking are under
Key Bindings → Gleaner.
What it can't do
Worth being straight about, because it shapes how you read the pins:
- No addon can tell whether a node is spawned right now. There's no API for
it. Gleaner's "you're on it" state means you are near a recorded spot, not
something is there. The one case it genuinely knows is a node you just
harvested, which is marked empty for a respawn window. - Mailboxes and live gather blips exist only on Blizzard's minimap. That's
why the live HUD borrows the real minimap instead of drawing its own. - Rare kills mostly can't be detected automatically. Midnight removed addon
access to the combat log, so/glean killedmarks one by hand. Where a rare's
quest ID is known, the game's own quest flag is used instead — which is
authoritative and resets itself.
Licence
GPL-3.0-or-later. Bundled rare coordinates were collected from public zone
guides.

