LibBabble-SubZone-3.0
Overview
LibBabble-SubZone-3.0 is a localization library for World of Warcraft zone, subzone, and location names.
It complements the names available through the WoW client APIs and LibBabble-Zone-3.0. Its purpose is to provide localized names for additional subzones and locations that may not be available, complete, or consistent through those sources alone.
This is a library for addon authors. It does not provide a user interface or gameplay features by itself.
What It Provides
The library contains localized names for a wide range of World of Warcraft locations, including:
- Zones and subzones
- Instance and scenario locations
- Points of interest and notable map locations
- Taxi-node-related locations
- World Model Object (WMO) areas
- Other location names found in supported game-data tables
The database is generated from WoW client data and filtered to exclude clearly invalid or unused entries, such as names containing NOTUSED.
For Addon Authors
Use this library when your addon needs to display a localized zone, subzone, or location name and the name is not reliably available from the WoW APIs or LibBabble-Zone-3.0.
Because this is an embedded library, end users usually do not need to install or update it separately. Addons that depend on it should include a compatible release or declare it as an optional dependency, according to their packaging requirements.
Usage
Retrieve the library through LibStub and use an English location name as the lookup key:
local SubZone = LibStub("LibBabble-SubZone-3.0")
local localizedName = SubZone:GetLookupTable()["Dun Morogh"]
GetLookupTable() first asks the client APIs for a localized name using generated AreaTable and UiMap ID indexes, then falls back to the current-locale table. If no translation or API result exists for a known key, it returns the English key. Addons should use this lookup table when they want the runtime resolver. GetUnstrictLookupTable(), reverse lookup methods, and Iterate() expose raw static locale data and do not invoke the resolver.
To find English keys for a localized value, use GetReverseLookupTable() for one match or GetReverseIterator() for every match. Iterate() traverses the current English-to-localized translation pairs:
for englishName, localizedName in SubZone:Iterate() do
-- Use each translated location name.
end
for englishName in SubZone:GetReverseIterator(localizedName) do
-- Handle every English key with this localized value.
end
For an area name present in the client area map, GetAreaInfo() returns the localized name provided by the WoW client:
local localizedName = SubZone:GetAreaInfo("Dun Morogh")
It returns nil when the input is missing, is not in the map for the current game version, or the client has no area name for its ID. The same method also checks generated UiMap candidates.
Building A Combined Lookup Table
Some addons, including Atlas, copy LibBabble data into their own table instead of retaining the LibBabble lookup table. In that case, start with GetLookupTable() so API-backed names are resolved, and provide an English fallback for names that are unavailable in the client API:
local function GetSubZoneNames()
local library = LibStub("LibBabble-SubZone-3.0")
local names = {}
local lookup = library:GetLookupTable()
local base = library:GetBaseLookupTable()
for englishName in pairs(base) do
names[englishName] = lookup[englishName] or englishName
end
return names
end
Localization
Most localized zone, subzone, and location names are extracted from the World of Warcraft game client.
Users do not normally need to provide translations manually. If you find a missing, incorrect, or inconsistent name, please report it through the project’s issue tracker or CurseForge comments.
When reporting an issue, include as much context as possible:
- The English location name
- The affected game locale
- The name shown in the game client, if available
- The zone, subzone, map, or instance where it appears
- A screenshot, area ID, or other reference when possible
Some entries may appear untranslated because the localized name is identical to the English name.
Known Limitations
Location names in World of Warcraft game data are not always unique.
The same English name can occur in multiple records and may legitimately have different localized translations depending on context. LibBabble-SubZone-3.0 stores one translation for each English lookup key, so it cannot represent every context-specific variation.
If you find an incorrect, missing, or inconsistent translation, please report it with as much context as possible, including:
- The English location name
- The affected game locale
- The correct localized name
- The map, zone, subzone, or game-data context
- A screenshot or game reference, if available
Please note that regenerated game-data exports can overwrite manual corrections. Including an explanation in the report helps preserve the intended correction during future updates.
Missing Locations and Issues
If a zone, subzone, or location is missing from the library, please report it through the project’s issue tracker.
Include the English name, localized name if known, game version, and any available context such as the map name, coordinates, area ID, or a screenshot.
Projects Using This Library
LibBabble-SubZone-3.0 is used by addons that need localized location-name lookups, including projects such as Atlas and FishingBuddy.
For the current list of known dependents, see the project’s Relations page.
-
View User Profile
-
Send Message
Posted Oct 13, 2014the latest release now include zone names from WoW 6.0.2.19005
-
View User Profile
-
Send Message
Posted Sep 10, 2012I don't know what is causing this, but it happens when I log-in for the first time, and sometimes when I mount using Livestock:
Date: 2012-09-10 14:53:57
ID: 1
Error occured in: Global
Count: 1
Message: ...Libs\LibBabble-SubZone-3.0\LibBabble-SubZone-3.0.lua line 24:
attempt to index global 'lib' (a nil value)
Debug:
[C]: ?
...Libs\LibBabble-SubZone-3.0\LibBabble-SubZone-3.0.lua:24: in main chunk
Locals:
AddOns:
Swatter, v4.0.2 (<%codename%>)
WowheadLooter, v50006
Ace3, v
AckisRecipeList, v2.4-63-g596bc16
Altoholic, v5.0.001c
Atlas, v1.21.1
AtlasBattlegrounds, v1.21.1
AtlasDungeonLocs, v1.21.0
AtlasOutdoorRaids, v1.21.0
AtlasLoot, vv7.00.00
AtlasLootCataclysm, vv7.00.01
AtlasLootClassicWoW, vv7.00.01
AtlasLootLoader, vv7.00.01
AucAdvanced, v5.14.5335 (KowariOnCrutches)
AucFilterBasic, v5.14.5335 (KowariOnCrutches)
AucFilterOutlier, v5.14.5335.5335(5.14/embedded)
AucMatchUndercut, v5.14.5335.5225(5.14/embedded)
AucStatHistogram, v5.14.5335 (KowariOnCrutches)
AucStatiLevel, v5.14.5335 (KowariOnCrutches)
AucStatPurchased, v5.14.5335 (KowariOnCrutches)
AucStatSales, v5.14.5335.5335(5.14/embedded)
AucStatSimple, v5.14.5335 (KowariOnCrutches)
AucStatStdDev, v5.14.5335 (KowariOnCrutches)
AucStatWOWEcon, v5.14.5335.5335(5.14/embedded)
AucUtilAHWindowControl, v5.14.5335.5133(5.14/embedded)
AucUtilAppraiser, v5.14.5335.5335(5.14/embedded)
AucUtilAskPrice, v5.14.5335.5160(5.14/embedded)
AucUtilAutoMagic, v5.14.5335.5335(5.14/embedded)
AucUtilCompactUI, v5.14.5335.5335(5.14/embedded)
AucUtilEasyBuyout, v5.14.5335.5238(5.14/embedded)
AucUtilFixAH, v5.14.5335 (KowariOnCrutches)
AucUtilItemSuggest, v5.14.5335.5335(5.14/embedded)
AucUtilPriceLevel, v5.14.5335.5237(5.14/embedded)
AucUtilScanButton, v5.14.5335.5335(5.14/embedded)
AucUtilScanFinish, v5.14.5335.5153(5.14/embedded)
AucUtilScanProgress, v5.14.5335.4979(5.14/embedded)
AucUtilScanStart, v5.14.5335.5153(5.14/embedded)
AucUtilSearchUI, v5.14.5335.5335(5.14/embedded)
AucUtilSimpleAuction, v5.14.5335.5208(5.14/embedded)
AucUtilVendMarkup, v5.14.5335.4828(5.14/embedded)
Babylonian, v5.1.DEV.332(/embedded)
BagBrother, v
Bagnon, v5.0.4
BankStack, vv27
BeanCounter, v5.14.5335 (KowariOnCrutches)
Configator, v5.1.DEV.335(/embedded)
Cromulent, vv1.6.1
CurseProfiler, v
DataStore, v5.0.001
DataStoreAchievements, v5.0.001
DataStoreAgenda, v5.0.001
DataStoreAuctions, v5.0.001
DataStoreCharacters, v5.0.001
DataStoreContainers, v5.0.001
DataStoreCrafts, v5.0.001
DataStoreCurrencies, v5.0.001
DataStoreInventory, v5.0.001
DataStoreMails, v5.0.001
DataStorePets, v5.0.001
DataStoreQuests, v5.0.001
DataStoreReputations, v5.0.001
DataStoreSpells, v5.0.001
DataStoreStats, v5.0.001
DataStoreTalents, v5.0.001
DBMCore, v
DBMLDB, v
DebugLib, v5.1.DEV.312(/embedded)
Decursive, v2.7.1.1
Dominos, v5.0.21
DominosBufftimes, v
DominosCast, v
DominosXP, v
EasyMail, v
Enchantrix, v5.14.5335 (KowariOnCrutches)
EnchantrixBarker, v5.14.5335 (KowariOnCrutches)
FBBroker, v1.16c
FBMergeDatabase, v1.0.9b
FBOutfitDisplayFrame, v1.0.9
FBTitan, v0.9.9
FBTrackingFrame, v1.0.9b
FishingBuddy, v1.0.9d
Gatherer, v4.0.2
HealBot, v5.0.4.4
InFlightLoad, v5.0.001
Juggler, v5.0.0.1
LibExtraTip, v5.12.DEV.324(/embedded)
LightHeaded, v352
Livestock, v1.6.4
Molinari, v50001.22-Beta
Outfitter, v5.5.2
Pawn, v1.6.4
ProfessionHUD, v5.7.0
QuestCompletist, v99.8
QuestGuru, v2.2.13-50001
QuestGuruTracker, v1.5.14-50001
Rarity, v1.0
Skillet, v
SlideBar, v4.0.2 (<%codename%>)
Stubby, v5.14.5335 (KowariOnCrutches)
TipHelper, v5.12.DEV.315(/embedded)
Titan, v5.1.4.50001
TomTom, vv50001-1.0.2
BlizRuntimeLib_enUS v5.0.4.50001 <us>
(ck=d1f)
Hope this helps! :)
-
View User Profile
-
Send Message
Posted Sep 10, 2012Date: 2012-09-10 03:41:36
ID: 1
Error occured in: Global
Count: 1
Message: ...dOns\LibBabble-SubZone-3.0\LibBabble-SubZone-3.0.lua line 24:
attempt to index global 'lib' (a nil value)
Debug:
[C]: ?
...dOns\LibBabble-SubZone-3.0\LibBabble-SubZone-3.0.lua:24: in main chunk
Locals:
MAJOR_VERSION = "LibBabble-SubZone-3.0"
MINOR_VERSION = 90127
LibBabbleSubZone = <table> {
}
GAME_LOCALE = "enUS"
(*temporary) = nil
(*temporary) = nil
(*temporary) = <table> {
}
(*temporary) = 90124
(*temporary) = <function> defined =[C]:-1
(*temporary) =
-
View User Profile
-
Send Message
Posted Sep 10, 2012This is resolved.
-
View User Profile
-
Send Message
Posted Sep 3, 2012If that helps, http://home.sinpi.net/wow/AreaTable-enGB-itIT.lua here's AreaTable in ready-to-import format, save for some removable UNUSED bits.
-
View User Profile
-
Send Message
Posted Sep 3, 2012SubZone is complicated, it combines with the subzone info from below tables:
I have a private Excel sheet to manage those.
I will try to at least update enUS first, so that you can help to upload translation.
-
View User Profile
-
Send Message
Posted Aug 30, 2012I exported 5.0.4 AreaTable.dbc for enGB, deDE, esES, frFR, itIT, ptPT and ruRU, and converted into CSV. Are you using some publicly available tool to facilitate producing the lib from those, or perhaps I can just send these over to you to save you some work? :P
(Edit: I fail at reading, you do use more tables than just AreaTable. I can get the others, if that saves some time :) )
(Edit 2: Baaah. I hoped to import the new translations using the nifty translation import thing you have there... only to find out it cannot import unknown phrases. So much for my helping out :P )
-
View User Profile
-
Send Message
Posted Aug 29, 2012sorry, being very busy at work recently, I will try to find some time to update it for 5.0.4, including itIT. Targeting to have a beta before mid-September.
-
View User Profile
-
Send Message
Posted Aug 29, 2012Any plans on updating this to 5.0.4, including the itIT locale? (Or: which files should I look at, if I were to update it myself, in a pinch?)
-
View User Profile
-
Send Message
Posted Dec 4, 2011Excellent..the error is gone
Works perfect now with Patch 4.3 and FishingBuddy and Atlas!
Thank you very much :)
-
View User Profile
-
Send Message
Posted Jun 26, 2011For those who are in Live server with WoW 4.1, please do not upgrade to latest revision. Stay in r.73 or the 4.1-release1. Revisions after r.74 are designed for WoW 4.2, some old zone names have been removed or renamed.
-
View User Profile
-
Send Message
Posted Jun 26, 2011Revisions after r.74 are designed for WoW 4.2, some old zone names have been removed or renamed.
-
View User Profile
-
Send Message
Posted Nov 18, 2010For those who are in Live server with WoW 4.0.1, please do not upgrade to latest revision. Stay in r.38 or the 4.0release-1.
-
View User Profile
-
Send Message
Posted Nov 18, 2010going to refresh the database and re-import all the zone data on Friday. Hopefully everything will be going fine. and this will be for WoW 4.0.3 only, not for 4.0.1.
-
View User Profile
-
Send Message
Posted Jul 11, 2010French: 100%
German: 100%
Korean: 99.89%
Latin American Spanish: 100%
Russian: 99.99%
Simplified Chinese: 98%
Spanish: 100%
Traditional Chinese: 100%
http://www.wowace.com/addons/libbabble-subzone-3-0/localization/