GatherMate gathering-node data extracted directly from the AzerothCore world database — the true server spawn points for mining, herbalism, and treasure, not a Wowhead scrape — plus fishing pools and gas clouds. If you play on an AzerothCore 3.3.5a realm, these are the nodes that actually exist on your server, in every zone.
21,867 nodes across 61 zones, all five gathering types:
Type Nodes Zones Source Herbalism 12,362 59 AzerothCore world DB Mining 7,247 59 AzerothCore world DB Fishing 1,213 27 upstream pool data Treasure 715 33 AzerothCore world DB Gas Clouds 330 10 upstream pool data The 20,324 mining / herbalism / treasure nodes come straight from one 3.3.5a world DB and span all three expansions:
Expansion Nodes Zones Vanilla (Eastern Kingdoms + Kalimdor) 13,780 42 The Burning Crusade (Outland) 3,135 8 Wrath of the Lich King (Northrend) 3,409 10
| Folder | What it is | Source |
|---|---|---|
GatherMate/ |
The GatherMate addon (v1, native 3.3.5a) — GPL v2 by kagaro, xinhuan, nevcairiel, ammo, with one small added feature (Skill range, see below) | Upstream + this repo |
GatherMate_Data/ |
Import companion: MiningData / HerbalismData / TreasureData |
Generated from AzerothCore |
GatherMate_Data/GasData.lua, FishData.lua |
Gas clouds + fishing pools | Upstream Wowhead data (AzerothCore doesn't expose these as static spawns) |
generate.py |
The extractor, for reproducing/updating the data | This repo |
A few small GPL modifications to GatherMate/ (GatherMate.lua, Display.lua, Config.lua,
GatherMate.toc + bundled LibDataBroker-1.1 / LibDBIcon-1.0); everything else is unmodified upstream.
Skill range — a Display → "Skill range" dropdown that filters the map by your live Mining / Herbalism skill (à la pfQuest):
- Only what I can gather — hides nodes whose required skill is above yours.
- Only nodes that still skill me up — the band
required ≤ skill < required + window(slider, default 100, where gathering nodes go grey).
It reads your skill through GatherMate's existing (locale-aware) profession detection, gates nodes in GatherMate's own display iterator, stacks with (never overwrites) your manual Herb/Mine filters, and updates automatically as you level.
Separate Minimap / World-Map icon scale + opacity — the single "Icon Scale" and "Icon Alpha" sliders are split into four (Minimap + World Map for each), so you can, e.g., keep small subtle minimap pins and large bold world-map ones. Existing settings migrate across automatically.
Minimap button — a GatherMate button on the minimap; click it to open the options. Toggle it under Display → "Minimap button" (or it can be hidden by other minimap-button managers).
Pooled-node tooltips — the AzerothCore data pools several veins/herbs on one spawn point
(e.g. an ore node that can be Iron, Silver or Gold). Those spawn points store the base node
(Iron), and hovering the pin now lists the alternatives that actually share that exact spot
(Iron Deposit (125), Silver Vein (75), Gold Vein (155)) — the same way the server pools
them, not a blanket "X can also be Y" guess.
- Copy
GatherMate/andGatherMate_Data/into your client'sInterface/AddOns/. - Enable both on the character-select AddOns screen.
- In-game:
/gathermate→ Import tab → enable GatherMate_Data, pick a style (Replace for a clean import, Merge to keep your own finds), optionally tick Expansion only + choose Vanilla / TBC / WotLK, then Import. - Open the world map — every herb, vein, and treasure on your realm is now pinned.
generate.py reads two things and needs nothing else:
- the live
acore_world.gameobject+gameobject_templatetables (gathering nodes areGAMEOBJECT_TYPE_CHEST, classified by name via GatherMate's own node-ID table), and WorldMapArea.dbcfrom your client data (each zone's world-coordinate rectangle).
Each node's world (x, y) is converted into GatherMate's zone-normalized packed coordinate
(floor(x*10000+0.5)*10000 + floor(y*10000+0.5)) using its zone's map rectangle, then written
in GatherMate_Data format (GatherMateDataMineDB[zoneID][packed] = nodeID). Pooled nodes that
share a spawn point (e.g. Tin/Silver veins) collapse to one entry per physical location.
python3 generate.py /path/to/output/GatherMate_DataEdit the DB, GATHERMATE, and WMA_DBC paths at the top of generate.py for your setup.
- GatherMate © its authors (kagaro, xinhuan, nevcairiel, ammo), GPL v2 — included unmodified.
- The data is extracted from AzerothCore's open-source world database.
- This repository is released under the GPL v2 (see
LICENSE).