blish-hud / Community-Module-Pack

MIT License
5 stars 25 forks source link

TacO MarkerCategory names are alphanumeric + `_` exclusive #59

Closed BlishHUD closed 3 years ago

BlishHUD commented 4 years ago

QuitarHero at 5/9/2020 11:22:04 AM +00:00

Bug Report: Module: Markers & Paths Issue: A difference between Taco and Blish in regards to the name MarkerCategory attribute:

  • Taco: It forces all empty spaces into underscores, so this would be the same to Taco:
    <MarkerCategory name="test.T e s t i n g"/>
    <POI marker="stuff" type="test.t_e_s_t_i_n_g"/>
  • Blish: It does not force all empty spaces into underscores, so the above example makes the name and type incompatible. Edit: Looks like any character that isn't a . or a letter/number is swapped for a _

In the effort to make Taco marker packs a seamless transition into Blish HUD, this is something that should be addressed.

Related discussion: https://discordapp.com/channels/531175899588984842/534492012263636992/708616039298236457

REF: https://discordapp.com/channels/531175899588984842/534492173362528287/708639926995910686

Invisi commented 4 years ago

As a heads-up, this is documented as "Must not contain any spaces or special characters" but is silently ignored/fixed.

type - string, optional. This is the full name of the category the marker belongs to. If this is not set, the marker will be presented with default parameters. Must not contain any spaces or special characters.

http://www.gw2taco.com/2016/01/how-to-create-your-own-marker-pack.html

dlamkins commented 4 years ago

@Invisi Thank you!

Yes, here is what TacO ends up doing:

for ( TS32 x = 0; x < (TS32)name.Length(); x++ )
  if ( !isalnum( name.GetPointer()[ x ] ) && name.GetPointer()[ x ] != '.' )
    name.GetPointer()[ x ] = '_';
dlamkins commented 3 years ago

This has been addressed in the new pathing module.

dlamkins commented 3 years ago

The new Pathing module has been published, so we'll close this.