These are the PCGen Campaign Configuration files. Here you can specify what you want included in this campaign. It is recommended practice that your pcc files be located in the same directory as your list files, the notable exception being if you have multiple directories, with multiple list files, then you locate a "master" pcc file in the main directory. This will be explained below in the TAGs section.
This page is divided into three sections
Data Set and Campaign Information Tags - are used to provide information about the dataset
Main Body Tags - are used to load the specific .lst files which make up the dataset.
Other .pcc file tags - are used to provide additional functionality.
The first two tags in the PCC file should be CAMPAIGN
and GAMEMODE
.
These are presented below out of alphabetical order to emphasize that they are required tags which must be
the first two lines in a PCC file.
Tag Name: CAMPAIGN:x
Variables Used (x): Text (Name of source)
What it does:
Example:
CAMPAIGN:FGI - FooB Core Rulebook I - FHB
Tag Name: GAMEMODE:x
Variables Used (x):Text (Name of GameMode)
What it does:
This MUST be 2nd in the file. This tells PCGen what genre this is in PCGen and must be entered exactly as shown.
Examples:
GAMEMODE:3e
This PCC file uses the Third Edition SRD gamemode.
Tag Name: BOOKTYPE:x
Variables Used (x):Text (Book type)
What it does:
Example:
BOOKTYPE:Supplement
The source data set that this PCC file represents is a "Supplement".
Tag Name: COPYRIGHT:x
Variables Used (x):Text (Copyright information)
What it does:
Example:
COPYRIGHT:PCGen dataset conversion for "X Book" Copyright XXXX-YYYY,
PCgen Data Team including, but not limited to, "Original Author", "Any secondary authors".
This is the Sec. 15 that should be added to all sources going into PCGen. X Book should be the name of the source, XXXX should be the year the dataset was created and YYYY is the current year. Please list all contributors to the dataset.
COPYRIGHT:Foo Reference Document © 2003 Foo Games, Inc.
Note(s):©
- This code coverts to a copyright symbol (©) when put in the text of a COPYRIGHT tag.
*** New 5.13.9
Tag Name: DESC:x
Variables Used (x): Text (Information)
What it does:
Example:
DESC:This pcc loads all the Foo source materials minus the FooWorld races
Tag Name: GENRE:x
Variables Used (x):Text (Genre)
What it does:
This tells PCGen what genre this is.
Eventually This will be used to filter sources.
Example:
GENRE:Fantasy
Tag Name: HELP:x
Variables Used (x):Text (Internet address)
What it does:
Provides an internet link to a web page for help with the source. The link can be accessed in the GUI by right clicking the source name in the source tab and selecting "Product Help...".
Example:
HELP:http://www.foogames.com/producthelp.html
Tag Name: INFOTEXT:x
Variables Used (x):Text (Information)
What it does:
Provides Text information that is displayed in the Information Window on the Source Tab when the source material is selected.
Example:
INFOTEXT:This pcc loads all the Foo source materials minus the FooWorld races
*** Deprecated 5.4 - Remove 6.0 - Use ISOGL tag instead.
Tag Name: ISD20:x
Default Value:
NO
Tag Name: ISMATURE:x
Variables Used (x):Boolean (YES or NO)
What it does:
This tag is so that we have the ability to include datasets based upon sources of a
more mature nature. If ISMATURE:YES
then the following info gets inserted into a pop-up
window "This dataset contains content of a mature nature. User discretion is advised." This tag is
optional.
Examples:
ISMATURE:YES
Causes a pop-up to fire saying "This dataset contains content of a mature nature. User discretion is advised."
ISMATURE:NO
Does not cause a pop-up to fire saying "This dataset contains content of a mature nature. User discretion is advised."
Default Value:
NO
Tag Name: ISOGL:x
Variables Used (x):Boolean (YES or NO)
What it does:
Used to indicate if sources are OGL compliant. If ISOGL:YES
then its COPYRIGHT info gets inserted into the OGL license. This tag is optional.
Examples:
ISOGL:YES
ISOGL:NO
Default Value:
NO
*** New 5.3.3
Tag Name: ISLICENSED:x
Variables Used (x):Boolean (YES or NO)
What it does:
Used to indicate if sources have a special license, and activated the LICENSE tag, which will display information about the license to the end-user.
Examples:
ISLICENSED:YES
ISLICENSED:NO
Default Value:
NO
*** New 5.3.3
Tag Name: LICENSE:x
Variables Used (x):Text (License information)
Variables Used (x):FILE=Text (HTML file)
What it does:
Displays special license information in a pop-up at time of source load. Requires a ISLICENSED:YES
tag to be active.
Examples:
LICENSE:This set included with special permission from Foo Games
Would display the text in a nice box with other licenses.
LICENSE:FILE=foolicense.html
Doing a FILE=
allows PCC to point to an HTML formatted file, which will display in a box of its own.
*** New 5.15.2
Tag Name: PRECAMPAIGN:x,y,y
Variables Used (x): Number (Number of items required to pass)
Variables Used (y): Text (Data set name as set by the CAMPAIGN tag).
Variables Used (y): BOOKTYPE=Text (Data set name as set by the CAMPAIGN tag).
What it does:
PRECAMPAIGN
sets specific data sets as required or prohibited for the associated
data set to be loaded. In the Source tab a data set which requires another data set will appear
in red until that set is added to the right load pane.BOOKTYPE
sub-tag and text in square-brackets ([]) will exclude
the relevant data sets from the prerequisite evaluation.Example:
PRECAMPAIGN:1,3.5 RSRD,3.5 RSRD Basics
Will cause a data set to be loaded only if the "3.5 RSRD" or the "3.5 RSRD Basics" data set is loaded.
!PRECAMPAIGN:1,3.5 RSRD
Will prohibit the loading of the associated data set if the "3.5 RSRD" data set is loaded.
PRECAMPAIGN:1,3.5 RSRD Basics
Will cause the associated data set to be loaded only if the "3.5 RSRD Basics" data set is loaded.
PRECAMPAIGN:1,BOOKTYPE=Core,[3.5 RSRD Basics]
Will cause the associated data set to be loaded only if the a "Core" data set is loaded but does not include the "3.5 RSRD Basics" data set in the evaluation.
!PRECAMPAIGN:1,BOOKTYPE=Core,[3.5 RSRD Basics]
Will cause the associated data set to be loaded only if the a "Core" data set other than the "3.5 RSRD Basics" data set is loaded.
*** New 4.3.10
Tag Name: PUBNAMELONG:x
Variables Used (x):Text (Long name of publisher)
What it does:
The Publisher's full name.
Example:
PUBNAMELONG:Foo Games, Inc.
*** New 4.3.10
Tag Name: PUBNAMESHORT:x
Variables Used (x):Text (Short name of publisher)
What it does:
The Publisher's abbreviated name (usually their initials).
Example:
PUBNAMESHORT:FGI
*** New 4.3.10
Tag Name: PUBNAMEWEB:x
Variables Used (x):Text (Web link)
What it does:
The Publisher's website/URL.
Example:
PUBNAMEWEB:http://www.foogames.com/index.php
*** Updated 5.12 RC3
Tag Name: RANK:x
Variables Used (x): Number (Rank)
What it does:
Sets the priority in loading .pcc files. 1 is the highest priority and 9 is the lowest priority for loading .pcc files.
When PCGen encounters certain objects with duplicate names from different sources (such as Classes) the object in the source with the highest priority rank will be loaded while the duplicate will generate an error message (and will not be loaded).
It is recommended that all RANK numbers should be expressed a positive numbers as negative numbers will load before the positive.
Defaults to 9 if no RANK is set in the PCC file.
Example:
RANK:1
This pcc file is given first priority when loading.
Officially sanctioned use of ranks:
RANK:0 - Whatever has to be loaded before the Core
RANK:1 - Core rules
RANK:2 - Campaign settings
RANK:3 - Supplements
RANK:4 - Web enhancements
RANK:5 - 3rd party campaign books
RANK:6 - 3rd party supplements
RANK:7 - 3rd party web enhancements
RANK:8 and 9 - Homebrew
Tag Name: SETTING:x
Variables Used (x):Text (Setting)
What it does:
This tells PCGen what the setting is (if there is one).
Eventually This will be used to filter sources.
Example:
SETTING:Ravenloft
Tag Name: SHOWINMENU:x
Variables Used (x):Boolean (YES or NO, TRUE or FALSE also accepted)
Example:
SHOWINMENU:YES
What it does:
When set to YES, this tag tells PCGen to display this campaign in the Settings -> Campaigns menu. When selected, it will unload all other campaigns, and load this campaign. It will also set any options listed in the PCC file. It will appear in a submenu of its gamemode.
*** Updated 4.3.10
Tag Name: SOURCELONG:x
Variables Used (x):Text (Long name of source)
What it does:
The full product/book name.
Example:
SOURCELONG:Core Rulebook I (Foo Handbook)
The long source name for this file is "Core Rulebook I (Foo Handbook)".
*** Updated 4.3.10
Tag Name: SOURCESHORT:x
Variables Used (x):Text (Short name of source)
What it does:
The short product/book name.
Example:
SOURCESHORT:FHB
The short source name for this file is "FHB".
*** Updated 4.3.10
Tag Name: SOURCEWEB:x
Variables Used (x):Text (Web address)
What it does:
The URL that points directly to this product/book.
Example:
SOURCEWEB:http://www.foogames.com/product.php?products=654321
The web site for this source is "SOURCEWEB:http://www.foogames.com/product.php?products=654321".
*** New 5.9.5
Tag Name: SOURCEDATE:x
Variables Used (x):Date (Release date of source in format YYYY-MM)
What it does:
Allows PCGen to determine which of two sources is newer. A source without this tag will be considered older than a source with a set date. There is a preference which must be checked to activate this feature. In Preferences/PCGen/Sources check the box for "Allow newer sources to override duplicate object from older sources".
Example:
SOURCEDATE:2005-12
This source was published in December 2005.
Tag Name: TYPE:x.x - See global TYPE for more information
*** New 5.13.9
Tag Name: URL:x|y|z
Variables Used (x): Text (E-commerce site name. i.e. Amazon, DriveThruRPG, etc.)
Variables Used (x): WEBSITE
Variables Used (x): SURVEY
Variables Used (y): Text (Hypertext link)
Variables Used (z): Text (Link description)
What it does:
Example:
URL:Barcommerce|http://www.barcommercesite.com/product_info.php?products_id=12345&affiliate_id=54321|Support PCGen by buying this source now!
Displays the text "Support PCGen by buying this source now!" as an active link to the URL "http://www.foobarcommercesite.com/product_info.php?products_id=12345&affiliate_\id=5432".
URL:WEBSITE|http://www.foopublisher.com|Visit FooPublishers website.
Displays the text "Visit Foopublishers website" as an active link to the website "http://www.foopublisher.com"
URL:SURVEY|http://www.pcgenubersite.com|Help PCGen out by visiting our user feedback page and letting us know what you think.
Displays the text "Help PCGen out by visiting our user feedback page and letting us know what you think!" as an active link to the website "http://www.pcgenubersite.com"
The function of all the main body tags is tell PCGen to load a specific file. There are three ways of doing this.
The first and most common is by a relative file path. The path is relative to the .pcc file so if the file and the .pcc file that calls it are in the same directory then all that is needed is the name of the file.
Examples:
CLASS:fhbclasses.lst
Loads the file fhbclasses.lst which is in the same directory as the .pcc file calling it.
The second method is a special absolute path which is useful if you need to call a specific file from a known location in the data or vendor folder. By using the 'at' (@) symbol and a file path, PCGen will locate the file by looking in the data folder by the path specified. In the same way you can use the ampersand (&) to access a file path in the vendor data directory. Use of the asterisk (*) and a file path will first attempt to locate the file in the vendor folder and then will look in the data folder.
Examples:
SPELL:@/d20ogl/srd/srdspells.lst
Loads the file from a path relative to the data folder.
CLASS:&/complete_monkey/complete_monkey_classes.lst
Loads the file from a path relative to the vendor data folder.
EQUIPMENT:*/d20ogl/srd35/basics/rsrd_equip.lst
Loads the file from a path relative to the vendor data folder and if that does not exist, uses a path relative to the data folder.
The third method is by loading data files over the internet. To do this you must set PCGens preferences to allow this. You can then create a .pcc file which uses web address instead of file paths to load source files.
Examples:
CLASS:http://www.foogames.com/fhandbook/fhbclasses.lst
Loads the source file from a web site.
WARNING: Do not use backslashes (\) for directory separators in file paths, use only forward slashes (/). backslashes work correctly on Windows systems but cause problems on Unix flavored systems such as Linux and Max OS X.
IMPORTANT NOTE: The following tags can (and it is recommended for equipment)
have multiple lines.
The names of the list files in the example column are also only suggestions.
To include the same type of files from the same directory on the same line
you would separate each file to be loaded (of the appropriate type, i.e., fhbarmorshields.lst|fhbequip|etc
).
Sometimes, not all of these tags are required by a source material.
If a tag is not required, it cannot be left blank, it must be commented out or deleted entirely.
These tags only tell PCGen where to go to get the information it needs, it points it to the right spot.
Each list file will be fully explained below, separated by the list file name, with a full list of the
tags that can be used in each one.
*** New 5.11.1
Tag Name: ABILITY:x
Variables Used (x):Text (File path)
What it does:
ABILITY
tag.Example:
ABILITY:specialabilities.lst
*** New 5.13.5
Tag Name: ABILITYCATEGORY:x
Variables Used (x):Text (File path)
What it does:
Example:
ABILITYCATEGORY:myabilitycategories.lst
Tag Name: ARMORPROF:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the armor proficiencies list file specified
Example:
ARMORPROF:fooarmorproflight.lst
Load the armor proficiencies fooarmorproflight.lst file.
ARMORPROF:fooarmorproflight.lst.FORGET
Forgets to load the armor proficiencies fooarmorproflight.lst file.
Tag Name: BIOSET:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the biosettings list file specified
Example:
BIOSET:biosettings.lst
Tag Name: CLASS:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the classes list file specified
Example:
CLASS:fhbclasses.lst
Tag Name: COMPANIONMOD:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the companion modifiers list file specified
Example:
COMPANIONMOD:foocompanionmods.lst
*** New 5.9.7
Tag Name: COVER:x
Variables Used (x):Text (Image file path)
What it does:
Tells PCGen to load the image file specified. The image is displayed in the Source Tab in the Source Info panel when the dataset is selected.
Example:
COVER:foohandbookcover.jpg
Tag Name: DEITY:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the deities list file specified
Example:
DEITY:foodeities.lst
Tag Name: DOMAIN:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the domains list file specified
Example:
DOMAIN:foodomains.lst
Tag Name: EQUIPMENT:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the equipment list file specified
Examples:
EQUIPMENT:fooallequip.lst
EQUIPMENT:fooequiparmorsshields.lst
Tag Name: EQUIPMOD:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the equipment modifiers list file specified
Example:
EQUIPMOD:fooequipmods.lst
Tag Name: FEAT:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the feats list file specified
Example:
FEAT:foofeats.lst
Tag Name: KIT:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the starting kits list file specified
Example:
KIT:foostartingkits.lst
Tag Name: LANGUAGE:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the languages list file specified
Example:
LANGUAGE:foolanguages.lst
*** New 5.13.9
Tag Name: LOGO:x
Variables Used (x):Text (Image file path)
What it does:
Example:
LOGO:../barcompanylogo.jpg
Tag Name: PCC:x
Variables Used (x):Text (File path)
What it does:
Example:
PCC:../foodir/foobook.pcc
Tag Name: RACE:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the races list file specified
Example:
RACE:fooraces.lst
Tag Name: SKILL:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the skills list file specified
Example:
SKILL:fooskills.lst
Tag Name: SHIELDPROF:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the shield proficiencies list file specified
Example:
SHIELDPROF:fooshieldproflight.lst
Load the shield proficiencies fooshieldproflight.lst file.
SHIELDPROF:fooshieldproflight.lst.FORGET
Forgets to load the shield proficiencies fooshieldprofsimple.lst file.
Tag Name: SPELL:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the spells list file specified
Example:
SPELL:foospells.lst
Tag Name: TEMPLATE:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the template list file specified
Example:
TEMPLATE:footemplates.lst
Tag Name: WEAPONPROF:x
Variables Used (x):Text (File path)
What it does:
Tells PCGen to load the weapon proficiencies list file specified
Example:
WEAPONPROF:fooweapprofsimple.lst
Load the weapons proficiencies fooweapprofsimple.lst file.
The tags below do not provide information about the dataset nor do they load files by themselves but instead provide additional functionality.
Tag Name: LSTEXCLUDE:x|x
Variables Used (x):Text (File names)
What it does:
This is a | (pipe) delimited tag which allows you to customize which LST files are loaded. This must be before PCC/LST file INCLUDE statements if used. All of the files listed will NOT be loaded, even if referenced later by other included PCC files. The LST file list can be a single LST filename per entry, or can be separated by the "|" (pipe) character. The full path to the file is needed unless the .pcc file containing the LSTEXCLUDE tag is in the same directory as the files to be excluded.
Examples:
LSTEXCLUDE:fooraces.lst
LSTEXCLUDE:fooraces.lst|foogods.lst
LSTEXCLUDE:@d20ogl/foogames/foohandbook/fooclasses.lst
*** New 5.15.10
Tag Name: ALLOWDUPES:x
Variables Used (x): LANGUAGE
Variables Used (x): SPELL
What it does:
Examples:
ALLOWDUPES:SPELL
Duplicate spells loaded by the user selected PCC files will be allowed.
Tag Name: (INCLUDE:y|y)
Tag Name: (INCLUDE:CATEGORY=x,y,y|x,y,y) - Special syntax for feats and abilities
Variables Used (x): Text (Ability category)
Variables Used (y): Text (LST object name)
What it does:
IMPORTANT NOTE: Using INCLUDE for the same file on multiple lines will cause only the first line with INCLUDE to be processed.
Example:
RACE:myrace.lst|(INCLUDE:Happy Elf|Dower Dwarf)
This loads only the "Happy Elf" and the "Dower Dward" from myrace.lst
.
ABILITY:myability.lst|(INCLUDE:CATEGORY=Class Ability,Monkey See,Monkey Do)
This loads only the "Monkey See" and "Monkey Do" Class Abilities from myability.lst
.
Tag Name: (EXCLUDE:y|y)
Tag Name: (EXCLUDE:CATEGORY=x,y,y|x,y,y) - Special syntax for feats and abilities
Variables Used (x): Text (Ability category)
Variables Used (y): Text (LST object name)
What it does:
Example:
RACE:fhbrace.lst|(EXCLUDE:Fooman|Foowarf)
This loads all the races from the fhbrace.lst
file except for
the "Fooman" and "Foowarf" races.
ABILITY:fhbability.lst|(EXCLUDE:CATEGORY=Class Ability,Monkey See,Monkey Do)
This loads all the abilities from the fhbability.lst
file except for
the "Monkey See" and "Monkey Do" Class Abilities.
*** New 5.15.10
Tag Name: FORWARDREF:x|y,y
Variables Used (x): ABILITY=Text (Ability category)
Variables Used (x): ARMORPROF
Variables Used (x): CLASS
Variables Used (x): DEITY
Variables Used (x): DOMAIN
Variables Used (x): EQMOD
Variables Used (x): EQUIPMENT
Variables Used (x): FEAT
Variables Used (x): LANGUAGE
Variables Used (x): RACE
Variables Used (x): SHIELDPROF
Variables Used (x): SKILL
Variables Used (x): SPELL
Variables Used (x): TEMPLATE
Variables Used (x): WEAPONPROF
Variables Used (x): CLASSSKILLLIST
Variables Used (x): CLASSSPELLLIST
Variables Used (x): DOMAINSPELLLIST
Variables Used (y): Text (Object name)
What it does:
Example:
FORWARDREF:CLASSSPELLLIST|Assassin,Black Guard
"Unconstructed Object" errors for the "'Assassin" and "Black Guard" spell lists will be suppressed during source loading.
*** New 5.9.1
Tag Name: HIDETYPE:x|y|y
Variables Used (x):EQUIP (Equipment Types will be hidden)
Variables Used (x):FEAT (Feat Types will be hidden)
Variables Used (x):SKILL (Skill Types will be hidden)
Variables Used (y):Text (Type to be hidden)
What it does:
This tag will prevent the listed Types from appearing within the user interface while allowing it to be used internally by PCGen. This is useful when types need to be added for internal purposes but it is not desirable to have the type show in the GUI. HIDETYPE will effect all sources loaded but only when the .pcc file it is in is loaded.
Example:
HIDETYPE:EQUIP|Starting|SpecialTools
The Types Starting and SpecialTools will not be visible in the user interface. The equipment type "Starting" is hardcoded into the feature which provides free clothing at first level.
Tag Name: OPTION:x
Variables Used (x):Text (Option)
What it does:
Specifies an option which should be set when the campaign is loaded. The format is the same as in the options.ini
file. The user can stop these options from being set by unselecting the PCGen -> Sources -> Allow options to be set by sources setting in the Preferences dialog. Note: Only the pcgen.options lines can be used. pcgen.files settings are not valid for this tag.
Examples:
OPTION:hpMaxAtFirstLevel=true
OPTION:pcgen.options.maxWandSpellLevel=4
Tag Name: REQSKILL:x
Variables Used (x):ALL or REQSKILL:ALL or UNTRAINED or REQSKILL:UNTRAINED or Text
What it does:
A "|" (pipe) delimited list can include:
UNTRAINED
- all untrained skills will be automatically included on any character as if the skill had the REQ tag (see skill.lst
for details);ALL
- all skills will have the REQ tag, or;If this tag is included it should be after the SKILL:
tag.
Example:
REQSKILL:Alchemy|Bluff|Diplomacy|etc