Handy Notes for your maps. This addon is intended to be a small and simple replacement for Cartographer_Notes and functions in a similar manner.

Use /handynotes to access options.

You can add notes to the maps in 3 ways:

  • Alt-RightClick on the world map to add a note.
  • Use "/hnnew" without the quotes to add a note at your current location.
  • Use "/hnnew x,y" without the quotes to add a note at location x,y on your current zone's map.

HandyNotes supports plugins that other authors can write to display their own set of notes on the map. See this link for a list of such addons: http://www.wowace.com/search/?search=handynotes

Changes from v1.1.6 to v1.2.0

  • Fix HandyNotes to use Astrolabe-1.0 instead of Astrolabe-0.4.
  • Place the New Handy Note dialog box above the World Map by parenting to it if the World Map is open.
  • Add a 6th optional return value "dungeonLevel" to the pluginHandler:GetNodes() API. This value is used if it is different from the input dungeonLevel, similar to the 2nd return's "mapFile".
  • HandyNotes plugin authors will need to be update their plugins to use Astrolabe-1.0 and its new API that has changed from using (C, Z) pairs to (mapID, level) pairs. HandyNotes has provided some additional functions to help with this (these functions will not work for instance and BG maps):
    • HandyNotes:GetMapFiletoMapID(mapFile)
    • HandyNotes:GetMapIDtoMapFile(mapID)
    • HandyNotes:GetZoneToMapID(zone)

Changes from v1.1.5 to v1.1.6

  • Update TOC Interface to 40000.
  • Add optional AddonLoader delayed load support.
  • Use latest version of Ace3 and Astrolabe libraries.

Changes from v1.1.4 to v1.1.5

  • Use latest version of Astrolabe library which has Hrothgar's Landing data.
  • Play nice with Carbonite which is trying to fake as being Cartographer.
  • Add HandyNotes to the Blizzard Interface Addon Options too.
  • When quest objectives are enabled, the HandyNotes icons on the world map will now show their tooltips again on mouseover.
  • When creating or editing a note on a map with dungeon levels, you may now choose which dungeon level the note appears in or choose to have it appear on ALL dungeon levels.
  • HandyNotes will now pass as 3rd parameter the dungeon map level when it calls pluginHandler:GetNodes(mapFile, minimap, dungeonLevel). Existing user notes in HandyNotes will still display on all dungeon map levels, but new notes will be level specific.
  • Remove compatibility code with all WoW versions earlier than patch 3.1.
  • Convert to use wowace localization system at http://www.wowace.com/addons/handynotes/localization/
  • Notes without a title will now show "(No Title)" as the tooltip title rather than have no tooltip on mouseover.
  • Add the ability to create/change/copy/delete profiles in HandyNotes. HandyNotes was already using Ace3 profiles, just that this wasn't exposed.
  • Add ability to enable and disable plugins from showing on the map in the HandyNotes options.
  • Add a wider range of icons to select from.

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of Zidomo Zidomo Jan 01, 2011 at 18:30 UTC - 0 likes

    HandyNotes (tempfix) has since been changed to currently require different modifications in the add-on modules from what I posted 2 weeks ago below, as per the "HandyNotes (tempfix) FAQ" as you say. But what I posted was valid for the version of the hacky hacked mod at that time (rev. 1.16a, tested, verified) as well as add-on modules that had not been updated to use Astrolabe-1.0.

    As Xinhuan is now updating the main mods & his plugins (at least Flightmasters), as is said below, hopefully the need for the hackdeluxe will go away. It likely won't completely until all the critical add-on modules (Vendors, Mailboxes, etc.) are updated too.

  • Avatar of isharra2 isharra2 Dec 31, 2010 at 10:58 UTC - 0 likes

    I appreciate the plug for HandyNotes (tempfix) and am happy it's working for you.

    If you are following Zidomo's directions remove the "HandyNotes.compat = compat" line from the code below. It doesn't belong there and can cause problems.

    Please see the HandyNotes (tempfix) FAQ for instructions on modifying your HandyNotes_* plugins to work with it. While Toran did a great job he didn't catch all the changes needed.

    And you can change "fully updated" to hamfistedly hacked. [I wrote the tempfix, I can say it.]

    Since updates are appearing on the svn, hopefully the need for the tempfix will go away shortly.

    Last edited Jan 02, 2011 by isharra2: (spelling correction)
  • Avatar of Zidomo Zidomo Dec 20, 2010 at 13:29 UTC - 0 likes

    Both the last HandyNotes posted here as well as all its separate modules are still using the Astrolabe 0.4 API. After changing them just to look for 1.0, they are still not going to work properly.

    There are two temporary fixes posted at WowInterface for HandyNotes itself. The one that doesn't work (as well as conflicts with anything that uses Astrolabe 1.0 such as TomTom) is HandyNotes (fanupdate).

    The one that has actually works: HandyNotes (tempfix). Its been "fully updated" to work properly with Astrolabe 1.0. Tested here and yes, it works without any issues seen so far. No icons stuck to the mouse cursor or anything else. As its been changed to actually use Astrolabe 1.0 properly, it also works without issue in combination with the current TomTom, MobMap & other mods using that version.

    For the separate modules to work properly with this updated HandyNotes, work needs to be done to each of them. The recommended modules to use (if you need their functionality): HandyNotes_Vendors, HandyNotes_CityGuide, HandyNotes_Mailboxes, HandyNotes_Trainers & HandyNotes_Charon. The instructions to modify them are on this page, detailed below. The basics on that page are also the modifications made to HandyNotes (tempfix).

    1) Change

    local Astrolabe = DongleStub("Astrolabe-0.4")


    local Astrolabe = DongleStub("Astrolabe-1.0")

    as noted below at the top of each module's addon.lua (& HandyNotes_Mailboxes.lua) file. But that's just the first thing that needs to be done.

    2) Next, integrate the following code block into each module's addon.lua (& HandyNotes_Mailboxes.lua) file. The place to put it: between the last line of the Addon declaration and the first line of the Our db upvalue and db defaults sections.

    local compat = {}
    HandyNotes.compat = compat
        local orig = GetCurrentMapAreaID()
        -- Create a lookup table from mapID to c,z pairs
        local mapcz = {}
        for cid, zlist in ipairs{GetMapContinents()} do
            for zid, mapid in ipairs{GetMapZones(cid)} do
                SetMapZoom(cid, zid)
                local mapid = GetCurrentMapAreaID()
                mapcz[mapid] = {cid, zid}
        -- Speed up minimap updates
        Astrolabe.MinimapUpdateTime = 0.1
        -- This function takes the mapID return from the Astrolabe function
        -- and converts it to a c,z,x,y tuple
        function compat:GetCurrentPlayerPosition()
            local map, floor, x, y = Astrolabe:GetCurrentPlayerPosition()
            local cz = mapcz[map]
            if cz then
                local c, z = unpack(cz)
                return c, z, x, y
        function compat:GetCurrentPlayerCoords()
            local map, floor, x, y = Astrolabe:GetCurrentPlayerPosition()
            return x, y
        function compat:GetDirectionToIcon(...)
            return Astrolabe:GetDirectionToIcon(...)
        function compat:GetDistanceToIcon(...)
            return Astrolabe:GetDistanceToIcon(...)
        function compat:RemoveIconFromMinimap(...)
            return Astrolabe:RemoveIconFromMinimap(...)
        function compat:IsIconOnEdge(...)
            return Astrolabe:IsIconOnEdge(...)
        function compat:PlaceIconOnMinimap(icon, c, z, x, y)
            local mapId = Astrolabe:GetMapID(c, z)
            local floors = Astrolabe:GetNumFloors(mapId)
            local floor = floors == 0 and 0 or 1
            return Astrolabe:PlaceIconOnMinimap(icon, mapId, floor, x, y)
        function compat:PlaceIconOnWorldMap(frame, icon, c, z, x, y)
            local mapId = Astrolabe:GetMapID(c, z)
            local floors = Astrolabe:GetNumFloors(mapId)
            local floor = floors == 0 and 0 or 1
            return Astrolabe:PlaceIconOnWorldMap(frame, icon, mapId, floor, x, y)

    3) Finally, as per the above web page (typo fixed & another module added):

    Open HandyNotes_CityGuide/addon.lua

    Search for:

    local continent, zone, x, y = Astrolabe:GetCurrentPlayerPosition()

    Replace with:

    local continent, zone, x, y = compat:GetCurrentPlayerPosition()

    Open HandyNotes_Mailboxes/HandyNotes_Mailboxes.lua

    Search for:

    local c,z,x,y = Astrolabe:GetCurrentPlayerPosition()

    Replace with:

    local c,z,x,y = compat:GetCurrentPlayerPosition()

    Open HandyNotes_Trainers/addon.lua

    Search for:

    local continent, zone, x, y = Astrolabe:GetCurrentPlayerPosition()

    Replace with:

    local continent, zone, x, y = compat:GetCurrentPlayerPosition()

    Open HandyNotes_Vendors/addon.lua

    Search for:

    local continent, zone, x, y = Astrolabe:GetCurrentPlayerPosition()

    Replace with:

    local continent, zone, x, y = compat:GetCurrentPlayerPosition()

    (my addition) Open HandyNotes_Charon/addon.lua & search for:

    local Ccontinent, Czone, Cx, Cy = Astrolabe:GetCurrentPlayerPosition()

    replace with:

    local Ccontinent, Czone, Cx, Cy = compat:GetCurrentPlayerPosition()

    Note that if you look further in each addon.lua (& HandyNotes_Mailboxes.lua) file, you will see at least one more instance of original Astrolabe text in each file. Those do not need to be changed; only one line in each as listed above do in combination with the first two steps.

    After doing those three steps properly for each module, you are done. Each of those modules will automatically detect and create new HandyNotes properly without any issues in combination with the updated HandyNotes (tempfix).

    Last edited Dec 20, 2010 by Zidomo
  • Avatar of JaMoose JaMoose Dec 18, 2010 at 18:54 UTC - 0 likes

    Just an FYI... there is a "tempfix" posted on wowinterface.com that works for now, however, you would need to go into your other HandyNotes mods and make the following change.


    local Astrolabe = DongleStub("Astrolabe-0.4")


    local Astrolabe = DongleStub("Astrolabe-1.0")

    This will work in the interim until the original is fixed, but there are some draw backs. It seems that the "tempfix" will not auto add new vendors/trainers if you use HandyNotes_Venders and/or _Trainers.

    Last edited Dec 18, 2010 by JaMoose
  • Avatar of warcraftic warcraftic Dec 12, 2010 at 01:27 UTC - 0 likes

    Same thing happens to me as Loxado. I also used Handynotes_CityGuide, Trainers, etc. Many of them seem to stick to the arrow on the minimap.

  • Avatar of Loxado Loxado Dec 09, 2010 at 22:32 UTC - 0 likes

    4.0.3a - R: v1.1.6: When I make a note with /hnnew it is correct on the map (Mapster), <<< BUT >>> it sticks to my personal arrow on the minimap too. In all zones where I made a note with /hnnew I have the selected icon moving on top of me around the minimap with me. :-( When I mouseover the symbol on the minimap it tells the correct text - but absolut wrong coordinates (because it moves with me). I found NO WAY to get rid of the symbol on top of me on the minimap :-( Everything else is great and I really dont want to miss this addon!!


  • Avatar of AttilaTyphoon AttilaTyphoon Dec 04, 2010 at 08:53 UTC - 0 likes

    Error with german client with the lib astrolabe.

    Astrolabe is missing data for Das Schlingendornkap.

    Astrolabe is missing data for Halbinsel von Tol Barad.

    Astrolabe is missing data for Nördliches Schlingendorntal.

    Astrolabe is missing data for Ruinen von Gilneas.

    Astrolabe is missing data for Ruinen von Gilneas.

    Astrolabe is missing data for Schattenhochland.

    Astrolabe is missing data for Schimmernde Weiten.

    Astrolabe is missing data for Schlingendorntal.

    Astrolabe is missing data for Sturmwind.

    Astrolabe is missing data for Tang'tharwald.

    Astrolabe is missing data for Tol Barad.

    Astrolabe is missing data for Vashj'ir.

    Astrolabe is missing data for Vorgebirge des Hügellands.

    Date: 2010-12-04 09:43:35

    ID: -1

    Error occured in: Global

    Count: 3

    Message: ..\AddOns\TomTom\libs\Astrolabe\Astrolabe.lua line 274:

    attempt to index local 'cont' (a nil value)


    (tail call): ?

    TomTom\libs\Astrolabe\Astrolabe.lua:274: TranslateWorldMapPosition()

    TomTom\libs\Astrolabe\Astrolabe.lua:874: PlaceIconOnWorldMap()



    (tail call): ?

    [C]: ?

    [string "safecall Dispatcher[2]"]:9:

    [string "safecall Dispatcher[2]"]:5

    (tail call): ?

    HandyNotes\HandyNotes.lua:350: ?()



    [string "safecall Dispatcher[1]"]:4:

    [string "safecall Dispatcher[1]"]:4

    [C]: ?

    [string "safecall Dispatcher[1]"]:13: ?()

    ...Tom\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:92: Fire()



    [C]: ?

    [C]: SetMapToCurrentZone()



    Please fix it.


    Last edited Dec 04, 2010 by AttilaTyphoon
  • Avatar of csun csun Nov 25, 2010 at 02:45 UTC - 0 likes

    IF possible - How do i add my own icon/iconpack ? - provided i have those somewhere e.g as tga files in the interface/addon folder ?

  • Avatar of xevilgrin xevilgrin Nov 14, 2010 at 15:58 UTC - 0 likes

    is it possible, that HN ( v1.1.6 ) seems not to work anymore with Carbonite(4.013) together..

    cant see anymore Silver Dragon (v2.4.1) Icons on the carbo map

    cheerz from Germany


    evil regards

    <..... EvilGrin .....>

  • Avatar of warcraftic warcraftic Mar 24, 2010 at 19:08 UTC - 0 likes

    Notes don't seem to be lined up to the correct map "level". For ex, when I go to The Underbelly, I see vendors that are only up on "street" level.


Date created
Aug 07, 2008
Last update
Feb 24, 2015
Development stage
  • deDE
  • enUS
  • esES
  • esMX
  • frFR
  • koKR
  • ptBR
  • ruRU
  • zhCN
  • zhTW
All Rights Reserved
Curse link
Reverse relationships
Recent files
  • R: v1.3.3 for 6.1.0 Feb 24, 2015
  • A: r248 for 6.1.0 Feb 24, 2015
  • R: v1.3.2 for 6.0.3 Nov 08, 2014
  • A: r246 for 6.0.3 Nov 05, 2014
  • A: r245 for 6.0.3 Nov 05, 2014



Embedded library