Astrolabe

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: http://wiki.esamynn.org/Astrolabe

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

  • Avatar of LudovicusMaior LudovicusMaior Mar 16, 2015 at 15:10 UTC - 0 likes

    Yeah, for Wow-Pro we have patched Astrolabe as follows:

    https://github.com/Jiyambi/WoW-Pro-Guides/blob/master/WoWPro/Libraries/Astrolabe/Astrolabe-TomTom.lua

    There are *dozens* of missing map floors in the regular continents.

    Too bad there is not a good way for a library to store learned data. This information is easy enough to discover, but we need a way to persist it later.

  • Avatar of Bodar Bodar Mar 16, 2015 at 12:44 UTC - 0 likes

    Blizzard has changed the constant WORLDMAP_WORLD_ID to WORLDMAP_AZEROTH_ID.

  • Avatar of Barfolomeu Barfolomeu Mar 02, 2015 at 19:26 UTC - 0 likes

    I've tested MMOSimca's changes and it resolves the issues I see with my addon, FlightHUD. As he's stated, this problem has had bugs reported against TomTom, Archy, and a few other addons. Please review this ASAP and merge this patch to trunk.

    Thanks

  • Avatar of MMOSimca MMOSimca Mar 02, 2015 at 06:19 UTC - 1 like

    So after an extensive amount of debugging, I have tracked down the issue that plagues Astrolabe in WoD and causes issues with the Garrison maps. The problem is exactly what Dorwido pointed out in the beginning of December: "There is an strange error, the WorldMapSize dont include data for the garrison if you do a fresh start of the client and login, if you logout a character and relogin or do a /reload it contains the data."

    The root cause is a Blizzard issue. SetMapByID will NOT work for the following 18 maps: http://www.curseforge.com/paste/yf1xpwiarn2k9j4l/. It will instead end up at a different MapID when you attempt it. For some reason, 10 of those 18 maps DO actually work with SetMapByID, but only after a reload, and only if you are the same faction as the owner of the map that is being requested (so an individual character can only get 5/10 even after a reload).

    I have come up with a solution for it that solves all 18 cases.
    # For 8 cases, we can just do HarvestedMapData[badMapID] = HarvestedMapData[goodMapID] because it happens that there is another mapID that works that has the exact same data (same number of floors, continent, zone, coordinates). The map file name is different, but that is the only weakness, and this approach is cleaner than hardcoding (imo).
    # Unfortunately, for the remainder of the cases, there is no 'good' MapID (on first reload anyway). We can solve this by hardcoding a few pieces of data (floors, continent, zone, and map file name) for 2 of the 10 maps not solved by the first solution.
    # For the other 8/10 remaining cases, we can just set them equal to the two cases we hardcoded.

    It is fairly ugly code, but I do not think there are many alternatives, and I commented it well to help make up for it. The new code is entirely from line 1274 to 1354 in this Astrolabe.lua
    http://www.curseforge.com/paste/11773/
    DIFF: http://wow.curseforge.com/paste/11886/

    I hope that you will include this segment of code in your next Astrolabe release, as the issue it addresses seems to be commonly reported.

    Cheers!

    Last edited Mar 15, 2015 by MMOSimca
  • Avatar of LaoTseu LaoTseu Jan 05, 2015 at 16:16 UTC - 0 likes

    Question: does the full documentation of the API still exists somewhere? The link above no longer works.

  • Avatar of bknowles98 bknowles98 Dec 17, 2014 at 21:06 UTC - 1 like

    Whenever I enter the Mine in WOD, i receive this error message. It only happens the very first time I enter though....

    Date: 2014-12-17 13:59:47 ID: 1 Error occured in: Global Count: 1 Message: ..\AddOns\Astrolabe\Astrolabe.lua line 799: ..\AddOns\Astrolabe\Astrolabe.lua line 159: attempt to index field '?' (a nil value) Debug: [C]: ? Astrolabe\Astrolabe.lua:799: UpdateMinimapIconPositions() Astrolabe\Astrolabe.lua:1129: OnUpdate() Astrolabe\Astrolabe.lua:1292: Astrolabe\Astrolabe.lua:1291 Locals:

    <no value>

    AddOns: Swatter, v5.21c.5521 (SanctimoniousSwamprat) ArcHUD3, v3.0 AskMrRobot, v19 Astrolabe, v1.0 Atlas, v1.31.00 AtlasBattlegrounds, v1.31.00 AtlasBurningCrusade, v1.31.00 AtlasCataclysm, v1.31.00 AtlasClassicWoW, v1.31.00 AtlasDungeonLocs, v1.31.00 AtlasMistsofPandaria, v1.31.00 AtlasOutdoorRaids, v1.31.00 AtlasScenarios, v1.31.00 AtlasTransportation, v1.31.01 AtlasWrathoftheLichKing, v1.31.00 AucAdvanced, v5.21c.5521 (SanctimoniousSwamprat) AucFilterBasic, v5.21c.5521 (SanctimoniousSwamprat) AucFilterOutlier, v5.21c.5521.5459(5.21c/embedded) AucMatchUndercut, v5.21c.5521.5507(5.21c/embedded) AucScanData, v5.21c.5521 (SanctimoniousSwamprat) AucStatHistogram, v5.21c.5521 (SanctimoniousSwamprat) AucStatiLevel, v5.21c.5521 (SanctimoniousSwamprat) AucStatPurchased, v5.21c.5521 (SanctimoniousSwamprat) AucStatSales, v5.21c.5521.5476(5.21c/embedded) AucStatSimple, v5.21c.5521 (SanctimoniousSwamprat) AucStatStdDev, v5.21c.5521 (SanctimoniousSwamprat) AucStatWOWEcon, v5.21c.5521.5323(5.21c/embedded) AucUtilAHWindowControl, v5.21c.5521.5347(5.21c/embedded) AucUtilAppraiser, v5.21c.5521.5495(5.21c/embedded) AucUtilAskPrice, v5.21c.5521.5447(5.21c/embedded) AucUtilAutoMagic, v5.21c.5521.5443(5.21c/embedded) AucUtilCompactUI, v5.21c.5521.5496(5.21c/embedded) AucUtilEasyBuyout, v5.21c.5521.5507(5.21c/embedded) AucUtilFixAH, v5.21c.5521 (SanctimoniousSwamprat) AucUtilItemSuggest, v5.21c.5521.5417(5.21c/embedded) AucUtilPriceLevel, v5.21c.5521.5458(5.21c/embedded) AucUtilScanButton, v5.21c.5521.5403(5.21c/embedded) AucUtilScanFinish, v5.21c.5521.5515(5.21c/embedded) AucUtilScanProgress, v5.21c.5521.4979(5.21c/embedded) AucUtilScanStart, v5.21c.5521.5347(5.21c/embedded) AucUtilSearchUI, v5.21c.5521.5515(5.21c/embedded) AucUtilSimpleAuction, v5.21c.5521.5514(5.21c/embedded) AucUtilVendMarkup, v5.21c.5521.4828(5.21c/embedded) Auctionator, v3.2.1 Babylonian, v5.1.DEV.332(/embedded) BagBrother, v6.0.16 Bagnon, v6.0.16 BeanCounter, v5.21c.5521 (SanctimoniousSwamprat) BreadCrumbs, vV1.0.3 RELEASE BrokerTimelessIsleChests, v6.0.2-a Configator, v5.1.DEV.376(/embedded) DBMCore, v DBMDefaultSkin, v DBMLDB, v DBMStatusBarTimers, v DebugLib, v5.1.DEV.337(/embedded) Enchantrix, v5.21c.5521 (SanctimoniousSwamprat) EnchantrixBarker, v5.21c.5521 (SanctimoniousSwamprat) epgplootmaster, v0.6.64 epgplootmasterml, v0.6.64 Farmed, v5.43 Gatherer, v5.0.0 GatherMate2, v1.33.3 GatherMateSharing, vv1.9 HandyNotes, vv1.3.2 HandyNotesDraenorTreasures, v1.07 HandyNotesGuild, v1.8 HandyNotesLorewalkers, v1 HandyNotesLostAndFound, v1 HandyNotesPetTamers, v1 HandyNotesSummerFestival, vv1.0.1 HandyNotesTimelessIsleRareElites, v2.32 HandyNotesTimelessIsleChests, v1.11 HandynotesTimelessTreasures, v1.0.2 Informant, v5.21c.5521 (SanctimoniousSwamprat) LibExtraTip, v5.12.DEV.363(/embedded) MinimapButtonFrame, v3.1.10d MinimapButtonFramesDark, v2.0.5 MinimapButtonFrameSkinPack, v3.0.1b MoveAnything, v15.0.6 Postal, v3.5.1 Prat30, v3.5.10 Prat30HighCPUUsageModules, v Prat30Libraries, v QuickRoutes, v6.0-Release1 RazerAnansi, v2.7.0 RazerNaga, v2.7.1 RazerNagaCast, v RazerNagaEncounter, v RazerNagaXP, v Routes, vv1.5.0 SharedMedia, v3.0.5-186 SharedMediaAdditionalFonts, v1.0.17 SlideBar, v5.21c.5521 (SanctimoniousSwamprat) Stubby, v5.21c.5521 (SanctimoniousSwamprat) TipHelper, v5.12.DEV.351(/embedded) TomTom, vv60000-1.0.1 WoWDBProfiler, v BlizRuntimeLib_enUS v6.0.3.60000 <none> (ck=e01)

  • Avatar of Dorwido Dorwido Dec 02, 2014 at 00:41 UTC - 0 likes

    There is an strange error, the WorldMapSize dont include data for the garrison if you do a fresh start of the client and login, if you logout a character and relogin or do a /reload it contains the data.

    Without digging deeper in it in the Astrolabe code, I would maybe guess an game side problem and maybe the solution would be to hardcode it like some other zones?

  • Avatar of LudovicusMaior LudovicusMaior Nov 29, 2014 at 22:12 UTC - 0 likes

    I've been in touch with Esamynn about this.

    While I have an ugly solution to the problem that I have implemented for WoWPro , Esamynn and I have not come up with a permanent solution.

    You could just download WoWPro, enable only the base addon, and these errors should go away until Esamynn comes up with something better.

    Last edited Nov 29, 2014 by LudovicusMaior
  • Avatar of Excelis Excelis Nov 29, 2014 at 17:04 UTC - 0 likes

    Astrolabe seems to be breaking TomTom when entering the level 2 mine on my garrison.

Facts

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

Authors