Skip to content

Creating a Guide

JeromeM edited this page Feb 20, 2026 · 2 revisions

Creating a Guide

This tutorial walks you through creating a complete guide pack for GuidelimeVanilla.

Guide Pack Structure

A guide pack is a separate WoW addon that registers guides with GuidelimeVanilla.

GuidelimeVanilla_MyGuides/
├── GuidelimeVanilla_MyGuides.toc
├── init.lua
├── Guide_Zone1.lua
├── Guide_Zone2.lua
└── Guide_Zone3.lua

.toc File

## Interface: 11200
## Title: Guidelime Vanilla - My Guides
## Notes: Custom leveling guides for Alliance
## Dependencies: GuidelimeVanilla

init.lua
Guide_Zone1.lua
Guide_Zone2.lua
Guide_Zone3.lua
  • ## Dependencies: GuidelimeVanilla is required — it ensures GuidelimeVanilla loads first
  • ## Notes: is displayed in the guide pack selection dropdown
  • New .toc entries require a full game restart (not just /reload)

init.lua

local GLV = LibStub("GuidelimeVanilla")
if not GLV then
    DEFAULT_CHAT_FRAME:AddMessage("|cFFFF0000[My Guides]|r GuidelimeVanilla is required!")
    return
end

-- Register the addon folder name
GLV.guidePackAddons["My Guides"] = "GuidelimeVanilla_MyGuides"

-- Map races to starting guides for auto-selection
GLV:RegisterStartingGuides("My Guides", {
    ["Human"] = "Elwynn Forest",
    ["Dwarf"] = "Dun Morogh",
    ["Gnome"] = "Dun Morogh",
    ["NightElf"] = "Teldrassil",
})

Guide File

local GLV = LibStub("GuidelimeVanilla")
GLV:RegisterGuide([[
[N 1-11 Elwynn Forest]
[GA Alliance]
[D My custom guide for Elwynn Forest\\By MyName]

[QA 783] Accept "A Threat Within"
[G 48,42 Elwynn Forest][QT 783][QA 7] Turn in and accept "Kobold Camp Cleanup"
[O][QC 7] Kill Kobold Vermin (0/10)
[G 48,40 Elwynn Forest][TAR 823][QT 5261] Turn in to Eagan

[NX 11-15 Westfall]
]], "My Guides")

Guide Anatomy

Header

Every guide starts with header tags:

[N 1-11 Elwynn Forest]     -- Name and level range (required)
[GA Alliance]               -- Faction filter (optional)
[D Description text]        -- Description (optional, \\ for line breaks)

The [N] tag defines:

  • Level range (1-11): used for sorting and auto-selection
  • Guide name (Elwynn Forest): displayed in the dropdown
  • Guide ID: auto-generated from name + levels (e.g., Elwynn_Forest_1_11)

Steps (Body)

Each non-empty line becomes a step. Tags within a line define the step's behavior.

[QA 783] Accept "A Threat Within"

This creates a step that:

  • Has a checkbox (from [QA])
  • Auto-completes when quest 783 is accepted
  • Displays: ! Accept A Threat Within

Footer

The last step typically links to the next guide:

[NX 11-15 Westfall]

This creates a clickable "Next Guide" button in the navigation frame.

Step Separators

Empty lines separate groups of steps visually. They don't create steps — they add spacing.

[QA 100] Accept quest A
[QA 101] Accept quest B

[G 50,50 Zone][QC 100] Complete quest A
[G 60,60 Zone][QC 101] Complete quest B

[QT 100] Turn in quest A
[QT 101] Turn in quest B

Multi-Action Steps

A single step can contain multiple quest actions:

[QT 100][QA 101] Turn in "Old Quest" and accept "New Quest"

Each action is tracked independently in StepQuestState. The step completes only when all actions are done. The navigation system uses quest database coordinates for turnin/accept NPCs.

Ongoing Steps

[O] pins a step at the top of the guide (highlighted in blue) while you continue with subsequent steps:

[O][QC 50] Kill 10 wolves
[QA 51] Accept another quest while killing wolves

The ongoing step stays visible until its objectives are complete. Useful for kill/collect quests that take time.

Optional Steps (OC)

[OC] marks a step as optional — it completes automatically when the next step completes:

[OC]Grind southeast to [TAR 2080] [G 50,60 Elwynn Forest]
[QT 100] Turn in the quest

Key behaviors:

  • [OC] coordinates are excluded from Priority 1 navigation resolution (they serve as hints, not primary waypoints)
  • Text before [G] tag is extracted as navigation description (e.g., "Grind southeast to Npc Name")
  • [TAR] references in the description are resolved to NPC names

Class/Race Filtering

The [A] tag restricts steps to specific classes and/or races:

[A Mage] Train at the Mage trainer
[A Dwarf, Gnome] Take the tram
[A Dwarf, Human, Priest] Visit the Priest trainer in Stormwind

Logic

Within a single [A] tag, entries are separated into races and classes:

  • Races within a tag are OR'd: [A Dwarf, Human] = Dwarf OR Human
  • Classes within a tag are OR'd: [A Mage, Warlock] = Mage OR Warlock
  • Races AND classes within a tag are AND'd: [A Dwarf, Human, Priest] = (Dwarf OR Human) AND Priest

Multiple [A] tags on the same line are AND'd:

  • [A Dwarf, Human] [A Priest] = (Dwarf OR Human) AND Priest

Supported Values

Classes Races
Warrior, Paladin, Hunter, Rogue, Priest, Shaman, Mage, Warlock, Druid Human, Dwarf, Night Elf, Gnome, Orc, Undead, Tauren, Troll

Guide Chaining

Use [NX] to link guides in sequence:

[NX 11-15 Westfall]

When a guide has an [NX] tag:

  • A "Next Guide" button appears in the navigation frame on the last step
  • Clicking it loads the linked guide automatically
  • The guide name in [NX] must match the name defined by [N] in the target guide

GOTO Descriptions

Text before a [G] tag becomes the navigation description:

[OC]Grind north to the moonwell [G 50,60 Elwynn Forest]

The navigation frame displays "Grind north to the moonwell" instead of a quest name.

[TAR] references in the description are resolved to NPC names:

[OC]Grind southeast to [TAR 2080] [G 50,60 Elwynn Forest]

Displays: "Grind southeast to Mangy Wolf" (if NPC 2080 is "Mangy Wolf").

Multi-Waypoint Sequences

Multiple [G] and [TAR] tags create auto-advancing waypoint sequences:

[G 50,50 Elwynn Forest][G 60,60 Elwynn Forest][G 70,70 Elwynn Forest] Follow the road east

The arrow advances to the next waypoint when you reach the current one (within 5 yards). Similarly, multiple [TAR] tags create a sequence of NPC targets.

URL Embedding

HTTP/HTTPS URLs in guide text are automatically detected and replaced with blue [Link] placeholders:

Check the quest guide at https://example.com/quest-guide for details

Clicking the step opens a popup with the full URL pre-selected for Ctrl+C copying (WoW 1.12 doesn't support clickable hyperlinks).

Complete Example

init.lua

local GLV = LibStub("GuidelimeVanilla")
if not GLV then
    DEFAULT_CHAT_FRAME:AddMessage("|cFFFF0000[My Guides]|r GuidelimeVanilla is required!")
    return
end

GLV.guidePackAddons["My Guides"] = "GuidelimeVanilla_MyGuides"

GLV:RegisterStartingGuides("My Guides", {
    ["Human"] = "Northshire Valley",
    ["Dwarf"] = "Coldridge Valley",
    ["Gnome"] = "Coldridge Valley",
    ["NightElf"] = "Shadowglen",
})

GuidelimeVanilla_MyGuides.toc

## Interface: 11200
## Title: Guidelime Vanilla - My Guides
## Notes: Custom Alliance leveling guides
## Dependencies: GuidelimeVanilla

init.lua
Guide_Northshire.lua
Guide_Elwynn.lua

Guide_Northshire.lua

local GLV = LibStub("GuidelimeVanilla")
GLV:RegisterGuide([[
[N 1-6 Northshire Valley]
[GA Alliance]
[D Custom leveling guide for Humans\\Northshire Abbey start zone]

[QA 783] Accept "A Threat Within"
[G 48,42 Elwynn Forest][QT 783][QA 7] Turn in at Marshal McBride and accept "Kobold Camp Cleanup"

[O][QC 7] Kill 10 Kobold Vermin
[QA 5261] Accept "Eagan Peltskinner"
[G 48,40 Elwynn Forest][TAR 823][QT 5261] Turn in to Eagan Peltskinner

[XP 2] Grind to level 2 if needed

[A Mage, Warlock, Priest] [T] Train class spells at the abbey
[A Warrior, Paladin, Rogue, Hunter] [T] Train class skills at the abbey

[QT 7][QA 15] Turn in "Kobold Camp Cleanup", accept "Investigate Echo Ridge"
[G 47,34 Elwynn Forest][QC 15] Kill 10 Kobold Workers in Echo Ridge Mine
[G 48,42 Elwynn Forest][QT 15] Turn in at Marshal McBride

[NX 6-11 Elwynn Forest]
]], "My Guides")

Testing

  • Editing existing .lua files: use /reload in-game to apply changes
  • Adding new .lua files or modifying .toc: requires a full game restart
  • Debug mode: set GLV.Debug = true in Core.lua for verbose logging

Clone this wiki locally