Jame’s Leveling Guide – TourGuide Style: How to Contribute

author image by Jame | Guide | 69 Comments | 09 Jan 2009

Thanks for your interest in improving Jame’s Leveling Guide: Addon Version!

There are two ways to help out with the leveling guide: testing and revising.

Testing doesn’t require anything but the newest addon files and a character of the appropriate level. Simply take detailed notes as you play through the guide and post any mistakes you find using our Bug Reporting page. An administrator will link it to the known mistakes, and it will be corrected next time that section is worked on.

Revising guide files requires a little knowledge of the syntax (language) the addon is written in. The language is actually pretty simple and easy to learn. This guide will provide that knowledge. Both testing and revising are needed to make this guide great, but most useful if you can edit the files yourself rather than just pointing out the mistakes.

Communication is key! Make sure you use the systems in place when helping us to test or revise the guides. This keeps people from editing the same guide at once and causing confusion! Post a comment on the works in progress page every time you start something or change something, to keep everyone in the loop!

Related links:

Table of Contents

  1. Glossary of Terms
  2. Getting Started
  3. Syntax
    1. Steps
    2. Tags
  4. Formatting Guidelines
  5. Common Mistakes
  6. Testing Your Guide
  7. Uploading Your Guide
  8. Nuzz’s TourGuide Editor

I. Glossary of Terms

Syntax – This refers to how the guide files are written in.

Step – An individual objective in the guide.

Tag – An addition to the step that adds detail and essential information.

QID – the Quest ID, a unique number the game and addons use to identify a specific quest.

II. Getting Started

1. Download the addon and it’s dependencies.

You can find the addon and supporting files, along with instructions on how to download and use theme, on the General Info Page. Familiarize yourself with the way the guide works in game before you start working on the code.

2. Decide on an editing program.

I highly recommend Notepad ++ as an editing program. It organizes things very nicely and has some basic features that help with coding, and is free to download. However, you can use the basic notepad programs that come with your computer if you prefer.

3. Find a section to work on.
Go to the List of works in progress and find a guide you want to work on, that no one is currently signed up for. Leave a comment that you would like to work on that guide, and a moderator or admin will add your name to the list. Make sure you check in at least once a week with your status, or we may give that section to someone else to work on.

4. Open up the file and get to work!

First, you’ll need to find the section you want to work on in the addon files. The naming format is as follows: “002_43_44_Jame_Dustwallow_Marsh”, where the first number is just a placeholder (ignore it), the second is the starting level, the third is the ending level, and the last is the zone name.

It is probably easiest to edit guides with WoW running in windowed mode. This is a mode for WoW that you can get to through your video options in game. I usually have one browser window open with a tab for the written guide and a tab or two for WoWhead, my Notepad ++ window, and WoW all running at once, and alt+tab between them.

Now you should be ready to start editing!

III. Syntax

As you write or revise a guide, the most important thing to realize is that the WoW-Pro addon works in steps rather than paragraphs. This can sometimes make it a little difficult to translate Jame’s guides into addon form. Follow the formatting guidelines below if you get confused.

Most of the time you will be revising a guide already in place. However, if you want to create a new guide, you’ll need to start off by inputting the following code:

WoWPro:RegisterGuide("[WoW-Pro|Jame] Dragonblight (73-75)", "[WoW-Pro|Jame] Grizzly Hills (75-77)", "Horde", function()
return [[

<insert guide here>


This will of course have to be modified to accommodate the guide you’re writing.

then save it as a .lua file with the name formated like:


Each step in Jame’s guides must fall under one of the following types. Each step must also have it’s own line in the guide. You can separate them with blank lines (this can really help readability for people revising the guide), but make sure that those lines have NOTHING on them. It will keep the guide from loading if they have anything other than the following types of steps.


A – Quest Accept


A Wanted: Dreadtalon |QID|12091|N|From the Wanted Poster just outside the door.|

Use this every time you direct the player to accept a step. Usually coordinates are not needed for these steps, since Lightheaded is a required part of the addon package and should have almost every accept and turn in coordinate in it’s database.

C – Quest Complete


C Blood Oath of the Horde |QID|11983|N|Talk to the Taunka'le Refugees and go through the text until you complete the quest.|

Use this when the player is completing all of the steps of a quest at once. If you are planning to split up the quest complete steps, you’ll need to use a note or kill step instead with quest objective tags on it. For most quests you will not need coordinates as the game provides those to us, but sometimes they don’t do the job well enough. In these cases use a |NOPOI| tag and make your own coordinates.

T – Quest Turn-in


T The Flesh-Bound Tome |QID|12057|N|Back at Agmar's Hammer.|

Use this every time you direct the player to turn in a step. For most quests you will not need coordinates as the game provides those to us, but sometimes they don’t do the job well enough. In these cases use a |NOPOI| tag and make your own coordinates.

R – Run
F – Fly
b – Boat/Zeppelin
H – Hearth


H Warsong Hold |QID|11686|U|6948|

These steps are all really variations on the same type – a location change. The step auto-completes when the subzone or zone name matches the specified one (in the example above, the step would complete when the character enters Warsong Hold). Coordinates are useful for this step, so that players can see where to run, or where the flight master is if flying. Make sure to include the zone tag if needed.

h – Set Hearth


h Warsong Hold |QID|11598|N|(41.9,54.5)|

Make sure to spell the town’s name exactly correctly, or it won’t auto complete correctly. Auto-completes on the message ” is now your home.” Also provide a Note tag with coords.

f – Get Flight Point


f Moa'ki Harbor|QID|11585|N|(48.5,74)|Z|Dragonblight|

Most of the time a flight point is fairly easy to spot, but occasionally they can be a bit out of the way. In these cases, use this step to ensure the player finds it.

K – Kill


K Fjord Crows |QID|11227|L|33238 5|N|Until you have 5 Crow meat.|

This is one of the few steps that you might not have auto-complete, since there are times in Jame’s guide when he has you kill everything of a certain type in an area but not necessarily stay there to complete the quest. However, whenever possible add a loot or quest objective tag so that this step will auto-complete.

N – Note


N Burn The Kur Drakkar |QID|11656|QO|The Kur Drakkar destroyed: 1/1|U|34830|N|To the north, just next to The Serpent's Maw.|

Note steps are used when none of the above steps fit, always try to add some kind of tag to allow this to auto-complete.

B – Buy
U – Use


B Fresh Pound of Flesh |QID|11309|L|33612|N|Anton patrols along the road between New Agamand and the Ancient Lift. If he's dead, he respawns at (53,74).|

I find these two to be mostly cosmetic as you can do the same job using a Note step with a Loot and Use tag.


|QID|####| – Quest ID
This tag is REQUIRED for every step that has anything to do with a specific quest. This includes but is not limited to: Accept, Complete, and Turn-in steps, and steps with the Quest Objective tag

Even on a step that has nothing to do with any quest (e.g. Hearth steps) it is still recommended to have this tag there as well. For these use the QID of the next Accept step.

|QO|Some Mob slain: 10/10| – Quest Objective


N Watchtower Burned |QID|11285|QO|Winterskorn Watchtower Burned: 1/1|U|33472|N|The watchtower is directly to your west, burn it.|
N Bridge Burned |QID|11285|QO|Winterskorn Bridge Burned: 1/1|U|33472|N|Head behind the tower and go west to the bridge, burn it.|
N Dwelling Burned |QID|11285|QO|Winterskorn Dwelling Burned: 1/1|U|33472|N|Over the bridge, just west, is a small building, set it alight as well.|
N Barracks Burned |QID|11285|QO|Winterskorn Barracks Burned: 1/1|U|33472|N|The final structure is to the northwest, careful not to aggro the elite when you light it up.|

A |QID| tag is required for this tag to function. This is used for quests where you won’t be completing all objectives at the same time or when the objective locations are very specific and static. In the example above, coords are not needed as they are provided to us by the game.

|O| – Optional
This tag makes the step optional and will only show if the player has the quest in their quest log. Use this on an Accept step with a Use tag and it will only show if the player has the item in their bags, useful for quests that come from items.

|PRE|Quest Name| – Prerequisite
This is used with the Optional tag to only show the step if the player has Turned-in the quest used in this tag. Use this only on Accept steps.

Every Complete, Turn-in, and Quest Objective get its coords from the built-in POI system that was added in 3.3. There will only be one point on the map per quest, if a quest has mutiple objectives it will choose the one closest to you, if the objective is spread over an area it will create a blob on the map and the point will be in the center.

Sometimes these are not optimal, in these cases you can use this tag to fall back to note coords to provide your own. NOTE this should only be used if the guide assumes the player will be at a specific location.

|L|####| – Loot
Used when you need to make sure the player has a specific item or amount of an item in their bags. Add the quantity after the item number with a space in between. If you only need one of an item, you do not need to specify a quantity.

|U|####| – Use
This will create a movable button for the item specified so you don’t have to dig through your bags to find it. This is mandatory for every Hearthstone step (item #6948)

|C|Priest,Mage,…| – Class
|R|Orc,Troll,…| – Race
These will only show the step if you are playing the specified class/race, these can be listed.

|N|…| – Note
A general note for the step to add additional information. If a step need coords they will go here in parentheses (xx.xx, yy.yy).

|Z|Zone Name| – Zone
Use this tag if the step goes outside the zone for the guide.

IV. Formatting Guidelines

In a post on his blog, Jame clearly outlined the standards of quality he is looking for in the leveling addon. I’ll go over what he said here and add a few other pointers as well.

1. Auto-complete whenever possible

If it’s at all possible to set a step to auto-complete, do so. Sometimes this means breaking something into multiple small steps. Try to put things in a logical order, and use the |N| note tag to remind players of other objectives.

2. Use an arrow whenever possible

Anytime you can provide an arrow for the player to follow, it greatly improves the guide. Rather than making them read a huge block of text as directions, just have them “follow the arrows” and list a series of coordinates. Try to be as exact as possible, since you want the series to flow naturally, so put the steps in places the player would naturally run. Make sure you test these series, since sometimes TomTom will jump to the nearest coordinate rather than the next in the series.

You can even use these arrows for steps you wouldn’t initially think of, such as sell/repair, hearthstone setting, flight paths, or docks/zeppelin towers.

3. Be short and to the point

Try to keep it to one sentence notes when possible. The less reading, the faster leveling! Remember, use arrows instead of wordy directions.

4. Include class quests

Using the |C| class tag, you can incorporate class quests into the guide wherever they would best fit. The goal is to include all necessary class quests – please note that some are definitely NOT necessary, such as the druid poison quest or the paladin sense undead quest.

5. Include optional quests

use the |O| optional tag to allow players the choice of small optional circuits. This is great for people leveling in a group who might be able to tackle mobs that are too hard for the normal leveling crowd.

6. Always provide a |U| use tag when applicable

Use the |U| use tag to help players complete quests without digging through their bags to locate quest items.

7. Warn for accidentally selling quest items

Using the |B| buy tag after a sell/repair step to check if the player still has the necessary item in his or her back, and provide text warning them to buy it back if the step does not auto-complete. The warning will automatically disappear once they buy it back.

8. Code in “paragraphs”

Leave blank lines between steps when the location changes. This really helps when revising code.

V. Common Mistakes

1. Quests with the same name

When you have a quest with several follow ups with the same name, you MUST add (Part 1) (Part 2) (Part 3) etc tags in the step description, or it won’t work.

For example, in the 1-12 Night Elf guide:

A The Balance of Nature |QID|456|
C The Balance of Nature |QID|456|
T The Balance of Nature |QID|456|
A The Balance of Nature |QID|457|

Needs to be:

A The Balance of Nature (Part 1) |QID|456|
C The Balance of Nature (Part 1) |QID|456|
T The Balance of Nature (Part 1) |QID|456|
A The Balance of Nature (Part 2) |QID|457|


2. You MUST include a |Z| zone tag for coordinates not in the zone listed in the guide’s title.

If you don’t do this, the coordinates will point back to the title zone. Note that you do not have to provide this tag for quest turn ins or accepts, since Lightheaded tells TomTom/Cartographer the correct zone for those.

VI. Testing Your Guide

Okay, so you’ve written your guide, and now what? Playtest it.

If this is a new guide, first make sure it is inside the WoW-Pro/Horde or WoW-Pro/Alliance folder. Then, open up the Guides.xml file in that folder. This file is basically an index that tells the addon which guides to load. The syntax is:

<script file="file name"/>

What you need to do is add your guide into this file. That’s it, then you can fire up the game and it should load, ready for testing.

It’s often very useful to revise the guide while playing. When you make a revision, you can reload the addon without logging out by using the following macro:


VII. Uploading Your Guide

Once you have your guide up to snuff, it’s time to upload it and share it with the wow-pro community.

  1. First, make a zip or rar file and put all the guide files in your guide into this file (this is only applicable if there are multiple files for one guide, like for Jame’s old world leveling guide chapters).
  2. Once you have your file ready, you need to upload it somewhere. Unfortunately you can’t upload it directly to WoW-Pro due to file type constraints. Some sites that are commonly used include FileFront, MediaFire, and Google Sites.
  3. When your guide is uploaded, leave a comment on the Works in Progress page with a link to the download for the file. A moderator will put this into the table, so that anyone wanting to work on that guide before the next addon version comes out will be able to use your updated file.

VIII. Nuzz’s TourGuide Editor

Download HereUpdated for WotLK (January 22nd 2009)

Writeup from Nuzz:

Short version

The good thing about this program: It provides an efficient way for creating TourGuide files quickly. Since you will be working quickly, you will be less likely to cut corners and leave out things such as coordinates or item/quest IDs.

The bad thing about this program: It is not perfect, and you cannot currently edit TourGuide files that have already been made by other people. The compilation process is one-way.

Long version

This is a program that will compile TourGuide LUA files on the fly. It was designed for the purpose of creating or tweaking TourGuide scripts, while playing the game at the same time. It was also designed to simplify the process of creating TourGuide scripts. Instead of learning the syntax for the code, and typing everything in by hand, you can use this program’s form to fill in fields. A listbox displays all of the objective for the current ‘guide’, and there is a guides tab with another list box containing all of the ‘guides’ for the project. You can export your project to a folder, and the folder will have all of the LUA files you need, a text file to insert into the main list of guides, as well as a text-file with instructions for how to do this (and a pop-up with the same instructions will appear). When editing these objectives, you can copy and paste either the quest name, or the quest ID, and the quest ID will automatically be filled in if there is one match, otherwise you will get a list of quest IDs to choose from (I usually look it up on a site such as thottbot if I cannot find the quest).

The quick, non-detailed process for converting traditional “text-based guides” to addons is:

  1. Time Spent (editing the guide and testing it together in part two): roughly 50% gameplay, 50% guide editing, depending on your style and performance
    While not in-game, read through the guide and use the TourGuide editor to create as accurate of a TourGuide representation of it as possible, in the least amount of time possible.
    The items to focus on in this phase are (in order of importance):

    1. Quest Accept, Quest Do, Quest Complete Objectives (coords are only needed on Quest Do)
    2. Quick, simple instructions (note section) for what is needed to complete the quest
    3. Make sure that you use a run/fly/boat/hearth objective to make sure your character is in that current zone before the objectives for that zone will be executed. The author of the editor did not intend for the guides to use the Zone objective. A side effect of this is that sometimes when logging onto the game, the arrow direct will be given for the world map’s coordinates and not the current zone’s coordinates. To fix this in-game, open and close the world map, then check/uncheck the current objective as completed.
  2. Time Spent (during in-game only): roughly 80% gameplay, 20% tweaking the guide
    I usually do the above part several levels at a time, but not the entire thing. Just enough so that I can stay ‘ahead’ of where my character is. At this point, I will export the guide and install it as part of the addon, then go in-game and run through it with my character. I will make corrections as needed, and update each coordinate as needed with exact measurements (To the nearest 0.1).
  3. Time Spent: roughly 98% gameplay, 2% tweaking the guide
    When I make a pass a second time with another character, I will tweak the guide again, but this requires a minimum of adjustments. I usually am leveling very fast by then, and can even spend time doing other things, or play very little, and still manage to level up at a reasonable speed.
  • img
    May 31, 2010 @ 9:08 am

    At the moment, a N note tagAt the moment, a N note tag is usually used. However in the future I may add a special code for this sort of step in particular.

  • img
    May 31, 2010 @ 1:05 am

    Is there?Is there a code for saying Sell Junk, Repair, Restock? If so please reply!

  • img
    May 18, 2010 @ 3:17 am

    I think you are using theI think you are using the code correctly, but I’m not sure. We aren’t updating the old version of the addon anymore. However, once I get the optional tags going in the new version, the coding example you gave should work.

  • img
    May 18, 2010 @ 0:24 am

    |O| option tagI have noticed that when you use the option tag with a travel point (R, F …) it always shows even if the quest is not in your log. Is this normal behavior or is there something wrong with my “coding”?

    A Blood Is Thicker |QID|13833|O|
    R Lake Kum’uya |QID|13833|N|(52,45)|Z|Borean Tundra| |O|
    C Blood Is Thicker |QID|13833|N|Kill animals till you get the Animal Blood Debuff then swim in the lake to make the pool and fish in it.|L|45905 5|O|
    T Blood Is Thicker |QID|13833|O|

    A Dangerously Delicious |QID|13834|O|
    R Icemist Village |QID|13834|N|(24.09,34.99)|Z|Dragonblight|O|
    C Dangerously Delicious |QID|13834|N|Fish into Wintergrasp waters for the Bloodtooth Frenzies.|L|45904 10|O|
    T Dangerously Delicious |QID|13834|O|
    The (R)un points always show even if the quest is not in my log. I am attempting to work on a quick route for the Dalaran Daily quests just for the heck of it.

  • img
    Feb 12, 2010 @ 12:27 pm

    Page Updated/RevampedPage Updated/Revamped

    I think this page should be renamed to “Jame’s Leveling Guide: AddOn Version – How to Contribute” for consistency with the Works in Progress page.

  • img
    Aug 13, 2009 @ 6:46 am

    If the waypoint that isIf the waypoint that is mapped from the WoWhead data is incorrect, then you want to put the correct coords in the note section and delete the QID section. Otherwise it will still use the incorrect data.

  • img
    Aug 13, 2009 @ 6:45 am

    Sometimes it’s useful if theSometimes it’s useful if the quest isn’t being tracked for whatever reason, and it’s more movable, so I still add it when it makes sense to do so.

  • img
    Aug 13, 2009 @ 4:46 am

    The Use command in TGOne other thing I’ve noticed is that the use command isn’t really needed anymore. WoW now puts the items for a quest next to the quest tracking.

  • img
    Aug 13, 2009 @ 4:44 am

    Alliance Blade’s Edge MountainsI just ran through BEM on a character, and am trying to correct the bugs I found. THey are mainly waypoint arrows, either pointint to the wrong place or not there at all. However, the syntax is giving me some problems and I was hoping I could get some help.

    If I’m putting coords in the note section, do I delete the QID section, as it’s not correct? And will tht create a waypoint for TomTom?

    Also, in the case of Baron Sablemane, Lightheaded pulls 2 different points for him, one of which is way off. The original guide tells you the right location in the “Notes” section, but still has the QID listed. Should that be removed to point ot the right location?

    There’s only about 25 steps to fix in the guide, but I don’t want to really screw it up if that’s not going to work. If anyone could give me some help, it’s be appreciated.


  • img
    Jul 27, 2009 @ 0:24 am

    Someone is compass-challengedI’ve noticed instances in James Horde Leveling Guide (Terokkar – Aldor – Lvl 65-67) where NW is really NE, and all sorts of blowups on N-S-E-W orientation. Offhand, here are some:

    * when leaving Stonebreaker Hold to go to ‘Investigate Tuurem’, you are heading towards the NorthEast, not NW.
    * for the directions for quest turn-in on ‘An Unwelcome Presence’, the directions say ‘Fight your way back to Stonebreaker Camp…’. Quester hasn’t been there in the first place, and calling it Stonebreaker doesn’t help – players often will run back to the main Stonebreaker Hold. Better wording would be ‘head north-northwest along the river and look for a camp at 63,43.

    Also, after doing the grind work for ‘Rather be Fishin”, the guide then says fly to Stonebreaker, but the notes say ‘head back to Shattrath’. Which is it? The follow-up directions are odd as a result. Figure out where to go first, then address those next directions.

    Again, after the grind completion of ‘Wanted: Bonelashers Dead!’, the guide shows to fly to Shattrath City, but the directions say hoof it to Stonebreaker Hold. Again, which is it?

    For ‘It’s Watching You’ directions, it would be better to say ‘head eastward on the path, then north (or take a left) at the next intersection’.

    Corrections and observations, but I really enjoy the guide a lot. Thanks!

  • img
    Jul 4, 2009 @ 21:26 pm

    Hmmm, I just looked at thatHmmm, I just looked at that section of this write-up, and I think this needs to be updated. Use the same format as the other guides listed in the guides.xml file, that’s the correct format.

  • img
    Jul 4, 2009 @ 3:40 am

    im having some troubleim having some trouble testing my guide in game, whenever i go into the guides.xml file it seems that the save format is different then the one jame has put here, is that supposed to be like that?

  • img
    Jun 28, 2009 @ 0:06 am

    Testing guide Snowflake’s Draenei Starting Guide (1-12)Ill be testing and revising (code editing) this guide. Hope to pst here tomorrow when im done editing ok?

  • img
    Jun 17, 2009 @ 4:08 am

    nvm this, figured it outnvm this, figured it out

  • img
    Apr 14, 2009 @ 16:53 pm

    Yes, the zone names *are* aYes, the zone names *are* a problem, but only for Tom-tom arrows, not for TourGuide itself. And the “default” behaviour is the correct one, taking the current zone as the target zone, most of the time. Sometimes it’s not the case – but it’s quite rare…

    Note that there is a page dedicated to the french guides for the Addon there:

    It shows the evolution of the french localization of the different guides, and is kept synchronized (as often as possible) with the english guides.


  • img
    Apr 10, 2009 @ 21:52 pm

    The zone names would be aThe zone names would be a problem though. I think Souricette is working on a French localization for the addon, but I’m not sure what the status is.

  • img
    Apr 10, 2009 @ 21:36 pm

    This shouldn’t be theThis shouldn’t be the problem, the coding for add-ons doesn’t differ for other languages. Most likely, you’ve downloaded a corrupt file, just throw everything away and download it again.

  • img
    Apr 10, 2009 @ 19:42 pm

    Zones localizationHi Jame, I’m using your addon since 2 or 3 weeks, but I have a major problem. I’m french, so WoW is in french too. Notes in english are’nt a problen, but I have errors from TourGuide about zones. I’d like to know if I change the title of each guide (and of corse in the guide itself and in the .xml) for names in french will resolve that error.

    Thank for your help, and live long and prosper 😉

  • img
    Mar 21, 2009 @ 16:22 pm

    Alliance Searing Gorge 50-51From end location from previous section (Ironforge) it says to run to Thelsamar instead of fly.

    Next step then says to run to Badlands (though it points to Searing Gorge) then immediately tells you to run to Searing Gorge. Instruction to run to Badlands should be removed.

Leave a Reply

Your email address will not be published. Required fields are marked *

The reCAPTCHA verification period has expired. Please reload the page.