Thread Tools Display Modes
05/08/14, 07:39 PM   #1
Garkin
 
Garkin's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 832
[outdated] WorldMap - mapIDs, detection when map is changed

  1. Currently there is no easy way to identify maps. Please add something like GetMapID() that will return unique ID, so I do not need use workarounds like determining location from name of map textures.

  2. Add some way to find out that map was changed. Event EVENT_ZONE_CHANGED does not mean that there is different map now.
    We have to use workarounds like check in some OnUpdate loop if there is different map name/floor index or use EVENT_QUEST_POSITION_REQUEST_COMPLETE which is accurate, but only if you have quests and you have to keep in mind that this event occurs for all quests.
 
05/09/14, 02:16 AM   #2
LoPony
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 10
Isn't is GetCurrentMapZoneIndex()/GetCurrentMapIndex() like your wished GetMapId()?
 
05/09/14, 02:34 AM   #3
Xrystal
caritas omnia vincit
 
Xrystal's Avatar
Premium Member
AddOn Author - Click to view addons
Join Date: Feb 2014
Posts: 369
The MapID functions do not seem to be consistent. I tried using them as a non language return value but alas, when inside a town within a zone one of the functions will return nil and the other the number of a totally different zone.

When you are outside of the town it seems to work consistently.

This also affects the EVENT_ZONE_UPDATE and EVENT_ZONE_CHANGED functions as when you shrine jump outside of a town area it doesn't seem to properly register the change as grabbing the texture files to draw a minimap at that time doesn't seem to work. You have to use reloadui to correctly change.

Last edited by Xrystal : 05/09/14 at 02:36 AM.
 
05/09/14, 06:40 AM   #4
Garkin
 
Garkin's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 832
Originally Posted by LoPony View Post
Isn't is GetCurrentMapZoneIndex()/GetCurrentMapIndex() like your wished GetMapId()?
GetCurrentMapZoneIndex()
For example Cyrodiil zone index is 37. But if you open map of any of the border keeps, it will return the same zone index. So this is not usable function to identify map.

GetCurrentMapIndex()
I believe this has something to do with locations list on world map. If you try to use this function on any other map that is not listed there, it will return nil.
 
05/09/14, 08:54 AM   #5
Xrystal
caritas omnia vincit
 
Xrystal's Avatar
Premium Member
AddOn Author - Click to view addons
Join Date: Feb 2014
Posts: 369
Originally Posted by Garkin View Post
GetCurrentMapZoneIndex()
For example Cyrodiil zone index is 37. But if you open map of any of the border keeps, it will return the same zone index. So this is not usable function to identify map.

GetCurrentMapIndex()
I believe this has something to do with locations list on world map. If you try to use this function on any other map that is not listed there, it will return nil.
Actually, GetCurrentMapIndex returns a number that reflects the id of the Map as the following test code I have been running and its result. The GetCurrentMapZoneIndex function seems to always return 9 which coincidently is the number of locations listed in each zone so this might be what you meant.:

Lua Code:
  1. local mapCount = GetNumMaps()
  2.     for i = 1,mapCount do
  3.         local mapZoneName, mapZoneMapType, mapZoneMapContentType = GetMapInfo(i)
  4.         local numLocations = GetNumMapLocations(i)
  5.         ChatMsg:AddMessage(string.format("ID: %d - Name: %s - Locations: %d",i,mapZoneName,numLocations))
  6.     end
  7.     local mapIndex,mapZoneIndex,mapName
  8.     mapIndex = GetCurrentMapIndex()
  9.     mapZoneIndex = GetCurrentMapZoneIndex()
  10.     mapName = GetMapName() 
  11.     ChatMsg:AddMessage(string.format("Before: MapIndex: %s - MapZoneIndex: %s - MapName: %s",tostring(mapIndex),tostring(mapZoneIndex),tostring(mapName)))
  12.     SetMapToPlayerLocation()
  13.     mapIndex = GetCurrentMapIndex()
  14.     mapZoneIndex = GetCurrentMapZoneIndex()
  15.     mapName = GetMapName() 
  16.     ChatMsg:AddMessage(string.format("After: MapIndex: %s - MapZoneIndex: %s - MapName: %s",tostring(mapIndex),tostring(mapZoneIndex),tostring(mapName)))

Results:
1 - Tamriel - 9
2 - Glenumbra - 9
3 - Rivenspire - 9
4 - Stormhaven - 9
5 - Alik'r Desert - 9
6 - Bangkorai - 9
7 - Grahtwood - 9
8 - Malabal Tor - 9
9 - Shadowfen - 9
10 - Deshaan - 9
11 - Stonefalls - 9
12 - The Rift - 9
13 - Eastmarch - 9
14 - Cyrodiil - 9
15 - Auridon - 9
16 - Greenshade - 9
17 - Reaper's March - 9
18 - Bal Foyen - 9
19 - Stros M'Kai - 9
20 - Betnikh - 9
21 - Khenarthi's Roost - 9
22 - Bleakrock Isle - 9
23 - Coldharbour - 9
24 - Oblivion - 9

When first logging in:
Before: MapIndex: nil - ZoneIndex: 9 - Davon's Watch
After: MapIndex: nil - ZoneIndex: 9 - Davon's Watch

Port to Hrogar's Hold:
ZoneChanged:
Before MapIndex:nil - ZoneIndex: 9 - Davon's Watch
After MapIndex: 11 - ZoneIndex: 9 - Stonefalls
ZoneChanged:
Before: MapIndex: 11 - ZoneIndex: 9 - Stonefalls
After: MapIndex: 11 - ZoneIndex: 9 - Stonefalls

As you can see MapIndex is getting the right information when not in a town. It could possibly be the same if you 'need the subzone' within the zone for any zone.

And now with another character:
Same ID and Names in the list but 14 instead of 9 Locations per zone
And the Before/After display is as follows:
Before: MapIndex: nil - ZoneIndex:178 - Vulkhel Guard
After: MapIndex: nil - ZoneIndex:178 - Vulkhel Guard

Port to Mathiiesin Wayshrine
Before: MapIndex:15 - ZoneIndex:178 - Auridon
After: MapIndex:nil - ZoneIndex:178 - Vulkhel Guard

Notice the 178 ZoneIndex ... I have no idea what this value is as I haven't found a function that returns anything that makes sense.

Last edited by Xrystal : 05/09/14 at 09:10 AM.
 
05/09/14, 10:16 AM   #6
dwot
 
dwot's Avatar
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 3
Originally Posted by Xrystal View Post
The GetCurrentMapZoneIndex function seems to always return 9 which coincidently is the number of locations listed in each zone so this might be what you meant.
GetCurrentMapZoneIndex definitely returns the ZoneId of the currently displayed Map. I'm using it's return in my addon. It functions as Garkin describes it.

ZoneIndex 9 is Stonefalls.
 
05/09/14, 11:32 AM   #7
Garkin
 
Garkin's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 832
Originally Posted by Xrystal View Post
Notice the 178 ZoneIndex ... I have no idea what this value is as I haven't found a function that returns anything that makes sense.
ZoneIndex 178 is Auridon.

A few ZoneIndexes I got from function GetCurrentMapZoneIndex():
zoneID = {
[2] = "Glenumbra",
[4] = "Stormhaven",
[5] = "Rivenspire",
[9] = "Stonefalls",
[10] = "Deshaan",
[11] = "Malabal Tor",
[14] = "Bangkorai",
[15] = "Eastmarch",
[16] = "The Rift",
[17] = "Alik'r Desert",
[18] = "Greenshade",
[19] = "Shadowfen",
[37] = "Cyrodiil",
[99] = "Eyevea",
[109] = "Bleakrock Isle",
[110] = "Bal Foyen",
[154] = "Coldharbour",
[178] = "Auridon",
[179] = "Reaper's March",
[180] = "Grahtwood",
[292] = "Stros M'Kai",
[293] = "Betnikh",
[294] = "Khenarthi's Roost",
[193] = "Entila's Folly",
}
(zoneID cannot be used because towns has the same ID as zone maps)
 
05/09/14, 12:56 PM   #8
Kentarii
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 42
I use zoneIndex a few places in my QuestJournal since some API methods only return zoneIndex.

Lua Code:
  1. local zones = {
  2.     ["en"] = {
  3.         -- Aldmeri Dominion
  4.         ["178"] = "Auridon",
  5.         ["180"] = "Grahtwood",
  6.         ["18"]  = "Greenshade",
  7.         ["294"] = "Khenarthi's Roost",
  8.         ["11"]  = "Malabal Tor",
  9.         ["179"] = "Reaper's March",
  10.         -- Daggerfall Covenant
  11.         ["17"]  = "Alik'r Desert",
  12.         ["14"]  = "Bangkorai",
  13.         ["2"]   = "Glenumbra",
  14.         ["5"]   = "Rivenspire",
  15.         ["4"]   = "Stormhaven",
  16.         ["292"] = "Stros M'kai",
  17.         -- Ebonheart Pact
  18.         ["109"] = "Bleakrock Isle",
  19.         ["10"]  = "Deshaan",
  20.         ["15"]  = "Eastmarch",
  21.         ["19"]  = "Shadowfen",
  22.         ["9"]   = "Stonefalls",
  23.         ["16"]  = "The Rift",
  24.         -- Shared zones
  25.         ["154"] = "Coldharbour",
  26.         ["37"]  = "Cyrodiil",
  27.     },
  28. }

Just open up the map and use zgoo to inspect on GetCurrentMapZoneIndex() while clicking around, you don't actually have to be in the same zone.
Code:
/zgoo GetCurrentMapZoneIndex()

Last edited by Kentarii : 05/09/14 at 01:00 PM.
 
05/09/14, 04:49 PM   #9
Xrystal
caritas omnia vincit
 
Xrystal's Avatar
Premium Member
AddOn Author - Click to view addons
Join Date: Feb 2014
Posts: 369
Hmm, the only difference that I can see between our results is that I am not opening the map just setting the map to the players location. If that makes a difference with the results that isn't good.

edit: I'll do some more tests with both the map open and closed and see if they truly do result in different values.

edit2: Okay, I am seeing what you are seeing with the map open and zgoo's values for the two functions. First function is returning the values I can use to convert into the name of the zone ( unless it is nil - which seems to be if you are in a town such as Ebonheart or Davon's Watch etc ) but the second values don't seem to have a function that converts it to the name of it.

Okay, it looks like this functionality won't help me in my newest project. Where you can gather resources in a town I wanted to be able to grab a numerical representation of the name that is stored when gathering to get the map pins and compass pins displayed properly. This is so that data can be stored online without a country factor to worry about and my addon can simply convert that number into a localised name using the in game functions. However, because the towns don't seem to have their own index number this idea won't work it seems.

edit 3: More investigation I guess to see a way round this.

Last edited by Xrystal : 05/09/14 at 06:05 PM.
 
05/17/14, 12:47 PM   #10
Garkin
 
Garkin's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 832
Originally Posted by Garkin View Post
  • Add some way to find out that map was changed. Event EVENT_ZONE_CHANGED does not mean that there is different map now.
    We have to use workarounds like check in some OnUpdate loop if there is different map name/floor index or use EVENT_QUEST_POSITION_REQUEST_COMPLETE which is accurate, but only if you have quests and you have to keep in mind that this event occurs for all quests.
It seems that it is possible to use this callback:
Lua Code:
  1. CALLBACK_MANAGER:RegisterCallback("OnWorldMapChanged",  callbackFunction)
 
05/17/14, 05:47 PM   #11
Xrystal
caritas omnia vincit
 
Xrystal's Avatar
Premium Member
AddOn Author - Click to view addons
Join Date: Feb 2014
Posts: 369
Ooh, will have to see if that works. Thanks.
 
05/31/14, 07:39 PM   #12
Garkin
 
Garkin's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 832
Originally Posted by Garkin View Post
It seems that it is possible to use this callback:
Lua Code:
  1. CALLBACK_MANAGER:RegisterCallback("OnWorldMapChanged",  callbackFunction)
Unfortunately this callback does not work. The best workaround I have found so far is:
Lua Code:
  1. --fire callback when map is changed
  2. ZO_WorldMap_AddCustomPin("Hack_to_detect_map_change",
  3.    function()
  4.       local zone,subzone = select(3,(GetMapTileTexture()):lower():find("maps/([%w%-]+)/([%w%-]+_%w+)"))
  5.       CALLBACK_MANAGER:FireCallbacks("My_MapChanged_Callback", zone, subzone)
  6.    end)
  7. ZO_WorldMap_SetCustomPinEnabled(_G["Hack_to_detect_map_change"], true)
  8.  
  9. --register to do stuff when map is changed
  10. CALLBACK_MANAGER:RegisterCallback("My_MapChanged_Callback",
  11.    function(zone, subzone)
  12.       d(zone.."/"..subzone)
  13.    end)

Last edited by Garkin : 06/05/14 at 06:27 AM.
 
10/19/14, 07:13 AM   #13
Garkin
 
Garkin's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 832
Zone names by zoneIndex

Update 5 adds a new function GetZoneNameByIndex(zoneIndex).

Here is a list of all zones on PTS:
lua Code:
  1. local mapNames = {
  2.     [1] =
  3.     {
  4.         ["en"] = "Clean Test",
  5.         ["fr"] = "Clean Test",
  6.         ["de"] = "Clean Test",
  7.     },
  8.     [2] =
  9.     {
  10.         ["en"] = "Glenumbra",
  11.         ["fr"] = "Glénumbrie^fd",
  12.         ["de"] = "Glenumbra^N,in",
  13.     },
  14.     [3] =
  15.     {
  16.         ["en"] = "Vaults of Madness",
  17.         ["fr"] = "Chambres de la folie^pfd",
  18.         ["de"] = "Kammern des Wahnsinns^pd,in",
  19.     },
  20.     [4] =
  21.     {
  22.         ["en"] = "Stormhaven",
  23.         ["fr"] = "Havre-tempête^F",
  24.         ["de"] = "Sturmhafen^N,in",
  25.     },
  26.     [5] =
  27.     {
  28.         ["en"] = "Rivenspire",
  29.         ["fr"] = "Fendretour^M",
  30.         ["de"] = "Kluftspitze^N,in",
  31.     },
  32.     [6] =
  33.     {
  34.         ["en"] = "Volenfell",
  35.         ["fr"] = "Volenfell^F",
  36.         ["de"] = "Volenfell^N,in",
  37.     },
  38.     [7] =
  39.     {
  40.         ["en"] = "Selene's Web",
  41.         ["fr"] = "toile de Sélène^fd",
  42.         ["de"] = "Selenes Netz^Ng,in",
  43.     },
  44.     [8] =
  45.     {
  46.         ["en"] = "Blackheart Haven",
  47.         ["fr"] = "havre de Cœurnoir^md",
  48.         ["de"] = "Schwarzherz-Unterschlupf^md,in",
  49.     },
  50.     [9] =
  51.     {
  52.         ["en"] = "Stonefalls",
  53.         ["fr"] = "Éboulis^pmd",
  54.         ["de"] = "Steinfälle^N,in",
  55.     },
  56.     [10] =
  57.     {
  58.         ["en"] = "Colovian Crossing",
  59.         ["fr"] = "Colovian Crossing",
  60.         ["de"] = "Colovian Crossing",
  61.     },
  62.     [11] =
  63.     {
  64.         ["en"] = "Deshaan",
  65.         ["fr"] = "Deshaan^m",
  66.         ["de"] = "Deshaan^N,in",
  67.     },
  68.     [12] =
  69.     {
  70.         ["en"] = "Malabal Tor",
  71.         ["fr"] = "Malabal Tor^M",
  72.         ["de"] = "Malabal Tor^N,in",
  73.     },
  74.     [13] =
  75.     {
  76.         ["en"] = "Darkshade Caverns",
  77.         ["fr"] = "cavernes d'Ombre-noire^pfd",
  78.         ["de"] = "Dunkelschattenkavernen^pd,in",
  79.     },
  80.     [14] =
  81.     {
  82.         ["en"] = "Blessed Crucible",
  83.         ["fr"] = "Creuset béni^md",
  84.         ["de"] = "gesegnete Feuerprobe^fdc,bei",
  85.     },
  86.     [15] =
  87.     {
  88.         ["en"] = "Bangkorai",
  89.         ["fr"] = "Bangkoraï^M",
  90.         ["de"] = "Bangkorai^N,in",
  91.     },
  92.     [16] =
  93.     {
  94.         ["en"] = "Eastmarch",
  95.         ["fr"] = "Estemarche^F",
  96.         ["de"] = "Ostmarsch^N,in",
  97.     },
  98.     [17] =
  99.     {
  100.         ["en"] = "The Rift",
  101.         ["fr"] = "Brèche^fd",
  102.         ["de"] = "Rift^N,in",
  103.     },
  104.     [18] =
  105.     {
  106.         ["en"] = "Alik'r Desert",
  107.         ["fr"] = "désert d'Alik'r^md",
  108.         ["de"] = "Alik'r-Wüste^fd,in",
  109.     },
  110.     [19] =
  111.     {
  112.         ["en"] = "Greenshade",
  113.         ["fr"] = "Prasin^M",
  114.         ["de"] = "Grünschatten^N,in",
  115.     },
  116.     [20] =
  117.     {
  118.         ["en"] = "Shadowfen",
  119.         ["fr"] = "Fangeombre^F",
  120.         ["de"] = "Schattenfenn^N,in",
  121.     },
  122.     [21] =
  123.     {
  124.         ["en"] = "Root Sunder Ruins",
  125.         ["fr"] = "ruines de Scinderacine^pfd",
  126.         ["de"] = "Ruinen von Wurzelbruch^pd,in",
  127.     },
  128.     [22] =
  129.     {
  130.         ["en"] = "Elden Hollow",
  131.         ["fr"] = "creuset des aînés^md",
  132.         ["de"] = "Eldengrund^md,in",
  133.     },
  134.     [23] =
  135.     {
  136.         ["en"] = "Crypt of Hearts",
  137.         ["fr"] = "Crypte des cœurs^fd",
  138.         ["de"] = "Krypta der Herzen^fd,in",
  139.     },
  140.     [24] =
  141.     {
  142.         ["en"] = "Tempest Island",
  143.         ["fr"] = "île des Tempêtes^fd",
  144.         ["de"] = "Orkaninsel^fd,auf",
  145.     },
  146.     [25] =
  147.     {
  148.         ["en"] = "Sanguine's Demesne",
  149.         ["fr"] = "réaume de Sanghin^md",
  150.         ["de"] = "Sanguines Domäne^Fg,in",
  151.     },
  152.     [26] =
  153.     {
  154.         ["en"] = "Rulanyil's Fall",
  155.         ["fr"] = "chute des Rulanyil^fd",
  156.         ["de"] = "Rulanyils Fall^Ng,in",
  157.     },
  158.     [27] =
  159.     {
  160.         ["en"] = "Crimson Cove",
  161.         ["fr"] = "crique écarlate^fd",
  162.         ["de"] = "Blutgrotten^pd,in",
  163.     },
  164.     [28] =
  165.     {
  166.         ["en"] = "Bonesnap Ruins",
  167.         ["fr"] = "ruines de l'Esquille^pfd",
  168.         ["de"] = "Knochenknacker-Ruinen^pd,in",
  169.     },
  170.     [29] =
  171.     {
  172.         ["en"] = "Spindleclutch",
  173.         ["fr"] = "Tressefuseau^F",
  174.         ["de"] = "Spindeltiefen^pd,in",
  175.     },
  176.     [30] =
  177.     {
  178.         ["en"] = "Wayrest Sewers",
  179.         ["fr"] = "égouts d'Haltevoie^pmd",
  180.         ["de"] = "Kanalisation von Wegesruh^fd,in",
  181.     },
  182.     [31] =
  183.     {
  184.         ["en"] = "Arx Corinium",
  185.         ["fr"] = "Arx Corinium^M",
  186.         ["de"] = "Arx Corinium^N,in",
  187.     },
  188.     [32] =
  189.     {
  190.         ["en"] = "Emeric's Dream",
  191.         ["fr"] = "Rêve d'Émeric^md",
  192.         ["de"] = "Emerics Traum^Ng,in",
  193.     },
  194.     [33] =
  195.     {
  196.         ["en"] = "Obsidian Scar",
  197.         ["fr"] = "cicatrice obsidienne^fd",
  198.         ["de"] = "Obsidiannarbe^fd,in",
  199.     },
  200.     [34] =
  201.     {
  202.         ["en"] = "Cath Bedraud",
  203.         ["fr"] = "Cath Bedraud^F",
  204.         ["de"] = "Cath Bedraud^N,in",
  205.     },
  206.     [35] =
  207.     {
  208.         ["en"] = "Bisnensel",
  209.         ["fr"] = "Bisnensel^M",
  210.         ["de"] = "Bisnensel^N,in",
  211.     },
  212.     [36] =
  213.     {
  214.         ["en"] = "Razak's Wheel",
  215.         ["fr"] = "Roue de Razak^fd",
  216.         ["de"] = "Razaks Rad^N,in",
  217.     },
  218.     [37] =
  219.     {
  220.         ["en"] = "City of Ash",
  221.         ["fr"] = "Cité des cendres^fd",
  222.         ["de"] = "Stadt der Asche^fd,in",
  223.     },
  224.     [38] =
  225.     {
  226.         ["en"] = "Cyrodiil",
  227.         ["fr"] = "Cyrodiil^F",
  228.         ["de"] = "Cyrodiil^N,in",
  229.     },
  230.     [39] =
  231.     {
  232.         ["en"] = "Loriasel",
  233.         ["fr"] = "Loriasel^M",
  234.         ["de"] = "Loriasel^N,in",
  235.     },
  236.     [40] =
  237.     {
  238.         ["en"] = "The Apothecarium",
  239.         ["fr"] = "Apothicarium^md",
  240.         ["de"] = "Apothecarium^nd,in",
  241.     },
  242.     [41] =
  243.     {
  244.         ["en"] = "Tribunal Temple",
  245.         ["fr"] = "temple du Tribunal^md",
  246.         ["de"] = "Tempel des Tribunals^m,in",
  247.     },
  248.     [42] =
  249.     {
  250.         ["en"] = "Reservoir of Souls",
  251.         ["fr"] = "réservoir des âmes^md",
  252.         ["de"] = "Reservoir der Seelen^md,in",
  253.     },
  254.     [43] =
  255.     {
  256.         ["en"] = "Ash Mountain",
  257.         ["fr"] = "Mont cendreux^md",
  258.         ["de"] = "Aschberg^md,in",
  259.     },
  260.     [44] =
  261.     {
  262.         ["en"] = "Virak Keep",
  263.         ["fr"] = "fort Virak^M",
  264.         ["de"] = "Burg Virak^fd,in",
  265.     },
  266.     [45] =
  267.     {
  268.         ["en"] = "Tormented Spire",
  269.         ["fr"] = "Flèche tourmentée^fd",
  270.         ["de"] = "gepeinigte Spitze^fd,auf",
  271.     },
  272.     [46] =
  273.     {
  274.         ["en"] = "The Harborage",
  275.         ["fr"] = "port^md",
  276.         ["de"] = "Zuflucht^fd,in",
  277.     },
  278.     [47] =
  279.     {
  280.         ["en"] = "The Foundry of Woe",
  281.         ["fr"] = "Fonderie du malheur^fd",
  282.         ["de"] = "Gießerei des Leids^fd,in",
  283.     },
  284.     [48] =
  285.     {
  286.         ["en"] = "Castle of the Worm",
  287.         ["fr"] = "château du Ver^md",
  288.         ["de"] = "Schloss des Wurms^nd",
  289.     },
  290.     [49] =
  291.     {
  292.         ["en"] = "Cheesemonger's Hollow",
  293.         ["fr"] = "creux du Frometonneur^md",
  294.         ["de"] = "Käsekrämerkerbe^fd,in",
  295.     },
  296.     [50] =
  297.     {
  298.         ["en"] = "Mzeneldt",
  299.         ["fr"] = "Mzeneldt^M",
  300.         ["de"] = "Mzeneldt^N,in",
  301.     },
  302.     [51] =
  303.     {
  304.         ["en"] = "The Earth Forge",
  305.         ["fr"] = "Forgeterre^fd",
  306.         ["de"] = "Erdschmiede^fd,in",
  307.     },
  308.     [52] =
  309.     {
  310.         ["en"] = "Halls of Submission",
  311.         ["fr"] = "salles de la soumission^pfd",
  312.         ["de"] = "Hallen der Unterwerfung^pd,in",
  313.     },
  314.     [53] =
  315.     {
  316.         ["en"] = "Mournhold Sewers",
  317.         ["fr"] = "égouts de Longsanglot^mpd",
  318.         ["de"] = "Kanalisation von Gramfeste^fd,in",
  319.     },
  320.     [54] =
  321.     {
  322.         ["en"] = "Sunscale Ruins",
  323.         ["fr"] = "ruines de Solécaille^pfd",
  324.         ["de"] = "Sonnenschuppenruinen^pd,in",
  325.     },
  326.     [55] =
  327.     {
  328.         ["en"] = "Lair of the Skin Stealer",
  329.         ["fr"] = "Antre du mangeur de peau^md",
  330.         ["de"] = "Versteck des Hauträubers^nd,in",
  331.     },
  332.     [56] =
  333.     {
  334.         ["en"] = "Vision of the Hist",
  335.         ["fr"] = "vision de l'Hist^f",
  336.         ["de"] = "Vision des Hist^fd,in",
  337.     },
  338.     [57] =
  339.     {
  340.         ["en"] = "Crow's Wood",
  341.         ["fr"] = "bois du corbeau^md",
  342.         ["de"] = "Krähenwald^M,in",
  343.     },
  344.     [58] =
  345.     {
  346.         ["en"] = "The Halls of Torment",
  347.         ["fr"] = "salles du Tourment^pfd",
  348.         ["de"] = "Hallen der Qual^pd,in",
  349.     },
  350.     [59] =
  351.     {
  352.         ["en"] = "Circus of Cheerful Slaughter",
  353.         ["fr"] = "cirque du joyeux massacre^md",
  354.         ["de"] = "Zirkus des Fröhlichen Abschlachtens^md,in",
  355.     },
  356.     [60] =
  357.     {
  358.         ["en"] = "Chateau of the Ravenous Rodent",
  359.         ["fr"] = "château du Rongeur affamé^md",
  360.         ["de"] = "Schloss der Nimmersatten Nager^nd,in",
  361.     },
  362.     [61] =
  363.     {
  364.         ["en"] = "Dresan Keep",
  365.         ["fr"] = "donjon de Drèsan^md",
  366.         ["de"] = "Burg Dresan^fd,in",
  367.     },
  368.     [62] =
  369.     {
  370.         ["en"] = "Tomb of Lost Kings",
  371.         ["fr"] = "tombe des rois perdus^fd",
  372.         ["de"] = "Grabmal der vergessenen Könige^nd,bei",
  373.     },
  374.     [63] =
  375.     {
  376.         ["en"] = "Breagha-Fin",
  377.         ["fr"] = "Bréagha-Fin^M",
  378.         ["de"] = "Breagha-Fin^N,in",
  379.     },
  380.     [64] =
  381.     {
  382.         ["en"] = "The Sunken Road",
  383.         ["fr"] = "route encaissée^fd",
  384.         ["de"] = "Tiefenpfad^md,auf",
  385.     },
  386.     [65] =
  387.     {
  388.         ["en"] = "Bangkorai Garrison",
  389.         ["fr"] = "garnison de Bangkoraï^fd",
  390.         ["de"] = "Bangkorai-Garnison^fd,in",
  391.     },
  392.     [66] =
  393.     {
  394.         ["en"] = "Nilata Ruins",
  395.         ["fr"] = "ruines de Nilata^pfd",
  396.         ["de"] = "Ruinen von Nilata^pd,in",
  397.     },
  398.     [67] =
  399.     {
  400.         ["en"] = "Hall of Heroes",
  401.         ["fr"] = "panthéon des Héros^md",
  402.         ["de"] = "Halle der Helden^fd,in",
  403.     },
  404.     [68] =
  405.     {
  406.         ["en"] = "Silyanorn Ruins",
  407.         ["fr"] = "ruines de Silyanorn^pfd",
  408.         ["de"] = "Ruinen von Silyanorn^pd,in",
  409.     },
  410.     [69] =
  411.     {
  412.         ["en"] = "Ruins of Ten-Maur-Wolk",
  413.         ["fr"] = "ruines de Ten-Maur-Wolk^pfd",
  414.         ["de"] = "Ruinen von Ten-Maur-Wolk^pd,in",
  415.     },
  416.     [70] =
  417.     {
  418.         ["en"] = "Odious Chapel",
  419.         ["fr"] = "chapelle odieuse^fd",
  420.         ["de"] = "abstoßende Kapelle^fdc",
  421.     },
  422.     [71] =
  423.     {
  424.         ["en"] = "Temple of Sul",
  425.         ["fr"] = "temple de Sul^m",
  426.         ["de"] = "Tempel von Sul^md,in",
  427.     },
  428.     [72] =
  429.     {
  430.         ["en"] = "White Rose Prison Dungeon",
  431.         ["fr"] = "donjon de la prison de Blanche-rose^md",
  432.         ["de"] = "Verlies des Weißrosengefängnisses^md,in",
  433.     },
  434.     [73] =
  435.     {
  436.         ["en"] = "Impervious Vault",
  437.         ["fr"] = "armurerie hermétique^fd",
  438.         ["de"] = "undurchdringliches Gewölbe^nd,in",
  439.     },
  440.     [74] =
  441.     {
  442.         ["en"] = "Salas En",
  443.         ["fr"] = "Salas En^M",
  444.         ["de"] = "Salas En^N,in",
  445.     },
  446.     [75] =
  447.     {
  448.         ["en"] = "Kulati Mines",
  449.         ["fr"] = "mines de Kulati^pfd",
  450.         ["de"] = "Kulati-Minen^pd,in",
  451.     },
  452.     [76] =
  453.     {
  454.         ["en"] = "House Indoril Crypt",
  455.         ["fr"] = "crypte de la maison Indoril^fd",
  456.         ["de"] = "Krypta des Hauses Indoril^fd,in",
  457.     },
  458.     [77] =
  459.     {
  460.         ["en"] = "Fort Arand Dungeons",
  461.         ["fr"] = "donjon du fort Arand^pmd",
  462.         ["de"] = "Verlies der Feste Arand^nd,in",
  463.     },
  464.     [78] =
  465.     {
  466.         ["en"] = "Coral Heart Chamber",
  467.         ["fr"] = "chambre du cœur de corail^fd",
  468.         ["de"] = "Kammer des Korallenherzens^fd,in",
  469.     },
  470.     [79] =
  471.     {
  472.         ["en"] = "Heimlyn Keep Reliquary",
  473.         ["fr"] = "reliquaire de la tour d'Heimlyn^md",
  474.         ["de"] = "Reliquiar der Heimlyn-Zuflucht^nd,in",
  475.     },
  476.     [80] =
  477.     {
  478.         ["en"] = "Iliath Temple Mines",
  479.         ["fr"] = "mines du temple d'Iliath^pfd",
  480.         ["de"] = "Minen des Iliath-Tempels^pd,in",
  481.     },
  482.     [81] =
  483.     {
  484.         ["en"] = "House Dres Crypts",
  485.         ["fr"] = "cryptes de la maison Drès^pfd",
  486.         ["de"] = "Krypten des Hauses Dres^pd,in",
  487.     },
  488.     [82] =
  489.     {
  490.         ["en"] = "Mzithumz",
  491.         ["fr"] = "Mzithumz^F",
  492.         ["de"] = "Mzithumz^N,in",
  493.     },
  494.     [83] =
  495.     {
  496.         ["en"] = "Tal'Deic Crypts",
  497.         ["fr"] = "cryptes Tal'Deic^pfd",
  498.         ["de"] = "Krypten der Festung Tal'Deic^pd,in",
  499.     },
  500.     [84] =
  501.     {
  502.         ["en"] = "Narsis Ruins",
  503.         ["fr"] = "ruines de Narsis^pfd",
  504.         ["de"] = "Ruinen von Narsis^pd,in",
  505.     },
  506.     [85] =
  507.     {
  508.         ["en"] = "The Hollow Cave",
  509.         ["fr"] = "Caverne creuse^fd",
  510.         ["de"] = "Senkenhöhle^fd,in",
  511.     },
  512.     [86] =
  513.     {
  514.         ["en"] = "Shad Astula Underhalls",
  515.         ["fr"] = "sous-sols de Shad Astula^pmd",
  516.         ["de"] = "Untergewölbe von Shad Astula^nd,in",
  517.     },
  518.     [87] =
  519.     {
  520.         ["en"] = "Deepcrag Den",
  521.         ["fr"] = "mine de Roc-fosse^fd",
  522.         ["de"] = "Tiefklippengrube^fd,in",
  523.     },
  524.     [88] =
  525.     {
  526.         ["en"] = "Bthanual",
  527.         ["fr"] = "Bthanual^F",
  528.         ["de"] = "Bthanual^N,in",
  529.     },
  530.     [89] =
  531.     {
  532.         ["en"] = "Crosswych Mine",
  533.         ["fr"] = "mine de Croissalant^fd",
  534.         ["de"] = "Mine von Kreuzgrat^fd,in",
  535.     },
  536.     [90] =
  537.     {
  538.         ["en"] = "Vaults of Vernim",
  539.         ["fr"] = "Caveaux de Vernim^mpd",
  540.         ["de"] = "Gewölbe von Vernim^pd,in",
  541.     },
  542.     [91] =
  543.     {
  544.         ["en"] = "Arcwind Point",
  545.         ["fr"] = "Dent de Faldar^fd",
  546.         ["de"] = "Bogenwindspitze^fd,an",
  547.     },
  548.     [92] =
  549.     {
  550.         ["en"] = "Trolhetta",
  551.         ["fr"] = "Trolhetta^M",
  552.         ["de"] = "Trolhetta^N,in",
  553.     },
  554.     [93] =
  555.     {
  556.         ["en"] = "Lost Knife Cave",
  557.         ["fr"] = "grotte du Couteau perdu^fd",
  558.         ["de"] = "Messerfallhöhle^fd,in",
  559.     },
  560.     [94] =
  561.     {
  562.         ["en"] = "Bonestrewn Barrow",
  563.         ["fr"] = "tertre de l'Ossuaire^md",
  564.         ["de"] = "Beinfeld-Hügelgrab^md,in",
  565.     },
  566.     [95] =
  567.     {
  568.         ["en"] = "Wittestadr Crypts",
  569.         ["fr"] = "cryptes de Wittestadr^pfd",
  570.         ["de"] = "Krypten von Wittestadr^pd,in",
  571.     },
  572.     [96] =
  573.     {
  574.         ["en"] = "Mistwatch Crevasse",
  575.         ["fr"] = "Crevasse d'Arquebrumes^fd",
  576.         ["de"] = "Nebelwachtspalte^fd,in",
  577.     },
  578.     [97] =
  579.     {
  580.         ["en"] = "Fort Morvunskar",
  581.         ["fr"] = "fort Morvunskar^M",
  582.         ["de"] = "Feste Morvunskar^fd,in",
  583.     },
  584.     [98] =
  585.     {
  586.         ["en"] = "Mzulft",
  587.         ["fr"] = "Mzulft^F",
  588.         ["de"] = "Mzulft^N,in",
  589.     },
  590.     [99] =
  591.     {
  592.         ["en"] = "Cragwallow",
  593.         ["fr"] = "Bourberoc^M",
  594.         ["de"] = "Felssuhle^N,in",
  595.     },
  596.     [100] =
  597.     {
  598.         ["en"] = "Eyevea",
  599.         ["fr"] = "Eyévéa^F",
  600.         ["de"] = "Augvea^N,in",
  601.     },
  602.     [101] =
  603.     {
  604.         ["en"] = "Stormwarden Undercroft",
  605.         ["fr"] = "crypte des garde-tempête^fd",
  606.         ["de"] = "Sturmwächter-Gewölbe^nd,in",
  607.     },
  608.     [102] =
  609.     {
  610.         ["en"] = "Abamath Ruins",
  611.         ["fr"] = "ruines d'Abamath^pfd",
  612.         ["de"] = "Ruinen von Abamath^pd,in",
  613.     },
  614.     [103] =
  615.     {
  616.         ["en"] = "Shrine of the Black Maw",
  617.         ["fr"] = "autel de la Gueule noire^md",
  618.         ["de"] = "Schrein des Schwarzen Schlunds^md,an",
  619.     },
  620.     [104] =
  621.     {
  622.         ["en"] = "Broken Tusk",
  623.         ["fr"] = "Défense brisée^F",
  624.         ["de"] = "Bruchhauer^pd,an",
  625.     },
  626.     [105] =
  627.     {
  628.         ["en"] = "Atanaz Ruins",
  629.         ["fr"] = "ruines d'Atanaz^pfd",
  630.         ["de"] = "Ruinen von Atanaz^pd,in",
  631.     },
  632.     [106] =
  633.     {
  634.         ["en"] = "Chid-Moska Ruins",
  635.         ["fr"] = "ruines de Chid-Moska^pfd",
  636.         ["de"] = "Ruinen von Chid-Moska^pd,in",
  637.     },
  638.     [107] =
  639.     {
  640.         ["en"] = "Onkobra Kwama Mine",
  641.         ["fr"] = "mine à kwamas d'Onkobra^fd",
  642.         ["de"] = "Kwamamine von Onkobra^fd,in",
  643.     },
  644.     [108] =
  645.     {
  646.         ["en"] = "Gandranen Ruins",
  647.         ["fr"] = "ruines de Gandranen^pfd",
  648.         ["de"] = "Ruinen von Gandranen^pd,in",
  649.     },
  650.     [109] =
  651.     {
  652.         ["en"] = "Pregame",
  653.         ["fr"] = "Pregame",
  654.         ["de"] = "Pregame",
  655.     },
  656.     [110] =
  657.     {
  658.         ["en"] = "Bleakrock Isle",
  659.         ["fr"] = "île de Morneroc^fd",
  660.         ["de"] = "Ödfels^N,auf",
  661.     },
  662.     [111] =
  663.     {
  664.         ["en"] = "Bal Foyen",
  665.         ["fr"] = "Bal Foyen^M",
  666.         ["de"] = "Bal Foyen^N,in",
  667.     },
  668.     [112] =
  669.     {
  670.         ["en"] = "Fungal Grotto",
  671.         ["fr"] = "Champignonnière^fd",
  672.         ["de"] = "Pilzgrotte^fd,vor",
  673.     },
  674.     [113] =
  675.     {
  676.         ["en"] = "Bad Man's Hallows",
  677.         ["fr"] = "sanctuaire du Malandrin^md",
  678.         ["de"] = "Weihegrund des Finsteren^md,vor",
  679.     },
  680.     [114] =
  681.     {
  682.         ["en"] = "Inner Sea Armature",
  683.         ["fr"] = "Nef de la mer intérieure^fd",
  684.         ["de"] = "Armatur der Inneren See^fd,in",
  685.     },
  686.     [115] =
  687.     {
  688.         ["en"] = "Mephala's Nest",
  689.         ["fr"] = "nid de Méphala^md",
  690.         ["de"] = "Mephalas Nest^Ng,in",
  691.     },
  692.     [116] =
  693.     {
  694.         ["en"] = "Softloam Cavern",
  695.         ["fr"] = "caverne d'humus^fd",
  696.         ["de"] = "Feinlehmkaverne^fd,in",
  697.     },
  698.     [117] =
  699.     {
  700.         ["en"] = "Hightide Hollow",
  701.         ["fr"] = "creux des marées^md",
  702.         ["de"] = "Flutwassergrube^fd,in",
  703.     },
  704.     [118] =
  705.     {
  706.         ["en"] = "Sheogorath's Tongue",
  707.         ["fr"] = "langue de Shéogorath^fd",
  708.         ["de"] = "Sheogoraths Zunge^Ng,in",
  709.     },
  710.     [119] =
  711.     {
  712.         ["en"] = "Emberflint Mine",
  713.         ["fr"] = "mine de Braisine^fd",
  714.         ["de"] = "Glutkieselmine^fd,in",
  715.     },
  716.     [120] =
  717.     {
  718.         ["en"] = "Forgotten Crypts",
  719.         ["fr"] = "cryptes oubliées^pfd",
  720.         ["de"] = "vergessene Krypten^pdc,in",
  721.     },
  722.     [121] =
  723.     {
  724.         ["en"] = "Lost City of the Na-Totambu",
  725.         ["fr"] = "cité perdue de Na-Totambu^fd",
  726.         ["de"] = "verlorene Stadt der Na-Totambu^fdc,in",
  727.     },
  728.     [122] =
  729.     {
  730.         ["en"] = "Ilessan Tower",
  731.         ["fr"] = "tour d'Ilessan^fd",
  732.         ["de"] = "ilessanischer Turm^md,bei",
  733.     },
  734.     [123] =
  735.     {
  736.         ["en"] = "Silumm",
  737.         ["fr"] = "Silumm^F",
  738.         ["de"] = "Silumm^N,in",
  739.     },
  740.     [124] =
  741.     {
  742.         ["en"] = "The Mines of Khuras",
  743.         ["fr"] = "mines de Khuras^pfd",
  744.         ["de"] = "Minen von Khuras^pd,in",
  745.     },
  746.     [125] =
  747.     {
  748.         ["en"] = "Enduum",
  749.         ["fr"] = "Enduum^M",
  750.         ["de"] = "Enduum^N,in",
  751.     },
  752.     [126] =
  753.     {
  754.         ["en"] = "Ebon Crypt",
  755.         ["fr"] = "crypte d'ébène^fd",
  756.         ["de"] = "Ebenerzgruft^fd,in",
  757.     },
  758.     [127] =
  759.     {
  760.         ["en"] = "Cryptwatch Fort",
  761.         ["fr"] = "fort de Veillecaveau^md",
  762.         ["de"] = "Feste Gruftwacht^fd,in",
  763.     },
  764.     [128] =
  765.     {
  766.         ["en"] = "Portdun Watch",
  767.         ["fr"] = "vigie de Beigeport^fd",
  768.         ["de"] = "Falbhafenwacht^fd,in",
  769.     },
  770.     [129] =
  771.     {
  772.         ["en"] = "Koeglin Mine",
  773.         ["fr"] = "mine de Koeglin^fd",
  774.         ["de"] = "Mine von Koeglin^fd,in",
  775.     },
  776.     [130] =
  777.     {
  778.         ["en"] = "Pariah Catacombs",
  779.         ["fr"] = "catacombes du Paria^pfd",
  780.         ["de"] = "Katakomben der Ausgestoßenen^fd,in",
  781.     },
  782.     [131] =
  783.     {
  784.         ["en"] = "Farangel's Delve",
  785.         ["fr"] = "galerie de Farangel^fd",
  786.         ["de"] = "Farangels Verweilen^Ng,in",
  787.     },
  788.     [132] =
  789.     {
  790.         ["en"] = "Bearclaw Mine",
  791.         ["fr"] = "mine d'Ursegriffe^fd",
  792.         ["de"] = "Bärenprankenmine^fd,in",
  793.     },
  794.     [133] =
  795.     {
  796.         ["en"] = "Norvulk Ruins",
  797.         ["fr"] = "ruines de Norvulk^pfd",
  798.         ["de"] = "Ruinen von Norvulk^fd,in",
  799.     },
  800.     [134] =
  801.     {
  802.         ["en"] = "Crestshade Mine",
  803.         ["fr"] = "mine de Crêtombre^fd",
  804.         ["de"] = "Mine von Schattenkamm^fd,in",
  805.     },
  806.     [135] =
  807.     {
  808.         ["en"] = "Flyleaf Catacombs",
  809.         ["fr"] = "catacombes de Gardecouleur^pfd",
  810.         ["de"] = "Deckblattkatakomben^pd,in",
  811.     },
  812.     [136] =
  813.     {
  814.         ["en"] = "Tribulation Crypt",
  815.         ["fr"] = "crypte des tribulations^fd",
  816.         ["de"] = "Kummerkrypta^fd,in",
  817.     },
  818.     [137] =
  819.     {
  820.         ["en"] = "Orc's Finger Ruins",
  821.         ["fr"] = "ruines du Doigt d'Orque^pfd",
  822.         ["de"] = "Ruinen von Orkfinger^pd,in",
  823.     },
  824.     [138] =
  825.     {
  826.         ["en"] = "Erokii Ruins",
  827.         ["fr"] = "ruines d'Erokii^pfd",
  828.         ["de"] = "Ruinen von Erokii^pd,in",
  829.     },
  830.     [139] =
  831.     {
  832.         ["en"] = "Hildune's Secret Refuge",
  833.         ["fr"] = "refuge secret d'Hildune^fd",
  834.         ["de"] = "Hildunes geheime Zuflucht^Fg,in",
  835.     },
  836.     [140] =
  837.     {
  838.         ["en"] = "Santaki",
  839.         ["fr"] = "Santaki^M",
  840.         ["de"] = "Santaki^N,in",
  841.     },
  842.     [141] =
  843.     {
  844.         ["en"] = "Divad's Chagrin Mine",
  845.         ["fr"] = "mine du chagrin de Divad^fd",
  846.         ["de"] = "Mine von Divads Verdruss^fd,in",
  847.     },
  848.     [142] =
  849.     {
  850.         ["en"] = "Aldunz",
  851.         ["fr"] = "Aldunz^M",
  852.         ["de"] = "Aldunz^N,in",
  853.     },
  854.     [143] =
  855.     {
  856.         ["en"] = "Coldrock Diggings",
  857.         ["fr"] = "excavations de Froideroche^pfd",
  858.         ["de"] = "Kaltfelsgrabungen^pd,in",
  859.     },
  860.     [144] =
  861.     {
  862.         ["en"] = "Sandblown Mine",
  863.         ["fr"] = "mine des Décapés^fd",
  864.         ["de"] = "sandumtoste Mine^fd,in",
  865.     },
  866.     [145] =
  867.     {
  868.         ["en"] = "Yldzuun",
  869.         ["fr"] = "Yldzuun^M",
  870.         ["de"] = "Yldzuun^N,in",
  871.     },
  872.     [146] =
  873.     {
  874.         ["en"] = "Torog's Spite",
  875.         ["fr"] = "mépris de Torog^md",
  876.         ["de"] = "Torogstrotz^N,in",
  877.     },
  878.     [147] =
  879.     {
  880.         ["en"] = "Troll's Toothpick",
  881.         ["fr"] = "Cure-dents à trolls^md",
  882.         ["de"] = "Trollzahnstocher^md,an",
  883.     },
  884.     [148] =
  885.     {
  886.         ["en"] = "Viridian Watch",
  887.         ["fr"] = "Guet viride^md",
  888.         ["de"] = "immergrüne Wacht^fdc,in",
  889.     },
  890.     [149] =
  891.     {
  892.         ["en"] = "Crypt of the Exiles",
  893.         ["fr"] = "crypte des Exilés^fd",
  894.         ["de"] = "Krypta der Verstoßenen^fd,in",
  895.     },
  896.     [150] =
  897.     {
  898.         ["en"] = "Klathzgar",
  899.         ["fr"] = "Klathzgar^F",
  900.         ["de"] = "Klathzgar^N,in",
  901.     },
  902.     [151] =
  903.     {
  904.         ["en"] = "Rubble Butte",
  905.         ["fr"] = "Remblai des gravats^md",
  906.         ["de"] = "Trümmersporn^md,an",
  907.     },
  908.     [152] =
  909.     {
  910.         ["en"] = "Hall of the Dead",
  911.         ["fr"] = "Nécropole^fd",
  912.         ["de"] = "Halle der Toten^fd,in",
  913.     },
  914.     [153] =
  915.     {
  916.         ["en"] = "The Lion's Den",
  917.         ["fr"] = "Antre du lion^fd",
  918.         ["de"] = "Löwengrube^fd,in",
  919.     },
  920.     [154] =
  921.     {
  922.         ["en"] = "Skuldafn",
  923.         ["fr"] = "Skuldafn^M",
  924.         ["de"] = "Skuldafn^N,in",
  925.     },
  926.     [155] =
  927.     {
  928.         ["en"] = "Coldharbour",
  929.         ["fr"] = "Havreglace^M",
  930.         ["de"] = "Kalthafen^N,in",
  931.     },
  932.     [156] =
  933.     {
  934.         ["en"] = "Hall of Trials",
  935.         ["fr"] = "palais des Épreuves^md",
  936.         ["de"] = "Halle der Prüfungen^fd,in",
  937.     },
  938.     [157] =
  939.     {
  940.         ["en"] = "Cradlecrush Arena",
  941.         ["fr"] = "arène de Berceroc^fd",
  942.         ["de"] = "Arena von Wiegenbruch^fd,in",
  943.     },
  944.     [158] =
  945.     {
  946.         ["en"] = "The Chill Hollow",
  947.         ["fr"] = "Grotte aux frimas^fd",
  948.         ["de"] = "Frostsenke^fd,in",
  949.     },
  950.     [159] =
  951.     {
  952.         ["en"] = "Icehammer's Vault",
  953.         ["fr"] = "chambre de Glacemartel^fd",
  954.         ["de"] = "Eishammers Gruft^Fg,in",
  955.     },
  956.     [160] =
  957.     {
  958.         ["en"] = "Old Sord's Cave",
  959.         ["fr"] = "caverne du vieux Sord^fd",
  960.         ["de"] = "Höhle des Alten Sord^fd,in",
  961.     },
  962.     [161] =
  963.     {
  964.         ["en"] = "The Frigid Grotto",
  965.         ["fr"] = "Grotte froide^fd",
  966.         ["de"] = "eisige Grotte^fdc,in",
  967.     },
  968.     [162] =
  969.     {
  970.         ["en"] = "Stormcrag Crypt",
  971.         ["fr"] = "crypte de Cime-foudre^fd",
  972.         ["de"] = "Sturmhang-Krypta^fd,in",
  973.     },
  974.     [163] =
  975.     {
  976.         ["en"] = "The Bastard's Tomb",
  977.         ["fr"] = "tombe du Bâtard^fd",
  978.         ["de"] = "Grabmal des Bastards^nd,in",
  979.     },
  980.     [164] =
  981.     {
  982.         ["en"] = "Library of Dusk",
  983.         ["fr"] = "Bibliothèque crépusculaire^fd",
  984.         ["de"] = "Bibliothek der Dämmerung^fd,in",
  985.     },
  986.     [165] =
  987.     {
  988.         ["en"] = "Lightless Oubliette",
  989.         ["fr"] = "Oubliettes obscures^pfd",
  990.         ["de"] = "lichtloses Kerkerloch^ndc,in",
  991.     },
  992.     [166] =
  993.     {
  994.         ["en"] = "Lightless Cell",
  995.         ["fr"] = "Cellule obscure^fd",
  996.         ["de"] = "lichtlose Zelle^fdc,in",
  997.     },
  998.     [167] =
  999.     {
  1000.         ["en"] = "The Black Forge",
  1001.         ["fr"] = "Forge noire^fd",
  1002.         ["de"] = "schwarze Schmiede^fdc,in",
  1003.     },
  1004.     [168] =
  1005.     {
  1006.         ["en"] = "The Vile Laboratory",
  1007.         ["fr"] = "Laboratoire infâme^md",
  1008.         ["de"] = "abscheuliches Laboratorium^ndc,in",
  1009.     },
  1010.     [169] =
  1011.     {
  1012.         ["en"] = "Reaver Citadel Pyramid",
  1013.         ["fr"] = "pyramide de la Citadelle de l'écorcheur^fd",
  1014.         ["de"] = "Pyramide der Plündererzitadelle^fd,in",
  1015.     },
  1016.     [170] =
  1017.     {
  1018.         ["en"] = "The Mooring",
  1019.         ["fr"] = "Amarrage^md",
  1020.         ["de"] = "Ankerplatz^md,an",
  1021.     },
  1022.     [171] =
  1023.     {
  1024.         ["en"] = "Manor of Revelry",
  1025.         ["fr"] = "manoir des réjouissances^md",
  1026.         ["de"] = "Herrenhaus der Lustbarkeiten^nd,bei",
  1027.     },
  1028.     [172] =
  1029.     {
  1030.         ["en"] = "The Endless Stair",
  1031.         ["fr"] = "Escalier infini^md",
  1032.         ["de"] = "endlose Treppe^fdc,auf",
  1033.     },
  1034.     [173] =
  1035.     {
  1036.         ["en"] = "Chapel of Light",
  1037.         ["fr"] = "chapelle de la Lumière^fd",
  1038.         ["de"] = "Kapelle des Lichts^fd,in",
  1039.     },
  1040.     [174] =
  1041.     {
  1042.         ["en"] = "Grunda's Gatehouse",
  1043.         ["fr"] = "Barbacane de Grunda^fd",
  1044.         ["de"] = "Grundas Torhaus^Ng,in",
  1045.     },
  1046.     [175] =
  1047.     {
  1048.         ["en"] = "Dra'bul",
  1049.         ["fr"] = "Dra'bul^F",
  1050.         ["de"] = "Dra'bul^N,in",
  1051.     },
  1052.     [176] =
  1053.     {
  1054.         ["en"] = "Shrine of Mauloch",
  1055.         ["fr"] = "autel de Mauloch^md",
  1056.         ["de"] = "Schrein von Mauloch^md,bei",
  1057.     },
  1058.     [177] =
  1059.     {
  1060.         ["en"] = "Silvenar's Audience Hall",
  1061.         ["fr"] = "salle d'audience du Silvenar^fd",
  1062.         ["de"] = "Audienzhalle des Silvenars^fd,in",
  1063.     },
  1064.     [178] =
  1065.     {
  1066.         ["en"] = "The Banished Cells",
  1067.         ["fr"] = "Cachot interdit^md",
  1068.         ["de"] = "Verbannungszellen^pd,in",
  1069.     },
  1070.     [179] =
  1071.     {
  1072.         ["en"] = "Auridon",
  1073.         ["fr"] = "Auridia^F",
  1074.         ["de"] = "Auridon^N,in",
  1075.     },
  1076.     [180] =
  1077.     {
  1078.         ["en"] = "Reaper's March",
  1079.         ["fr"] = "marche de la Camarde^fd",
  1080.         ["de"] = "Schnittermark^N,in",
  1081.     },
  1082.     [181] =
  1083.     {
  1084.         ["en"] = "Grahtwood",
  1085.         ["fr"] = "bois de Graht^md",
  1086.         ["de"] = "Grahtwald^N,in",
  1087.     },
  1088.     [182] =
  1089.     {
  1090.         ["en"] = "Ragnthar",
  1091.         ["fr"] = "Ragnthar^F",
  1092.         ["de"] = "Ragnthar^N",
  1093.     },
  1094.     [183] =
  1095.     {
  1096.         ["en"] = "Fort Virak Ruin",
  1097.         ["fr"] = "ruines de Fort Virak^fpd",
  1098.         ["de"] = "Ruinen unter der Feste Virak^pd,in",
  1099.     },
  1100.     [184] =
  1101.     {
  1102.         ["en"] = "Tower of the Vale",
  1103.         ["fr"] = "tour du val^fd",
  1104.         ["de"] = "Turm des Tals^N,in",
  1105.     },
  1106.     [185] =
  1107.     {
  1108.         ["en"] = "Phaer Catacombs",
  1109.         ["fr"] = "catacombes de Phaer^pfd",
  1110.         ["de"] = "Katakomben von Phaer^pd,in",
  1111.     },
  1112.     [186] =
  1113.     {
  1114.         ["en"] = "Reliquary Ruins",
  1115.         ["fr"] = "ruines du reliquaire^pfd",
  1116.         ["de"] = "Ruinen des Reliquiars^pd,in",
  1117.     },
  1118.     [187] =
  1119.     {
  1120.         ["en"] = "The Veiled Keep",
  1121.         ["fr"] = "Fort Voilé^md",
  1122.         ["de"] = "Schleierburg^fd,in",
  1123.     },
  1124.     [188] =
  1125.     {
  1126.         ["en"] = "The Vault of Exile",
  1127.         ["fr"] = "crypte de l'exilé^fd",
  1128.         ["de"] = "Gewölbe der Verbannung^nd,in",
  1129.     },
  1130.     [189] =
  1131.     {
  1132.         ["en"] = "Saltspray Cave",
  1133.         ["fr"] = "caverne aux Embruns^fd",
  1134.         ["de"] = "Salzgischthöhle^fd,in",
  1135.     },
  1136.     [190] =
  1137.     {
  1138.         ["en"] = "Ezduiin Undercroft",
  1139.         ["fr"] = "crypte d'Ezduiin^fd",
  1140.         ["de"] = "Unterbau von Ezduiin^md,in",
  1141.     },
  1142.     [191] =
  1143.     {
  1144.         ["en"] = "The Refuge of Dread",
  1145.         ["fr"] = "refuge de l'Effroi^md",
  1146.         ["de"] = "Zuflucht des Grauens^fd,in",
  1147.     },
  1148.     [192] =
  1149.     {
  1150.         ["en"] = "Ondil",
  1151.         ["fr"] = "Ondil^M",
  1152.         ["de"] = "Ondil^N,in",
  1153.     },
  1154.     [193] =
  1155.     {
  1156.         ["en"] = "Del's Claim",
  1157.         ["fr"] = "concession de Del^fd",
  1158.         ["de"] = "Dels Grube^Fg,in",
  1159.     },
  1160.     [194] =
  1161.     {
  1162.         ["en"] = "Entila's Folly",
  1163.         ["fr"] = "folie d'Entila^fd",
  1164.         ["de"] = "Entilas Torheit^Fg,in",
  1165.     },
  1166.     [195] =
  1167.     {
  1168.         ["en"] = "Wansalen",
  1169.         ["fr"] = "Wansalen^M",
  1170.         ["de"] = "Wansalen^N,in",
  1171.     },
  1172.     [196] =
  1173.     {
  1174.         ["en"] = "Mehrunes' Spite",
  1175.         ["fr"] = "rancœur de Mérunès^fd",
  1176.         ["de"] = "Mehrunes Tücke^Fg,in",
  1177.     },
  1178.     [197] =
  1179.     {
  1180.         ["en"] = "Bewan",
  1181.         ["fr"] = "Bewan^F",
  1182.         ["de"] = "Bewan^N,in",
  1183.     },
  1184.     [198] =
  1185.     {
  1186.         ["en"] = "Shor's Stone Mine",
  1187.         ["fr"] = "mine de la Pierre-de-Shor^fd",
  1188.         ["de"] = "Mine von Shors Stein^fd,in",
  1189.     },
  1190.     [199] =
  1191.     {
  1192.         ["en"] = "Northwind Mine",
  1193.         ["fr"] = "mine de la Galerne^fd",
  1194.         ["de"] = "Nordwindmine^fd,in",
  1195.     },
  1196.     [200] =
  1197.     {
  1198.         ["en"] = "Fallowstone Vault",
  1199.         ["fr"] = "crypte de Rochebrune^fd",
  1200.         ["de"] = "Fahlsteingewölbe^nd,in",
  1201.     },
  1202.     [201] =
  1203.     {
  1204.         ["en"] = "Lady Llarel's Shelter",
  1205.         ["fr"] = "abri de dame Llarel^md",
  1206.         ["de"] = "Fürstin Llarels Unterschlupf^MG,in",
  1207.     },
  1208.     [202] =
  1209.     {
  1210.         ["en"] = "Lower Bthanual",
  1211.         ["fr"] = "Bas-Bthanual^M",
  1212.         ["de"] = "Unterbthanual^N,in",
  1213.     },
  1214.     [203] =
  1215.     {
  1216.         ["en"] = "The Triple Circle Mine",
  1217.         ["fr"] = "mine du Triple cercle^fd",
  1218.         ["de"] = "Dreikreismine^fd,in",
  1219.     },
  1220.     [204] =
  1221.     {
  1222.         ["en"] = "Taleon's Crag",
  1223.         ["fr"] = "pic de Taléon^md",
  1224.         ["de"] = "Taleons Klippe^Fg,unter",
  1225.     },
  1226.     [205] =
  1227.     {
  1228.         ["en"] = "Knife Ear Grotto",
  1229.         ["fr"] = "grotte du Lobe aigu^fd",
  1230.         ["de"] = "Klingenohrgrotte^fd,bei",
  1231.     },
  1232.     [206] =
  1233.     {
  1234.         ["en"] = "The Corpse Garden",
  1235.         ["fr"] = "jardin des dépouilles^md",
  1236.         ["de"] = "Leichengarten^md,in",
  1237.     },
  1238.     [207] =
  1239.     {
  1240.         ["en"] = "The Hunting Grounds",
  1241.         ["fr"] = "Terrains de chasse^pmd",
  1242.         ["de"] = "Jagdgründe^pd,in",
  1243.     },
  1244.     [208] =
  1245.     {
  1246.         ["en"] = "Nimalten Barrow",
  1247.         ["fr"] = "tertre de Nimalten^md",
  1248.         ["de"] = "Hügelgrab von Nimalten^md,in",
  1249.     },
  1250.     [209] =
  1251.     {
  1252.         ["en"] = "Avanchnzel",
  1253.         ["fr"] = "Avancheznel^F",
  1254.         ["de"] = "Avanchznel^N,in",
  1255.     },
  1256.     [210] =
  1257.     {
  1258.         ["en"] = "Pinepeak Caverns",
  1259.         ["fr"] = "Grottes de Montpin^pfd",
  1260.         ["de"] = "Föhrgipfelkavernen^pd,in",
  1261.     },
  1262.     [211] =
  1263.     {
  1264.         ["en"] = "Trolhetta Cave",
  1265.         ["fr"] = "grotte de Trolhetta^fd",
  1266.         ["de"] = "Trolhettahöhle^fd,in",
  1267.     },
  1268.     [212] =
  1269.     {
  1270.         ["en"] = "Inner Tanzelwil",
  1271.         ["fr"] = "cœur de Tanzelwil^md",
  1272.         ["de"] = "inneres Tanzelwil^ndc,in",
  1273.     },
  1274.     [213] =
  1275.     {
  1276.         ["en"] = "Aba-Loria",
  1277.         ["fr"] = "Aba-Loria^F",
  1278.         ["de"] = "Aba-Loria^N,in",
  1279.     },
  1280.     [214] =
  1281.     {
  1282.         ["en"] = "The Vault of Haman Forgefire",
  1283.         ["fr"] = "Chambre-forte de Haman Forgefeu^fd",
  1284.         ["de"] = "Gewölbe von Haman Schmiedefeuer^nd,in",
  1285.     },
  1286.     [215] =
  1287.     {
  1288.         ["en"] = "The Grotto of Depravity",
  1289.         ["fr"] = "grotte de la dépravation^fd",
  1290.         ["de"] = "Grotte der Laster^fd,in",
  1291.     },
  1292.     [216] =
  1293.     {
  1294.         ["en"] = "Cave of Trophies",
  1295.         ["fr"] = "Grotte aux trophées^fd",
  1296.         ["de"] = "Höhle der Trophäen^fd,in",
  1297.     },
  1298.     [217] =
  1299.     {
  1300.         ["en"] = "Mal Sorra's Tomb",
  1301.         ["fr"] = "tombeau de Mal Sorra^md",
  1302.         ["de"] = "Mal Sorras Grabmal^NG,in",
  1303.     },
  1304.     [218] =
  1305.     {
  1306.         ["en"] = "The Wailing Maw",
  1307.         ["fr"] = "gorge plaintive^fd",
  1308.         ["de"] = "wehklagender Schlund^mdc,in",
  1309.     },
  1310.     [219] =
  1311.     {
  1312.         ["en"] = "Camlorn Keep",
  1313.         ["fr"] = "fort de Camlorn^md",
  1314.         ["de"] = "Burg Camlorn^fd,in",
  1315.     },
  1316.     [220] =
  1317.     {
  1318.         ["en"] = "Daggerfall Castle",
  1319.         ["fr"] = "château de Daguefilante^md",
  1320.         ["de"] = "Kastell von Dolchsturz^nd,in",
  1321.     },
  1322.     [221] =
  1323.     {
  1324.         ["en"] = "Angof's Sanctum",
  1325.         ["fr"] = "saint des saints d'Angof^md",
  1326.         ["de"] = "Angofs Heiligtum^Ng,in",
  1327.     },
  1328.     [222] =
  1329.     {
  1330.         ["en"] = "Glenumbra Moors Cave",
  1331.         ["fr"] = "caverne des landes de Glénumbrie^fd",
  1332.         ["de"] = "Höhlen des Glenumbramoors^pd,in",
  1333.     },
  1334.     [223] =
  1335.     {
  1336.         ["en"] = "Aphren's Tomb",
  1337.         ["fr"] = "tombe d'Aphren^fd",
  1338.         ["de"] = "Aphrens Grab^Ng,in",
  1339.     },
  1340.     [224] =
  1341.     {
  1342.         ["en"] = "Taarengrav Barrow",
  1343.         ["fr"] = "tombeau de Taarengrav^m",
  1344.         ["de"] = "Hügelgrab von Taarengrav^nd,in",
  1345.     },
  1346.     [225] =
  1347.     {
  1348.         ["en"] = "Nairume's Prison",
  1349.         ["fr"] = "prison de Nairumë^fd",
  1350.         ["de"] = "Nairumes Gefängnis^Ng,in",
  1351.     },
  1352.     [226] =
  1353.     {
  1354.         ["en"] = "The Orrery",
  1355.         ["fr"] = "Planétaire^md",
  1356.         ["de"] = "Planetarium^nd,in",
  1357.     },
  1358.     [227] =
  1359.     {
  1360.         ["en"] = "Cathedral of the Golden Path",
  1361.         ["fr"] = "cathédrale de la Voie d'Or^fd",
  1362.         ["de"] = "Kathedrale des Goldenen Pfads^fd,in",
  1363.     },
  1364.     [228] =
  1365.     {
  1366.         ["en"] = "Reliquary Vault",
  1367.         ["fr"] = "salle du reliquaire^fd",
  1368.         ["de"] = "Reliquiargewölbe^nd,in",
  1369.     },
  1370.     [229] =
  1371.     {
  1372.         ["en"] = "Laeloria Ruins",
  1373.         ["fr"] = "ruines de Laéloria^pfd",
  1374.         ["de"] = "Ruinen von Laeloria^pd,in",
  1375.     },
  1376.     [230] =
  1377.     {
  1378.         ["en"] = "Cave of Broken Sails",
  1379.         ["fr"] = "caverne des voiles brisées^fd",
  1380.         ["de"] = "Höhle der Gebrochenen Segel^fd,in",
  1381.     },
  1382.     [231] =
  1383.     {
  1384.         ["en"] = "Ossuary of Telacar",
  1385.         ["fr"] = "ossuaire de Télacar^md",
  1386.         ["de"] = "Beinhaus von Telacar^nd,in",
  1387.     },
  1388.     [232] =
  1389.     {
  1390.         ["en"] = "The Aquifer",
  1391.         ["fr"] = "Aquifère^md",
  1392.         ["de"] = "Kanalisation^fd,in",
  1393.     },
  1394.     [233] =
  1395.     {
  1396.         ["en"] = "Ne Salas",
  1397.         ["fr"] = "Ne Salas^M",
  1398.         ["de"] = "Ne Salas^N,in",
  1399.     },
  1400.     [234] =
  1401.     {
  1402.         ["en"] = "Burroot Kwama Mine",
  1403.         ["fr"] = "mine à kwamas de Boguerave^fd",
  1404.         ["de"] = "Klettenwurz-Kwamamine^fd,in",
  1405.     },
  1406.     [235] =
  1407.     {
  1408.         ["en"] = "Mobar Mine",
  1409.         ["fr"] = "mine de Mobar^fd",
  1410.         ["de"] = "Mobarmine^fd,in",
  1411.     },
  1412.     [236] =
  1413.     {
  1414.         ["en"] = "Direfrost Keep",
  1415.         ["fr"] = "donjon d'Affregivre^md",
  1416.         ["de"] = "Burg Grauenfrost^fd,in",
  1417.     },
  1418.     [237] =
  1419.     {
  1420.         ["en"] = "Senalana",
  1421.         ["fr"] = "Sénalana^F",
  1422.         ["de"] = "Senalana^N,in",
  1423.     },
  1424.     [238] =
  1425.     {
  1426.         ["en"] = "Temple to the Divines",
  1427.         ["fr"] = "temple des Divins^m",
  1428.         ["de"] = "Tempel der Göttlichen^md,in",
  1429.     },
  1430.     [239] =
  1431.     {
  1432.         ["en"] = "Halls of Ichor",
  1433.         ["fr"] = "salles de l'Ichor^pfd",
  1434.         ["de"] = "Hallen der Säfte^pd,in",
  1435.     },
  1436.     [240] =
  1437.     {
  1438.         ["en"] = "Do'Krin Temple",
  1439.         ["fr"] = "temple de Do'Krin^md",
  1440.         ["de"] = "Do'Krin-Tempel^md,in",
  1441.     },
  1442.     [241] =
  1443.     {
  1444.         ["en"] = "Rawl'kha Temple",
  1445.         ["fr"] = "temple de Rawl'kha^md",
  1446.         ["de"] = "Knurr'kha-Tempel^md,in",
  1447.     },
  1448.     [242] =
  1449.     {
  1450.         ["en"] = "Five Finger Dance",
  1451.         ["fr"] = "Danse-des-cinq-doigts^fd",
  1452.         ["de"] = "Tanz der Fünf Finger^md,bei",
  1453.     },
  1454.     [243] =
  1455.     {
  1456.         ["en"] = "Moonmont Temple",
  1457.         ["fr"] = "temple de Mont-la-Lune^md",
  1458.         ["de"] = "Mondhöhe-Tempel^md,in",
  1459.     },
  1460.     [244] =
  1461.     {
  1462.         ["en"] = "Fort Sphinxmoth",
  1463.         ["fr"] = "fort Sphinx^M",
  1464.         ["de"] = "Feste Sphinxfalter^fd,in",
  1465.     },
  1466.     [245] =
  1467.     {
  1468.         ["en"] = "Thizzrini Arena",
  1469.         ["fr"] = "arène de Thizzrini^fd",
  1470.         ["de"] = "Arena von Thizzrini^fd,in",
  1471.     },
  1472.     [246] =
  1473.     {
  1474.         ["en"] = "The Demi-Plane of Jode",
  1475.         ["fr"] = "demi-plan de Jode^md",
  1476.         ["de"] = "Halbebene von Jode^fd,auf",
  1477.     },
  1478.     [247] =
  1479.     {
  1480.         ["en"] = "Den of Lorkhaj",
  1481.         ["fr"] = "antre de Lorkhaj^md",
  1482.         ["de"] = "Bau von Lorkhaj^md,in",
  1483.     },
  1484.     [248] =
  1485.     {
  1486.         ["en"] = "Thibaut's Cairn",
  1487.         ["fr"] = "cairn de Thibaut^md",
  1488.         ["de"] = "Thibauts Steingrab^Ng,in",
  1489.     },
  1490.     [249] =
  1491.     {
  1492.         ["en"] = "Kuna's Delve",
  1493.         ["fr"] = "galerie de Kuna^fd",
  1494.         ["de"] = "Kunas Grabung^Fg,in",
  1495.     },
  1496.     [250] =
  1497.     {
  1498.         ["en"] = "Fardir's Folly",
  1499.         ["fr"] = "folie de Fardir^fd",
  1500.         ["de"] = "Fardirs Torheit^Fg,in",
  1501.     },
  1502.     [251] =
  1503.     {
  1504.         ["en"] = "Claw's Strike",
  1505.         ["fr"] = "Coup de griffe^M",
  1506.         ["de"] = "Krallenhieb^N,in",
  1507.     },
  1508.     [252] =
  1509.     {
  1510.         ["en"] = "Weeping Wind Cave",
  1511.         ["fr"] = "caverne du Vent gémissant^fd",
  1512.         ["de"] = "Heulwindhöhle^fd,in",
  1513.     },
  1514.     [253] =
  1515.     {
  1516.         ["en"] = "Jode's Light",
  1517.         ["fr"] = "lumière de Jode^fd",
  1518.         ["de"] = "Jodeslicht^N,in",
  1519.     },
  1520.     [254] =
  1521.     {
  1522.         ["en"] = "Dead Man's Drop",
  1523.         ["fr"] = "précipice de l'Homme mort^md",
  1524.         ["de"] = "Totmannsend^N,in",
  1525.     },
  1526.     [255] =
  1527.     {
  1528.         ["en"] = "Tomb of Apostates",
  1529.         ["fr"] = "tombeau des Apostats^md",
  1530.         ["de"] = "Grabmal der Abtrünnigen^nd,in",
  1531.     },
  1532.     [256] =
  1533.     {
  1534.         ["en"] = "Hoarvor Pit",
  1535.         ["fr"] = "fosse aux vargrisons^fd",
  1536.         ["de"] = "Reifzeckengrube^fd,in",
  1537.     },
  1538.     [257] =
  1539.     {
  1540.         ["en"] = "Shael Ruins",
  1541.         ["fr"] = "ruines de Shael^pfd",
  1542.         ["de"] = "Ruinen von Shael^pd,in",
  1543.     },
  1544.     [258] =
  1545.     {
  1546.         ["en"] = "Roots of Silvenar",
  1547.         ["fr"] = "racines de Silvenar^pfd",
  1548.         ["de"] = "Wurzeln von Silvenar^pd,unter",
  1549.     },
  1550.     [259] =
  1551.     {
  1552.         ["en"] = "Black Vine Ruins",
  1553.         ["fr"] = "ruines de Roncenoire^pfd",
  1554.         ["de"] = "Schwarzrankenruinen^pd,in",
  1555.     },
  1556.     [260] =
  1557.     {
  1558.         ["en"] = "The Scuttle Pit",
  1559.         ["fr"] = "fosse aux grattements^fd",
  1560.         ["de"] = "Krabblergrube^fd,in",
  1561.     },
  1562.     [261] =
  1563.     {
  1564.         ["en"] = "Vinedeath Cave",
  1565.         ["fr"] = "caverne de Roncemort^fd",
  1566.         ["de"] = "Rankentodhöhle^fd,in",
  1567.     },
  1568.     [262] =
  1569.     {
  1570.         ["en"] = "Wormroot Depths",
  1571.         ["fr"] = "profondeurs de Verracine^pf",
  1572.         ["de"] = "Wurmwurztiefen^pd,in",
  1573.     },
  1574.     [263] =
  1575.     {
  1576.         ["en"] = "Snapleg Cave",
  1577.         ["fr"] = "grotte de Brisejambe^fd",
  1578.         ["de"] = "Beinbruchhöhle^fd,in",
  1579.     },
  1580.     [264] =
  1581.     {
  1582.         ["en"] = "Fort Greenwall",
  1583.         ["fr"] = "fort Vallevert^M",
  1584.         ["de"] = "Feste Grünwall^fd,in",
  1585.     },
  1586.     [265] =
  1587.     {
  1588.         ["en"] = "Shroud Hearth Barrow",
  1589.         ["fr"] = "Tertre de Voile-foyer^md",
  1590.         ["de"] = "Schleierheim-Hügelgrab^nd,in",
  1591.     },
  1592.     [266] =
  1593.     {
  1594.         ["en"] = "Faldar's Tooth",
  1595.         ["fr"] = "Dent de Faldar^fd",
  1596.         ["de"] = "Faldars Zahn^Mg,bei",
  1597.     },
  1598.     [267] =
  1599.     {
  1600.         ["en"] = "Broken Helm Hollow",
  1601.         ["fr"] = "trou du Heaume fendu^md",
  1602.         ["de"] = "Bruchhelmhöhle^fd,in",
  1603.     },
  1604.     [268] =
  1605.     {
  1606.         ["en"] = "Toothmaul Gully",
  1607.         ["fr"] = "ravine du Chicot^fd",
  1608.         ["de"] = "Zahnbrecherrinne^fd,in",
  1609.     },
  1610.     [269] =
  1611.     {
  1612.         ["en"] = "The Vile Manse",
  1613.         ["fr"] = "presbytère infâme^md",
  1614.         ["de"] = "düsteres Herrenhaus^ndc,in",
  1615.     },
  1616.     [270] =
  1617.     {
  1618.         ["en"] = "Tormented Spire Summit",
  1619.         ["fr"] = "sommet de la Flèche tourmentée^m",
  1620.         ["de"] = "Gipfel der gepeinigten Spitze^md,in",
  1621.     },
  1622.     [271] =
  1623.     {
  1624.         ["en"] = "Breakneck Cave",
  1625.         ["fr"] = "caverne de l'À-pic^fd",
  1626.         ["de"] = "Genickbruchhöhle^fd,in",
  1627.     },
  1628.     [272] =
  1629.     {
  1630.         ["en"] = "Capstone Cave",
  1631.         ["fr"] = "caverne de Cappière^fd",
  1632.         ["de"] = "Kappsteinhöhle^fd,in",
  1633.     },
  1634.     [273] =
  1635.     {
  1636.         ["en"] = "Cracked Wood Cave",
  1637.         ["fr"] = "caverne du Bois fendu^fd",
  1638.         ["de"] = "Berstholzhöhle^fd,in",
  1639.     },
  1640.     [274] =
  1641.     {
  1642.         ["en"] = "Echo Cave",
  1643.         ["fr"] = "caverne aux échos^fd",
  1644.         ["de"] = "Echohöhle^fd,in",
  1645.     },
  1646.     [275] =
  1647.     {
  1648.         ["en"] = "Haynote Cave",
  1649.         ["fr"] = "caverne de Paillenote^fd",
  1650.         ["de"] = "Hainödhöhle^fd,in",
  1651.     },
  1652.     [276] =
  1653.     {
  1654.         ["en"] = "Kingscrest Cavern",
  1655.         ["fr"] = "caverne des Armoiries^fd",
  1656.         ["de"] = "Königswappenkaverne^fd,vor",
  1657.     },
  1658.     [277] =
  1659.     {
  1660.         ["en"] = "Lipsand Tarn",
  1661.         ["fr"] = "lac de Bergesable^md",
  1662.         ["de"] = "Lipsand Tarn^N,in",
  1663.     },
  1664.     [278] =
  1665.     {
  1666.         ["en"] = "Muck Valley Cavern",
  1667.         ["fr"] = "caverne de Valboue^fd",
  1668.         ["de"] = "Schlammtalkaverne^fd,in",
  1669.     },
  1670.     [279] =
  1671.     {
  1672.         ["en"] = "Newt Cave",
  1673.         ["fr"] = "caverne aux tritons^fd",
  1674.         ["de"] = "Molchhöhle^fd,in",
  1675.     },
  1676.     [280] =
  1677.     {
  1678.         ["en"] = "Nisin Cave",
  1679.         ["fr"] = "caverne de Nisin^fd",
  1680.         ["de"] = "Nisinhöhle^fd,in",
  1681.     },
  1682.     [281] =
  1683.     {
  1684.         ["en"] = "Pothole Caverns",
  1685.         ["fr"] = "cavernes criblées^fpd",
  1686.         ["de"] = "Strudellochkavernen^pd,in",
  1687.     },
  1688.     [282] =
  1689.     {
  1690.         ["en"] = "Quickwater Cave",
  1691.         ["fr"] = "caverne de l'Eau-vive^fd",
  1692.         ["de"] = "Schnellwasserhöhle^fd,in",
  1693.     },
  1694.     [283] =
  1695.     {
  1696.         ["en"] = "Red Ruby Cave",
  1697.         ["fr"] = "caverne du rubis rouge^fd",
  1698.         ["de"] = "Rotrubinhöhle^fd,in",
  1699.     },
  1700.     [284] =
  1701.     {
  1702.         ["en"] = "Serpent Hollow Cave",
  1703.         ["fr"] = "caverne du creux du serpent^fd",
  1704.         ["de"] = "Schlangengrubenhöhle^fd,in",
  1705.     },
  1706.     [285] =
  1707.     {
  1708.         ["en"] = "Bloodmayne Cave",
  1709.         ["fr"] = "caverne du Crin-de-Sang^fd",
  1710.         ["de"] = "Blutmähnenhöhle^fd,in",
  1711.     },
  1712.     [286] =
  1713.     {
  1714.         ["en"] = "Greenhill Catacombs",
  1715.         ["fr"] = "catacombes de Verte-Motte^pfd",
  1716.         ["de"] = "Katakomben von Grünhügel^pd,in",
  1717.     },
  1718.     [287] =
  1719.     {
  1720.         ["en"] = "Sancre Tor",
  1721.         ["fr"] = "Sancre Tor^M",
  1722.         ["de"] = "Sancre Tor^N,in",
  1723.     },
  1724.     [288] =
  1725.     {
  1726.         ["en"] = "Eyevea Mages Guild",
  1727.         ["fr"] = "guilde des mages d'Eyévéa^fd",
  1728.         ["de"] = "Magiergilde auf Augvea^fd,in",
  1729.     },
  1730.     [289] =
  1731.     {
  1732.         ["en"] = "Haj Uxith Corridors",
  1733.         ["fr"] = "corridors de Haj Uxith^pmd",
  1734.         ["de"] = "Korridore von Haj Uxith^pd,in",
  1735.     },
  1736.     [290] =
  1737.     {
  1738.         ["en"] = "Toadstool Hollow",
  1739.         ["fr"] = "creux du champignon vénéneux^md",
  1740.         ["de"] = "Fliegenpilzgrube^fd,in",
  1741.     },
  1742.     [291] =
  1743.     {
  1744.         ["en"] = "Vahtacen",
  1745.         ["fr"] = "Vahtacen^M",
  1746.         ["de"] = "Vahtacen^N,in",
  1747.     },
  1748.     [292] =
  1749.     {
  1750.         ["en"] = "Underpall Cave",
  1751.         ["fr"] = "caverne du sous-suaire^fd",
  1752.         ["de"] = "Sargtuchhöhle^fd,in",
  1753.     },
  1754.     [293] =
  1755.     {
  1756.         ["en"] = "Stros M'Kai",
  1757.         ["fr"] = "Stros M'Kai^M",
  1758.         ["de"] = "Stros M'Kai^N,auf",
  1759.     },
  1760.     [294] =
  1761.     {
  1762.         ["en"] = "Betnikh",
  1763.         ["fr"] = "Betnikh^F",
  1764.         ["de"] = "Betnikh^N,auf",
  1765.     },
  1766.     [295] =
  1767.     {
  1768.         ["en"] = "Khenarthi's Roost",
  1769.         ["fr"] = "perchoir de Khenarthi^md",
  1770.         ["de"] = "Khenarthis Rast^Ng,auf",
  1771.     },
  1772.     [296] =
  1773.     {
  1774.         ["en"] = "Carzog's Demise",
  1775.         ["fr"] = "Chute de Carzog^fd",
  1776.         ["de"] = "Carzogs Verderben^Ng,bei",
  1777.     },
  1778.     [297] =
  1779.     {
  1780.         ["en"] = "Glade of the Divines",
  1781.         ["fr"] = "clairière des Divins^fd",
  1782.         ["de"] = "Lichtung der Göttlichen^fd,auf",
  1783.     },
  1784.     [298] =
  1785.     {
  1786.         ["en"] = "Buraniim",
  1787.         ["fr"] = "Buraniim^M",
  1788.         ["de"] = "Buraniim^N,auf",
  1789.     },
  1790.     [299] =
  1791.     {
  1792.         ["en"] = "Dourstone Vault",
  1793.         ["fr"] = "crypte de Pierrefroide^fd",
  1794.         ["de"] = "Murrsteingewölbe^nd,in",
  1795.     },
  1796.     [300] =
  1797.     {
  1798.         ["en"] = "Stonefang Cavern",
  1799.         ["fr"] = "caverne de Rochecroc^fd",
  1800.         ["de"] = "Steinfangkaverne^fd,in",
  1801.     },
  1802.     [301] =
  1803.     {
  1804.         ["en"] = "Alcaire Keep",
  1805.         ["fr"] = "fort d'Alcaire^md",
  1806.         ["de"] = "Burg Alcaire^fd,in",
  1807.     },
  1808.     [302] =
  1809.     {
  1810.         ["en"] = "Wayrest Castle",
  1811.         ["fr"] = "château d'Haltevoie^md",
  1812.         ["de"] = "Schloss von Wegesruh^nd,in",
  1813.     },
  1814.     [303] =
  1815.     {
  1816.         ["en"] = "Shrouded Hollow",
  1817.         ["fr"] = "Val funèbre^md",
  1818.         ["de"] = "Nebelbruch^N,in",
  1819.     },
  1820.     [304] =
  1821.     {
  1822.         ["en"] = "Silatar",
  1823.         ["fr"] = "Silatar^M",
  1824.         ["de"] = "Silatar^N,in",
  1825.     },
  1826.     [305] =
  1827.     {
  1828.         ["en"] = "The Middens",
  1829.         ["fr"] = "Coquillière^fd",
  1830.         ["de"] = "Halden^pd,in",
  1831.     },
  1832.     [306] =
  1833.     {
  1834.         ["en"] = "Imperial Underground",
  1835.         ["fr"] = "souterrain impérial^md",
  1836.         ["de"] = "Tunnel der Kaiserlichen^pd,in",
  1837.     },
  1838.     [307] =
  1839.     {
  1840.         ["en"] = "Shademist Enclave",
  1841.         ["fr"] = "enclave d'Ombrume^fd",
  1842.         ["de"] = "Schattennebelenklave^fd,in",
  1843.     },
  1844.     [308] =
  1845.     {
  1846.         ["en"] = "Ilmyris",
  1847.         ["fr"] = "Ilmyris^F",
  1848.         ["de"] = "Ilmyris^N,in",
  1849.     },
  1850.     [309] =
  1851.     {
  1852.         ["en"] = "Serpent's Grotto",
  1853.         ["fr"] = "grotte au serpent^fd",
  1854.         ["de"] = "Schlangengrotte^fd,in",
  1855.     },
  1856.     [310] =
  1857.     {
  1858.         ["en"] = "Abecean Sea",
  1859.         ["fr"] = "mer Abécéenne^fd",
  1860.         ["de"] = "abekäisches Meer^nd,in",
  1861.     },
  1862.     [311] =
  1863.     {
  1864.         ["en"] = "Nereid Temple Cave",
  1865.         ["fr"] = "caverne du temple des Néréides^fd",
  1866.         ["de"] = "Tempelhöhle der Nereïden^f,in",
  1867.     },
  1868.     [312] =
  1869.     {
  1870.         ["en"] = "Village of the Lost",
  1871.         ["fr"] = "Village des perdus^md",
  1872.         ["de"] = "Dorf der Verlorenen^nd,in",
  1873.     },
  1874.     [313] =
  1875.     {
  1876.         ["en"] = "Hectahame Grotto",
  1877.         ["fr"] = "grotte d'Hectahame^fd",
  1878.         ["de"] = "Grotte von Hektahem^fd,in",
  1879.     },
  1880.     [314] =
  1881.     {
  1882.         ["en"] = "Valenheart",
  1883.         ["fr"] = "Valcœur^M",
  1884.         ["de"] = "Valenherz^N,in",
  1885.     },
  1886.     [315] =
  1887.     {
  1888.         ["en"] = "Nimalten Barrow",
  1889.         ["fr"] = "tertre de Nimalten^md",
  1890.         ["de"] = "Hügelgrab von Nimalten^md,in",
  1891.     },
  1892.     [316] =
  1893.     {
  1894.         ["en"] = "Isles of Torment",
  1895.         ["fr"] = "îles du Tourment^pfd",
  1896.         ["de"] = "Inseln der Pein^pd,auf",
  1897.     },
  1898.     [317] =
  1899.     {
  1900.         ["en"] = "Khaj Rawlith",
  1901.         ["fr"] = "Khaj Rawlith^M",
  1902.         ["de"] = "Khaj Knurral^N,in",
  1903.     },
  1904.     [318] =
  1905.     {
  1906.         ["en"] = "Ren-dro Caverns",
  1907.         ["fr"] = "cavernes de Ren-dro^pfd",
  1908.         ["de"] = "Ren-dro-Kavernen^pd,in",
  1909.     },
  1910.     [319] =
  1911.     {
  1912.         ["en"] = "Heart of the Wyrd Tree",
  1913.         ["fr"] = "cœur de l'arbre du Wyrd^md",
  1914.         ["de"] = "Herz des Wyrdbaums^nd,in",
  1915.     },
  1916.     [320] =
  1917.     {
  1918.         ["en"] = "The Hunting Grounds",
  1919.         ["fr"] = "Terrains de chasse^pmd",
  1920.         ["de"] = "Jagdgründe^pd,in",
  1921.     },
  1922.     [321] =
  1923.     {
  1924.         ["en"] = "Hircine's Hunting Ground",
  1925.         ["fr"] = "terrain de chasse d'Hircine^md",
  1926.         ["de"] = "Hircines Jagdgründe^Pg,in",
  1927.     },
  1928.     [322] =
  1929.     {
  1930.         ["en"] = "Ash'abah Pass",
  1931.         ["fr"] = "col d'Ash'abah^md",
  1932.         ["de"] = "Ash'abah-Pass^md,auf",
  1933.     },
  1934.     [323] =
  1935.     {
  1936.         ["en"] = "Tu'whacca's Sanctum",
  1937.         ["fr"] = "sanctuaire de Tu'whacca^md",
  1938.         ["de"] = "Tu'whaccas Heiligtum^Ng,in",
  1939.     },
  1940.     [324] =
  1941.     {
  1942.         ["en"] = "Suturah's Crypt",
  1943.         ["fr"] = "crypte de Suturah^fd",
  1944.         ["de"] = "Suturahs Krypta^Ng,in",
  1945.     },
  1946.     [325] =
  1947.     {
  1948.         ["en"] = "Stirk",
  1949.         ["fr"] = "Stirk^F",
  1950.         ["de"] = "Stirk^N,auf",
  1951.     },
  1952.     [326] =
  1953.     {
  1954.         ["en"] = "The Worm's Retreat",
  1955.         ["fr"] = "Retraite du Ver^fd",
  1956.         ["de"] = "Refugium des Wurms^nd,in",
  1957.     },
  1958.     [327] =
  1959.     {
  1960.         ["en"] = "The Valley of Blades",
  1961.         ["fr"] = "vallée des lames^fd",
  1962.         ["de"] = "Tal der Klingen^nd,in",
  1963.     },
  1964.     [328] =
  1965.     {
  1966.         ["en"] = "Carac Dena",
  1967.         ["fr"] = "Carac Dena^F",
  1968.         ["de"] = "Carac Dena^N,in",
  1969.     },
  1970.     [329] =
  1971.     {
  1972.         ["en"] = "Gurzag's Mine",
  1973.         ["fr"] = "mine de Gurzag^fd",
  1974.         ["de"] = "Gurzags Mine^Fg,in",
  1975.     },
  1976.     [330] =
  1977.     {
  1978.         ["en"] = "The Underroot",
  1979.         ["fr"] = "Souracine^fd",
  1980.         ["de"] = "Unterwurz^N,in",
  1981.     },
  1982.     [331] =
  1983.     {
  1984.         ["en"] = "Naril Nagaia",
  1985.         ["fr"] = "Naril Nagaïa^F",
  1986.         ["de"] = "Naril Nagaia^N,in",
  1987.     },
  1988.     [332] =
  1989.     {
  1990.         ["en"] = "Harridan's Lair",
  1991.         ["fr"] = "tanière de l'Haridelle^fd",
  1992.         ["de"] = "Zankweiberbau^md,in",
  1993.     },
  1994.     [333] =
  1995.     {
  1996.         ["en"] = "Barrow Trench",
  1997.         ["fr"] = "Tranchée du tertre^fd",
  1998.         ["de"] = "Hügelgrabung^fd,in",
  1999.     },
  2000.     [334] =
  2001.     {
  2002.         ["en"] = "Heart's Grief",
  2003.         ["fr"] = "Peine de cœur^fd",
  2004.         ["de"] = "Herzenskummer^N,in",
  2005.     },
  2006.     [335] =
  2007.     {
  2008.         ["en"] = "Temple of Auri-El",
  2009.         ["fr"] = "Temple d'Auri-El^md",
  2010.         ["de"] = "Tempel von Auri-El^md,in",
  2011.     },
  2012.     [336] =
  2013.     {
  2014.         ["en"] = "Nchu Duabthar Threshold",
  2015.         ["fr"] = "seuil de Nchu Duabthar^md",
  2016.         ["de"] = "Schwelle von Nchu Duabthar^fd,in",
  2017.     },
  2018.     [337] =
  2019.     {
  2020.         ["en"] = "The Wailing Prison",
  2021.         ["fr"] = "Prison des lamentations^fd",
  2022.         ["de"] = "wehklagender Kerker^mdc,in",
  2023.     },
  2024.     [338] =
  2025.     {
  2026.         ["en"] = "Fevered Mews",
  2027.         ["fr"] = "écuries enfiévrées^pfd",
  2028.         ["de"] = "Fieberzwinger^md,in",
  2029.     },
  2030.     [339] =
  2031.     {
  2032.         ["en"] = "Doomcrag",
  2033.         ["fr"] = "Morteroche^F",
  2034.         ["de"] = "Unheilsklippe^fd,an",
  2035.     },
  2036.     [340] =
  2037.     {
  2038.         ["en"] = "Northpoint",
  2039.         ["fr"] = "Pointe-Nord^F",
  2040.         ["de"] = "Nordspitz^N,in",
  2041.     },
  2042.     [341] =
  2043.     {
  2044.         ["en"] = "Edrald Undercroft",
  2045.         ["fr"] = "crypte d'Edrald^fd",
  2046.         ["de"] = "Edrald-Unterbau^md,in",
  2047.     },
  2048.     [342] =
  2049.     {
  2050.         ["en"] = "Lorkrata Ruins",
  2051.         ["fr"] = "ruines de Lorkrata^pfd",
  2052.         ["de"] = "Ruinen von Lorkrata^pd,in",
  2053.     },
  2054.     [343] =
  2055.     {
  2056.         ["en"] = "Shadowfate Cavern",
  2057.         ["fr"] = "grotte de Noirsort^fd",
  2058.         ["de"] = "Verhängniskaverne^fd,in",
  2059.     },
  2060.     [344] =
  2061.     {
  2062.         ["en"] = "Bangkorai Garrison",
  2063.         ["fr"] = "garnison de Bangkoraï^fd",
  2064.         ["de"] = "Bangkorai-Garnison^fd,in",
  2065.     },
  2066.     [345] =
  2067.     {
  2068.         ["en"] = "The Far Shores",
  2069.         ["fr"] = "Rives lointaines^pfd",
  2070.         ["de"] = "ferne Ufer^pdc,an",
  2071.     },
  2072.     [346] =
  2073.     {
  2074.         ["en"] = "Abagarlas",
  2075.         ["fr"] = "Abagarlas^M",
  2076.         ["de"] = "Abagarlas^N,in",
  2077.     },
  2078.     [347] =
  2079.     {
  2080.         ["en"] = "Blood Matron's Crypt",
  2081.         ["fr"] = "crypte de la matrone sanguinaire^fd",
  2082.         ["de"] = "Krypta der Blutmatrone^fd,in",
  2083.     },
  2084.     [348] =
  2085.     {
  2086.         ["en"] = "Blood Matron's Crypt",
  2087.         ["fr"] = "crypte de la matrone sanguinaire^fd",
  2088.         ["de"] = "Krypta der Blutmatrone^fd,in",
  2089.     },
  2090.     [349] =
  2091.     {
  2092.         ["en"] = "The Colored Rooms",
  2093.         ["fr"] = "Chambres colorées^pfd",
  2094.         ["de"] = "Farbenspiel^N,in",
  2095.     },
  2096.     [350] =
  2097.     {
  2098.         ["en"] = "Elden Root",
  2099.         ["fr"] = "Faneracine^F",
  2100.         ["de"] = "Eldenwurz^N,in",
  2101.     },
  2102.     [351] =
  2103.     {
  2104.         ["en"] = "Mournhold",
  2105.         ["fr"] = "Longsanglot^F",
  2106.         ["de"] = "Gramfeste^N,in",
  2107.     },
  2108.     [352] =
  2109.     {
  2110.         ["en"] = "Wayrest",
  2111.         ["fr"] = "Haltevoie^F",
  2112.         ["de"] = "Wegesruh^N,in",
  2113.     },
  2114.     [353] =
  2115.     {
  2116.         ["en"] = "Craglorn",
  2117.         ["fr"] = "Raidelorn^M",
  2118.         ["de"] = "Kargstein^N,in",
  2119.     },
  2120.     [354] =
  2121.     {
  2122.         ["en"] = "Molavar",
  2123.         ["fr"] = "Molavar^M",
  2124.         ["de"] = "Molavar^N,in",
  2125.     },
  2126.     [355] =
  2127.     {
  2128.         ["en"] = "Rkundzelft",
  2129.         ["fr"] = "Rkundzelft^F",
  2130.         ["de"] = "Rkundzelft^N,in",
  2131.     },
  2132.     [356] =
  2133.     {
  2134.         ["en"] = "Serpent's Nest",
  2135.         ["fr"] = "Nid du Serpent^md",
  2136.         ["de"] = "Schlangennest^nd",
  2137.     },
  2138.     [357] =
  2139.     {
  2140.         ["en"] = "Ilthag's Undertower",
  2141.         ["fr"] = "Fondations d'Ilthag^pfd",
  2142.         ["de"] = "Ilthags Unterturm^N,in",
  2143.     },
  2144.     [358] =
  2145.     {
  2146.         ["en"] = "Ruins of Kardala",
  2147.         ["fr"] = "ruines de Kardala^pfd",
  2148.         ["de"] = "Ruinen von Kardala^pd,in",
  2149.     },
  2150.     [359] =
  2151.     {
  2152.         ["en"] = "Loth'Na Caverns",
  2153.         ["fr"] = "cavernes de Loth'Na^pfd",
  2154.         ["de"] = "Kavernen von Loth'Na^pd",
  2155.     },
  2156.     [360] =
  2157.     {
  2158.         ["en"] = "zTest_AnchorProtoSmall",
  2159.         ["fr"] = "zTest_AnchorProtoSmall",
  2160.         ["de"] = "zTest_AnchorProtoSmall",
  2161.     },
  2162.     [361] =
  2163.     {
  2164.         ["en"] = "zTest_AnchorProtoLarger",
  2165.         ["fr"] = "zTest_AnchorProtoLarger",
  2166.         ["de"] = "zTest_AnchorProtoLarger",
  2167.     },
  2168.     [362] =
  2169.     {
  2170.         ["en"] = "Rkhardarhrk",
  2171.         ["fr"] = "Rkhardahrk^M",
  2172.         ["de"] = "Rkhardahrk^N,in",
  2173.     },
  2174.     [363] =
  2175.     {
  2176.         ["en"] = "Haddock's Market",
  2177.         ["fr"] = "marché de l'aiglefin^md",
  2178.         ["de"] = "Haddocks Markt^Mg,in",
  2179.     },
  2180.     [364] =
  2181.     {
  2182.         ["en"] = "Chiselshriek Mine",
  2183.         ["fr"] = "mine de Ciselcri^fd",
  2184.         ["de"] = "Meißelkreischmine^fd,in",
  2185.     },
  2186.     [365] =
  2187.     {
  2188.         ["en"] = "Buried Sands",
  2189.         ["fr"] = "sables engloutis^pm",
  2190.         ["de"] = "vergrabene Sande^pdc,in",
  2191.     },
  2192.     [366] =
  2193.     {
  2194.         ["en"] = "Mtharnaz",
  2195.         ["fr"] = "Mtharnaz^F",
  2196.         ["de"] = "Mtharnaz^N,in",
  2197.     },
  2198.     [367] =
  2199.     {
  2200.         ["en"] = "The Howling Sepulchers",
  2201.         ["fr"] = "sépulcres hurlants^pmd",
  2202.         ["de"] = "heulende Grabkammern^pdc",
  2203.     },
  2204.     [368] =
  2205.     {
  2206.         ["en"] = "Balamath",
  2207.         ["fr"] = "Balamath^F",
  2208.         ["de"] = "Balamath^N,in",
  2209.     },
  2210.     [369] =
  2211.     {
  2212.         ["en"] = "Fearfangs Cavern",
  2213.         ["fr"] = "caverne de Tremblecrocs^fd",
  2214.         ["de"] = "Furchtzahnkavernen^pd,in",
  2215.     },
  2216.     [370] =
  2217.     {
  2218.         ["en"] = "Exarch's Stronghold",
  2219.         ["fr"] = "forteresse de l'exarque^fd",
  2220.         ["de"] = "Festung des Exarchen^fd",
  2221.     },
  2222.     [371] =
  2223.     {
  2224.         ["en"] = "Zalgaz's Den",
  2225.         ["fr"] = "antre de Zalgaz^md",
  2226.         ["de"] = "Zalgaz' Versteck^Ng,in",
  2227.     },
  2228.     [372] =
  2229.     {
  2230.         ["en"] = "Tombs of the Na-Totambu",
  2231.         ["fr"] = "tombes des Na-Totambu^pfd",
  2232.         ["de"] = "Gräber der Na-Totambu^pd",
  2233.     },
  2234.     [373] =
  2235.     {
  2236.         ["en"] = "Hircine's Haunt",
  2237.         ["fr"] = "hantise d'Hircine^fd",
  2238.         ["de"] = "Hircines Schlupfwinkel^Mg,in",
  2239.     },
  2240.     [374] =
  2241.     {
  2242.         ["en"] = "Rahni'Za, School of Warriors",
  2243.         ["fr"] = "Rahni'Za, l'école des guerriers^F",
  2244.         ["de"] = "Rahni'Za, die Schule der Krieger^N",
  2245.     },
  2246.     [375] =
  2247.     {
  2248.         ["en"] = "Shada's Tear",
  2249.         ["fr"] = "larme de Shada^fd",
  2250.         ["de"] = "Shadas Träne^Fg,in",
  2251.     },
  2252.     [376] =
  2253.     {
  2254.         ["en"] = "Doomcrag",
  2255.         ["fr"] = "Morteroche^F",
  2256.         ["de"] = "Unheilsklippe^fd,an",
  2257.     },
  2258.     [377] =
  2259.     {
  2260.         ["en"] = "Seeker's Archive",
  2261.         ["fr"] = "Archive des Sourciers^fd",
  2262.         ["de"] = "Archiv des Suchers^nd,in",
  2263.     },
  2264.     [378] =
  2265.     {
  2266.         ["en"] = "Elinhir Sewerworks",
  2267.         ["fr"] = "égouts d'Élinhir^pmd",
  2268.         ["de"] = "Kanalisationssystem von Elinhir^nd,in",
  2269.     },
  2270.     [379] =
  2271.     {
  2272.         ["en"] = "Reinhold's Retreat",
  2273.         ["fr"] = "retraite de Reinhold^fd",
  2274.         ["de"] = "Reinholds Refugium^Ng,in",
  2275.     },
  2276.     [380] =
  2277.     {
  2278.         ["en"] = "Skyreach Hold",
  2279.         ["fr"] = "fort Frôleciel^M",
  2280.         ["de"] = "Feste Himmelsgriff^fd,in",
  2281.     },
  2282.     [381] =
  2283.     {
  2284.         ["en"] = "The Mage's Staff",
  2285.         ["fr"] = "Bâton du Mage^md",
  2286.         ["de"] = "Stab der Magierin^md,in",
  2287.     },
  2288.     [382] =
  2289.     {
  2290.         ["en"] = "Dragonstar Arena",
  2291.         ["fr"] = "arène de l'Étoile du dragon^fd",
  2292.         ["de"] = "Drachenstern-Arena^fd",
  2293.     },
  2294.     [383] =
  2295.     {
  2296.         ["en"] = "Hel Ra Citadel",
  2297.         ["fr"] = "citadelle d'Hel Ra^fd",
  2298.         ["de"] = "Zitadelle von Hel Ra^fd,in",
  2299.     },
  2300.     [384] =
  2301.     {
  2302.         ["en"] = "Quarantine Serk Catacombs",
  2303.         ["fr"] = "catacombes de la maladrerie^pfd",
  2304.         ["de"] = "Katakomben von Serkamora^pd,in",
  2305.     },
  2306.     [385] =
  2307.     {
  2308.         ["en"] = "Aetherian Archive",
  2309.         ["fr"] = "Archive æthérienne^fd",
  2310.         ["de"] = "ätherisches Archiv^ndc,in",
  2311.     },
  2312.     [386] =
  2313.     {
  2314.         ["en"] = "Sanctum Ophidia",
  2315.         ["fr"] = "Sanctum ophidia^M",
  2316.         ["de"] = "Sanctum Ophidia^nd,in",
  2317.     },
  2318.     [387] =
  2319.     {
  2320.         ["en"] = "Godrun's Dream",
  2321.         ["fr"] = "rêve de Godrun^md",
  2322.         ["de"] = "Godruns Traum^Mg,in",
  2323.     },
  2324.     [388] =
  2325.     {
  2326.         ["en"] = "Themond Mine",
  2327.         ["fr"] = "mine de Thémond^fd",
  2328.         ["de"] = "Themond-Mine^fd,in",
  2329.     },
  2330.     [389] =
  2331.     {
  2332.         ["en"] = "The Earth Forge",
  2333.         ["fr"] = "Forgeterre^fd",
  2334.         ["de"] = "Erdschmiede^fd,in",
  2335.     },
  2336.     [390] =
  2337.     {
  2338.         ["en"] = "City of Ash",
  2339.         ["fr"] = "Cité des cendres^fd",
  2340.         ["de"] = "Stadt der Asche^fd,in",
  2341.     },
  2342.     [391] =
  2343.     {
  2344.         ["en"] = "Skyreach Catacombs",
  2345.         ["fr"] = "catacombes de Frôleciel^pfd",
  2346.         ["de"] = "Katakomben von Himmelsgriff^pd,in",
  2347.     },
  2348.     [392] =
  2349.     {
  2350.         ["en"] = "Skyreach Temple",
  2351.         ["fr"] = "temple de Frôleciel^md",
  2352.         ["de"] = "Tempel von Himmelsgriff^md,in",
  2353.     },
  2354.     [393] =
  2355.     {
  2356.         ["en"] = "Skyreach Pinnacle",
  2357.         ["fr"] = "sommet de Frôleciel^md",
  2358.         ["de"] = "Gipfel von Himmelsgriff^md",
  2359.     },
  2360.     [394] =
  2361.     {
  2362.         ["en"] = "Heart's Grief",
  2363.         ["fr"] = "Heart's Grief",
  2364.         ["de"] = "Heart's Grief",
  2365.     },
  2366.     [395] =
  2367.     {
  2368.         ["en"] = "Sorrow",
  2369.         ["fr"] = "Sorrow",
  2370.         ["de"] = "Sorrow",
  2371.     },
  2372.     [396] =
  2373.     {
  2374.         ["en"] = "Murkmire",
  2375.         ["fr"] = "Murkmire",
  2376.         ["de"] = "Murkmire",
  2377.     },
  2378.     [397] =
  2379.     {
  2380.         ["en"] = "MU-X1",
  2381.         ["fr"] = "MU-X1",
  2382.         ["de"] = "MU-X1",
  2383.     },
  2384.     [398] =
  2385.     {
  2386.         ["en"] = "MU-X2",
  2387.         ["fr"] = "MU-X2",
  2388.         ["de"] = "MU-X2",
  2389.     },
  2390.     [399] =
  2391.     {
  2392.         ["en"] = "MU-X3",
  2393.         ["fr"] = "MU-X3",
  2394.         ["de"] = "MU-X3",
  2395.     },
  2396.     [400] =
  2397.     {
  2398.         ["en"] = "MU-X4",
  2399.         ["fr"] = "MU-X4",
  2400.         ["de"] = "MU-X4",
  2401.     },
  2402.     [401] =
  2403.     {
  2404.         ["en"] = "MU-X5",
  2405.         ["fr"] = "MU-X5",
  2406.         ["de"] = "MU-X5",
  2407.     },
  2408.     [402] =
  2409.     {
  2410.         ["en"] = "MU-X6",
  2411.         ["fr"] = "MU-X6",
  2412.         ["de"] = "MU-X6",
  2413.     },
  2414.     [403] =
  2415.     {
  2416.         ["en"] = "MU-X7",
  2417.         ["fr"] = "MU-X7",
  2418.         ["de"] = "MU-X7",
  2419.     },
  2420.     [404] =
  2421.     {
  2422.         ["en"] = "MU-X8",
  2423.         ["fr"] = "MU-X8",
  2424.         ["de"] = "MU-X8",
  2425.     },
  2426.     [405] =
  2427.     {
  2428.         ["en"] = "MU-X9",
  2429.         ["fr"] = "MU-X9",
  2430.         ["de"] = "MU-X9",
  2431.     },
  2432.     [406] =
  2433.     {
  2434.         ["en"] = "MU-X10",
  2435.         ["fr"] = "MU-X10",
  2436.         ["de"] = "MU-X10",
  2437.     },
  2438.     [407] =
  2439.     {
  2440.         ["en"] = "MU-X11",
  2441.         ["fr"] = "MU-X11",
  2442.         ["de"] = "MU-X11",
  2443.     },
  2444.     [408] =
  2445.     {
  2446.         ["en"] = "MU-X12",
  2447.         ["fr"] = "MU-X12",
  2448.         ["de"] = "MU-X12",
  2449.     },
  2450.     [409] =
  2451.     {
  2452.         ["en"] = "MU-X13",
  2453.         ["fr"] = "MU-X13",
  2454.         ["de"] = "MU-X13",
  2455.     },
  2456.     [410] =
  2457.     {
  2458.         ["en"] = "MU-X14",
  2459.         ["fr"] = "MU-X14",
  2460.         ["de"] = "MU-X14",
  2461.     },
  2462.     [411] =
  2463.     {
  2464.         ["en"] = "MU-X15",
  2465.         ["fr"] = "MU-X15",
  2466.         ["de"] = "MU-X15",
  2467.     },
  2468.     [412] =
  2469.     {
  2470.         ["en"] = "MU-X16",
  2471.         ["fr"] = "MU-X16",
  2472.         ["de"] = "MU-X16",
  2473.     },
  2474.     [413] =
  2475.     {
  2476.         ["en"] = "MU-X17",
  2477.         ["fr"] = "MU-X17",
  2478.         ["de"] = "MU-X17",
  2479.     },
  2480.     [414] =
  2481.     {
  2482.         ["en"] = "MU-X18",
  2483.         ["fr"] = "MU-X18",
  2484.         ["de"] = "MU-X18",
  2485.     },
  2486.     [415] =
  2487.     {
  2488.         ["en"] = "Charred Ridge",
  2489.         ["fr"] = "Charred Ridge",
  2490.         ["de"] = "Kohlenkamm^md,an",
  2491.     },
  2492. }

(416 and above are empty strings)

Last edited by Garkin : 10/19/14 at 07:32 AM.
 
10/20/14, 02:19 PM   #14
Fyrakin
 
Fyrakin's Avatar
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 129
But still no unique map IDs.
 
04/07/15, 01:30 PM   #15
Fyrakin
 
Fyrakin's Avatar
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 129
We have great many new maps in game and still no unique MapId for each map as well as reliable event to fire when GetMapTileTexture() result changes. Ideally this event would only fire when player character actually enters that area not when accesses the map.
Suggested event could return event code (player entered area, player browsed the map), new map id (unique luaindex), localized map name.

We could also benefit from GetMapNameByMapId(mapId) and GetMapTextureById(mapTexture) API functions.

Last edited by Fyrakin : 04/07/15 at 01:35 PM.
 
07/27/15, 10:49 AM   #16
Ayantir
 
Ayantir's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2014
Posts: 1,019
I permit myself to bump this thread about an issue I'm having. I would like to calculate coordinates of player..

So:

Go to grahtwood (it's a good exemple)

Lua Code:
  1. /script d(GetCurrentMapZoneIndex())

= 4294967296

Move outside the tree

Lua Code:
  1. /script d(GetCurrentMapZoneIndex())

= 181 (Grahtwood main zoneindex)


Go back to the wayshrine

still 181. not 4294967296.

Open your map, 4294967296 is back

So is there a way to update the good ID without opening map?

Grahtwood is a simple exemple but it happens in every city with a submap and my need is precisly based on cities.

In fact, I'd like to get the actual zoneIndex without reloading map. Or something else but correct wich permits me to calculate coords, because coords 12x23 of belkarth are not 12x23 of craglorn.
Or at least if anyone know how to update this thing without opening map ?

I calculate coords with GetMapPlayerPosition wich sounds correct, but if the map name is wrong, I get wrong coordinates.
GetMapTileTexture() get the same issue, same for GetMapName().
Once you didn't refresh your map by pressing M, function returns incorrect value.

I just looked at libmappins which got this small issue, harvestmap same, and map code is.. way very big and still didn't found what is causing this refresh.
 
07/27/15, 11:36 AM   #17
votan
 
votan's Avatar
AddOn Author - Click to view addons
Join Date: Oct 2014
Posts: 577
After player activated (after load or fast travel) the map is in an undefined state.
Before calling GetMapPlayerLocation you should ensure the map is at a location at all.
So this is a typical (delayed) call for OnPlayerActivated:
Lua Code:
  1. if SetMapToPlayerLocation() == SET_MAP_RESULT_MAP_CHANGED then
  2.     CALLBACK_MANAGER:FireCallbacks("OnWorldMapChanged") -- Inform others (including ZO_WorldMap)
  3.   end
  4.  
  5.   local playerX, playerY = GetMapPlayerPosition("player")
While the WorldMap is open, a timer calls stuff similar to above every second to let the map follow the player.

If you set/changed the map without informing others, things like the map pins do not match.

The tree in grahtwood is extra tricky, because maps can have floors. GetMapFloorInfo()

If you register to CALLBACK_MANAGER:RegisterCallback("OnWorldMapChanged", ...), you should be informed (by WorldMap and other addons) that the map and maybe the zone has changed.

That's what I know.
 
07/27/15, 12:35 PM   #18
XanDDemoX
AddOn Author - Click to view addons
Join Date: May 2015
Posts: 28
I had a similar problem, needing to resolve zoneIndex within a city map within my addon.

I managed to get round it using a combination of a lookup, GetMapTileTexture and GetCurrentMapZoneIndex.

These two functions handle strings. Pattern matching from GetMapTileTexture and string keys used in the lookup.

Lua Code:
  1. local function GetMapZone(path)
  2.     path = path or GetMapTileTexture()
  3.     path = string.lower(path)
  4.     local zone,subzone = string.match(path,"^.-/.-/(.-)/(.-)_")
  5.     if zone == nil and subzone == nil then
  6.         -- splits if path is actually a zone key
  7.         zone,subzone = string.match(path,"^(.-)/(.-)$")
  8.     end
  9.     return zone,subzone
  10. end
  11.  
  12. local function GetMapZoneKey(zone,subzone)
  13.     if zone == nil and subzone == nil then
  14.         zone,subzone = GetMapZone()
  15.     elseif subzone == nil then
  16.         zone,subzone = GetMapZone(zone)
  17.     end
  18.     return table.concat({zone,"/",subzone}),zone,subzone
  19. end

This function creates a lookup where you can lookup zone by zoneIndex, "zone/subzone" or "zone" or "subzone".

Lua Code:
  1. local function CreateLocationsLookup(locations,func)
  2.     local lookup = {}
  3.     func = func or function(l) return l end
  4.     local item
  5.     for i,loc in ipairs(locations) do
  6.         item = func(loc)
  7.        
  8.         lookup[loc.zoneIndex] = item
  9.         lookup[loc.key] = item
  10.  
  11.         if lookup[loc.subzone] == nil then
  12.             lookup[loc.subzone] = item
  13.         elseif lookup[loc.zone] == nil then
  14.             lookup[loc.zone] = item
  15.         end
  16.        
  17.     end
  18.    
  19.     for i,loc in ipairs(locations) do
  20.         if lookup[loc.zone] == nil then
  21.             lookup[loc.zone] = lookup[loc.zoneIndex]
  22.         end
  23.     end
  24.    
  25.     return lookup
  26. end

Example location table for CreateLocationsLookup

Lua Code:
  1. local _locationsList = {
  2.     [1] =
  3.     {
  4.         ["zoneIndex"] = -2147483648,
  5.         ["mapIndex"] = 1,
  6.         ["tile"] = "art/maps/tamriel/tamriel_0.dds",
  7.     },
  8.     [2] =
  9.     {
  10.         ["zoneIndex"] = 2,
  11.         ["mapIndex"] = 2,
  12.         ["tile"] = "art/maps/glenumbra/glenumbra_base_0.dds",
  13.     },
  14. }

Function to resolve zones from lookup

Lua Code:
  1. local function GetZoneLocation(lookup,zone,subzone)
  2.     local loc
  3.    
  4.     if type(zone) == "number" then
  5.         loc = lookup[zone]
  6.         zone = nil
  7.     end
  8.     if loc == nil then
  9.         local key,zone,subzone = GetMapZoneKey(zone,subzone)
  10.        
  11.         -- try by zone/subzone key first
  12.         loc = lookup[key]
  13.         -- subzone next to handle places like khenarthis roost
  14.         if loc == nil then
  15.             loc = lookup[subzone]
  16.         end
  17.         -- then zone to handle locations within main zones which cannot be matched by key e.g coldharbor's hollow city
  18.         if loc == nil then
  19.             loc = lookup[zone]
  20.         end
  21.     end
  22.  
  23.     -- if zone cant be found then return tamriel
  24.     if loc == nil then
  25.         loc = lookup["tamriel"]
  26.     end
  27.    
  28.     return loc
  29. end


Usage example.

Lua Code:
  1. local list = {} -- table of zones like example table.
  2.  
  3. local lookup = CreateLocationsLookup(list)
  4.  
  5. local loc = GetZoneLocation(lookup,GetCurrentMapZoneIndex())

Something that also got me was the map on player activate. It appears to change from the Tamriel map.

I handled it like below:

Lua Code:
  1. addEvent(EVENT_PLAYER_ACTIVATED,function(eventCode)
  2.                
  3.         local func = function()
  4.                         local loc = GetZoneLocation(lookup,GetCurrentMapZoneIndex())
  5.         end
  6.        
  7.         local idx = GetCurrentMapIndex()
  8.        
  9.         -- handle the map changing from Tamriel
  10.         if idx == nil or idx == 1 then
  11.             local onChange
  12.             onChange = function()
  13.                 func()
  14.                 removeCallback(CALLBACK_ID_ON_WORLDMAP_CHANGED,onChange)
  15.             end
  16.             addCallback(CALLBACK_ID_ON_WORLDMAP_CHANGED,onChange)
  17.         else
  18.             func()
  19.         end
  20.  
  21.     end)

Hope all of that makes sense You can also see it in LocationData.lua, and usage in FasterTravel.lua in the addon.

Last edited by XanDDemoX : 07/27/15 at 12:40 PM.
 
07/27/15, 12:42 PM   #19
Ayantir
 
Ayantir's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2014
Posts: 1,019
Thank you,

It's
Lua Code:
  1. SetMapToPlayerLocation()
which update the whole thing,

You'll need to after:

Lua Code:
  1. CALLBACK_MANAGER:FireCallbacks("OnWorldMapChanged")

to do not break other addons (and map) aswell.

and then the functions works well.

Last edited by Ayantir : 07/27/15 at 12:45 PM.
 
07/27/15, 02:02 PM   #20
votan
 
votan's Avatar
AddOn Author - Click to view addons
Join Date: Oct 2014
Posts: 577
Originally Posted by Ayantir View Post
Thank you,

It's
Lua Code:
  1. SetMapToPlayerLocation()
which update the whole thing,

You'll need to after:

Lua Code:
  1. CALLBACK_MANAGER:FireCallbacks("OnWorldMapChanged")

to do not break other addons (and map) aswell.

and then the functions works well.
Yes, as I wrote. You need to trigger the callback, if the map will be changed by this call, only. Because other addons may do the same.

Lua Code:
  1. if SetMapToPlayerLocation() == SET_MAP_RESULT_MAP_CHANGED then
  2.    CALLBACK_MANAGER:FireCallbacks("OnWorldMapChanged") -- Inform others (including ZO_WorldMap)
  3. end
 

ESOUI » Developer Discussions » Wish List » [outdated] WorldMap - mapIDs, detection when map is changed


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off