CoA VanillaGuide ================ This is the CoA Guild 'Exiles' fork of [VanillaGuide][upstream] by mrmr (rsheep@gmail.com), imported from the 1.04.2 release archive dated 2015-03-29. Upstream is unmaintained since 2015. [upstream]: https://github.com/rsheep/VanillaGuide The original addon targets Vanilla 1.12.1 (`Interface: 11200`). This fork ports it to the Ascension 3.3.5 / Voljin client (`Interface: 30300`) so it can be loaded alongside the rest of the CoA addon set. Installing (first testers, please read) --------------------------------------- WoW loads addons by folder name, and the folder name has to match the `.toc` inside it. Our repo is called `coa-vanillaguide` but the `.toc` is `VanillaGuide.toc`, so **clone into a folder named `VanillaGuide`** under your Ascension client's `Interface/AddOns/` directory: ```sh cd /Interface/AddOns git clone https://git.sub-net.at/Exiles/coa-vanillaguide.git VanillaGuide ``` Then enable **VanillaGuide** in the in-game AddOns list, log in, and open the guide with `/vguide`. **Before you test, please also install [BugSack][bugsack] + [!BugGrabber][buggrabber].** This is a code-only port — we haven't loaded it in-game yet, and any Lua error you hit is the fastest way for us to ship a second porting pass. Paste BugSack stacks into the Exiles Discord or open a ticket on `https://git.sub-net.at/Exiles/coa-vanillaguide/issues`. [bugsack]: https://www.curseforge.com/wow/addons/bugsack [buggrabber]: https://www.curseforge.com/wow/addons/bug-grabber What we patched --------------- **1. Interface bump.** `VanillaGuide.toc` now declares `Interface: 30300` and adds a `-coa1` suffix on the version line, matching the convention of the other `coa-*` forks (see e.g. coa-bartender). **2. Lua 5.0 → 5.1 vararg fix.** WoW 1.12 ships Lua 5.0, which exposes varargs as an implicit `arg` table. WoW 3.3.5 ships Lua 5.1, where that table is gone — varargs are `{...}` or `select()`. The two debug print helpers in `Core.lua` (`Di`, `Dv`) used the 5.0 form and would have thrown `attempt to index global 'arg' (a nil value)` on every debug call. Local-shadow `arg = {...}` keeps the rest of each function unchanged. **3. Lua 5.0 `getn` → length operator.** `GuideTable.lua` used the Lua 5.0 global `getn(opentext)` to size a colour-substitution table. That global is gone in Lua 5.1 (`table.getn` was deprecated and the bare `getn` removed entirely). Replaced with `#opentext`. Would have crashed on the very first guide load with `attempt to call global 'getn' (a nil value)`. What is still TODO ------------------ - **In-game smoke test.** The addon has not yet been loaded against the Ascension client. Expect further small breakage (frame APIs, `GetAddOnInfo` signature, possibly map-zone coords) once we drive it through `/vguide`. - **MetaMapBWP integration.** MetaMap doesn't exist on 3.3.5. The hooks in `Settings.lua` and `Frame_SettingsFrame.lua` are gated behind `IsAddOnLoaded("MetaMap")` so they're effectively dead, but we'll want to retarget them at **pfQuest** (already in the CoA addon set) for waypoints and quest markers. - **Dynamic-level-scaling content.** Ascension scales every starting zone to the player, so all six vanilla starting zones are viable end-to-end. Joana's faction-locked H/A split still applies (quest givers are still faction-restricted), but the early-game chain doesn't have to funnel through the "correct" 1-12 zone first. We keep the H/A split and lean into the picker to show all three per-faction starting zones up front. - **CoA-custom content slot.** No CoA-specific zones or events are wired in yet. Once the port is verified, we add a separate `GuideTables/CoA/` directory for guild content (Heroes of Ascension events, mutated-class side notes, etc.) so upstream patches can still merge cleanly into the Joana / Brian Kopps trees. Files we touched ---------------- - `VanillaGuide.toc` — Interface bump, CoA metadata. - `Core.lua` — local-shadow `arg = {...}` inside `Di` and `Dv`. - `GuideTable.lua` — `getn(opentext)` → `#opentext`. - `README.md` — upstream Donations / volunteer-pitch section removed. - `README-CoA.md` — this file. Everything else is the unmodified 1.04.2 import.