User:Lady Elyssa/Guide to GW2 TacO Markers and Trails

From Guild Wars 2 Wiki
Jump to navigationJump to search

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).

If you see anything that could be improved or that needs correcting you can let me know on the Discussion page.

What is the Guild Wars 2 Tactical Overlay?[edit]

The Guild Wars 2 Tactical Overlay or TacO for short provides a method to display and create a markers and trails as a guide, inform or highlight specific features.

Getting Started[edit]

To get started in creating your own custom markers and trails you will need to have some basic knowledge of computers and where your files and folders are stored.

I would recommend looking through both of these and keeping them to hand as you progress.

For creating the actual trails / markers you will need GW2TacO that you can pick up from the Quick Start Guide (Outdated as of June 2023). If you have any problems, you might want to consult the FAQ, Reddit or even Discord.

Once you have successfully installed GW2TacO, you will need to open the POIs folder. I would recommend removing the default pack called TacoMarkers.taco.

You will also have a Data folder here and this is where your images and trail files will be stored. Within the Data folder, I would recommend creating a folder to store your images.

Editors[edit]

While GW2TacO does a lot of the heavy lifting for you, you will still need to manually edit the .xml files with some form of editor. While something like Notepad does suffice, it is rudimentary and doesn't offer any form of syntax highlighting, so you might want to consider one of the following options and see what works best for you.

Go ahead and start Guild Wars 2 and then start GW2TacO, you should see the GW2TacO icon at the top of your screen with the rest of the game icons.

To see and follow my example, head to Shaemoor Garrison in Queensdale Waypoint (map icon).png Garrison Waypoint — .

For those wanting to skip ahead, you can see the example on my Github page along with a Release that you are free to download and place within your POI folder.

Getting Started with GW2TacO[edit]

GW2TacO usually has the Marker Window already open, if not then Left-Click on the TacO icon and about 3/4 of the way down the menu window will be Open Marker Editor. In the bottom right corner of the Marker Editor window are the controls I will be referring to in this guide.

User Lady Elyssa GW2TacO Editor.jpg


Click on Start Recording button. Now where ever your move your character to, you will see a trail being created behind you and you can use the | | Pause button to create breaks in the trail.

User Lady Elyssa Start New Trail.jpg


Once you are happy with your first trail, you can Save your Trail using the Save temp trail to .trl file Button.

User Lady Elyssa Save Trail.jpg


Open the POIs folder and then the Data Folder and then give your new trail a name, maybe: example and then Click Save.


NOTE: Once a Trail is Saved, the location and details are saved within the poidata.xml file within your GW2TacO folder. So you can always find where you saved it and what you named it.

WARNING: DO NOT click on the Start Recording button again or you will lose your current Trail progress, only do so once your trail has been saved (if required).

Trail Shortcut Keys[edit]

I would recommend setting up some shortcuts for the most common actions using either the numeric key area on your keyboard or assigning them to any spare mouse buttons. You can do find them in the TacO menu under Marker Editor -> Rebind Keys.

I would recommend setting up a Shortcut Keybind for Pause, Delete and Start New trail section at least, as these will be the most used.

  • Pause recording - Pausing the trail can be useful if you need to create a break in the trail or need to smooth the trail out rather than show every little character movement or bump in the terrain. When the Trail is paused a new button will appear to allow you to Start New trail section.
User Lady Elyssa Pause Trail.jpg
User Lady Elyssa Start New Trail Section.jpg
  • Delete selected or last trail vertex - This will delete a segment of the trail that you have created. If your trail follows your movement then this will remove small sections of trail at a time. If you are using Pause Recording above to create longer trail segments then larger segments of your trail will be removed at a time.
User Lady Elyssa Delete Trail Segment.jpg

You have created your first trail but in order to make proper use of it or to begin creating your own marker pack you will first need to create an XML file within the GW2TacO/POIs/ folder.

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. This will become the first entry within the TacO menu and should you choose to share your work later on, the name that your marker pack will become known as. For this example we will use: My Markers.

I have also added in the "Optional" attributes fadeNear and fadeFar to limit the visibility of any markers or trails to a reasonable distance, without this all markers on a map would be visible from everywhere.

<OverlayData>

   <MarkerCategory name="mymarkers" DisplayName="My Markers" fadeNear="2500" fadeFar="5000">
   </MarkerCategory>

</OverlayData>

We can start to create some marker categories that will becomes part of the Menu for the Marker Pack.

Note: A <MarkerCategory> that doesn't have any sub categories ends with />

<OverlayData>

   <MarkerCategory name="mymarkers" DisplayName="My Markers" fadeNear="2500" fadeFar="5000">
      <MarkerCategory name="example" DisplayName="Example Trail"/>
   </MarkerCategory>

</OverlayData>

Our XML now knows the name of our pack and that we have an example trail but it doesn't know where our magnificient first trail is or what we called it, so we need to add a little more XML between some <POIs> and </POIs> tags. This is where any trail data and marker information is referenced.

<OverlayData>

   <MarkerCategory name="mymarkers" DisplayName="My Markers" fadeNear="2500" fadeFar="5000">
      <MarkerCategory name="example" DisplayName="Example Trail"/>
   </MarkerCategory>

   <POIs>
      <Trail type="mymarkers.example" trailData="Data/example.trl"/>
   </POIs>

</OverlayData>

To preview our efforts so far, Left-Click on the TacO icon and Exit GW2TacO and then re-launch for it to use the new files you have created.

Once the TacO icon is back at the top of the screen. You should also now see your first trail segment showing in game. If you Left-Click on the TacO icon to open the menu and then mouse over Filter Displayed Tactical Markers you can navigate the menu.

Basic Trail Attributes[edit]

The attribute names are case sensitive.

  • type - An identifier specific to a Marker Category. Required if you want to be able to toggle your Trail on/off from your menu.
  • trailData - string. Required. Name of the exported trail (.trl) file path - in binary format (TRL file).
  • texture - Specify the .png file for the trail, if not specified GW2TacO will provide a default one.
  • animSpeed - The speed of the trail animation.
  • color - trail images and some markers can have their color set by the hexadecimal value used and are not case sensitive. The color in HEX form can be set either with Opacity 00112233 or without as 112233 (see alpha).
00 = Opacity. see alpha.
11 = Red color.
22 = Green color.
33 = Blue color.
Some example color values without the Opacity:
FF0000 - Red
00FF00 - Green
00FF00 - Blue
000000 - Black
FFFFFF - White
  • alpha - Decimal number, optional [default: 1.0 ] Opacity of the icon displayed.
  • 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.


Note: If a variable isn't present it's counted as it's there with a default value.


Basic Marker Attributes[edit]

The default key assigned by GW2TacO 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 in 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.

Note: The default marker is an amber coloured diamond shape and should only really be used as a temporary placeholder.

Marker Images[edit]

For the more creative and artistic people out there, feel free to create your own, for everyone else, I would recommend making use of the vast number of images available here on the wiki. The maximum size for markers is 128x128 pixels, map markers tend to be best at around 64x64 or 32x32 in most cases. Markers that are visible in game are usually best kept smaller than 32x32 in most cases.

For this example we are going to use some of the Squad Markers from the Commander page.

Circle

  • Right-click on the Circle icon and Save Image As...
  • Navigate to your GW2TacO folder and then to POI/Data/
  • Create a New Folder called Images.
  • Save the image in the image folder as circle.png

Heart

  • Right-click on the Heart icon and Save Image As...
  • Navigate to your GW2TacO folder and then to POI/Data/Images
  • Save the image as heart.png

Square

  • Right-click on the Square icon and Save Image As...
  • Navigate to your GW2TacO folder and then to POI/Data/Images
  • Save the image as square.png

Triangle

  • Right-click on the Triangle icon and Save Image As...
  • Navigate to your GW2TacO folder and then to POI/Data/Images
  • Save the image as triangle.png

XML for the Markers[edit]

While we could place some default markers and then do the XML for them, we are going to do the XML for them first as GW2TacO gives us a nice way to re-use them and also to be able to see the benefit of our work sooner.

Note: The order used for the Marker Category will also define the order within the TacO menu.

<OverlayData>

   <MarkerCategory name="mymarkers" DisplayName="My Markers" fadeNear="2500" fadeFar="5000">
      <MarkerCategory name="example" DisplayName="Example Trail"/>
      <MarkerCategory name="circle" DisplayName="Toggle Circle"/>
      <MarkerCategory name="heart" DisplayName="Toggle Heart"/>
      <MarkerCategory name="square" DisplayName="Toggle Square"/>
      <MarkerCategory name="triangle" DisplayName="Toggle Triangle"/>
   </MarkerCategory>

   <POIs>
      <Trail type="mymarkers.example" trailData="Data/example.trl"/>
   </POIs>

</OverlayData>

Save the XML file and then Close GW2TacO and re-launch it.

Marker Shortcut Keys[edit]

Now is a good time to revisit the shortcut keys within the TacO menu under Marker Editor -> Rebind Keys. Look for the Add POI (Default Category X) - where X equals a Number. I use the CTRL Key plus one of the Num Pad keys for these, so my keybinds look like this:

  • [CTRL+2] Add POI (Default Category 2)
  • [CTRL+3] Add POI (Default Category 3)
  • [CTRL+4] Add POI (Default Category 4)


Using the GW2TacO Trail Editing interface:

User Lady Elyssa Trail Editing 1.jpg


Click on the 1 and go to:

  • My Marker's
    • My Category
      • Toggle Circle (Left-Click to select)

Click on the 2 and go to:

  • My Marker's
    • My Category
    • Toggle Heart (Left-Click to select)

Click on the 3 and go to:

  • My Marker's
    • My Category
      • Toggle Square

Click on the 4 and go to:

  • My Marker's
    • My Category
      • Toggle Triangle


Now when you use the Place Marker keys the appropriate marker will be placed at your location and have the correct type which links it to it's place in the menu.

Once you have placed your markers. Open the GW2TacO folder and look for the poidata.xml file. Upon opening it, you should see something like this:

<OverlayData>

   <MarkerCategory Name="mymarkers" DisplayName="My Markers" fadeNear="2500" fadeFar="5000">
      <MarkerCategory Name="example" DisplayName="Example Trail" texture="Data/Images/trail.png"/>
      <MarkerCategory name="circle" DisplayName="Toggle Circle" iconFile="Data/Images/circle.png"/>
      <MarkerCategory name="heart" DisplayName="Toggle Heart" iconFile="Data/Images/heart.png"/>
      <MarkerCategory name="square" DisplayName="Toggle Square" iconFile="Data/Images/square.png"/>
      <MarkerCategory name="triangle" DisplayName="Toggle Triangle" iconFile="Data/Images/triangle.png"/>
   </MarkerCategory>

   <POIs>
      <POI MapID="15" xpos="-200.086" ypos="28.6689" zpos="331.556" type="mymarkers.triangle" GUID="AVE8BmBQdkG32qvKSxkm6w=="/>
      <POI MapID="15" xpos="-194.003" ypos="28.6396" zpos="338.98" type="mymarkers.circle" GUID="RT3v6Tr5gE6yyav0dFO4uQ=="/>
      <POI MapID="15" xpos="-186.742" ypos="28.6003" zpos="331.901" type="mymarkers.heart" GUID="As9RB0soykqn4NsqA1abvA=="/>
      <POI MapID="15" xpos="-193.448" ypos="28.6712" zpos="324.628" type="mymarkers.square" GUID="BV3HKuCr6UapNoZMT2R1JQ=="/>
      <Trail GUID="GinxxtP1CEquZ6gPlhcKNQ==" trailData=".\POIs\Data\example.trl"/>
   </POIs>

</OverlayData>

The MarkerCategory section here is a duplicate of the XML within our example.xml file and when GW2TacO is closed, we can make any temporary changes here to see how they affect things before we add any changes to our own XML files. This should be removed once we are done with them to avoid any conflicts with our actual XML file.

The POI section contains the XML reference to the actual data. We need to copy everything within the POI section to our example.xml file.

The poidata.xml file should look like this once we have moved everything over:

<OverlayData>
   <POIs>
   </POIs>
</OverlayData>

For our Trail, the GUID isn't needed and while "\" backslashes work just fine for GW2TacO, they don't work with Blish HUD, so we need to make some corrections here so that everything works as intended.

Our example.xml file should now be looking like this:

<OverlayData>

   <MarkerCategory Name="mymarkers" DisplayName="My Markers" fadeNear="2500" fadeFar="5000">
      <MarkerCategory Name="example" DisplayName="Example Trail" texture="Data/Images/trail.png"/>
      <MarkerCategory name="circle" DisplayName="Toggle Circle" iconFile="Data/Images/circle.png"/>
      <MarkerCategory name="heart" DisplayName="Toggle Heart" iconFile="Data/Images/heart.png"/>
      <MarkerCategory name="square" DisplayName="Toggle Square" iconFile="Data/Images/square.png"/>
      <MarkerCategory name="triangle" DisplayName="Toggle Triangle" iconFile="Data/Images/triangle.png"/>
   </MarkerCategory>

   <POIs>
      <Trail type="mymarkers.example" trailData="Data/example.trl"/>
      <POI MapID="15" xpos="-200.086" ypos="28.6689" zpos="331.556" type="mymarkers.triangle" GUID="AVE8BmBQdkG32qvKSxkm6w=="/>
      <POI MapID="15" xpos="-194.003" ypos="28.6396" zpos="338.98" type="mymarkers.circle" GUID="RT3v6Tr5gE6yyav0dFO4uQ=="/>
      <POI MapID="15" xpos="-186.742" ypos="28.6003" zpos="331.901" type="mymarkers.heart" GUID="As9RB0soykqn4NsqA1abvA=="/>
      <POI MapID="15" xpos="-193.448" ypos="28.6712" zpos="324.628" type="mymarkers.square" GUID="BV3HKuCr6UapNoZMT2R1JQ=="/>
   </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, remember to restart GW2TacO.


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 Circle Marker used in the example above, this would be written as type="mymarkers.circle" 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 GW2TacO. For a list of achievement IDs see https://wiki.gw2.org.cn/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.

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:
    &amp;
  • To create a newline within some info text or copy / copy-message you can use:
    &#xA;

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:

The GW2TacO/POI folder is where all of your XML files need to be stored.

The GW2TacO/POIs/DATA folder is where your trail files and images will go and I would recommend organising things in to their own folders as needed.

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]. You can then safely zip up your pack, 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]

Guides

Additional Tools

  • TinyPNG image compression for smaller file size and increases performance for players on slower computers.
  • Marker Pack Assistant - Available as a module within BlishHUD
  • TrlTool (Direct Downaload Link) - This is a small tool created by BlishHUD's own Freesnow and allows for some manual trail editing.
  • Github Desktop - if you plan on hosting your own pack and want to easily sync your local files with your Github Repository. I use a different folder that is different from my actual development folder, this ensures I have a local backup before files are synced with the repository.

GW2TacO Alternatives

Marker Packs