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.

NOTE: At the time of writing, HandyNotes v1.4.x does not work when Carbonite is installed. Please report this to the Carbonite authors if you want to see it get resolved, thanks!

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.2.0 to v1.4.0

  • HandyNotes now uses HereBeDragons-1.0 instead of the unmaintained Astrolabe
    • Plugins which referenced Astrolabe directly should be updated, and ideally not require anything the HandyNotes API does not provide
  • New HandyNotes API function: HN:GetContinentZoneList(mapFile), retrieve a list of zones inside a continent (Z -> mapID hash table)

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 wtwilson3 wtwilson3 Dec 07, 2011 at 15:35 UTC - 0 likes

    Will there be an update for 4.3?

  • Avatar of chaos_war chaos_war Sep 20, 2011 at 01:12 UTC - 0 likes

    hey i have the new one and i cant get it to keep all the stuff i mark like the old one did why ????? and i cant transfur to did avatars like the old noe did

  • Avatar of spiralofhope spiralofhope Jul 22, 2011 at 05:41 UTC - 0 likes

    I'm using svn to check out this addon and its libs. Astrolabe's svn repository is down, and so I downloaded the package from curseforge and unpacked it in the HandyNotes/Libs directory.


  • Avatar of dch48 dch48 Feb 16, 2011 at 04:43 UTC - 0 likes

    Since the 4.0.6 patch, notes do not work in Uldum. They will show on the zone map but not on the minimap. In every other zone, it works fine.

  • Avatar of isharra2 isharra2 Jan 02, 2011 at 18:38 UTC - 0 likes

    Xinhuan, thanks so much for updating this. It's really appreciated.

  • Avatar of Xinhuan Xinhuan Jan 02, 2011 at 15:35 UTC - 0 likes

    I would like to thank everyone for the support shown while I was too busy to find time to fix this addon.

    My next focus would be to update HandyNotes_FlightMasters and collecting the data for it.

  • Avatar of isharra2 isharra2 Jan 01, 2011 at 22:51 UTC - 0 likes

    I pointed out the FAQ because the instructions were not complete even when I posted the first tempfix, Toran had missed the changes for Astrolabe:ComputeDistance and Astrolabe:TranslateWorldMapPosition which were needed by some of the addons. He did a great job! But that's why you occasionally saw some trouble (Mailbox clearing other mailboxes in the same zone, etc.) Please don't take that as a criticism, but I was getting complaints from people who followed the incomplete directions. I do appreciate both your and Toran's work in getting mods working for everyone.

    I updated the FAQ, so the addons should work with both the official 1.2.0 when it's released and the tempfix. That wasn't a change required by the tempfix. If anything the tempfix was getting changed to better support the addons. The comment to remove the "HandyNotes.compat = compat" line was because it caused that addon to overwrite the main compat section in HandyNotes (tempfix) and thus potentially remove support for other addons.

    HandyNotes_Vendors was recently updated on SVN so hopefully that one will be working as well as HandyNotes_FlightMasters when HandyNotes has a release version.

    Last edited Jan 02, 2011 by isharra2: (I must learn to spell.)
  • 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


Date created
Aug 07, 2008
Last update
Aug 01, 2016
Development stage
  • deDE
  • enUS
  • esES
  • esMX
  • frFR
  • koKR
  • ptBR
  • ruRU
  • zhCN
  • zhTW
All Rights Reserved
Curse link
Reverse relationships
Recent files
  • R: v1.4.8 for 7.0.3 Aug 01, 2016
  • A: r268 for 7.0.3 Jul 30, 2016
  • R: v1.4.7 for 7.0.3 Jul 19, 2016
  • A: r266 for 7.0.3 Jul 19, 2016
  • A: r265 for 6.2.4 May 28, 2016



Embedded library