Guides › Gameplay plugins

NpcMap addon

What it shows

NpcMap is an addon for the 3.3.5a game client that puts the service NPCs and mailboxes of the world on the zone maps. The capitals have their own maps, and Dalaran shows both floors. It covers the four continents: Eastern Kingdoms, Kalimdor, Outland and Northrend.

Categories:

  • Class trainers
  • Profession trainers
  • Bankers
  • Auctioneers
  • Guild registrars & tabards
  • Innkeepers
  • Flight masters
  • Stable masters
  • Battlemasters & arena
  • Riding, weapon & pet trainers
  • Repair
  • Vendors
  • Mailboxes

Install

NpcMap is not a catalog package; it is a plain addon in the LonelyIceProject/lonelyice-npcmap repository, and you install it by hand: neither the launcher nor its package manager installs it or keeps it up to date.

  1. Download the repository (on GitHub: Code, then Download ZIP) or clone it, and take the NpcMap folder from it.
  2. Copy that folder into Interface\AddOns of your game folder, so that you have Interface\AddOns\NpcMap\NpcMap.toc.
  3. Start the game. On the character screen, check that NPC Map is enabled in AddOns.

Use it

Open the world map and go to a zone or a city. Each pin shows the icon of its most important service; pins closer than a few pixels merge into one with a number. Hover a pin to see the NPCs there with their titles; NPCs of the other faction are shown in red, and a long list ends with "... and N more". Clicks go through to the map as usual, so a right click still zooms out.

Filters

Click the map button in the top-left corner of the world map, or type /npcmap. The menu has:

Option Default
Show on map on
One checkbox per category all on, except Innkeepers and Flight masters
Class trainers: my class only on
Show enemy faction NPCs off

Your choices are saved by the addon and kept between sessions.

Together with the waystones

With the Kirin Tor waystones addon, the waycrystal list button sits in the corner and the NpcMap button right next to it; waycrystal pins are drawn above NpcMap pins.

For developers: the data

The pins come from a world database: the shipped NpcMap/Data.lua holds the spawns of the database it was generated from. tools/make_npcmap.py in the repository reads your world database and your game's map data, writes a new NpcMap/Data.lua and copies the addon into the client. It needs Python 3 and StormLib and is only useful if you changed NPC spawns in your world database and want them on the map; see the repository's README.