XML Workflow: Helper Changes

Rightfully this would be under ‘T’ for ‘Taxonomy’, that being the file I’m talking about.

However, ‘T’ is still a couple weeks away, and I want to write about this now.

Background

Helper stage in my workflow provides metadata used across the game system, regardless of domain. <sys>-taxonomy.docx is the primary file of interest, containing the object taxonomy within the system.

This is itself a hierarchy. For example, I see

  • Content [non-entity root of the taxonomy)
    • Ability [a thing you can do]
      • Feature [a thing you can do, granted by another object]
        • Class Feature [a feature granted by a class]
          • Class Subfeature [part of a class feature, often may be choice of the character]
            • Bardic Performance [type of performance a bard can do]
            • Rage Power [a way for barbarian rage to manifest; can be chosen]
            • Talent [generic term for ‘thing you can learn to do’, usually a choice]
              • Rogue Talent [a thing a rogue can choose to learn to do]
                • Advanced Rogue Talent [rogue talent that comes online at level 10]

The taxonomy started as a way to improve parsing. The opportunist advanced rogue talent is sometimes expressed in text in different ways. I have seen ‘opportunist rogue talent’ or ‘opportunist talent’, or even ‘opportunist ability’.

Yes, my search indexes are… large.

The other thing this gains me, game objects are rendered in a pretty consistent manner in my workflow. They start with a header block, with stat block if appropriate, and then their content. The main differences are in the formatting of the header block, and if there is a page break before it.

I use the taxonomy to add formatting instructions, because they are usually inherited. That is, class subfeatures all have a medium brown header at normal size. Setting this at ‘class subfeature’ lets me keep it consistent, and I don’t have to specify for every subfeature type. Domains and bloodlines are much longer the way I present them, so I override their ‘break’ value to ‘page break’.

The Changes

So, what are the actual changes?

I want the styles to be mostly consistent, but not quite the same.

  • TikZ and DOT use different color schemes. TikZ can take color definitions in RGB or CMYK specifications, as can DOT, but they’re expressed differently. Both also have named colors, but again they aren’t exactly the same.
  • At times, I want the colors and styles to differ slightly between headers and nodes.
    • Spell headers in body text are white on dark purple, non-italicized. Spell nodes in my final diagrams will be drawn and text in dark purple on white, text italicized.
    • ‘Modification objects’ (archetypes, subdomains, etc.) use a green color scheme. I haven’t decided if I want to keep that in the diagrams. Outside subdomains they don’t come up much.
    • I may want a ‘printer friendly’ version of the diagrams. I can imagine having the nodes all filled white, with dark text, and the borders in the object color.
  • I want different templates for populating the node text. Feats I always leave off the object type. Mythic feats need to be differenced, so I might include the object type… or change the color. Class features also leave off the object type but subfeatures indicate the object type. Which is to say, different templates for text content.
    • Not applicable for DOT, DOT I have a more generic approach because I don’t need to print them.

In the taxonomy file, I think I can mostly get by with:

  • DOT (dot namespace)
    • Colors [they’re the only things that vary, really]
  • TikZ (pgf namespace)
    • Colors [can be done with a style… or more than one]
    • Font [can be done with a style]
    • Text template [though I think I can make that configurable in TikZ style]

I’ve learned a lot about TikZ lately, especially about styles. I can probably have less in the taxonomy file than I originally did.

Closing Comments

Fewer changes than I expected. DOT really doesn’t have much I can or want to change. TikZ does, but much of that can be hidden in my style files. This minimizes how much I can have to maintain in my taxonomy.

Feeling good about this approach. I to start implementing some of this soon.

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Back to Top