Gleaner
A gathering GPS for WoW. It remembers every node you pick, works out a sensible loop through them, and guides you through the zone.
No dependencies
None at all. No Ace3, no HereBeDragons, nothing embedded. Gleaner uses Blizzard's own C_Map, C_VignetteInfo and Minimap APIs and nothing else, so when a patch breaks something there's no third-party library sitting between you and the fix.
Recording
Pick a herb and Gleaner writes it down. Same for ore, fishing pools, treasure and lumber. Nodes sitting almost on top of each other get merged, so one bush doesn't turn into six pins.
Detection teaches itself. Run /glean learn herb, gather one herb, and herbs are handled from then on. That sounds like a workaround and it is, deliberately. Most gathering addons hardcode spell IDs, Blizzard renumbers one every few patches, and detection quietly dies with no error to tell you. Here it costs you ten seconds.
Fishing pools are read off the pool's own tooltip instead of the loot, so open water casts and your own bobber never end up in the database.
Routing
Gleaner solves a loop through the zone. Nearest-neighbour first, then 2-opt to iron out the crossings. Dense patches collapse into a single stop instead of five.
The route changes while you're walking it. Find a node mid-run and it gets spliced into the loop at the cheapest point, rather than the whole thing being re-solved and sending you back the way you came.
The arrow is the part I'm proudest of. It watches which way you're actually travelling, so if you blow past a stop it doesn't drag you backwards. It retargets forward along the loop, because you obviously meant to skip it.
The live HUD
/glean live takes your real minimap, blows it up to fill the screen, and fades the terrain out from under it. What's left is Blizzard's own tracking blips floating over the actual world.
That distinction matters. Every pin Gleaner draws is a memory of somewhere you've been. The blips on the live HUD are live, right now, from the game itself. It's also the only way to see mailboxes, because no API exposes them.
You can play with it up. Movement, mouselook and click-to-move all pass straight through. Escape puts your minimap back.
Rares
Spawn points ship for Eversong Woods, Zul'Aman, Harandar, Voidstorm and Coiled Isle. Anywhere else, Gleaner learns them off their vignettes as you run into them and recovers the real creature IDs. Anything you've already killed this reset drops out of your route.
Two Coiled Isle pins look wrong and aren't. Szarith the Fanged is underground, in the Underbelly of the Vaults of Atal'Utek; the pin sits on the surface map at the way in, because a pin on the interior map is invisible until you are already inside. Farthik the Plunderer will not spawn until a treasure chest has been interacted with, so an empty coordinate is the chest not being done, not bad data.
It can be your minimap too
Optional, off by default, and you'll want to turn off any other minimap addon first. Square or round, resize, rescale, drag it anywhere, lock it down, put a coloured border on it. Zone name, clock and coordinates are all separately styleable and positionable. Every addon button crowding your minimap can be resized, moved, or set to appear only on hover.
New in 1.2.2
/glean learn could latch onto the wrong spell. It recorded whatever succeeded next after you ran it, and not everything that succeeds is a gather. Looting a fish species you had never caught fires a hidden 100-millisecond effect, and that could be stored as your fishing spell. From then on, every new species you caught dropped a phantom fishing node wherever you were standing.
Learning now needs two things to agree: you cast it, and it produced loot. A gather always opens a loot window. Until both happen Gleaner keeps waiting, so a wrong guess costs nothing and the next real gather still teaches it.
/glean forget undoes a bad teach. On its own it lists every spell you have taught, with names and IDs. Give it an ID and it removes that one.
Three Coiled Isle rares corrected. Coin-Eye Skully's coordinate is now an in-game reading rather than a published guide's, and Szarith the Fanged and Farthik the Plunderer are explained under Rares above.
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
Teach it your gathering once:
/glean learn herb then gather one herb
/glean learn mine then mine one vein
Treasure needs no teaching, and fishing already ships with the universal IDs.
Coming from GatherMate2? /glean gathermate pulls your whole database across.
Keybinds for the HUDs, the arrow and pool marking are under Key Bindings → Gleaner.
Commands
| Command | Does |
|---|---|
/glean config |
Options window, everything lives here |
/glean route |
Plan a loop through this zone |
/glean arrow |
Toggle the nav arrow |
/glean hud |
Toggle the radar HUD |
/glean live |
Toggle the live map HUD |
/glean mode <name> |
mining, herbalism, fishing, treasure, lumber, dual, rare, everything |
/glean rare, /glean rares |
Toggle rare pins, count what's still up |
/glean killed |
Mark the nearest rare killed this reset |
/glean learn <type> |
Teach the next gather cast |
/glean forget, /glean forget <id> |
List taught spells, or remove one |
/glean pool |
Mark a fishing pool at your feet |
/glean gathermate |
Import GatherMate2's database |
/glean export, /glean import |
Share data |
/glean count, /glean clear <type>, /glean wipe |
Manage recorded nodes |
Things it can't do
You should know these before you trust a pin.
No addon can tell you whether a node is up right now. There's no API for it. When Gleaner says you're on one, it means you're standing near somewhere you found one before. The single exception is a node you personally just harvested, which it marks empty for a respawn window, because it watched you do it.
Mailboxes and live blips only exist on Blizzard's minimap. Hence the live HUD borrowing the real one rather than drawing its own.
Rare kills mostly can't be detected. Midnight took away addon access to the combat log, so /glean killed marks one by hand. Where a rare has a known quest ID, Gleaner reads the game's own quest flag instead, which is authoritative and resets itself.
Source at https://github.com/Lumenlytics/Gleaner, GPL-3.0-or-later. Bundled rare coordinates came from public zone guides.

