User:Lady Elyssa/Guide to GW2 TacO Markers and Trails
This guide aims at covering the basics of being able to creating your own markers and trails. For a more thorough drill down though all the possible options I would recommend reading through the How to in the (#External links).
What is the Guild Wars 2 TacO Tactical Overlay?[edit]
The Guild Wars 2 Tactical Overlay or TacO for short provides a number of markers and trails as a way of guiding you around a map or to assist with specific achievements. If you don't already have it installed then I would recommend consulting the TacO Quick Start Guide (Outdated as of June 2023) and FAQ or the TacO Reddit page should you run in to any problems.
Getting Started[edit]
The easiest way to get started in creating your own custom markers and trails is to create an actual trail. TacO usually has the Marker Window already open, if not you can find it about 3/4 of the way down the main menu window.
- Click on Start New Trail to create a Trail.
- Save your Trail using the Export Trail Button.
- Open the Data Folder and name it: trailtest
- Click Save
NOTE Once a Trail is Saved, the location and details are saved within the POIDATA.XML file within your GW2TacO folder. Once you have added this line to the trailtest.xml. It should be noted that if you want your trails to also be usable within Blish Hud you will need to change the '\' Backslashes to '/' Forwardslashes.
WARNING DO NOT click on Stop Recording or you will lose your current Trail progress, only use Stop Recording when a trail has been saved (if required).
Trail Marker Window[edit]
With the Trail Marker Window open you have the option to assign some shortcuts for each of the following actions, and can find the option to do this Marker Editor > Rebind Keys.
- Start New Trail - Starts recording a new Trail.
- Pause Recording - Pauses recording, useful if you die and need to waypoint or need to check where you need to go. By clicking on Pause Recording you get the option to Resume New Section. Pause Recording can also be used to create larger segments by Pausing, moving on to another point before Resuming.
- Resume New Section - Only visible when the Recording is Paused. This allows you to waypoint and then Resume New Section without having the Trail follow you all the way across the map.
- Delete Last Segment - This will delete the Trail left behind you one step at a time, use with care when used in conjunction with Pause Recording as large sections of Trail can be quickly removed.
- Import Trail: Even without using the XML file for custom trails, a previously Exported Trail can be Imported and used. To continue adding to an existing trail once a trail has been imported, Pause Recording and then when ready to continue Resume New Section. When the trail is Exported again the new additions to the trail will be included.
Custom Trails[edit]
In order to begin creating your own custom markers or trails you will first need to create an XML file in the GW2TacO\POIs\ folder. This new XML file will be automatically recognised by TacO.
The first entry insde our newly created XML file will be the tags that mark the start and end of the XML's Overlay Data. Everything we add after this point will be positioned inside of these two tags.
Note: Everything inside the XML document should be considered case sensitive.
<OverlayData> </OverlayData>
Next we need to start describing the Markers we plan on using and these will also form your own entries within the TacO menu.
<OverlayData> <MarkerCategory name="mymarkers" DisplayName="My Markers"> </MarkerCategory> </OverlayData>
You can preview your efforts so far while running GW2 followed by TacO. Click on TacO to open the menu followed by Filter Displayed Tactical Markers.
Now that we have our own entry for our Markers we can start to create our choice of categories.
<OverlayData> <MarkerCategory name="mymarkers" DisplayName="My Marker's"> <MarkerCategory name="mycategory" DisplayName="My Category"> <MarkerCategory name="testmarker" DisplayName="Test Marker"/> </MarkerCategory> </MarkerCategory> </OverlayData>
Our TacO menu will now have
My Marker's -> My Category -> Test Marker
Markers[edit]
The actual Markers have an additional sub-section within the XML file that uses the <POIs></POIs> tags.
The default key assigned by TacO to place a new marker is the + (plus) key and to remove it use the - (minus) key. When you press the + key to place a new Marker the details are stored with the poidata.xml file within the GW2TacO folder and it stores the location of that marker using Map and Location information and also assigns it a unique GUID.
- MapID - Describes which map the Marker is located on.
- xpos - X position of the marker in world space.
- ypos - Y position of the marker in world space.
- zpos - Z position (Height from the ground) of the marker in world space.
- GUID - base64 encoded string, optional. This is a unique identifier for the marker used in tracking activation of markers through the activationdata.xml file.
If your poidata.xml file has more than one entry then scroll to the bottom to find the last entry added, Copy this in to your XML file. it should look something like this (The GUID is automatically created by TacO):
<POI MapID="15" xpos="-202.613" ypos="28.7082" zpos="332.191" GUID="g5SNtdyw5Euuj35J2Fr9BQ=="/>
Your first Marker will use the default Marker at your chosen location (I chose the Garrison in Queensdale) which while sufficient for testing, isn't going to be much use in the long run, so we need to customize our Marker to something better suited for its intended purpose.
To do this we need to set the name of the iconFile to the name of the marker we wish to use. The Markers use the .png image format as this allows for a transparent layer.
Within the GW2TacO folder is a Data folder with a mixture of various images, you can view more of these from within the GW2TacO\POIs\Data folder too.
<POI MapID="15" xpos="-202.613" ypos="28.7082" zpos="332.191" iconFile="Data\star.png" GUID="g5SNtdyw5Euuj35J2Fr9BQ=="/>
If you close and restart TacO at your chosen location you should now see the default Marker has now been changed to a star. In order to keep things consistent we will also change the MarkerCategory name to reflect the new Star Marker. Your final markup should now resemble this:
<OverlayData> <MarkerCategory name="mymarkers" DisplayName="My Marker's"> <MarkerCategory name="mycategory" DisplayName="My Category"> <MarkerCategory name="starmarker" DisplayName="Star Marker" iconFile="Data\star.png" /> </MarkerCategory> </MarkerCategory> <POIs> <POI MapID="15" xpos="-202.613" ypos="28.7082" zpos="332.191" iconFile="Data\star.png" GUID="g5SNtdyw5Euuj35J2Fr9BQ=="/> </POIs> </OverlayData>
We have our Menu and we have our Marker, now we just need to bring the two together so that we can toggle our markers on/off. To do this we need to give the POI a type. The type uses the name from the MarkerCategory tags seperated by a . (full stop/period).
<OverlayData> <MarkerCategory name="mymarkers" DisplayName="My Marker's"> <MarkerCategory name="mycategory" DisplayName="My Category"> <MarkerCategory name="starmarker" DisplayName="Star Marker" iconFile="Data\star.png" /> </MarkerCategory> </MarkerCategory> <POIs> <POI MapID="15" xpos="-202.613" ypos="28.7082" zpos="332.191" type="mymarkers.mycategory.starmarker" iconFile="Data/star.png" GUID="g5SNtdyw5Euuj35J2Fr9BQ=="/> </POIs> </OverlayData>
With some additional Marker categories and a couple more Markers added our Menu and Marker list might start to look something like this:
<OverlayData> <MarkerCategory name="mymarkers" DisplayName="My Marker's"> <MarkerCategory name="mycategory" DisplayName="My Category"> <MarkerCategory name="starmarker" DisplayName="Star Marker" iconFile="Data\star.png" /> <MarkerCategory name="crossmarker" DisplayName="Cross Marker" iconFile="Data\cross.png" /> <MarkerCategory name="heartmarker" DisplayName="Heart Marker" iconFile="Data\heart.png" /> <MarkerCategory name="spiralmarker" DisplayName="Spiral Marker" iconFile="Data\spiral.png" /> </MarkerCategory> </MarkerCategory> <POIs> <POI MapID="15" xpos="-202.613" ypos="28.7082" zpos="332.191" type="mymarkers.mycategory.starmarker" iconFile="Data\star.png" GUID="g5SNtdyw5Euuj35J2Fr9BQ=="/> <POI MapID="15" xpos="-184.97" ypos="28.5802" zpos="331.35" type="mymarkers.mycategory.crossmarker" iconFile="Data\cross.png" GUID="yzoHl+VoiUCfLMmEuy8Y/Q=="/> <POI MapID="15" xpos="-194.171" ypos="28.6417" zpos="340.586" type="mymarkers.mycategory.heartmarker" iconFile="Data\heart.png" GUID="fK9r+CeBp0OFkHB7pkJTkA=="/> <POI MapID="15" xpos="-193.695" ypos="28.6761" zpos="322.557" type="mymarkers.mycategory.spiralmarker" iconFile="Data\spiral.png" GUID="vbX9PbL4CkSkQ2afQwOAGQ=="/> </POIs> </OverlayData>
To help get you started you can copy and paste the above XML and view the Markers at the Garrison in Queensdale. After making any changes to it you will need to restart TacO.
Note: The order used for the Marker Category will also define the order within the TacO menu.
Marker Variables[edit]
It should be noted that these are case sensitive.
- MapID - An identifier specific to a specific map. In our example, 15 represents Queensdale.
- GUID - A Unique ID for use with Markers.
- xpos, ypos, zpos - Position of the Marker within the world. ypos repesents the height from the ground, see also heightOffset.
- DisplayName - string. This text is used to display the type of the marker. It can contain spaces.
- type - character string. Defines the category the marker belongs to. For example: For the Test Marker used in the example above, this would be written as type="mymarkers.mycategory.testmarker" and is required if you want to be able to turn it off/on from your marker menu.
- achievementId - integer. An ID for an achievement from the GW2 API. Markers with the corresponding achievement ID will be hidden if the ID is marked as "done" for the API key that's entered in TacO. For a list of achievement IDs see https://wiki.guildwars2.com/wiki/API:2/achievements
- achievementBit - integer. This is similar to achievementId, but works for partially completed achievements as well, if the achievement has "bits", they can be individually referenced with this.
- behaviour - Ranges from 0 to 7 and sets how a Marker behaves when interacted with.
- 0 - Default Non-Interactive, always visible.
- 1 - Reappear after map change.
- 2 - Reappear on daily reset.
- 3 - Disappear forever when interacted with by pressing 'F'.
- 4 - Reappear after a set time. See resetLength.
- 5 - Reappear on Map Reset.
- 6 - Reappear after map change or switching instance of same map.
- 7 - Reappear once per daily per character.
- color - hex value. The color tint of the marker.
- copy - string. This string will be copied to the clipboard when the marker is triggered. Usually used with autotrigger enabled.
- copy-message - string. This string will be displayed in the middle of the screen when the clipboard copy is triggered. Useful to let the user know that the clipboard has been updated.
- fadeNear - float. Determines how far the marker will start to fade out. If below 0, the marker won't disappear at any distance. Default is -1.
- fadeFar - float. Determines how far the marker will completely disappear. If below 0, the marker won't disappear at any distance. Default is -1. FadeFar needs to be higher than fadeNear for sane results. Useful Tip: Setting fadeNear and fadeFar to the same value mwans a marker will only be visible within the chosen range.
- festival - string. A comma separated list of strings (without spaces) from the following pool that makes the markers in this category only show up during the associated festival: halloween, wintersday, superadventurefestival, lunarnewyear, festivalofthefourwinds, dragonbash
- heightOffset - float. Specifies how high above the ground the marker is displayed. Default value is 1.5. Alternatively, the ypos attribute can be increased.
- hasCountdown - boolean. Determines if a marker has a countdown timer display when triggered.
- iconSize - Size of icon relative to the original image. Default=1.0
- info - string. This can be a multiline string, it will show up on screen as a text when the player is inside of infoRange of the marker.
- infoRange - float. This determines how far away from the marker the info string will be visible
- inGameVisibility - boolean. Shows or hides the marker in-game.
- mapVisibility - boolean. Shows or hides the marker on the main map,
- miniMapVisibility - boolean. Shows or hides the marker on the minimap.
- minSize - integer. Determines the minimum marker size on the Screen, in pixels.
- maxSize - integer. Determines the maximum marker size on the Screen, in pixels.
- mapDisplaySize - float. Size of the marker when viewed on the Map, in pixels.
- autoTrigger - boolean. Determines if going near the marker triggers it.
- resetLength - Time in seconds before marker reappears. Only works with Behaviour 4.
- triggerRange - float. Determines the range from where the marker is triggered
- toggledefault - boolean. If set, the category will be enabled/disabled by default when loading the marker pack (0 = disabled)
Note: If a variable isn't present it's counted as it's there with a default value.
Blish Hud Marker Attributes & Values[edit]
Trails[edit]
Following on from how we created our own markers creating our own Trails requires a couple more steps. For our test trail our XML file might look something like this:
<OverlayData> <MarkerCategory name="mymarkers" DisplayName="My Marker's"> <MarkerCategory name="mycategory" DisplayName="My Category"> <MarkerCategory name="trailtest" DisplayName="Trail Test"/> </MarkerCategory> </MarkerCategory> <POIs> <Trail type="mymarkers.mycategory.trailtest" trailData="Data\trailtest.trl"/> </POIs> </OverlayData>
Trails also have some additional attributes:
- Texture - Specify the .png file used to animate the trail.
- animSpeed - The speed of the trail animation.
- color - some trail markers can have their color chosen.
<OverlayData> <MarkerCategory name="mymarkers" DisplayName="My Marker's"> <MarkerCategory name="mycategory" DisplayName="My Category"> <MarkerCategory name="trailtest" DisplayName="Trail Test"/> </MarkerCategory> </MarkerCategory> <POIs> <Trail type="mymarkers.mycategory.trailtest" trailData="Data\trailtest.trl" texture="Data\trail.png" color="ffffff" animSpeed="0.5" alpha="1" fadeNear="1200" fadeFar="5000" </POIs> </OverlayData>
Trail Variables[edit]
- trailData - string. Required. Name of the exported trail (.trl) file path - in binary format (TRL file).
- texture - string. Required. Name of .png image used for the trail.
- alpha - Decimal number, optional [default: 1.0 ] Opacity of the icon displayed.
- animSpeed - speed of the trail image animation.
- color - Hexadecimal value, optional [default: FFFFFFFF ]. Apply a color on the marker in the HEX form either with Opacity 00112233 or without as 112233:
- 00 = Opacity. see alpha.
- 11 = Red color.
- 22 = Green color.
- 33 = Blue color.
- fadeNear - Optional. Range at which Markers start to disappear.
- fadeFar - Optional. This must be greater than FADENEAR and is the range the marker disappears completely.
- type - An identifier specific to a Marker Category. Required if you want to be able to toggle your Trail on/off from your menu.
Note: If a variable isn't present it's counted as it's there with a default value.
XML Symbols[edit]
- The & symbol is not considered a valid symbol within XML, despite it being human readable markup. To use & within your your text you will need to use
&
- To create a newline within some info text or copy / copy-message you can use


Customising your Markers and Trails[edit]
Markers and Trails use the .png image format as the image is disaplyed as an overlay on top of the game world and minimap. There are plenty of online options to allow you to do this as well as online resources for removing the background from other image formats.
Note: The color and transparency of any Markers or Trails should also be considered so as not to completely obscure waypoints or nodes. They also need to have a good contrast with the background so try to avoid colours that are too similar or that might clash.
Custom Marker Ideas
- Nodes
- Chests
- Collectibles
- Guild Missions
- Mount Swapping
- Warning Signs for Hazardous Areas, e.g. quicksand
- For segmented Trails, Signs on where to waypoint.
Custom Trail Ideas
- Trails could be color coded (where suitable) according to the objective, e.g. purple for karma.
- Trails could be comprised of those for walking, gliding or mounts (terrestrial, flying, aquatic) perhaps including Markers where appropriate.
Your Own Custom Marker Pack[edit]
To create your own Custom Marker Pack you will need to go in to the GW2TacO\POIs\Data and create new folder for your Markers and/or Trails to go in to and can use this folder to store everything in one place or go on to create sub folders as needed. Tekkit's Workshop can be found in the Data folder here and is worth browsing through if you need some ideas.
If you intend on sharing your Markers and/or Trails I would recommend creating a temporary new folder elsewhere to place your XML file along with the POIs\Data\[Your Files Here] and then zip them up ready to share.
Troubleshooting[edit]
Still having difficulty in getting your trails and markers to work as intended?
- Run your XML files through an XML checker to check for any syntax issues. If it comes back as Valid XML then it is likely that you have an incorrect reference within your XML that is related to the issue.
- The GW2TacO.log file contains which images or trail (.trl) files cannot be found, indicating an incorrect path reference or save location.
- If your pack is used by BlishHUD, then be sure to download their packed down version rather than using your own local version as this can highlight overlooked issues with your XML that doesn't show up elsewhere.
- Have you changed an entry in your menu but it isn't taking effect? Check the contents of the poidata.xml file within the GW2TacO folder as it can override other entries (this has its uses).
External Links[edit]
- TacO Quick Start Video Guide
- TacO Quick Start Written Guide
- How to create your own TacO Marker Pack
- TinyPNG image compression for smaller file size and increases performance for players on slower computers.
TacO Alternatives[edit]
Marker Packs[edit]
- Movement of the World - For Tyrian Explorers.
- Reactif - General
- Teh's Trails - Map Completion.
- Lady Elyssa's TacO Trails - Chest Runs, Festivals, Gathering, Guild Missions, Hero Point Runs, Jumping Puzzles, Map Completion, Mini-Dungeons, World Bosses & More!
- Metal Marker Myriad - An adhoc mixture of markers and trails.
Gathering[edit]
- Fast Farming Community - Solo Farming routes.
- Tyrian Gathering Marker Project - Core Tyria Gathering.
Hero Point Runs[edit]
Dungeons, Fractals, Strikes, Raids[edit]
- QuitarHero - Dungeons, Fractals, Strikes, Raids.
- Metal's Marker Myriad
- Taos Tips - Markers for End of Dragons.
Beetle Races[edit]
- Tiny Army / Pewpew’s Power Paths
- [Race] via Dropbox