Data Class Four
Today we'll cover Templates and Kits (and touch upon the other remaining file types), but first let's see how everyone did on the quiz.
Quiz Answers
- What is the Enhancement Bonus of the Sword at Level 1?
- +1, it's being granted a +1 Enhancement from the EQMOD 'PLUS1W'.
- What is the Enhancement Bonus of the Sword at Level 4?
- +1, the number remains unchanged due to Stacking Rules.
- What is the Enhancement Bonus of the Sword at Level 7?
- +2, MonkeyPower is now at 2.
- What is the Enhancement Bonus of the Sword at Level 15?
- +5, MonkeyPower has a +1 and another +4 for a total of +5.
- When does the Sword gain the Holy and Flaming property?
- The SPROP which has the Holy and Flaming property will display at Level 7
- Does the Sword lose the Holy and Flaming property at any level?
- The SPROP will deactivate at Level 11, and won't return till Level 15.
- What happens at Level 4 for the Sword?
- MonkeyPower becomes 1, which in turn allows the PC to use the Sword OneHanded. It also now displays the Enhancement Bonus from the Sword by the SPROP tag.
- What is the Armor Total AC (this includes any bonuses granted from the armor)?
- 15, +10 Armor Bonus, +4 Armor Enhancement on the Actual Armor, and +5 Armor Enhancement granted from the EQMOD PLUS5A, since Armor Enhancement does not Stack, it takes the higher of the two values, which is +5.
- What is the Armor Enhancement Total?
- +5 from the EQMOD PLUS5A, it also has +4 being ignored.
- What did we forget to do for the Monkey Belt?
- We forgot to make the Ability 'Belt Goodness', everything else is optional. PCGen will complain about an unconstructed reference if the ability isn't created.
Hope you did well and learned something from this exercise.
Templates
Templates are a nice catch all, they don't cost anything to add, they can drastically alter the PC and you have to be careful as certain tags will alter the entire PC. You'll find yourself wondering why your Barbarian is only getting a d6 per level, if you don't pay attention.
Templates are like Abilities, they can be chosen in a special chooser, but unlike Abilities a Template will only be ADDED Once. This is handy, as we used this for a Choice of what Class a character took at 1st level, in the Modern Campaign Setting.
I also use this when you have to avoid looping situations, an example would be vision.
If Race has Normal Vision, Grant Low-light, If Race has Low-light, grant Darkvision 60, if race has Darkvision give them +30' to Darkvision.
That would become a nasty loop as PCGen would be Granting/Removing in an endless cycle. Hence Templates are invaluable.
Templates can have any Global Tag, however, as noted earlier, they have a subset of tags that ONLY work in them. HD:6 would make ALL levels granted to them have a d6. LEVELADJUSTMENT:2 would increase their ECL by 2. You can grant Favored Classes this way as well.
Templates can be simple, "Name of Template" to a lengthy multi-choice deal. (See Half-Dragon for an example of complicated). Yes, this is another difference, TEMPLATES may have MULTIPLE CHOOSER tags that will ALL fire. Again, look at the Half-Dragon template to see this in action. rsrd_templates under rsrd, in the monster folder, Line 30.
Now that I've showered praises galore, I'm going to caution over use of Templates. In most cases, the User needs to Apply them by hand. It's normally better to use Abilities whenever possible. The Summary Tab will prompt a user for anything missing, but Templates are excluded as they're optional. Another word of Caution, like any Chooser, the Template with a Chooser will ONLY activate if called from a Class File, or Added Manually by the user. Having it in a TEMPLATE:Blah in an ability will NOT activate the chooser.
Recap - Templates have unique properties that are handy for a savvy lst coder.
Kits
Not to be mistaken for the old 2e term, a Kit is a set of Skills, Abilities, Feats, Equipment that can be given to a character. These are handy for "Insta-Characters" or "Insta-Bad Guys". They make the task of selecting Feats, and Skills easier, as it's done for you.
A Kit has a varied range of things it can accomplish. It can pre-equip a character with equipment, with EQMODs pre-applied. Skills can have a selection.
We normally are coding Kits for books, for the Default Creature. This allows the user to have a default baddie at their disposal.
-TIP- Kits only assign the Skill Ranks, you need to deduce the Skill Ranks for each monster by hand, don't forget that Stealth / Hide are altered by Size, that all stats can affect the creature, and the number of ranks granted are determined by monster class or character classes, plus the Racial Modifiers.
Odds and ends
We have other files that I'm not going to go into much detail - best method to learn these guys is just look at what is used in the RSRD or Pathfinder Core, there isn't much to them; Domains are fairly self-explanatory. They use a small set of tags to accomplish what is needed. Deities are another small file set, just duplicate previous existing entries and you won't have any issues. Proficiency Files for Armor and Shield just require a name, it's simple. Weapon Proficiency is the Name, but we also assign types, this is actually important or BONUS:WEAPONPROF= won't work. Remember, BONUS:WEAPONPROF is looking at the Weapon Proficiency File.
Bio Setting is a seldom used File. I'm not an expert on it's usage by any stretch of the imagination, and it's very much optional. It allows you to have PCGen auto assign ages, the age ranges, set proper ranges for Height and Weight. Since PCGen will adjust the Stats based upon age, that's handy to have set up for your typical PC races.
CompanionMods - in most cases, you won't really be setting these up too often, this is where the bonuses are assigned to the creature, be it a Familiar, Animal Companion, Special Mount, Psi Crystal, or something else. It also allows some minor things to be bonused to the Master. I'm pushing for some expanded capabilities, but what exists covers the core books we support today. I did an excellent class covering this topic in much greater detail, and recommend reading it if you plan on doing any Companions for your own homebrews.
Languages - broken down, Name of Language and what TYPE is it? Spoken.Written is it a racial dialect? Want to restrict choices, PRExxx tags work here as well.
Skills - Ah, a fun section. There isn't much I can say here, the basic set up is simple. However, the first item in the TYPE list MUST BE the Stat it's associated with. It's a "Magical" thing in code, I'm hoping this is fixed soon, but for now, just write out the full Stat Name, no Abbreviations here, sorry. PRExxx works here. USEUNTRAINED:NO prevents it from showing up unless it has a single Rank in it. BONUS tags on a skill line will ONLY activate if you have a Skill Rank in the Skill.
Spells - I spent several months coding up spells from a great many sources, if you follow a standard approach it's not hard. It just takes a little time getting used to the tags. RANGE: is nice, you only need to type 'Short', 'Medium', or 'Long' and PCGen will take those and change them into the nice formula. (CASTERLEVEL) is a useful tag, and this is the ONLY place it works at true capacity.
End of Lesson Dialog
Those are the files in a nutshell. LST Proficiency and mastery take time, patience and trial and error to perfect. We have the Yahoo Groups to ask questions, we have the Docs which hold all the information on current Tag usage and we have a Wiki and JIRA to aid in improving the tags, or creating new tags.
As a Data Monkey, you can take information and enter it into a format that PCGen can make work. These sources are typically books, but can be ideas gleaned from many sources. Figuring out how to get something to work can be rewarding, just knowing a solution exists.
I could make more objects, but I have to ask myself, is there any value to filling each file type for a class? I could tackle each and every file type, which is an interesting thought, but I'd rather touch on what is the harder subjects to grasp, which I think we've accomplished in the four Data Class Lessons put forth so far - Ability and Ability Category, Variable Interactions, even Races. Plus, compressing years of knowledge and experience can only do so much. At this point the class direction is now in your hands, do you have any questions for what we've gone over, or any file coding in particular?
I'm going to ask Barak if there is something else I should work into another class, otherwise, I'll either need another inspirational jolt, or eager students with questions to prompt the next class lesson.
Hope you've enjoyed everything so far.
Cheers,
--
Andrew Maitland