Astrolabe is an embeddable library for placing icons on the Minimap, and on World Maps. Icons that are placed on the Minimap using Astrolabe are placed in a special buffer and their positions are continuously updated for player movement, based on the world map coordinates provided when the icon was initially placed. Icons remain in this buffer until they are removed.

Astrolabe also provides functions to compute the in-game distance between two points and translate a point from one zoom level of the map another.  

For full documentation, see:

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

  • Avatar of LudovicusMaior LudovicusMaior Oct 18, 2014 at 12:42 UTC - 0 likes

    I have a hacked up version of TomTom/Astrolabe that I have made work in both live and beta, mostly.

    Please fell free to use it or not as necessary or to ask any questions.

    I'll be updating the zip as fix further bugs.

  • Avatar of Tntdruid Tntdruid Sep 12, 2014 at 16:01 UTC - 0 likes

    In WoD Beta i get:

    Message: Interface\AddOns\TomTom\libs\Astrolabe\Astrolabe.lua:1255: Usage: SetMapZoom(continentIndex [,zoneIndex]) .. requested continent out of bounds Time: 09/05/14 15:23:10 Count: 1 Stack: [C]: in function `SetMapZoom' Interface\AddOns\TomTom\libs\Astrolabe\Astrolabe.lua:1255: in function `activate' ...nterface\AddOns\TomTom\libs\Astrolabe\DongleStub.lua:78: in function `Register' Interface\AddOns\TomTom\libs\Astrolabe\Astrolabe.lua:1307: in main chunk

    Locals: (*temporary) = 8 (*temporary) = 0

    when i login

  • Avatar of LudovicusMaior LudovicusMaior Jul 26, 2014 at 13:01 UTC - 0 likes

    While trying to use TomTom in WoD:

    Date: 2014-07-26 08:52:18
    ID: 1
    Error occured in: Global
    Count: 1
    Message: ..\AddOns\TomTom\libs\Astrolabe\Astrolabe.lua line 1255:
       Usage: SetMapZoom(continentIndex [,zoneIndex]) .. requested continent out of bounds
       [C]: SetMapZoom()
       TomTom\libs\Astrolabe\Astrolabe.lua:1255: activate()
       ...nterface\AddOns\TomTom\libs\Astrolabe\DongleStub.lua:78: Register()
       TomTom\libs\Astrolabe\Astrolabe.lua:1307: in main chunk
    (*temporary) = 8
    (*temporary) = 0
      Swatter, v4.4.1 (<%codename%>)
      Ace3, v
      TomTom, vv50400-1.0.0
      BlizRuntimeLib_enUS v6.0.1.60000 <none>

    The GetMapContinents() and GetMapZones() no longer return just a list of the names of the continents or zones, but return pairs of map ids and the names.

    Last edited Jul 26, 2014 by LudovicusMaior
  • Avatar of Esamynn Esamynn Feb 05, 2014 at 16:23 UTC - 0 likes

    At request I've posted a zipped form of the most recent revision.

    Please be aware that copies hosted here are not considered to be the official source of releases. For the latest version, please always reference

    Last edited Feb 05, 2014 by Esamynn
  • Avatar of JamesAllenPowell JamesAllenPowell Nov 26, 2013 at 02:29 UTC - 0 likes

    I was playing WoW and got this pop-up:

    Message: ...ddOns\ZygorGuidesViewer\Libs\Astrolabe\Astrolabe.lua:864: invalid key to 'next' Time: 11/25/13 20:08:24 Count: 1 Stack: [C]: ? ...ddOns\ZygorGuidesViewer\Libs\Astrolabe\Astrolabe.lua:864: in function `UpdateMinimapIconPositions' ...ddOns\ZygorGuidesViewer\Libs\Astrolabe\Astrolabe.lua:1115: in function `OnUpdate' ...ddOns\ZygorGuidesViewer\Libs\Astrolabe\Astrolabe.lua:1333: in function <...ddOns\ZygorGuidesViewer\Libs\Astrolabe\Astrolabe.lua:1332>

    Locals: = <no value>

  • Avatar of DigitalUtopia DigitalUtopia Nov 03, 2012 at 02:47 UTC - 0 likes

    There seems to be an issue with Astrolabe getting the proper location for the micro-dungeon faction hubs in Vale of the Eternal Blossom - at the very least, for Shrine of Two Moons.

    When tracking a single point, the direction seems to be off by about 30 degrees while in Shrine of Two Moons - however, upon stepping outside (Vale of the Eternal Blossom), it will immediately calculate the correct direction.

  • Avatar of Everdreamer Everdreamer Nov 01, 2012 at 22:13 UTC - 0 likes

    Just my two cents...

    The CPU usage of Astrolabe (on CPU profiling) is relatively high, and I believe the most loading is contributed by Astrolabe:OnUpdate. May you consider to lower the frequency of running the actual updating code? For instance, to me every 0.1 sec is smooth enough, every 0.25 sec is a bit zigzag but still acceptable.

  • Avatar of Esamynn Esamynn Aug 10, 2012 at 18:48 UTC - 0 likes

    Please note that as of the most recent patch to the MoP beta, Astrolabe rev 146 or higher is required.

  • Avatar of Esamynn Esamynn Aug 09, 2012 at 18:29 UTC - 0 likes

    @Vulpem: Go

    Turns out there was a bug on line 203 which allowed your calculation to proceed to the point of error. Attempting to calculate a distance between Azeroth and Outland should simply return nil since there is no common reference for the two "worlds."

    Edit: I will likely post a new beta with the fix in the next few days. In the meantime, the fix is available in the Subversion repository.

    Last edited Aug 09, 2012 by Esamynn
  • Avatar of Vulpem Vulpem Aug 05, 2012 at 20:20 UTC - 0 likes

    Thanks for updating this helpful library

    I'm getting the following error whenever I path through ComputeDistance using one map within the Outland system (530) and one in Azeroth: Astrolabe.lua:215: attempt to index local 'cont2' (a nil value)

    It seems to be looking for WorldMapSize[0][530], which is nil.


Date created
Oct 13, 2010
Last update
Oct 15, 2014
Development stage
  • deDE
  • enUS
  • esES
  • esMX
  • frFR
  • itIT
  • koKR
  • ptBR
  • ruRU
  • zhCN
  • zhTW
GNU Lesser General Public License version 2.1 (LGPLv2.1)
Curse link
Recent files