By Professor Andrew McDougall (Tir Gwaith).
File(s) Covered: *spells.lst
Spells.lst is probably the most "data" like of all the different file types. This lesson is going to cover the basics on that data entry. Parts for Temporary bonus information (applying a spell to a character) will come later.
Tags used:
SCHOOL,
SUBSCHOOL,
DESCRIPTOR,
CLASSES,
DOMAINS,
TYPE,
COMPS,
CASTTIME,
RANGE,
TARGETAREA,
DURATION,
SAVEINFO,
SPELLRES,
DESC,
VARIANTS,
COST,
XPCOST
Please notice the _order_ of the tags I put them in. That is how I enter spells into LST format, mainly because, that is the spell block found in most sources. For my example, I'll be using Blasphemy from the RSRD (it covers most of the tags). I'll use other spells as examples of the different tags Blasphemy doesn't use.
Breaking it down:
Tags covered:
SCHOOL, SUBSCHOOL, DESCRIPTOR
The line below the spell name is usually in this format: School (Subschool) [Descriptors] Note that I mention Descriptors in plural. There generally is only one School and Subschool, but many spells have more than one descriptor. DESCRIPTOR is | delimited, so put a | between more than one descriptor.
Blasphemy has "Evocation [Evil, Sonic]" so it has a School and 2 descriptors.
SCHOOL:Evocation
DESCRIPTOR:Evil|Sonic
Animal Trance has all 3 tags:
Enchantment (Compulsion) [Mind-Affecting, Sonic]
SCHOOL:Enchantment
SUBSCHOOL:Compulsion
DESCRIPTOR:Mind-Affecting|Sonic
The tag associated with Descriptor is VARIANTS, but I normally enter it when doing DESC, since this field usually comes from the body of the spell description, but is usually linked with the DESCRIPTOR.
Tags covered:
CLASSES, DOMAINS, TYPE
This is only part of the way of linking. If adding a new spell, this is the method used. When adding a new class and linking an old spell, the SPELLLEVEL tag is used.
The first two are easy. TYPE is then based on the first two tags. Our example from Blasphemy: Level: Clr 7, Evil 7 Which would translate into:
CLASSES:Cleric=7
DOMAINS:Evil=7
Since both of these are for Divine spellcasters, it would get:
TYPE:Divine.
Both tags are pipe ("|") and comma delimited, such as Antimagic Field Level: Clr 8, Magic 6, Protection 6, Sor/Wiz 6
Which would translate into:
CLASSES:Cleric=8|Sorcerer,Wizard=6
DOMAINS:Magic,Protection=6
Now, because the above list has both Arcane and Divine spells, the next tag would be:
TYPE:Arcane.Divine
There are a lot more aspects to linking spells, castability, etc. but those are global tags not normally used in a spells.lst, and we can cover those later.
Tags covered:
COMPS, CASTTIME
This section is easy, especially for those people that like to cut and paste.
Components: V
Casting Time: 1 standard action
Goes to:
COMPS:V
CASTTIME:1 standard action
Exact entry into the tag field. Easy.
Tags covered:
RANGE, DURATION, TARGETAREA
Ok, the first two are easy.
1) Range: We have a nice bit of code that autocalculates the Close / Medium / Long ranges for spells (well, it is done through a GameMode file, so you can add more if you wish, etc.) So whenever you see one of those, you merely need to put in the word for the range.
2) Duration: We have a nice bit of code that will do math functions, and the character casterlevel can be checked via ( ) - everything in there is reduced to a number, and CASTERLEVEL refers the to spellcasting level when inside the ( ). For normal parentheses like for (D) where spellcaster can end the spell sooner, we use [ ].
3) Target / Area / Effect: I have only once or twice seen a spell that had more than one of these three. Hence we combine them into one tag.
Example:
Range: 40 ft.
Area: Nonevil creatures in a 40-ft.-radius spread centered on you
Duration: Instantaneous
Goes to:
RANGE:40 ft.
TARGETAREA:Nonevil creatures in a 40-ft.-radius spread centered on you
DURATION:Instantaneous
Example (from Antipathy spell):
Range: Close (25 ft. + 5 ft./2 levels)
Target: One location (up to a 10-ft. cube/level) or one object
Duration: 2 hours/level (D)
Goes to:
RANGE:Close
TARGETAREA:One location [ up to (CASETERLEVEL*10) cubes] or one object
DURATION:(CASTERLEVEL/2) hours [D]
Tags covered:
SAVEINFO, SPELLRES
Again, this is easy copy/paste stuff
Example:
Saving Throw: None or Will negates; see text
Spell Resistance: Yes
Goes to:
SAVEINFO:None or Will negates; see text
SPELLRES:Yes
Tags covered:
DESC, VARIANTS, COST, XPCOST
These tags are from the spells description, and require some judgment calls.
1) DESC is usually pulled from the "one-liners" in spell list descriptions, such as the SRD SpellListI.rtf etc. Otherwise, reducing a paragraph into something that will fit on a character sheet (and will require the user to still own the book the item came from) becomes an editing call. We try to have less than 50 character long field here.
2) VARIANTS are from the description, where the caster makes a decision on how a spell works when casting, such as Fire Seeds, where the caster uses either Acorns or berries. This also applies to things like Energy Resistance, where the energy type is decided at casting.
3) COST - specific cost of material components, usually listed at end.
4) XPCOST - again, listed at the end. Like COST, variables in these fields aren't accepted yet.
Example from Blasphemy:
DESC:Kills, paralyzes, weakens, or dazes nonevil subjects.
(Copy/Paste from SpellListI.rtf)
No Cost or XP Cost.
Example (from Clone):
Clone M F: Duplicate awakens when original dies.
Material Component: The piece of flesh and various laboratory supplies (cost
1,000 gp).
Focus: Special laboratory equipment (cost 500 gp).
Which went to:
DESC:Duplicate awakens when original dies.
COST:1500
Now, adding the cost of the Focus may not be the right thing to do here (I just used the example from the RSRD, so I could find one for the field...). The deciding factor on that would be how the cost of the Focus would be added into the creation of an item based on this spell (Material component costs are added into item creation costs).
The XPCOST example is easier (from Commune)
XP Cost: 100 XP.
XPCOST:100
Throw in a SOURCEPAGE:
tag, and basically, that is a spell, minus
any Temp bonus tags for applying spell effects to characters.
Tir Gwaith
LST Chimp