header tags

Tablesmith Tuesday Introduction (Part 1 – Header Tags)

Posted on Updated on

A tablesmith table does not have a lot of parts and pieces to it.  But each part is important in its own way.  There is no rhyme or reason that I am taking to explain the different parts of the table other than my whim. Today we will be looking at the Header Tags.

There are 4 Major Parts to the Header:
Table Identification, Table Explanation, Table Links, and Revisions. It’s important in a shared community that the continuity of each table is preserved and changes and updates are noted so that users can track back errors, or improvements, or ask question of the people involved.

Table Identification

# ---------------------------------------------------
# Last Update: verified by Valminder Jan 30, 2006.
# ---------------------------------------------------
# Monastic Orders v3
# Original version by Ashon
# ---------------------------------------------------------------------------

This is an easy Section. As you can see it simply states: The Name of the Table, Who Created it, and When the Most recent Update was. There is often a verified note, which means the table was verified on that date to work with the current version of Tablesmith. This section is also where you should note any copyright notices that must be noted so that users are immediately aware that it is/isn’t an original work, or there is/isn’t some legality to the use of the table. You will see these demonstrated as such:

# Source: DMG 3rd edition.


# Copyright 1998 Bruce A. Gulke
# Modifications Copyright 2001 Kevin Duda

Table Explanation

# ---------------------------------------------------------------------------
# Ashon's Monastic Orders table intrigued and inspired me to elaborate on the
# great ideas. As I hacked at the scripting to get my ideas to fit, creating
# a garbled mess that depended on other tables that I had also altered.
# Here is a cleaned up Version 3 of the Monastic Orders table. After hacking
# it apart and then trying to clean it up, it probably bears little
# resemblance to Ashon's original. I claim responsibility for all errors, but
# much of the content is his.
# In the Related Files folder are two of the modified tables needed for
# Monastic Orders v3 to function properly. You will need to place them in
# the Misc. folder or in the ~Reference folder.
# The Table could still use a Parameter input section and assigning a gender
# to each Important Person to get rid of the awkward s/he's. Feel free to
# update and post.
# ---------------------------------------------------------------------------
# This table is used to quickly generate the outline of a Monastic Order for
# use in your game. Does a player want to play a monk? Can't think of the
# more mundane tidbits? Here it is.
# A mysterious monk wanders up to the party? Need to know some quick
# information?
# Any Additions to the list can as always be emailed to me.

As you can see Valminder placed his revised explanation above my original explanation. He explains that he had some ideas and changed the table all around to work properly to work with his ideas. And then left my little explanation underneath. The explanation doesn’t need to be a lot of anything, it should just quickly describe what and who the table is intended for, and what the end goal is. As you can see, mine was to generate a quick monastery for random monks! Valminder’s was to flesh it out to make it a more robust story telling device. Just a little scribble here can add much impact to future revisionist who want to rip apart your table and expand upon it because it is the kernel of a good idea.

Table Links

# NOTE: This Table calls these other tables as necessary:
# 1, Ethics.tab (creates guiding virtues of the Order i.e. Be kind to
# children, Live in poverty)
# 2, Book Titles.tab (some groups are referenced in creating names of Sacred
# Texts)
# 3, Countries.tab (referenced in creating Name of the guild, home area of
# leaders, and for locations if needed within the Story of
# the order)
# 4, KS_KungFuTheater.tab (used to create names for the order's Signature
# Moves, and groups are referenced to create the
# name of overall technique used by the Order)
# 4, MARTIAL ARTS Moves 4 Kung Fu Styles.tab
# (used to create names for the order's Signature
# Moves, and groups are referenced to create the name
# of overall technique used by the Order)
# 5, NPC Appearance.tab (currently seems only to be used to generate the
# leaders geneder and a sub-referral to naming file,
# but since it works, I left it in)
# 6, Miscellaneous.tab (used for ocupations)
# 7, The Oracle.tab (used to create the Order's overall philosophy)
# 8, Names Generator.tab (creates names of leaders of the order throughout
# its history)
# Modified "NPC Appearance.tab" with this line:
# :GenerateNoClass
# 1,[~Names Generator.NAME For All], a [Gender]
# _ [~Creatures.Humanoid2], from [~Countries.Start].

Table Links are the most vital part of the Header as it should detail every call to outside tables that this table is going to make down in its guts. I usually come back after I’ve written the table itself and populate this list. That way I know it is complete. When your table starts throwing errors, and it will! This is the first thing to check. When another table is updated, removed, revised, changed, or whatever, this will help you find why you are getting errors. When I wrote the table originally I had no (notes) about the use of each table. Valminder slid those badboys in either when he updated it, or when he revised the tables. A properly written Table Link would look like this:

#[FileName.InteriorTable] - Use
#[Miscellaneous.Occupations] - Used to generate occupations
#[The Oracle.RandomSentence] - Used to generate Order's overall philosophy

And then occasionally a table will need the recoding of another table. As you can see from the note from Valminder, he added an Interior Table to the NPC Appearance File to make the output more elegant. Sometimes however, you simply need to pull information from another table in a different way, or you want to be able to carry over the variables from another table, and so you’ll go in and expose those elements through a new interior table.


# Joey Joe Joe expanded and modified this table, Summer 2005
# It should not be dificult to add Parameter options, but I hate doing them.
# Modified by Valminder, Jan 2006.
# Adapted for TSv5.
# Corrected some minor errors.
# Fixed "NPC Appearance.tab"

At the end of the Header Revisions are noted. Joey Joe Joe, expanded and modified the table, and he gave a date. He didn’t go into too much detail. But at least we know that it was there, and if we really wanted to we could dig up an old copy and compare them. Then Valminder went back in Jan O6 to adapt the table for TSv5, fixed some errors, and re-coded the NPC Appearance file. A great revisionist, will note New Table Links that they added, and a general note about any coding they had to redo. But all that is really needed in this section is a polite; Name and Date of any Revisions.

And that folks is the header tag. Sure you can go on long rants and explanations of what the table does, and you can be like a wikipedia Editor and bash the original design of the table. You can do anything you want. But by following these simple guidelines you can ensure that other people are going to be more likely to use your table, and find value in your table. It will also make it easier for people to revise, edit, and improve on your table, and improved randomness is good randomness.