Credits & data sources
Reference17 min readUpdated
Where every input comes from, its license, what may enter the repository or a release, and the credits the licenses require.
On this page
Everywhere else in these docs, a source is named by what it is: "the community quest database", "the Era quest database", "the Forever web database", "the game-table export". In paths, flags and source tags it reads as its role: <quest-db>, <era-db>, <web-db>, <tables>, <crossings>, <loot-db>, <names-db>, <talents-site>, <changes-site>, <wiki>, <server-db>, <gear-sim>, <leveling-bis>, <rares-db>. This page names each source, with its license, as the licenses require.
Polestar is free and open source under the GNU General Public License, version 3 (opens in a new tab).
Read the rest of this section334 words
Its data comes from public sources, the game client's own tables and recordings; THIRD_PARTY.md lists every input, its license and what a release holds from it. The guides and the quest markers carry facts (titles, givers, positions, levels) from QuestieDB's Forever store, credited there. Inputs whose terms do not allow redistribution are read from your installed copies at build time and their outputs stay local: the CodexLookup's database of items, mounts, pets, recipes, NPCs, rares, quests, zones, dungeons and treasures, with where each comes from (codex build, the Polestar_Codex addon). packAn addon of guides for Polestar, built by the compiler from a folder with a pack.json (the folder is a pack too); Polestar's own is Polestar_Guides (pack id guides). and the zone crossings pack are gitignored and never packaged. No game art ships with Polestar: zone paintings are read from the player's own client, and every texture is drawn in code. The screenshots in this README show the game (© Blizzard Entertainment) and are not part of the release.
The Inter typeface (SIL Open Font License 1.1) ships with the addon; the
POLESTAR wordmark is cut from Cinzel (SIL Open Font License 1.1) and ships
only as images. The README's banner, buttons, logo, charts and the
CurseForge avatar are drawn by tools/readme (opens in a new tab) from the same sources, with
Marcellus (SIL Open Font License 1.1) for the banner's lines; the CurseForge
button's anvil is the CurseForge mark from simple-icons (CC0 1.0).
The walking router in Polestar_Nav started from Shortest Path Forever's, by
Cillian Berragan, and keeps his copyright in the files that began as his; its
maps of Eastern Kingdoms, Kalimdor and Zephras Isle are Polestar's, written in
a format grown from his by a port of his baker; all of it is under
the GPL version 3 or later, used with his permission
(see Pathing by Shortest Path Forever);
the guideOne route, written as a .guide file and compiled to Lua; its id reads like forever/alliance/human/01-elwynn-forest.-pack permission below does not cover them.
LICENSE-EXCEPTION.md adds a permission under section 7: guide packs produced by Polestar's compiler and import strings produced by its tools, including the reference data they place in them, may be distributed under terms of the author's choice (not guide text copied from Polestar's own guides, nor Polestar's code).
World of Warcraft is a trademark of Blizzard Entertainment. Polestar is a community project, not affiliated with or endorsed by Blizzard.
Third-party material#
| Component | Used for | License | Where |
|---|---|---|---|
| pfQuest database by Shagu | Era-baseline quest, NPC, object and item facts used by the data pipeline and resolved into the guides | MIT | data/forever/meta.json records the exact revision; the notice ships as addon/Polestar_Guides/LICENSE-DATA.txt |
Blizzard client data tables (UiMap, UiMapAssignment, AreaTable, Faction; from the Forever client also ChrRaces, ChrClasses, CharBaseInfo, Map and ItemSparse) via wago.tools | Zone names, AreaID→UiMap mapping, Era and Forever map world bounds, the faction hierarchy, races and classes, dungeon and raid areas (data build); how long timed quest items last, for the timed-item lint | Game data © Blizzard Entertainment; used as facts for interoperability | data/sources/wago/ (cache, not distributed) |
| Inter by Rasmus Andersson | UI typeface | SIL Open Font License 1.1 | addon/Polestar/Media/Fonts/ (license text alongside) |
| Fira Sans by The Mozilla Foundation and Telefonica S.A. (Regular, Medium and SemiBold, from Google Fonts) | The Halo skin's typeface | SIL Open Font License 1.1 | addon/Polestar/Media/Fonts/FiraSans-*.ttf, license text in FiraSans-OFL.txt |
| Cinzel by Natanael Gama | The "POLESTAR" wordmark, rendered once into addon/Polestar/Media/UI/wordmark.tga and wordmark-small.tga, and drawn as outlines into the README's banners (docs/assets/banner-*.svg); the font file itself is not shipped | SIL Open Font License 1.1 | tools/media/fonts/ (font and license, build-time only) |
| Marcellus by Brian J. Bonislawsky (Astigmatic) | The lines under the wordmark in the README banner and the README's download and CurseForge buttons, drawn as outlines into docs/assets/banner-*.svg, download.svg and curseforge.svg; not used in the addon | SIL Open Font License 1.1 | tools/media/fonts/ (font and license, build-time only) |
| Screenshots of World of Warcraft: Forever | The README's pictures of the addon in the game | Game imagery © Blizzard Entertainment | docs/assets/screenshots/ (documentation only; not in the addon packages) |
| Discord's logo (the symbol from Discord's brand kit) | The mark beside every link to the Polestar Discord: the report window, the invite's copy window, the welcome's last page, the foot of the hubPolestar's main window: a rail of sections (Guides, Lookup, Dungeons, Rares) with Options at its foot (UI/Picker.lua).'s and the settings' sidebars | Trademark of Discord Inc., used as Discord's brand guidelines allow: unaltered, in its own colour, to link to the Polestar Discord | The symbol's outline as published, in tools/media/ui.js, rendered into addon/Polestar/Media/UI/discord.tga |
CurseForge's mark (the anvil; the path of the curseforge icon from simple-icons) | The README's CurseForge button, which links to Polestar's CurseForge page | Path data CC0 1.0 (simple-icons); CurseForge is a trademark of Overwolf, used only to link to Polestar's CurseForge page | tools/readme/brand.js, drawn into docs/assets/curseforge.svg; not used in the addon |
Blizzard client data tables (ItemSparse, Item, ItemEffect, SpellEffect) via wago.tools | Item stats for gear advice (Polestar_ItemDB) | Game data © Blizzard Entertainment; used as facts for interoperability | generated into addon/Polestar_ItemDB/ |
Blizzard client data tables (UiMapXMapArt, UiMapArt, UiMapArtStyleLayer, WorldMapOverlay, WorldMapOverlayTile, UiMap; Forever build 1.60.1.70338) via wago.tools | Which world map overlay textures each zone map art has, so the zone art shows a zone without fog of war (file IDs and offsets only; no art is shipped) | Game data © Blizzard Entertainment; used as facts for interoperability | generated into addon/Polestar/UI/ZoneArtOverlays.lua |
Blizzard client data tables (WorldMapOverlay, UiMapXMapArt, UiMap, AreaTable; Forever build 1.60.1.70338) via wago.tools | The discoverable areas of each zone, for the generated exploration guides (exploration build) | Game data © Blizzard Entertainment; used as facts for interoperability | data/sources/wago/ (cache); generated into guides/forever/exploration/ |
Blizzard client data tables (TaxiNodes, TaxiPath, TaxiPathNode, AreaTrigger from Classic Era, plus Forever's TaxiPathNode for the ships Forever added, and Forever's TransportAnimation, SpellEffect, SpellName, SpellMisc, SpellCastTimes, SpellReagents, SkillLineAbility for the lifts, the tram and class teleports) via wago.tools | The travel planner's flight masters, flight paths, transports, instance and walk-in portals, the lift and tram tracks the timetables run on, and the class teleports (travel build) | Game data © Blizzard Entertainment; used as facts for interoperability | data/sources/wago/ (cache); generated into addon/Polestar/Nav/TravelData.lua |
CMaNGOS classic-db (commit 22b5146, Full_DB/ClassicDB_1_12_1_z2815.sql.gz, its sha256 pinned in tools/lib/travel/cmangos.js) and the CMaNGOS mangos-classic transport model (TransportMgr::GenerateWaypoints, ElevatorTransport::Update), as Shortest Path Forever's generators use them | Transport timetables (travel build) and guide heights (data build, compile, trainers build). From classic-db, facts only: the sniffed transports periods of the classic boats and zeppelins, the gameobject spawns of the lift cars and tram trains, the areatrigger_teleport destinations of the Darnassus portals and the spell_target_position of class teleports; and the spawn heights (z) of every creature and gameobject on Eastern Kingdoms and Kalimdor, used as facts like the transport periods: a guide goal at an NPC or object, its spawn spots, a smart target's candidates and the training reminder's class trainers carry the height of the spawn as z, so the arrow's walk ends on its floor. From mangos-classic, code: tools/lib/travel/timetable.js ports TransportMgr::GenerateWaypoints (by way of Shortest Path Forever's gen_routes.py: the Catmull-Rom spline matrix, three samples per spline segment, 30 yd/s with 1 yd/s² acceleration and braking) and reads lift tracks as ElevatorTransport::Update does (Y reversed) | classic-db: GPL-3.0; the spawn heights are used as facts, like the transport periods. mangos-classic: GPL-2.0-or-later per its source file headers (the repository's metadata says GPL-2.0); the port is taken under the "or later" option, as GPL-3.0 | data/sources/cmangos/ (cache, not distributed: the rows used kept in transit.json and spawnz.json); the port in tools/lib/travel/timetable.js; its output generated into addon/Polestar/Nav/TravelData.lua; the heights in data/forever/spawnz.json (local), as z in the compiled guide packs, whose LICENSE-DATA.txt names classic-db (from data/forever/meta.json), and as the class trainers' z in addon/Polestar/Core/ClassTrainers.lua, whose header names it |
CMaNGOS classic-db (the same pinned dump) creature spawns and creature_template rows (name, faction template, NPC flags, extra flags, rank, level), and the CMaNGOS mangos-classic (commit 8ec338a) flag and faction definitions (CREATURE_EXTRA_FLAG_GUARD in src/game/Entities/Creature.h, NPCFlags in src/game/Entities/Unit.h, FactionGroupMask in src/game/Server/DBCEnums.h, FactionTemplateEntry::IsHostileTo in src/game/Server/DBCStructure.h) | The hostile hubs layer (nav layers hubs): where each faction's guards and service NPCs stand, which side each serves | classic-db: GPL-3.0, used as facts; mangos-classic: GPL-2.0-or-later, the bit values and the hostility rule re-expressed in JavaScript (taken under GPL-3.0) | data/sources/cmangos/ (cache: creature_template.json beside the dump); tools/lib/nav/layers/hubs.js; built into data/local/nav-layers/hubs.json (gitignored); tools only, never committed, packed or distributed |
Blizzard client data tables FactionTemplate and AreaTable (the navigation grid's Forever build) via wago.tools | The hostile hubs layer (nav layers hubs): which creatures are hostile to Alliance or Horde players, and each hub's name | Game data © Blizzard Entertainment; used as facts for interoperability | data/sources/wago/<build>/ (cache); built into data/local/nav-layers/hubs.json (gitignored) |
| Shortest Path Forever by Cillian Berragan (v1.16.0, commit b1ad5bd; the adapted parts below from v1.15.0; cillian.dev) | The arrow's walking routes: Polestar's walking router started from Shortest Path Forever v1.16.0 by Cillian Berragan, with thanks; Polestar maintains it since 2026-10-16 (Routing/PathGrid.lua, Path.lua, PathJobs.lua began as his files and keep his copyright and the GPL notice); the walking maps are Polestar's (next row). Adapted from his code: route-line geometry and map painters (UI/Strokes.lua, UI/FlightLines.lua, UI/Route.lua), the cast prompt and stepOne stop in a guide: a title, optional conditions and tip, and at least one goal. skipping (UI/Arrow.lua, Journey/Journey.lua), transport alerts (UI/Alert.lua), the flight-route line and node choice (Transport/Taxi.lua), journey input and way commands (Journey/JourneyInput.lua, Core/API.lua, Core/TomTom.lua, Core/Way.lua), nearby places (UI/Nearby.lua), the journey tracker's steps (UI/Tracker.lua, Journey/JourneySteps.lua), boat, zeppelin and tram timing and teleports (Transport/Model.lua, Timetable.lua, Observer.lua, Sync.lua, Teleports.lua) and his transit generators (tools/gen_routes.py, tools/gen_transit.py). Used with his permission, given directly to Fitz (2026-10-15) and recorded in shortest-path-forever#143 | GPL-3.0-or-later (Copyright (C) 2026 Cillian Berragan) | The router's files are Polestar's code since 2026-10-16, no longer vendored, each with a header saying where it started; LICENSE and CREDITS.md sit alongside. The adapted parts are in addon/Polestar/Maps/RouteStrokes.lua, Maps/RouteLines.lua, Nav/Prompts.lua, Nav/Alerts.lua, QoL/Flight.lua, Nav/Journey.lua, Nav/Nearby.lua, Nav/Walk.lua, UI/JourneyPanel.lua, Nav/Transit.lua, tools/lib/travel/timetable.js and tools/lib/travel/cmangos.js, each crediting him at its top, and listed in addon/Polestar_Nav/CREDITS.md |
Blizzard client data tables (SkillLine, SkillLineAbility, SpellName, SpellEffect, SpellReagents, SpellTotems, SpellCastingRequirements, SpellFocusObject, ItemSparse, Item, ItemEffect, ItemXItemEffect; Forever build 1.60.1.70425, plus Classic Era 1.15.9.70003 for the spells and items Forever's tables lack, and its SkillLineAbility to tell Season of Discovery recipes apart) via wago.tools | Professions: recipes, their skill colours, reagents, tools and recipe items (profession build) | Game data © Blizzard Entertainment; used as facts for interoperability | data/sources/wago/ (cache); data/forever/professions.json (local), read by the profession guide generators and codex build |
Blizzard client data table QuestXP (Classic Era 1.15.9.70003) via wago.tools | Quest XP by quest level and difficulty for the route simulatorThe route model and search that finds and scores leveling routes (node tools/polestar.js sim, SIMULATION.md). (sim) | Game data © Blizzard Entertainment; used as facts for interoperability | data/sources/wago/ (cache, not distributed) |
| ForeverDB Paladin talent guides | The three Paladin talent plans (which talent at which level) in talents/forever/paladin.json; the notes beside them are our own wording | Public web pages; picks used as facts, no text copied | talents/forever/paladin.json names the source; the Talents section credits ForeverDB with its link |
Blizzard client data tables (TraitNode, TraitNodeEntry, TraitDefinition, TraitEdge, TraitCond and their link tables, SkillLineXTraitTree, SpellName; Forever build 1.60.1.70450) via wago.tools | The talent trees the plans are checked against (node IDs, ranks, gates, arrows, names) | Game data © Blizzard Entertainment; used as facts for interoperability | data/sources/wago/ (cache); generated into addon/Polestar/Talents/Builds.lua |
Blizzard client files of the Forever client (wow_classic_beta): the minimap blocks of each continent and the world map art and overlay tiles of each zone, by fileDataID from wago.tools, with the Map, UiMap, UiMapAssignment, UiMapXMapArt, UiMapArt, UiMapArtStyleLayer, UiMapArtTile, WorldMapOverlay and WorldMapOverlayTile tables; and the game's icons (item, spell, profession, class and race icons, the gossip, minimap tracking, cursor and raid target textures), by fileDataID with the Item, SpellMisc, SkillLine and ChrClasses tables and wago.tools' file name search | The route planner's map (planner art): terrain tiles and unfogged zone paintings; and the planner page's icons (/icon/..., tools/planner/icons.js); drawn only in the local planner page | Game art © Blizzard Entertainment | Downloads cached under data/sources/casc/ and data/sources/wago/, built into data/local/planner/art/ and data/local/planner/icons/ (all gitignored); never committed, packed or distributed |
Blizzard client files of the Forever client (wow_classic_beta): each continent's map tiles (root, obj0 and tex0 ADTs: terrain heights, holes, area ids, liquids, model placements, the terrain's texture layers and alpha maps), the WMO and M2 models they place (collision and WMO liquids), by fileDataID from wago.tools, with the Map, LiquidType, LiquidMaterial, LiquidObject and TransportAnimation tables | The navigation grid (nav build): where a character can walk, climb, fall, swim and ride lifts, for the route planner's walks and the arrow-aid experiments; the roads layer (nav layers roads): where the terrain is painted with a road texture | Game data © Blizzard Entertainment; used as facts for interoperability | Downloads cached under data/sources/casc/ and data/sources/wago/, built into data/local/nav/ and data/local/nav-layers/ (both gitignored); never committed, packed or distributed |
wowdev community listfile (community-listfile.csv, the latest release when first downloaded) | The client paths of the terrain textures the tex0 ADTs name by fileDataID, to tell road textures from the rest (nav layers roads; the reviewed paths in tools/lib/nav/layers/road-textures.json) | No license file published; file names used as facts only | Build time only: downloaded once to data/sources/listfile/ (gitignored); never committed, packed or distributed |
Recast & Detour by Mikko Mononen: dividePoly of Recast/Source/RecastRasterization.cpp | The navigation grid's rasteriser splits each triangle at the column edges with it (ported to JavaScript, altered) | zlib (Copyright (c) 2009-2010 Mikko Mononen) | tools/lib/nav/grid/rasterise.js divide, with the zlib notice; tools only, not in the addon or a release |
TrinityCore: WMOGroup::GetLiquidTypeId of src/tools/vmap4_extractor/wmo.cpp | Which liquid a WMO group's old-style liquid id means (water, ocean, magma, slime), for the navigation grid (ported to JavaScript) | GPL-2.0-or-later, compatible with Polestar's GPL-3.0 (taken under GPL-3.0) | tools/lib/nav/geom/wmo.js liquidTypeId; tools only, not in the addon or a release |
Blizzard UI source (forever branch) | API reference while developing; not copied or distributed | © Blizzard Entertainment | .ref/ (gitignored) |
| QuestieDB Forever store (Questie v12) | Forever quest, NPC, object and item facts (including Forever-only quests and zones) and quest XP for the data pipeline; the dungeon and raid entrance points of its Forever table (support/Forever/Zones/dungeons.lua at 36ca1ca), curated by hand into tools/lib/codex/entrances.json | No license file published | Read from the installed copy at build time; the data lands in data/forever/ (gitignored). Facts resolved from it ship in releases: in the compiled Polestar_Guides (quest titles, givers, positions, levels), in Polestar_QuestDB (quest markers) and in Polestar_Codex (Lookup, Dungeons, Rares: NPC ranks, spawns, drops, quests, entrances), which the release zip includes and git does not; entrances.json (30 points, each citing its line) is in git |
| ForeverLevelingBiS by Thunder (v0.12.0-beta, data 2026-10-13) | Forever item stats and where leveling gear comes from (quest rewards and choices, dungeon drops, crafts), racial gear traits; the same item sources feed the Codex's "where to get it" | MIT (Copyright (c) 2026 Thunder) | Read from the installed copy by gear build and codex build (tools/lib/consume/foreverlevelingbis.js); facts generated into addon/Polestar_ItemDB/Forever.lua, the Gear.RACIALS table of addon/Polestar/Gear/SpecData.lua, and data/forever/codex/ and Polestar_Codex (shipped; notice in its LICENSE-DATA.txt) |
wowsims (classic at 7779ebbf, sod at four phase commits) by the wowsims team | Simulated stat weights blended into the level bands that score upgrades | MIT (Copyright (c) 2024 wowsims team) | Cached under data/sources/wowsims/ (gear fetch); numbers generated into addon/Polestar/Gear/SpecData.lua with each band's commit and file; notice in addon/Polestar/Gear/LICENSE-DATA.txt |
| DungeonJournal (ForeverDungeonJournal addon) by Exehn | Dungeon facts for dungeons build: levels, entrances, bosses and loot, dungeon quests with chains, rewards, observed Forever XP and quest-giver positions; the Dungeons section shows them (facts only, our own wording) | No license file published | Read from the installed copy at build time, only by dungeons build and codex build --local-extras; the output stays local: data/forever/dungeons.json and a local-only Codex pack that pack refuses |
| AtlasLoot Classic (the installed "AtlasLoot Forever", version "Forever 1.60.1", by sliccer) | Codex facts: dungeon and raid bosses and their loot (including the Forever instances and per-boss drop rates), collections (mounts, companions, tabards, sets), crafted items, faction rewards by standing, PvP rewards by rank | GPL-2.0 | Importer code only (tools/lib/consume/atlasloot.js, reading the installed AtlasLootClassic_* modules and the core's Data/Profession.lua and Data/Requirements.lua); read only by codex build --local-extras, whose output stays local (pack refuses it) |
| RareScanner (1.60.1.b7) by maqjav and Maciza-Tyrande | Codex facts: rare NPC ids, maps and positions, their loot, treasure loot, mount and pet item ids | All Rights Reserved | Importer code only (tools/lib/consume/rarescanner.js, reading the installed copy's Tables/); read only by codex build --local-extras, whose output stays local (pack refuses it) |
Blizzard client data tables (Item, ItemSparse, ItemEffect, ItemXItemEffect, SpellEffect, SpellName, SkillLine, SkillLineAbility, Mount, BattlePetSpecies, Map, AreaTable, DungeonEncounter, LFGDungeons, MapDifficulty, ContentTuning; Forever build 1.60.1.70338, plus Classic Era 1.15.9.70003 Item/ItemSparse/ItemEffect/Map for items Forever's tables lack and to tell Forever's own instances apart) via wago.tools | Codex item names, quality, levels, reputation and PvP rank requirements; which spell each mount and pet item teaches (mount spotting), class mounts, retired mounts (Mount flags); profession names; dungeons and raids: names, kind, levels, bosses in order, entrances (the corpse point) | Game data © Blizzard Entertainment; used as facts for interoperability | data/sources/wago/ (cache); generated into data/forever/codex/ and Polestar_Codex (shipped) |
| Wowhead Forever database, per entity | Codex facts our other inputs lack, for the entities the parity report listed as missing and for our instances' bosses: NPC level, classification (rare, boss) and positions, what an NPC drops or an object contains with Wowhead's looted counts (the drop chance), the reputation standing and PvP rank an item's tooltip requires | Public web pages; facts only (ids, numbers, coordinates), no text, images or code | Read by codex build from data/sources/wowhead/codex/ (gitignored) when present. Generated into data/forever/codex/ and Polestar_Codex (shipped, listed in its LICENSE-DATA.txt) |
| warcraft.wiki.gg (vendor, item, quest and patch-note pages), and where it gives no standing Wowhead's Classic reputation guides (Warsong Outriders, Silverwing Sentinels, Frostwolf Clan) | The reputation standing a vendor, an NPC handing an item out or a quest asks for an item, where no client table records it (tools/lib/codex/repgates.json) | Facts only (item, faction, standing, vendor or quest ids); no text, images or code copied | Each row cites its page; generated into data/forever/codex/ and Polestar_Codex (shipped, listed in its LICENSE-DATA.txt) |
| Web research: Wowhead database pages (Forever and Classic npc, item, quest and spell pages, and the Forever zone quest lists), wowforevertalents.com, foreverchanges.pro and Blizzard's own Forever pages | Facts checked or filled by hand or by data build: quest XP the data lacked (data/sources/webxp/), the XP and level changes Wowhead's Forever change notes record (data/sources/wowhead/zones.json, when present), trainer roles of Forever NPCs, a few spawn and chain corrections (tools/lib/data/corrections.json, each entry with its source), mount and pet sources for the collectible guides, Forever zones, ships and race/class rules | Facts only; no text, images or code copied | Each correction entry, and each guide that relies on a web fact, names the page it used |
Shortest Path Forever v1.15.0 by Cillian Berragan: tools/baker/gen_nav.py (HPA* entrances and edges, the cluster encodings, floor links), tools/pack_nav.py (zlib + base64 parts) and Routing/PathGrid.lua's decoder | nav pack writes our navigation grid in his walking-map format so the router in Polestar_Nav (started from his) runs on it; the tests read it back with his decoder's logic. The maps themselves (Nav/Nav0*.lua, Nav/Nav1*.lua, Chokepoints.lua) are Polestar's, generated from the Forever client's geometry (map tiles, WMO and M2 collision, liquids; files by fileDataID from wago.tools, used as facts for interoperability like the other client tables) | GPL-3.0-or-later, used with his permission; the maps are Polestar's (GPL-3.0) | Ported in tools/lib/nav/pack.js (named in LICENSE, with the dated Portions Copyright line) and tests/helpers/spfnav.js (credited in their headers); the packed maps ship in addon/Polestar_Nav/Nav/, listed in PACK.json |
| Carbonite (Carbonite Classic, commit 4d06280; originally by Carbon Based Creations, LLC, who released it under the GPL) | The travel planner's zone crossings: where a walk may leave one zone for the next (its Classic Era Data/classic/ZoneConnections.lua, the 54 walks between zones), imported by travel import --carbonite into tools/lib/travel/crossings.json with an arrival radius of our own | GPL-3.0 | tools/lib/travel/crossings.json names the commit and file; generated into addon/Polestar/Nav/TravelData.lua (shipped) |
Ding! and its game database DingDB (Ding/DB/, with LibDingDB) by Yendi (@moust4ki), a Polestar contributor | Any part of the project, in its current and later versions: its code, guides, tools and DingDB's data, including the quest, NPC, object and item names in deDE, esES, esMX, frFR, koKR, ptBR, ruRU, zhCN and zhTW for Polestar's translations | GPL-3.0 (Copyright Yendi), used with his permission for the whole project and its future versions, given directly to Fitz (2026-10-16). Settled: taking more of Ding later needs no new permission. DingDB's base data is generated from QuestieDB (Ding's Ding/DB/CREDITS.md) and is held like Polestar's other QuestieDB facts (below) | Whatever is taken names Ding, Yendi and the Ding version or commit it came from; DingDB data keeps Ding/DB/CREDITS.md beside it; code adapted from Ding carries a dated Portions Copyright line in its header and in LICENSE, like Shortest Path Forever's. The names: addon/Polestar_Names_<locale>/ (shipped), built by i18n names from a clone in data/sources/ding (gitignored) pinned to v1.8.1's commit and each file's sha256 (DING in tools/lib/i18n/names.js); each folder's LICENSE-DATA.txt records the commit, the file's sha256 and how many names were taken, with CREDITS.md beside it. The weapon masters' weapon skills (WEAPON_MASTERS in addon/Polestar/Nav/Nearby.lua, for Nearby services) are DingDB's hand-noted facts from v1.8.1 (fb0a06a, tools/data/corrections/10_weapon_masters.lua), named in that table's comment |
pfQuest locale databases by Shagu (db/<locale>/{quests,units,objects,items}.lua; no esMX) | The quest, NPC, object and item names (and dungeon event quests' objective text) the sources above them lack, in each client language; the last names source of i18n names | MIT | The cache clone data build uses (data/sources/pfQuest); generated into addon/Polestar_Names_<locale>/ (shipped), whose LICENSE-DATA.txt names the revision and carries the notice |
Blizzard client data tables in each client language (&locale=): Forever's ItemSparse, Map, DungeonEncounter, Faction and TaxiNodes, and Classic Era's ItemSparse for the items Forever's lacks, via wago.tools | The game's own item, instance, encounter, faction and flight point names in deDE, esES, esMX, frFR, koKR, ptBR, ruRU, zhCN and zhTW, the first source of i18n names | Game data © Blizzard Entertainment; names only, used as facts for interoperability | data/sources/wago/<build>/<locale>/ (cache, not distributed); generated into addon/Polestar_Names_<locale>/ (shipped), whose LICENSE-DATA.txt names the builds and tables |
Wowhead Forever database in each client language (the list pages under /forever/<de|es|mx|fr|ko|pt|ru|cn|tw>/ for quests, NPCs, objects and items, and nether.wowhead.com/forever/tooltip for ids no list holds) | The game's names of quests, NPCs, objects and items (Forever's own among them, which no other source has) and the objective text of dungeon event quests, in each client language, for i18n names, after the client tables | Public web pages; the game's own names and objective lines only (Blizzard's strings), no Wowhead text, images or code | Read by i18n names from data/sources/wowhead/names/ (gitignored) when present. Generated into addon/Polestar_Names_<locale>/ (shipped), whose LICENSE-DATA.txt gives the dates read |
Distributing Polestar#
Polestar's own code and guides are GPL-3.0 (see LICENSE). What a release
(node tools/polestar.js pack) holds from the inputs above:
- QuestieDB: facts only, credited in the table above, in the compiled guide
pack,
Polestar_QuestDBandPolestar_Codex. QuestieDB publishes no license; if its maintainers ask, they come out:data build --no-questiebuilds without them, after whichPolestar_QuestDBandPolestar_Codexare rebuilt and the guides that need Forever-only facts give them themselves or are recompiled from other sources; the entries oftools/lib/codex/entrances.jsonthat cite it are removed (the Codex falls back to recordings, guides and corpse points). - DungeonJournal: nothing. The compiler and a release
codex builddo not readdata/forever/dungeons.json; a quest only it knows gets its title and level in the guide, from a public source the guide names. - The Codex (
Polestar_Codex): always, built bycodex buildfrom release-safe inputs only: the Forever and Era client tables, pfQuest (MIT), QuestieDB facts (as above), ForeverLevelingBiS (MIT), Wowhead Forever's per-entity facts (the cache underdata/sources/wowhead/codex/), the web facts indata/forever(XP, Forever change notes, corrections, each with its source), the cited reputation gates oftools/lib/codex/repgates.json, our own recordings and our own guides. ItsLICENSE-DATA.txtlists every source with its version and license. AtlasLoot (GPL-2.0, which GPL-3.0-only Polestar cannot take in), RareScanner (All Rights Reserved) and DungeonJournal (no license) feed onlycodex build --local-extras, a comparison build for the developer's machine whose meta says so;packrefuses it, and any Codex whose sources name them. - Carbonite's zone crossings: always, in
TravelData.lua, under GPL-3.0. They are data of a GPL program, not Polestar's reference dataThe game facts in data/forever/*.json (quests, NPCs, objects, items, zones, map frames and more) that the compiler and the data builds read; built locally by data build.: the guide-pack exception does not cover them and the compiler never puts them in a pack. - The local zone crossings pack (
Polestar_Travel) never ships: its crossings come from a local file (an import of another addon's data, for the developer's machine only). - Recast's
dividePoly(zlib) and TrinityCore'sGetLiquidTypeId(GPL-2.0-or-later, compatible with Polestar's GPL-3.0) are ported into the navigation grid's tool code, which a release does not hold. - Polestar's walking router (started from Shortest Path Forever's, his
copyright kept) and Polestar's maps of Eastern Kingdoms, Kalimdor and
Zephras Isle, grown from his format (
Polestar_Nav): always, under GPL-3.0-or-later with his copyright andCREDITS.md. They are code and data of a GPL program, not reference data: the guide-pack exception does not cover them and the compiler never puts them in a pack. - Ding! and DingDB: anything taken from them may ship, under GPL-3.0 with
Yendi's credit and, for DingDB data, Ding's
Ding/DB/CREDITS.md. His permission covers the whole project and its later versions. The names DingDB takes from QuestieDB follow the QuestieDB rule above: if Questie's maintainers ask, they come out:i18n names --no-questierebuilds the names addons from pfQuest alone. - The names addons (
Polestar_Names_<locale>): always, the game's names in each language from DingDB (above) and pfQuest (MIT), only for the quests, NPCs, objects and items Polestar's guides, quest database and Codex name.
EllesmereUI is all rights reserved: nothing from it is copied; Polestar only calls its public skinning API at runtime.