# The Global BONUS Tags

The BONUS tag tells PCGen that the following information is to be added to a character, in the appropriate places.

The general format for bonus tags are as follows:

> `BONUS:<category>|<group>|<formula>`

This can be followed by pipe-delimitated `PRExxx` or `TYPE=<type>` tags.

Each of the "Tag Names" in this page go in the <category> field, and the "Variables Used" go in the <group> field.

For the Formula syntax, see the Math Operators and Formulas page.

`LIST` is a special case in feats.lst. It can be placed in most <group> categories. LIST will be replaced by the choice from the CHOOSE tag in the feat.

## BONUS Types

Each bonus comes in four different types.

1. The Typeless bonus with no type
2. The Standard bonus with type (TYPE=name)
3. The .REPLACE bonus type (TYPE=name.REPLACE)
4. The .STACK bonus type (TYPE=name.STACK)

Bonus Type: Typeless

What it Does:

- These have no `TYPE=` statement, and are always added into the final result.
- Because it is typeless, it can not be tracked in the OS sheets in a breakdown by bonus type.

Examples:

`BONUS:HP|CURRENTMAX|3`

This bonus would grant the character an additional three hit points.

`BONUS:SKILL|Bluff,Listen|4`

This bonus would grant the character a bonus to the listed skills of four.

`BONUS:SKILL|STAT=DEX|1`

This would grant the character a bonus of one to all skills based on DEX.

Bonus Type: Standard

What it Does:

- These have a TYPE=name and are used for stacking purposes.
- There is a special system file called system\bonusstacks.lst.
- If a TYPE is listed in that file, then these TYPEs behave just like a typeless bonus.
- Otherwise, only the highest value of the same type is used in the final result.

Examples:

`BONUS:HP|CURRENTMAX|2|TYPE=Luck
BONUS:HP|CURRENTMAX|3|TYPE=Luck`

So long as the 'Luck' type is not listed in bonusstacks.lst, these two would result in a final value of 3, since 3 is the largest 'Luck' type.

`BONUS:SKILL|Bluff,Listen|3|TYPE=Luck
BONUS:SKILL|Bluff,Listen|4|TYPE=Divine`

These would return a 3 from Luck, and a 4 from Divine, for a total of 7. They are different Types.

`BONUS:SKILL|Bluff,Listen|2|TYPE=Luck
BONUS:SKILL|Bluff,Listen|3|TYPE=Luck
BONUS:SKILL|Bluff,Listen|4|TYPE=Divine`

This would also return a value of 7, since 3 is the highest Luck bonus, and 4 is the highest Divine bonus.

Bonus Type: .REPLACE

What it Does:

- This is subtype of the TYPE= standard type.
- .REPLACE items are counted together to determine the final value of a particular TYPE.

Examples:

`BONUS:SKILL|Bluff,Listen|3|TYPE=Luck.REPLACE
BONUS:SKILL|Bluff,Listen|2|TYPE=Luck.REPLACE
BONUS:SKILL|Bluff,Listen|4|TYPE=Luck
BONUS:SKILL|Bluff,Listen|2|TYPE=Luck`

This would take the 2 and 3 with the .REPLACE (total 5) and compares it to the standards, which are 2 and 4, and takes the highest value, for 5.

`BONUS:SKILL|Bluff,Listen|1|TYPE=Luck.REPLACE
BONUS:SKILL|Bluff,Listen|1|TYPE=Luck.REPLACE
BONUS:SKILL|Bluff,Listen|2|TYPE=Luck.REPLACE
BONUS:SKILL|Bluff,Listen|2|TYPE=Luck
BONUS:SKILL|Bluff,Listen|6|TYPE=Luck`

This would take the values from the .REPLACE (total 4), and compares it to the standards, which are 2 and 6, and takes the highest value, for 6.

Bonus Type: `.STACK`

What it Does:

- This is subtype of the `TYPE=<type>` standard type.
- `.STACK` items are counted in addition to the normal and `.REPLACE` to determine the final value of a particular type.
- `.STACK` stacks together with itself like `.REPLACE`, but is also added to normal types.

Examples:

`BONUS:SKILL|Bluff,Listen|4|TYPE=Luck`

`BONUS:SKILL|Bluff,Listen|2|TYPE=Luck.STACK`

This would take the 4 of type `Luck`, and then add 2 more from the `Stack`, on top of it.

`BONUS:SKILL|Bluff,Listen|4|TYPE=Luck.REPLACE`

`BONUS:SKILL|Bluff,Listen|4|TYPE=Luck.STACK`

This would take the 4 of type `Luck`, and then add 4 more from the `Stack`, on top of it.

`BONUS:SKILL|Bluff,Listen|4|TYPE=Luck`

`BONUS:SKILL|Bluff,Listen|3|TYPE=Luck.REPLACE`

`BONUS:SKILL|Bluff,Listen|3|TYPE=Luck.REPLACE`

`BONUS:SKILL|Bluff,Listen|1|TYPE=Luck.STACK`

This would take the 4 normal, compare to the `.REPLACE` (6) and give the higher value, then add in the `.STACK`, for a final value of 7.

`BONUS:SKILL|Bluff,Listen|4|TYPE=Luck`

`BONUS:SKILL|Bluff,Listen|1|TYPE=Luck.REPLACE`

`BONUS:SKILL|Bluff,Listen|1|TYPE=Luck.REPLACE`

`BONUS:SKILL|Bluff,Listen|3|TYPE=Luck.STACK`

`BONUS:SKILL|Bluff,Listen|3|TYPE=Luck.STACK`

This would take the normal (4), compare it to the total `.REPLACE` (2), give the higher value, then add in the `.STACK` (6) for a final value of 10.

## Special BONUS Types

There are a two types of special "types" defined in the miscinfo.lst file in the system/gamemode folders. These are the Bonus Stack Types and the AC Types.

> ### Bonus Stacks

> Within PCGen, tags which do not have a `TYPE=<type>` sub-tag appended are assumed to stack, tags which do have a type appended do not normally stack. Some games have exceptions to this rule and list specific types which always do stack. In the fantasy gameModes Dodge and Circumstance always stack. The BONUSESTACKS tag in the miscinfo.lst file lists those exceptions. The following are commonly used types that are defined within the miscinfo.lst file for this purpose.

> `Defense`

> `Dodge`

> `Circumstance`

> `NotRanged`

> `NotFlatFooted`

> ### Armor Class Types

> PCGen tracks bonuses to the armor class through the use of several AC types. The following are commonly used types that are defined with the ACTYPE tag in the GameMode's miscinfo.lst file.

> `Total`

> `Flatfooted`

> `Touch`

> `Base`

> `Equipment`

> `Armor`

> `Shield`

> `Ability`

> `Size`

> `NaturalArmor`

> `NaturalArmorEnhancement`

> `Misc`

> `ClassDefense`

> `Dodge`

## Miscellaneous BONUS Type Notes

Bonuses with negative numbers have been found to stack even when they have matching types.

While you can't `.CLEAR` a `BONUS` tag you can add a counter bonus that would negate it. In this case you would add a counter bonus and `PRExxx` tag it with the reverse of the feats prerequisite.

## BONUS Tag List

*** New 5.11.1

Tag Name: BONUS:ABILITYPOOL|x|y

Variables Used (x): Text (Ability Category)

Variables Used (y): Number (Amount added to pool)

What it Does:

Adds to the number of available Abilities the character can take.

Example:

`BONUS:ABILITYPOOL|Salient Divine Ability|1`

The character may take one additional Salient Divine Ability.

*** Updated 5.7.1

Tag Name: BONUS:CASTERLEVEL|x|y

Variables Used (x): Text (Class name)

Variables Used (x): DESCRIPTOR.Text (Spell descriptor name)

Variables Used (x): DOMAIN.Text (Domain name)

Variables Used (x): RACE.Text (Race name)

Variables Used (x): SCHOOL.Text (School name)

Variables Used (x): SPELL.Text (Spell name)

Variables Used (x): SUBSCHOOL.Text (Subschool name)

Variables Used (x): TYPE.Text (Class type)

Variables Used (y): Number, variable or formula (Number to add to caster level)

What it Does:

- Each spellcasting class should have a CASTERLEVEL bonus associated with it.
- If no CASTERLEVEL bonus is present for a spell casting class, it will default to class level.
- The CASTERLEVEL tag is only used in spell.lst lines for DESC, DURATION and TARGETAREA tags.
- This BONUS statement can be used to increase just these output items.
- This BONUS statement will NOT increase spells known or spell slots. You must use BONUS:PCLEVEL for that.
- This BONUS statement can be used to set the caster level of innate racial spells.

Examples:

`BONUS:CASTERLEVEL|Sorcerer|1`

Adds 1 to Sorcerer spell caster level.

`BONUS:CASTERLEVEL|TYPE.Arcane|1`

Adds 1 to Arcane spell caster level.

`BONUS:CASTERLEVEL|RACE.Gelfling|4`

Sets Gelfling innate racial spell caster level to 4.

`BONUS:CASTERLEVEL|SPELL.Levitate|2`

Adds 2 to caster level for the 'Levitate' spell.

`BONUS:CASTERLEVEL|SCHOOL.Transmutation|2`

Adds 2 to caster level for all spells of the 'Transmutation' school.

`BONUS:CASTERLEVEL|Paladin|CL/2|PRECLASSLEVEL:Paladin=4`

Sets the Paladins spell caster level to half his class level after he reaches level 4.

(Note that the syntax used in this last example is only valid in a class line)

`CLASS:Defender.MOD <tab> SPELLSTAT:INT <tab> BONUSSPELLSTAT:NONE <tab> SPELLTYPE:Arcane <tab> SPELLBOOK:NO <tab> BONUS:CASTERLEVEL|Defender|TL <tab> SPELLLIST:1|Channeler`

Modifying the class Defender changes all of these tags to determine bonus spells and maximum casting level.

Additional qualifier: .RESET

.RESET is an additional qualifier that can be used for all subtags except CLASS and RACE. What .RESET does is resets the caster level to the value specified instead of adding it to PC's caster level (which is what would usually be done). Note that if any .RESET qualifier is encountered then the caster level is reset even if other bonus tags do not have them. Also, multiple .RESET encountered do not overwrite each other.

The syntax is: `BONUS:CASTERLEVEL|subtag.text.RESET|number`

Examples using .RESET:

`CASTERLEVEL|TYPE.Divine.RESET|max(CASTERLEVEL.TOTAL,10)`

In this example all Divine spells would have a caster level of either 10 or the PC's default caster level, which ever is higher.

`BONUS:CASTERLEVEL|SPELL.Fireball.RESET|7`

`BONUS:CASTERLEVEL|SCHOOL.Evocation.RESET|3`

These two bonuses in combination would result in a caster level of 10 for Fireball (because it is also in the school of Evocation) and 3 for all other Evocation spells

Tag Name: BONUS:CHECKS|x,x|y

Variables Used (x): Text (Any check defined in the GameMode - e.g. Fortitude,Reflex,Willpower)

Variables Used (y): Number, variable or formula (Save Bonus)

What it Does:

- Adds to the indicated saving throw.
- Substitution is allowed through the use of `%LIST`.

Example:

`BONUS:CHECKS|Fortitude,Reflex|1`

Adds one to "Fortitude" and "Reflex" saves.

`CHOOSE:NUMCHOICES=1|Fortitude|Reflex|Will <tab> BONUS:CHECKS|%LIST|1`

The selection, "Fortitude", "Reflex" or "Will", is put into the `BONUS:CHECKS` tag in place of the `%LIST`

`BONUS:CHECKS|Willpower||max(CHA,WIS)-WIS`

How does one code up something like 'you can add your Charisma modifier instead of Wisdom for Willpower saves'?

`BONUS:CHECKS|Fortitude|2|TYPE=Resistance`

Adds two to Fortitude checks due to Resistance.

Tag Name: BONUS:CHECKS|BASE.x,BASE.x|y

Variables Used (x): Text (Check name)

Variables Used (y): Number, Variable or Formula (Save Bonus)

What it Does:

- Adds to indicated Base saving throw (normally only used in class progressions).
- Checks must have been defined in the currently loaded GameMode file.

Example:

`BONUS:CHECKS|BASE.Fortitude,BASE.Reflex|1`

Adds one to the base "Fortitude" and "Reflex" saves.

*** New 4.3.9

Tag Name: BONUS:CHECKS|ALL|x

Variables Used (x): Number, Variable or Formula (Save Bonus)

What it Does:

Adds to all saving throws.

Example:

`BONUS:CHECKS|ALL|1`

Adds one to the all saves.

`BONUS:CHECKS|ALL|3|TYPE=Morale|PREAPPLY:ANYPC`

Adds three to all saves, due to morale, to all PC Characters.

Tag Name: BONUS:COMBAT|x

Variables Used (x): Number, Variable or Formula (Combat Bonus)

What it Does:

Adds to indicated combat bonus.

Examples:

`BONUS:COMBAT|Armor|2|TYPE=NaturalArmor.STACK`

Increases Natural armor bonus by two.

Tag Name: BONUS:COMBAT|AC|x

Variables Used (x): Number, Variable or Formula (Armor Class Bonus)

What it Does:

Adds to indicated armor class bonus.

Examples:

`BONUS:COMBAT|AC|2|TYPE=Enhancement`

Increases enchantment armor bonus by two.

`BONUS:COMBAT|AC|1|TYPE=NaturalArmor`

Increases natural armor bonus by one.

`BONUS:COMBAT|AC|7|TYPE=NaturalArmor.REPLACE`

Replaces the natural armor bonus to seven.

Tag Name: BONUS:COMBAT|ATTACKS|x

Variables Used (x): Number, Variable or Formula (Bonus Primary Hand Attacks)

What it Does:

Adds to number of attacks the primary hand gets.

Example:

`BONUS:COMBAT|ATTACKS|2`

Increases number of attacks by two.

Tag Name: BONUS:COMBAT|BAB|x

Variables Used (x): Number, Variable or Formula (BAB Bonus)

What it Does:

- Adds to number of attacks the primary hand gets.
- Formula is used when determining the Base Attack Bonus for a class in the class line of an xxxclasses.lst file.

Example:

`BONUS:COMBAT|BAB|1`

Increases base attack bonus by one.

`BONUS:COMBAT|BAB|CL|TYPE=Base.REPLACE`

Increases base attack bonus by Character Level, replacing the Base value.

*** New 5.7.1

Tag Name: BONUS:COMBAT|DAMAGE.x|y

Variables Used (x): Text (Weapon or Weapon Damage Type)

Variables Used (y): Number, Variable or Formula (Damage Bonus)

What it Does:

- Adds to damage bonus.
- Weapon or Weapon Damage Type must be a valid equipment type assigned to a weapon in the current data set or must have been defined by the `WEAPONTYPE` tag in the current gamemode files.
- Some standard Weapon and Weapon Damage types can be found on the Global Type page.

Example:

`BONUS:COMBAT|DAMAGE.Piercing|2`

Increases "Piercing" damage bonus by two.

`BONUS:COMBAT|DAMAGE.Unarmed,DAMAGE.Thrown|DEX`

Adds the characters dexterity modifier to both "Unarmed" and "Thrown" damage.

*** New 5.5.6

Tag Name: BONUS:COMBAT|DAMAGEMULT:x|y

Variables Used (x): Number (0 for off-hand, 1 for primary and 2 for two handed)

Variables Used (y): Number, Variable or Formula (Damage Multiplier)

What it Does:

- Increases damage multiplier by the number specified.
- Bonuses are additive between each `BONUS`. Two `BONUS:WEAPON|DAMAGEMULT:0|1.5` tags will do a total of x3 (1.5 + 1.5), not 2.25.

Example:

`BONUS:COMBAT|DAMAGEMULT:0|0.5`

Increases the damage multiplier by half your strength bonus. Combined with the existing bonus this bonus will total your full strength bonus for an off hand weapon.

`BONUS:COMBAT|DAMAGEMULT:1|1`

Increases the damage multiplier of the weapon by your strength bonus when wielding in your primary hand.

`BONUS:COMBAT|DAMAGEMULT:2|1.5`

Increases the damage multiplier of the weapon by one and a half your strength bonus when wielding it two-handed.

*** New Entry

Tag Name: BONUS:COMBAT|DAMAGESIZE|x

Variables Used (x): Number, Variable or Formula (Number of steps along the damage dice scale)

What it Does:

- Increases or decreases damage dice size along the same scale as is used for weapons size.
- This effects all damage dice associated with the PC including Unarmed damage.
- The scale is defined in the miscinfo.lst gameMode file.
- The scale used in the RSRD/MSRD is as follows:
  - Base Damage Dice:1d2
    - Scaling Up:1d3,1d4,1d6,1d8,2d6,3d6,4d6,6d6,8d6,12d6
    - Scaling Down:1,0
  - Base Damage Dice:1d3
    - Scaling Up:1d4,1d6,1d8,2d6,3d6,4d6,6d6,8d6,12d6
    - Scaling Down:1d2,1,0
  - Base Damage Dice:1d4
    - Scaling Up:1d6,1d8,2d6,3d6,4d6,6d6,8d6,12d6
    - Scaling Down:1d3,1d2,1,0
  - Base Damage Dice:1d6
    - Scaling Up:1d8,2d6,3d6,4d6,6d6,8d6,12d6
    - Scaling Down:1d4,1d3,1d2,1
  - Base Damage Dice:1d8
    - Scaling Up:2d6,3d6,4d6,6d6,8d6,12d6
    - Scaling Down:1d6,1d4,1d3,1d2
  - Base Damage Dice:1d10
    - Scaling Up:2d8,3d8,4d8,6d8,8d8,12d8
    - Scaling Down:1d8,1d6,1d4,1d3
  - Base Damage Dice:1d12
    - Scaling Up:3d6,4d6,6d6,8d6,12d6
    - Scaling Down:1d10,1d8,1d6,1d4
  - Base Damage Dice:2d4
    - Scaling Up:2d6,3d6,4d6,6d6,8d6,12d6
    - Scaling Down:1d6,1d4,1d3,1d2
  - Base Damage Dice:2d6
    - Scaling Up:3d6,4d6,6d6,8d6,12d6
    - Scaling Down:1d10,1d8,1d6,1d4
  - Base Damage Dice:2d8
    - Scaling Up:3d8,4d8,6d8,8d8,12d8
    - Scaling Down:2d6,1d10,1d8,1d6
  - Base Damage Dice:2d10
    - Scaling Up:4d8,6d8,8d8,12d8
    - Scaling Down:2d8,2d6,1d10,1d8

Example:

`BONUS:COMBAT|DAMAGESIZE|2`

If the base damage dice is 1d8 this would scale it up to 3d6.

`BONUS:COMBAT|DAMAGESIZE|-1`

If the base damage dice is 1d4 this would scale it down to 1d3.

Tag Name: BONUS:COMBAT|INITIATIVE|x

Variables Used (x): Number, Variable or Formula (Initiative Bonus)

What it Does:

Adds to initiative.

Example:

`BONUS:COMBAT|INITIATIVE|3`

Increases initiative by three.

`BONUS:COMBAT|INITIATIVE|2|TYPE=Competence`

Increases initiative by two for Competence.

Tag Name: BONUS:COMBAT|REACH|x

Variables Used (x): Number, Variable or Formula (Reach)

What it Does:

Modifies the PC's reach.

Example:

`BONUS:COMBAT|REACH|10`

Increases reach by ten feet.

Tag Name: BONUS:COMBAT|SECONDARYATTACKS|x

Variables Used (x): Number, Variable or Formula (Number of Attacks)

What it Does:

Increases the number of Secondary attacks.

Example:

`BONUS:COMBAT|SECONDARYATTACKS|1`

Increases secondary attacks by one.

Tag Name: BONUS:COMBAT|SECONDARYDAMAGE|x

Variables Used (x): Number, Variable or Formula (Damage Bonus)

What it Does:

Adds to the damage dealt by a secondary attack.

Example:

`BONUS:COMBAT|SECONDARYDAMAGE|2`

Increases the secondary attack damage bonus by two.

*** Updated 5.11.4

Tag Name: BONUS:COMBAT|TOHIT|x

Variables Used (x): Number, Variable or Formula (Attack Bonus)

What it Does:

Adds to primary attack bonus.

Example:

`BONUS:COMBAT|TOHIT|2|TYPE=Luck`

Increases Attack bonus by two.

`2 <tab> BONUS:COMBAT|TOHIT|1|PREEQUIPPRIMARY:1,DivineWeapon`

Increases Attack bonus by one if a `TYPE=DivineWeapon` is in Primary Hand.

`5 <tab> BONUS:COMBAT|TOHIT|2|PREEQUIPPRIMARY:1,DivineWeapon`

Increases Attack bonus by two if a `TYPE=DivineWeapon` is in Primary Hand.

`CHOOSE:WEAPONPROFS|3 <tab> BONUS:COMBAT|TOHIT.%LIST|1|TYPE=Talent`

Increases Attack bonus by one for three WEAPONPROFS based on Talent.

*** Updated 5.11.4

Tag Name: BONUS:COMBAT|TOHIT.x|y

Variables Used (x): Text (Weapon Type)

Variables Used (x): GRAPPLE

Variables Used (x): MELEE

Variables Used (x): RANGED

Variables Used (y): Number, Variable or Formula (Attack Bonus)

What it Does:

- Adds to Attack bonus of specific types.
- Weapon or Weapon Damage Type must be a valid equipment type assigned to a weapon in the current data set or must have been defined by the `WEAPONTYPE` tag in the current gamemode files.
- Some standard Weapon and Weapon Damage types can be found on the Global Type page.

Example:

`BONUS:COMBAT|TOHIT.THROWN|2|TYPE=Racial`

Increases Attack for thrown weapons bonus by two.

`BONUS:COMBAT|TOHIT.SLASHING|2|TYPE=Enhancement`

Increases Attack bonus by two when using a Slashing weapon.

`2 <tab> BONUS:COMBAT|TOHIT|1|TYPE=Divine|PREEQUIPPRIMARY:1,DivineWeapon`

Increases Attack bonus by one if a `TYPE=DivineWeapon` is in Primary Hand.

`5 <tab> BONUS:COMBAT|TOHIT|2|TYPE=Divine|PREEQUIPPRIMARY:1,DivineWeapon`

Increases Attack bonus by two (total three) if a `TYPE=DivineWeapon` is in Primary Hand.

`BONUS:COMBAT|TOHIT.GRAPPLE|2|TYPE=Circumstance|PREAPPLY:ANYPC`

Increases Attack bonus by two when grappling depending on the circumstance to any PC Character.

`BONUS:COMBAT|TOHIT.Finesseable|((max(STR,DEX)-STR)+SHIELDACCHECK)|TYPE=NotRanged`

Increases Attack bonus by calculated amount when using a Finesseable weapon, within your personal space, close shave anyone.

*** Updated 5.11.4

Tag Name: BONUS:COMBAT|TOHIT-PRIMARY|x

Variables Used (x): Number, Variable or Formula (Attack Bonus)

What it Does:

Adds to Primary Attack bonus.

Example:

`BONUS:COMBAT|TOHIT-PRIMARY|2`

Increases Primary Attack bonus to two.

`2 <tab> BONUS:COMBAT|TOHIT-PRIMARY|1|PREEQUIPPRIMARY:1,DivineWeapon`

Increases Attack bonus by one if a `TYPE=DivineWeapon` is in Primary Hand.

`5 <tab> BONUS:COMBAT|TOHIT-PRIMARY|WIS|TYPE=Ranged`

Increases Attack bonus by the Wisdom Modifier for ranged attacks.

*** Updated 5.11.4

Tag Name: BONUS:COMBAT|TOHIT-SECONDARY|x

Variables Used (x): Number, Variable or Formula (Attack Bonus)

What it Does:

Adds to Secondary Attack bonus.

Example:

`BONUS:COMBAT|TOHIT-SECONDARY|1`

Increases Secondary Attack bonus to one.

`2 <tab> BONUS:COMBAT|TOHIT-SECONDARY|1|TYPE=Divine|PREEQUIPSECONDARY:1,DivineWeapon`

Increases Attack bonus by one if a `TYPE=DivineWeapon` is in Secondary Hand.

`5 <tab> BONUS:COMBAT|TOHIT-SECONDARY|2|TYPE=Divine|PREEQUIPSECONDARY:1,DivineWeapon`

Increases Attack bonus by two if a `TYPE=DivineWeapon` is in Secondary Hand.

*** Updated 5.11.4

Tag Name: BONUS:COMBAT|TOHIT-SHORTRANGE|x

Variables Used (x): Number, Variable or Formula (Attack Bonus)

What it Does:

Adds to ranged attack rolls that are less than game mode defined SHORTRANGE but does not effect attacks per round (The distance of SHORTRANGE is defined in the GameMode files).

Example:

`BONUS:COMBAT|TOHIT-SHORTRANGE|1`

Adds one to character's short range To-Hit attack rolls.

`5 <tab> BONUS:COMBAT|TOHIT-SHORTRANGE|2|PREEQUIPPRIMARY:1,DivineWeapon`

Increases Attack bonus by two if a `TYPE=DivineWeapon` is in Primary Hand.

`5 <tab> BONUS:COMBAT|TOHIT-SHORTRANGE|2|TYPE=Divine|PREEQUIPSECONDARY:1,DivineWeapon`

Increases Attack bonus by two if a `TYPE=DivineWeapon` is in Secondary Hand.

*** deprecated 4.3.8 - Remove 6.0 - Use BONUS:COMBAT|DAMAGE.x|y

Tag Name: BONUS:DAMAGE|x

*** deprecated 5.5.8 - Remove 6.0 - Use BONUS:COMBAT|DAMAGE.x|y

Tag Name: BONUS:DAMAGE|TYPE.x|y

*** Updated 5.5.5

Tag Name: BONUS:DC|SPELL.x|y

Variables Used (x): Text (Spell name)

Variables Used (y): Number, variable or formula (DC increase)

What it Does:

Adds to the DC (Difficulty Class) of a specific spell.

Example:

`BONUS:DC|SPELL.Fireball|7`

Adds 7 to the DC of the spell Fireball.

`CHOOSE:SCHOOLS|1 <tab> BONUS:DC|SCHOOL.%LIST|1`

Choose 1 School and add 1 to its DC.

*** Updated 5.3.3 - Replaces the deprecated ALL tag

Tag Name: BONUS:DC|ALLSPELLS|x

Variables Used (x): Number, variable or formula (DC increase)

What it Does:

Adds to the DC (Difficulty Class) of all spells.

Example:

`BONUS:DC|ALLSPELLS|1`

Adds 1 to the DC of all spells.

Tag Name: BONUS:DC|CLASS.x|y

Variables Used (x): Text (Name of class)

Variables Used (y): Number, variable or formula (DC increase)

What it Does:

Adds to the DC (Difficulty Class) of spells of the specified caster class.

Example:

`BONUS:DC|CLASS.Sorcerer|2`

Adds 2 to the DC of sorcerer spells.

Tag Name: BONUS:DC|DESCRIPTOR.x|y

Variables Used (x): Text (Name of descriptor)

Variables Used (y): Number, variable or formula (DC increase)

What it Does:

Adds to the DC (Difficulty Class) of spells with the specified descriptor.

Examples:

`BONUS:DC|DESCRIPTOR.Law|4`

Adds 4 to the DC of any spells with the Law descriptor.

`BONUS:DC|DESCRIPTOR.Law,DOMAIN.Law|3`

Adds 3 to the DC of any spells with the Law domain or descriptor and would add 6 to a spell with both the Law Domain and Law Descriptor.

Tag Name: BONUS:DC|DOMAIN.x|y

Variables Used (x): Text (Name of domain)

Variables Used (y): Number, variable or formula (DC increase)

What it Does:

Adds to the DC (Difficulty Class) of spells with the specified domain.

Example:

`BONUS:DC|DOMAIN.War|6`

Adds 6 to the DC of War Domain spells.

`MULT:YES <tab> CHOOSE:Afterlife|Air|Ancestor|Animal|Artificer|Binding|Cavern|Charm|Cold|Commerce|Daemonology|Death|Destruction|Disease|Divination|Earth|Fate|Fire|Glory|Healing|Holy|Honor|Knowledge|Luck|Magic|Murder|Music|Nature|Oath|Pain|Plant|Pleasure|Protection|Refuge|Saurian|Sea|Secrets|Senses|Storm|Strength|Subterfuge|Suffering|Sun|Trickery|Undead|War|Water <tab> BONUS:DC|DOMAIN.%LIST|1`

A chooser to add 1 to the DC of Domain spells, may be used multiple times.

*** Updated 5.9.3

Tag Name: BONUS:DC|FEATBONUS|x

Variables Used (x): Number, variable or formula (DC increase)

What it Does:

Adds to the DC (Difficulty Class) of spells by increasing the spell's actual level.

Examples:

`BONUS:DC|FEATBONUS|1`

Adds 1 to the DC of spells that this bonus applies to by raising the spell's level by 1. The Heighten Spell metamagic feat is an example of where this is used.

Tag Name: BONUS:DC|SCHOOL.x|y

Variables Used (x): Text (Name of school)

Variables Used (y): Number, variable or formula (DC increase)

What it Does:

Adds to the DC (Difficulty Class) of spells of the specified spell school.

TYPE.xxx for reference, TYPE=xxx for assignment.

Example:

`BONUS:DC|SCHOOL.Enchantment|2`

Adds 2 to Enchantment school spells.

`MULT:YES <tab> CHOOSE:FEAT=Psionic Focus|1 <tab> BONUS:DC|SCHOOL.%LIST|2|TYPE=Psychic`

Adds 2 to Psychic school focus.

`BONUS:DC|SCHOOL.Telepathy|SPELLSTAT-CHA|TYPE=Subdiscipline`

Subtracts the Chrisma Modifier to Telepathy School Subdiscipline.

Tag Name: BONUS:DC|SUBSCHOOL.x|y

Variables Used (x): Text (Name of subschool)

Variables Used (y): Number, variable or formula (DC increase)

What it Does:

Adds to the DC (Difficulty Class) of spells of the specified spell subschool.

Example:

`BONUS:DC|SUBSCHOOL.something|5`

Adds 5 to the any spell with a subschool of "something".

Tag Name: BONUS:DC|TYPE.x|y

Variables Used (x): Text (Spell type)

Variables Used (y): Number, variable or formula (DC increase)

What it Does:

Adds to the DC (Difficulty Class) of spells of the specified spell type.

Example:

`BONUS:DC|TYPE.Arcane|3`

Adds 3 to arcane spell DCs.

Tag Name: BONUS:DR|x|y

Variables Used (x): Text (Damage reduction type)

Variables Used (y): Number, variable or formula (Damage reduction amount)

What it Does:

Adds a bonus to a Damage Reduction type, previously defined by a standard DR tag (the BONUS tag needs to be coordinated with a DR:#/<string>).

Example:

`BONUS:DR|+1|10`

If the +1 DR type, was currently at 5/+1 this tag would add 10 making it 15/+1.

Tag Name: BONUS:DOMAIN|NUMBER|x

Variables Used (x): Number, variable or formula (Number of additional Domains)

What it Does:

Add additional domain selections to the character. If this is in a CLASS with SPELLSTAT: and SPELLTYPE tags, it will also grant 1 spell per level from 1-9 that the class chose from the domains.

Examples:

`BONUS:DOMAIN|NUMBER|1`

Character gains access to one additional Domain.

`BONUS:DOMAIN|NUMBER|3`

Character gains access to three additional Domains.

*** New 5.7.6

Tag Name: BONUS:FEAT|POOL|x

Variables Used (x): Number, variable or formula (Number to add or subtract from the feat pool)

What it Does:

Modifies the characters feat pool total. Can be qualified by PRExxx tags and TYPE tags like other BONUS tags.

Example:

`BONUS:FEAT|POOL|1`

Increases the feat pool by one.

`BONUS:FEAT|POOL|1|TYPE=Enhancement`

Increases the feat pool by one and will not stack with other BONUS:FEAT|POOL tags with TYPE=Enhancement.

`BONUS:FEAT|POOL|-1|PREFEAT:1,Alertness`

Decreases the feat pool by one if the character has the feat Alertness.

*** New 5.10.1+

Tag Name:BONUS:FOLLOWERS|x|y

Variables Used (x): Text (The type of companion list to add to).

Variables Used (y): Number, variable or formula (Number of additional followers of this type of companion the master can have)

What it Does:

- Adjusts the number of this type of companion the master can have.
- If the character has no FOLLOWERS tag of the same type this tag has no effect.

Where it is used:

Global BONUS

Example:

`BONUS:FOLLOWERS|Familiar|1`

A character is allowed 1 additional Familiar.

Tag Name: BONUS:HD|x|y

Variables Used (x): Property (MIN or MAX)

Variables Used (y): Number, variable or formula (Number to increase the Hit Dice by)

What it Does:

Increases characters Hit Dice size. Valid only in Class lines.

Example:

`BONUS:HD|MAX|2`

Increases maximum of the HD by two points (1d4 goes to 1d6).

`BONUS:HD|MIN|1`

Increases the minimum of the HD by 1 point (1d4 goes to 1d3+1 for example 2 - 4 are the possibilities).

Tag Name: BONUS:HP|ALTHP|x

Variables Used (x): Number, variable or formula (Number to add to secondary hit points, as defined in miscinfo.lst)

What it Does:

Adds to secondary Hit Points.

TYPE.xxx for reference, TYPE=xxx for assignment.

Example:

`BONUS:HP|ALTHP|3`

Adds three to total the secondary hit points.

`BONUS:HP|ALTHP|5|TYPE=Species`

Adds five to total the secondary hit points for species reasons.

Tag Name: BONUS:HP|CURRENTMAX|x

Variables Used (x): Number, variable or formula (Number to add to hit points)

What it Does:

Adds to total Hit Points.

TYPE.xxx for reference, TYPE=xxx for assignment.

Example:

BONUS:HP|CURRENTMAX|2

Character gains two additional hit points.

STACK:NO <tab> MULT:YES <tab> CHOOSE:NUMCHOICES=1|STAT|CON <tab> BONUS:HP|CURRENTMAX|%LIST-CON

Character gains between 1 and CON Bonus additional hit points, can be used multiple time, does not stack.

BONUS:HP|CURRENTMAX|AidSoulHitPoints*%CHOICE|TYPE=Temporary|PREAPPLY:PC

Character gains additional hit points temporary based on the calculation.

Tag Name: BONUS:ITEMCOST|TYPE.x.x|y

Variables Used (x): Text (Item Type)

Variables Used (y): Number, variable or formula (Cost formula)

What it Does:

Used in Equipment and Equipment Modifiers, applies the cost formula to the equipment if it has all the listed types. Any formula that is valid in an EQMOD COST tag can be used. Like most BONUS tags ITEMCOST can be qualified with PRExxx tags.

Example:

`BONUS:ITEMCOST|TYPE.Weapon|200`

Adds 200 to the cost if the item has the Weapon type.

`BONUS:ITEMCOST|TYPE.Armor.Light|BASECOST*2`

Doubles the cost if the item has the Armor and Light types.

Tag Name: BONUS:LANGUAGES|NUMBER|x

Variables Used (x): Number, variable or formula

What it Does:

Used to increase or decrease the number of available language slots available. Like most BONUS tags ITEMCOST can be qualified with PRExxx tags.

Example:

`BONUS:LANGUAGE|NUMBER|1`

Adds 1 to the available language pool.

`BONUS:LANGUAGE|NUMBER|-1`

Reduces the available language pool by 1.

Tag Name: BONUS:MISC|ACCHECK|x

Variables Used (x): Number, variable or formula (Number to add to armor check)

What it Does:

Modifies the characters armor check.

Example:

`BONUS:MISC|ACCHECK|1`

Adds one to total Armor Check.

*** New 5.13.6

Tag Name: BONUS:MISC|CR|x

Variables Used (x): Number, variable or formula (Number to add to challange rating)

What it Does:

Modifies the characters challange rating.

Example:

`BONUS:MISC|CR|2`

Adds 2 to the challange rating.

Tag Name: BONUS:MISC|MAXDEX|x

Variables Used (x): Number, variable or formula (Number to add to the maximum dexterity)

What it Does:

Modifies the characters maximum dexterity armor penalty.

Example:

`BONUS:MISC|MAXDEX|1`

Adds one to total Maximum Dex allowed while wearing armor.

Tag Name: BONUS:MISC|SPELLFAILURE|x

Variables Used (x): Number, variable or formula (Number to add to the spell failure percentage)

What it Does:

Modifies the characters spell failure armor penalty.

TYPE.xxx for reference, TYPE=xxx for assignment.

Example:

`BONUS:MISC|SPELLFAILURE|5`

Adds 5% to Spell Failure chance.

`BONUS:MISC|SPELLFAILURE|20|PREEQUIP:2,TYPE=Armor,TYPE=Light`

Adds 20% to Spell Failure chance if equipped with light armor.

Tag Name: BONUS:MISC|SR|x

Variables Used (x): Number, variable or formula (Number to add to spell resistance)

What it Does:

Modifies the characters spell resistance.

TYPE.xxx for reference, TYPE=xxx for assignment.

Example:

`BONUS:MISC|SR|10`

Adds 10 to the spell resistance.

`BONUS:MISC|SR|10+CL|TYPE=EbonLink`

Adds 10 plus the Character Level to the spell resistance due to EbonLink.

*** Deprecated 4.3.8 - Remove 6.0 - Use BONUS:MOVEADD or BONUS:POSTMOVEADD

Tag Name: BONUS:MOVE|x|y

*** New 4.3.8

Tag Name: BONUS:MOVEADD|TYPE.x|y

Variables Used (x): Text (Movement type)

Variables Used (y): Number, variable or formula (Number to add to movement rate)

What it Does:

- Adds to movement to the listed TYPE.
- Done before MOVEMULT and POSTMOVEADD calculations.
- It only works on MOVE types that have been defined in a MOVE or MOVECLONE tag.
- PRExxx tags can also be used with this tag.
- TYPE.xxx for reference, TYPE=xxx for assignment.

Examples:

`BONUS:MOVEADD|TYPE.Walk|10`

Adds 10 to Walk.

`BONUS:MOVEADD|TYPE.Walk|5|PREVARLT:ENCUMBERANCE,1`

Adds 5 to Walk so long as the character is not at medium load.

`BONUS:MOVEADD|TYPE.Walk|10|TYPE=Enhancement|PREAPPLY:ANYPC`

Adds 5 to the characters Walk as an enhancement of some sort.

*** New 4.3.8

Tag Name: BONUS:MOVEMULT|TYPE.x|y

Variables Used (x): Text (Movement type)

Variables Used (y): Number, variable or formula (Number to multiply the movement rate)

What it Does:

- Multiplies the movement of the listed TYPEs.
- Done before MOVEMULT and POSTMOVEADD calculations.
- It only works on MOVE types that have been defined in a MOVE or MOVECLONE tag.
- PRExxx tags can also be used with this tag.
- TYPE.xxx for reference, TYPE=xxx for assignment.

Example:

`BONUS:MOVEMULT|TYPE.Walk,TYPE.Fly|2`

Multiplies the Walk & Fly movement rates by two.

`BONUS:MOVEMULT|TYPE=Walk,TYPE=Fly,TYPE=Climb,TYPE=Hover,TYPE=Swim|2`

Multiplies the Walk, Fly, Climb, Hover, Swim movement rates by two.

Tag Name: BONUS:PCLEVEL|x|y

Variables Used (x): Text (Class name)

Variables Used (x): TYPE.Text (Class type)

Variables Used (y): Number, variable or formula (Number to add class level)

What it Does:

- Sets the spellcasting level higher than the current class level.
- The character must already have a level in the class to gain the bonus spellcasting level.

Examples:

`BONUS:PCLEVEL|Sorcerer|1`

Adds 1 to Sorcerer spell caster level.

`BONUS:PCLEVEL|TYPE.Arcane|1`

Adds 1 to Arcane spell caster level.

Tag Name: BONUS:PCLEVEL|Type=x|y

Variables Used (x): Text (Spell type)

Variables Used (y): Number, variable or formula (Number to add class level)

What it Does:

- Sets the spellcasting level higher than the current class level.
- The character must already have a level in the class to gain the bonus spellcasting level.

Example:

`BONUS:PCLEVEL|TYPE=Arcane|1`

Adds 1 level to all arcane spellcaster levels that the character already has levels in.

*** New 4.3.8

Tag Name: BONUS:POSTMOVEADD|TYPE.x|y

Variables Used (x): TYPE.Text (Movement type)

Variables Used (y): Number, variable or formula (Number to add to movement rate)

What it Does:

- Adds to movement to the listed TYPE.
- Done after MOVEMULT and MOVEADD calculations.
- It only works on MOVE types that have been defined in a MOVE or MOVECLONE tag.
- PRExxx tags can also be used with this tag.
- TYPE.xxx for reference, TYPE=xxx for assignment.

Example:

`BONUS:POSTMOVEADD|TYPE.Walk|10`

Adds 10 to Walk.

`BONUS:POSTMOVEADD|TYPE.Walk,TYPE.Burrow,TYPE.Climb,TYPE.Fly,TYPE.Swim|30|TYPE=Enhancement|PREAPPLY:PC`

Adds 30 to Walk, Burrow, Climb, Fly and Swim to any PC Character that has this enhancement.

Tag Name: BONUS:POSTRANGEADD|x|y

Variables Used (x): Text (PROJECTILE or THROWN)

Variables Used (y): Number, variable or formula (Number to add to range)

What it Does:

- Increases range by integer.
- PROJECTILE and THROWN are hardcoded types (will be changed later).
- See also RANGEMULT and POSTRANGEADD.
- POSTRANGEADD is applied after all RANGEADD and RANGEMULT tags.

Examples:

`BONUS:POSTRANGEADD|PROJECTILE|5`

Would increase the range of projectile weapons by 5.

`BONUS:POSTRANGEADD|THROWN|10`

Would increase the range of thrown weapons by 10.

Tag Name: BONUS:RANGEADD|x|y

Variables Used (x): Text (PROJECTILE or THROWN)

Variables Used (y): Number, variable or formula (Number to add to range)

What it Does:

- Increases range by integer.
- PROJECTILE and THROWN are hardcoded types (will be changed later).
- See also RANGEMULT and POSTRANGEADD.
- RANGEADD will be applied before any RANGEMULT and POSTRANGEADD tags.

Examples:

`BONUS:RANGEADD|PROJECTILE|5`

Would increase the range of projectile weapons by 5.

`BONUS:RANGEADD|THROWN|10`

Would increase the range of thrown weapons by 10.

Tag Name: BONUS:RANGEMULT|x|y

Variables Used (x): Text (PROJECTILE or THROWN)

Variables Used (y): Number, variable or formula (Number to add to range)

What it Does:

- Increases range by percent.
- PROJECTILE and THROWN are hardcoded types (will be changed later).
- See also RANGEADD and POSTRANGEADD.
- RANGEMULT will be applied after all RANGEADD tags, but before all POSTRANGEADD tags.

Examples:

`BONUS:RANGEMULT|PROJECTILE|50`

Would increase the range of projectile weapons by 50% (x1.5).

`BONUS:RANGEMULT|PROJECTILE|-50`

Would decrease the range of projectile weapons by 50% (x.5).

`BONUS:RANGEMULT|THROWN|100`

Would increase the range of thrown weapons by 100% (x2).

`BONUS:RANGEMULT|TYPE=Starship|50`

Would increase the range of starship weapons by 50% (x1.5).

Tag Name: BONUS:SIZEMOD|NUMBER|x

Variables Used (x): Number, variable or formula (Number of size categories to adjust)

What it Does:

- Moves the character's size up or down the size range by the indicated number of steps.
- All stat modifications caused by a size change will take effect.
- Size Categories in order are: Fine, Diminutive, Tiny, Small, Medium, Large, Huge, Gargantuan, Colossal.

Examples:

`BONUS:SIZEMOD|NUMBER|1`

Adds one to size. A "Medium" character would become "Large".

`BONUS:SIZEMOD|NUMBER|-2`

Reduces size by two. A "Medium" character would become "Tiny".

`BONUS:SIZEMOD|NUMBER|1|PRESIZEGT:T`

If size is greater than Tiny (T) add 1 to SIZEMOD.

`BONUS:SIZEMOD|NUMBER|1|PREAPPLY:PC`

Add 1 to SIZEMOD of any PC.

`BONUS:SIZEMOD|NUMBER|-1|PRERACE:Wolf,Dire Animal (Dire Rat)|PREVARGT:TL,3|PREVARLT:TL,7`

If Total Levels (TL) are more than 3 and less than 7, and you are a Dire Wolf, reduce the SIZEMOD by 1.

`BONUS:SIZEMOD|NUMBER|-1|PRERACE:Wolf,Dire Animal (Dire Rat)|PREVARGT:TL,3|PREVARLT:TL,7.CLEAR`

Removes the if Total Levels (TL) are more than 3 and less than 7, and you are a Dire Wolf, reduce the SIZEMOD by 1.

`BONUS:SIZEMOD|NUMBER|1|PRESIZEGT:T.MOD <tab> BONUS:SIZEMOD|NUMBER|2|PRESIZEGT:T`

Changes the if size is greater than Tiny (T) add 1 to SIZEMOD to add 2 to the SIZEMOD.

*** Updated 5.7.14

Tag Name: BONUS:SKILL|x,x|y

Variables Used (x): Text (Skill name)

Variables Used (x): TYPE=Text (Skill type)

Variables Used (y): Number, variable or formula (Number to add to skill level)

What it Does:

Adds to listed skills.

There is no leading space between the comma groups.

Don't forget the space in subsets (i.e. between Craft and (Metalworking),Craft (Metalworking))

TYPE.xxx for reference, TYPE=xxx for assignment.

Example:

`BONUS:SKILL|Bluff,Listen|10`

Adds 10 to "Bluff" & "Listen".

`BONUS:SKILL|TYPE=Charisma|2`

Adds 2 to Charisma type skills.

`BONUS:SKILL|Spot|5|!PRESKILL:1,Spot=1`

Adds 5 to Spot skill if you don't already have it. Otherwise adds one to get you started.

`BONUS:SKILL|Hide|min(floor((%CHOICE+3)/4)*10,30)|TYPE=Competence|PREAPPLY:ANYPC <tab> CHOOSE:NUMBER|MIN=1|MAX=20|TITLE=Choose spell caster level`

A chooser that figures your hide % (I think) 1 to 20 points in Casterlevel, you figure out the math.

`BONUS:SKILL|Hide|1|TYPE=Talent.STACK`

Adds 1 to Hide skill due to Talent and does Stack with all other Talent type.

`Balance.MOD <tab> BONUS:SKILL|Balance|max(0,floor((var("SKILLRANK=Tumble")-5)/20))*SynergyBonus|TYPE=Synergy.STACK`

Modifies the Balance skill to include the Synergy Bonus.

*** New 4.3.9

Tag Name: BONUS:SKILL|ALL|x

Variables Used (x): Number, variable or formula (Number to add to skill level)

What it Does:

Grants bonus to all skills.

Example:

`BONUS:SKILL|ALL|1`

Adds one to all skills.

Tag Name: BONUS:SKILL|LIST|x

Variables Used (x): Number, variable or formula (Number to add to skill level)

What it Does:

LIST is replaced by the selection from the CHOOSE statement (Used in Feat.lst).

TYPE.xxx for reference, TYPE=xxx for assignment.

Example:

`BONUS:SKILL|LIST|2`

Adds two to selected "Strength" skill.

`CHOOSE:SKILLSNAMEDTOCSKILL|2 <tab> BONUS:SKILL|LIST|6|TYPE=Legendary`

Adds six to the two selected Class Skills skill learned during Legendary Class.

Tag Name: BONUS:SKILL|STAT.x|y

Variables Used (x): Text (Stat name)

Variables Used (y): Number, variable or formula (Number to add to skill level)

What it Does:

Adds to skills based on a stat.

Example:

`BONUS:SKILL|STAT.STR|1`

Adds one to all "Strength" based skills.

*** Updated 5.7.14

Tag Name: BONUS:SKILLRANK|x|y

Variables Used (x): Text (Skill Name)

Variables Used (x): TYPE=Text (Skill type)

Variables Used (y): Number, variable or formula (Number to add to skill level)

What it Does:

Adds to skill ranks (Maximum ranks still apply).

TYPE.xxx for reference, TYPE=xxx for assignment.

Example:

`BONUS:SKILLRANK|Bluff,Listen|2`

Adds two to "Bluff" & "Listen" skills.

`BONUS:SKILLRANK|TYPE=Strength|2`

Adds two to Strength type skills.

`BONUS:SKILLRANK|Speak Language,Decipher Script,Innuendo|2|TYPE=Insight`

Adds two to three skills for insight purposes.

Tag Name: BONUS:SKILLPOINTS|NUMBER|x

Variables Used (x): Number, variable or formula (Number to add to skill level)

What it Does:

- Adds to the number of skill ranks gained when the character gains a level.
- Not retroactive.
- PRExxx tags may be used with this tag.
- -- Do NOT mix PRELEVELMAX and BONUS:SKILLPOINTS|NUMBER, since it results in double negative and some very bad exceptions in the code.

Examples:

`BONUS:SKILLPOINTS|NUMBER|1`

Adds one skill point per level.

`BONUS:SKILLPOINTS|NUMBER|4|PRELEVELMAX:1`

Adds 4 additional skillpoints to the character at first level only, above and beyond any other skillpoints gained for race or class, etc.

`BONUS:SKILLPOINTS|NUMBER|6|PRELEVELMAX:3`

Adds 6 additional skillpoints to the character at first to third levels only, above and beyond any other skillpoints gained for race or class, etc.

*** New 5.3.9

Tag Name: BONUS:SKILLPOOL|CLASS=x;LEVEL=y|z

Variables Used (x): Text (Class the points are to be awarded to)

Variables Used (y): Number (Class Level the points are to be awarded to)

Variables Used (z): Number (Number of points to be added to skill the pool)

What it Does:

- Adds to the number of points in the skill pool of the class at the level specified.
- PRExxx tags may be used with this tag.

Examples:

`BONUS:SKILLPOOL|CLASS=Fighter;LEVEL=2|2`

Adds 2 additional skillpoints to the characters skill pool at the second level of the characters Fighter Class.

`BONUS:SKILLPOOL|CLASS=Wizard;LEVEL=5|4|PRESTAT:1,INT=18`

Adds 4 additional skillpoints to the characters skill pool at the fifth level of the characters Wizard Class if he has an intelligence of 18 or better.

*** Updated 5.7.3

Tag Name: BONUS:SLOTS|x|y

Variables Used (x): Text (Slot type)

Variables Used (x): LIST (When used in conjunction with CHOOSE)

Variables Used (y): Number, variable or formula (Number of item slots)

What it Does:

- Adds to the number of items usable in the defined slot.
- These slots are defined in the equipmentslots.lst file for each gameMode.
- Slot Types defined in most gameModes are:
  - AMULET
  - ARMOR
  - BELT
  - BOOT
  - BRACER
  - CAPE
  - CLOTHING
  - EYEGEAR
  - GLOVE
  - HEADGEAR
  - LEGWEAR
  - PSIONICTATTOO (in the 3.0 and 3.5 gameModes)
  - RING
  - ROBE
  - SHIELD
  - SHIRT
  - TATTOO (in the Modern gameMode)
  - TRANSPORTATION (in the Modern gameMode)
  - VEHICLE (in the Spycraft gameMode)
  - WEAPON

Example:

`BONUS:SLOTS|RING|1`

Adds one ring slot to character.

`BONUS:SLOTS|LIST|1 <tab> CHOOSE:Armor|Shield|Bracer`

Adds one slot chosen from Armor, Shield or Bracer to the character.

Tag Name: BONUS:SPELLCAST|CLASS=x;LEVEL=y|z

Variables Used (x): Text (Class name)

Variables Used (y): Number (Spell level)

Variables Used (z): Number (Number of spells)

What it Does:

Adds additional spell slots.

Example:

`BONUS:SPELLCAST|CLASS=Wizard;LEVEL=1|1`

You can cast 1 more 1st lvl `Wizard` spell.

Tag Name: BONUS:SPELLCAST|TYPE=x;LEVEL=y|z

Variables Used (x): Text (Spell type)

Variables Used (y): Number (Spell level)

Variables Used (z): Number (Number of spells)

What it Does:

Adds additional spell slots.

Example:

`BONUS:SPELLCAST|TYPE=Arcane;LEVEL=1|1`

You can cast 1 more 1st lvl spell of Arcane type.

Tag Name: BONUS:SPELLCASTMULT|CLASS=x;LEVEL=y|z

Variables Used (x): Text (Class name)

Variables Used (y): Number (Spell level)

Variables Used (z): Number (Number of spells)

What it Does:

Adds additional spell slots.

Example:

`BONUS:SPELLCASTMULT|CLASS=Wizard;LEVEL=1|2`

You can cast 2 times as many 1st lvl `Wizard` spells as normal.

Tag Name: BONUS:SPELLCASTMULT|TYPE=x;LEVEL=y|z

Variables Used (x): Text (Spell type)

Variables Used (y): Number (Spell level)

Variables Used (z): Number (Number of spells)

What it Does:

Adds additional spell slots.

Example:

`BONUS:SPELLCASTMULT|TYPE=Arcane;LEVEL=1|2`

You can cast 2 times as many 1st lvl spell of Arcane type as normal.

Tag Name: BONUS:SPELLKNOWN|CLASS=x;LEVEL=y|z

Variables Used (x): Text (Class name)

Variables Used (y): Number (Spell level)

Variables Used (z): Number (Number of spells)

What it Does:

Adds additional known spells.

Example:

`BONUS:SPELLKNOWN|CLASS=Bard;LEVEL=1|1`

You know 1 more 1st lvl Bard spell.

Tag Name: BONUS:SPELLKNOWN|TYPE=x;LEVEL=y|z

Variables Used (x): Text (Spell type)

Variables Used (y): Number (Spell level)

Variables Used (z): Number (Number of spells)

What it Does:

Adds additional known spells.

Example:

`BONUS:SPELLKNOWN|TYPE=Arcane;LEVEL=1|1`

You know 1 more 1st lvl spell of Arcane type.

*** New 5.5.2

Tag Name: BONUS:SPELLKNOWNMULT|CLASS=x;LEVEL=y|z

Variables Used (x): Text (Class name)

Variables Used (y): Number (Spell level)

Variables Used (z): Number (Number of spells)

What it Does:

Adds additional known spells.

Example:

`BONUS:SPELLKNOWN|CLASS=Bard;LEVEL=1|2`

You know 2 times more 1st lvl Bard spells.

*** New 5.5.2

Tag Name: BONUS:SPELLKNOWNMULT|TYPE=x;LEVEL=y|z

Variables Used (x): Text (Spell type)

Variables Used (y): Number (Spell level)

Variables Used (z): Number (Number of spells)

What it Does:

Adds additional known spells.

Example:

`BONUS:SPELLKNOWN|TYPE=Arcane;LEVEL=1|2`

You know 2 times more 1st lvl spells of Arcane type.

Tag Name: BONUS:STAT|x,x|y

Variables Used (x): Text (Stat name)

Variables Used (y): Number, variable or formula (Number to adjust stat by)

What it Does:

Adds to character stats (stat can be any stat that has been defined in the statsandchecks.lst system file).

TYPE.xxx for reference, TYPE=xxx for assignment.

Examples:

`BONUS:STAT|STR|2`

Adds two to character's STR stat.

`BONUS:STAT|DEX,CON,INT|1`

Adds 1 to character's DEX, CON, & INT stats.

`CHOOSE:Ability|STR|DEX|CON <tab> STACK:NO <tab> MULT:YES <tab> BONUS:STAT|%LIST|1|TYPE=Inherent`

Adds 1 to character's STR, DEX, & CON stats, can be chosen multiple time, does not stack.

`#Dwarf Racial Progression.MOD <tab> BONUS:STAT|CON|2|PRELEVEL:3 <tab> BONUS:STAT|STR|2|PRELEVEL:5 <tab> BONUS:STAT|CON|2|PRELEVEL:7 <tab> BONUS:STAT|WIS|2|PRELEVEL:9`

Modifies the character based on what level they are, i.e. +2 to CON at 3, +2 to STR at 5, +2 to CON at 7, +2 to WIS at 9.

`STACK:NO <tab> MULT:YES <tab> CHOOSE:Ability|STR|DEX|CON <tab> BONUS:STAT|%LIST|2|TYPE=Inherent`

Adds two to character's Chosen stat from Inherent ability, doesn't stack, but can be selected multiple times.

*** New 5.5

Tag Name: BONUS:STAT|BASESPELLKNOWNSTAT|x

Variables Used (x): Number, variable or formula (Number to adjust stat bonus by)

What it Does:

Adds a virtual bonus to characters base spell stat bonus when PCGen calculates the number of spells the character knows.

Example:

`BONUS:STAT|BASESPELLKNOWNSTAT|1`

Adds 1 to all of the character's base spell stat bonus when calculating the number of spells known.

*** New 5.5

Tag Name: BONUS:STAT|BASESPELLKNOWNSTAT:Class=x|y

Variables Used (x): Text (Class name)

Variables Used (y): Number, variable or formula (Number to adjust stat bonus by)

What it Does:

Adds a virtual bonus to characters base spell stat bonus when PCGen calculates the number of spells the character knows for the class specified.

Example:

`BONUS:STAT|BASESPELLKNOWNSTAT:Class=Wizard|2`

Adds 2 to character's base spell stat bonus for the Wizard class when calculating the number of spells known.

Tag Name: BONUS:STAT|BASESPELLSTAT|x

Variables Used (x): Number, variable or formula (Number to adjust stat bonus by)

What it Does:

Adds to characters base spell stat bonus.

Example:

`BONUS:STAT|BASESPELLSTAT|1`

Adds 1 to all of the character's base spell stat bonus.

Tag Name: BONUS:STAT|BASESPELLSTAT:Class=x|y

Variables Used (x): Text (Class name)

Variables Used (y): Number, variable or formula (Number to adjust stat by)

What it Does:

Adds to character base spell stat bonus for the class specified.

Example:

`BONUS:STAT|BASESPELLSTAT:Class=Wizard|2`

Adds 2 to character's base spell stat bonus for the Wizard class.

*** Deprecated 5.3.12 - Remove 6.0 - Use BONUS:COMBAT|TOHIT|x

Tag Name: BONUS:TOHIT|x

*** New 5.5

Tag Name: BONUS:UDAM|CLASS.x|y

Variables Used (x): Text (Class name)

Variables Used (y): Number, variable or formula (Levels to add to unarmed damage)

What it Does:

- This tag adds levels to the character's unarmed damage bonus as if he/she had gained those levels as a Monk.

Example:

`BONUS:UDAM|CLASS.Monk|5`

Unarmed damage is treated as a Monk of five levels higher. For this to work you must have Monk levels.

`BONUS:UDAM|CLASS.Monk|CL=SpecialMonk`

Would raise the Monk's Unarmed Damage "level" by the Class Level of the "SpecialMonk" class.

*** Updated 5.7.3

Tag Name: BONUS:VAR|x,x|y

Variables Used (x): Text (Variable name)

Variables Used (y): Number, variable or formula (Number to adjust variable by)

What it Does:

- Adds to a data DEFINEd VARiable.
- A DEFINE tag for the listed variable must be somewhere attached to the character for a BONUS to have any effect.
- TYPE.xxx for reference, TYPE=xxx for assignment.

Examples:

`BONUS:VAR|SneakAttack|2`

Adds 2 to character's SneakAttack variable.

`BONUS:VAR|SneakAttack,TrapSense|1`

Adds 1 to character's SneakAttack and TrapSense variables.

`BONUS:VAR|LegacyPoints|%CHOICE|PRERACE:1,Titan|PREAPPLY:ANYPC <tab> CHOOSE:NUMBER|MIN=1|MAX=10|TITLE=Legacy Points`

A chooser to let you select the number of points to add, from 1 to 10, if your a Titan and a PC.

`BONUS:VAR|TurnTimesBase|3+CHA|TYPE=Base`

Sets the character's base TurnTimesBase variable to three plus the Charasma Modifier.

*** New 5.5.5

Tag Name: BONUS:VISION|x|y

Variables Used (x): Text (Vision type)

Variables Used (y): Number, variable or formula (Number or formula to adjust vision range by)

What it Does:

- Adds the vision type specified if you don't already have it, otherwise it increases the range of the vision type by the number specified.
- Vision types include (but are not limited to): Blindsense, Darkvision, Low-Light.
- TYPE.xxx for reference, TYPE=xxx for assignment.

Example:

`BONUS:VISION|Darkvision|30`

Adds DarkVision (30') if you don't have Darkvision, otherwise it increases your darkvision range by 30'.

`BONUS:VISION|Darkvision|((CL/4).TRUNC+1)*10`

Increases a characters Darkvision by 10 feet every four levels starting at 1st level.

`BONUS:VISION|Darkvision|60|PRERACE:1,TYPE=Robot`

Adds Darkvision (60') if you don't have Darkvision, otherwise it increases your darkvision range by 60', if you are a robot.

*** Updated 5.5.2...5.14.0

Tag Name: BONUS:WEAPON|x,x|y

Variables Used (x): Property (Weapon property)

Variables Used (y): Number, variable or formula (Number to add)

What it Does:

- Modifies the indicated property of the weapon the tag is contained in.
- This tag only works in Equipment, Equipmod and temporary bonuses files.
- PRE tags have no baring on how the tags they are appended to can be used, they only effect when they are applied. See PREAPPLY and the Inventory Temporary Bonus Sub-Tab link that is there.
- BONUS:WEAPON can be used in objects which can hold temporary bonuses as long as it have a PREAPPLY:Weapon tag on it. I don't think PREAPPLY:PC or PREAPPLY:ANYPC will work since PCGen can't know what weapon to put it on.
- Temporary bonuses can be used in Class, Feat, Equipment, Skill, Spell and Template objects for sure, these all have a tree in the temporary bonus subtab, possibly in Race and Ability
- Weapon properties defined are:
  - ATTACKS (Adds a number of additional attacks)
  - ATTACKSPROGRESS (overrides the standard attack progression)
  - DAMAGE (Adds to the damage of the weapon)
  - DAMAGEMULT (Adds to the damage multiplier, See BONUS:COMBAT|DAMAGEMULT for syntax)
  - DAMAGESIZE (Raises or lowers the damage dice on the same scale as weapon size, See BONUS:COMBAT|DAMAGESIZE for the scale)
  - DAMAGE-SHORTRANGE (Adds to the damage of the weapon when used at short range)
  - TOHIT (Adds to the attack bonus of the weapon)
  - TOHIT-SHORTRANGE (Adds to the attack bonus of the weapon when used at short range)
  - WIELDCATEGORY (Raises or lowers the wieldcatagory of the weapon)
- TYPE.xxx for reference, TYPE=xxx for assignment.

Examples:

`BONUS:WEAPON|DAMAGE|1`

Adds one to weapon damage.

`BONUS:WEAPON|DAMAGE-SHORTRANGE|1`

Adds one to short range weapon damage.

`BONUS:WEAPON|TOHIT|1`

Adds one to weapon to-hit.

`BONUS:WEAPON|TOHIT-SHORTRANGE|1`

Adds one to short range weapon to-hit.

`BONUS:WEAPON|TOHIT,DAMGE|1`

Adds one to weapon to-hit and damage.

`BONUS:WEAPON|ATTACKS|1`

Adds one attack to the weapons attack progression.

`BONUS:WEAPON|ATTACKSPROGRESS|1`

Limits the weapons attack progression to one.

`BONUS:WEAPON|WIELDCATEGORY|1`

Raises the weapons wieldcatagory, if it were Light it becomes OneHanded.

`BONUS:WEAPON|DAMAGE,TOHIT|min(2,(TL/6)|TYPE=Enhancement|PRELEVEL:6`

Raises the weapons damage and to-hit, between 2 and (Total Level divided by 6) if character is over level 6.

`BONUS:WEAPON|DAMAGEMULT:1|.5`

Increases the damage multiplier of the weapon by half your strength bonus when wielding in your primary hand.

*** Updated 5.5.2

Tag Name: BONUS:WEAPONPROF=x|y,y|z

Variables Used (x): Text (Weapon proficiency name)

Variables Used (x): TYPE.Text (Weapon proficiency type)

Variables Used (y): Property (Weapon proficiency property)

Variables Used (z): Number, variable or formula (Number to add)

What it Does:

- Modifies the indicated property of the weapon proficiency or weapon proficiency type.
- Weapon proficiency properties defined are:
  - CRITMULTADD (Adds to the critical multiplier of the weapon)
  - CRITRANGEADD (Adds to the critical range of the weapon)
  - CRITRANGEDOUBLE (Doubles the critical range of the weapon)
  - DAMAGE (Adds to the damage of the weapon)
  - DAMAGEMULT (Adds to the damage multiplier, See BONUS:COMBAT|DAMAGEMULT for syntax)
  - DAMAGESIZE (Raises or lowers the damage dice on the same scale as weapon size, See BONUS:COMBAT|DAMAGESIZE for the scale)
  - DAMAGE-SHORTRANGE (Adds to the damage of the weapon at short range as defined in the GameMode files)
  - PCSIZE (Adds to the characters size in relation to the weapon)
  - TOHIT (Adds to the attack bonus of the weapon)
  - TOHIT-SHORTRANGE (Adds to the attack bonus of the weapon at short range as defined in the GameMode files)
  - TOHITOVERSIZE (Decreases the handedness of a weapon)
  - WIELDCATEGORY (Raises or lowers the wieldcatagory of the weapon)
  - TYPE.xxx for reference, TYPE=xxx for assignment.

Examples:

`BONUS:WEAPONPROF=Dagger|DAMAGE|1`

Adds one to dagger weapon damage.

`BONUS:WEAPONPROF=Dagger|DAMAGE,TOHIT|2`

Adds two to dagger weapon attack bonus and damage.

`BONUS:WEAPONPROF=TYPE.Martial|CRITRANGEADD|1`

Adds one to the critical range of any Martial type weapon.

`BONUS:WEAPONPROF=Shortbow|DAMAGE-SHORTRANGE|1`

Adds one to the damage of Shortbows at short range.

`BONUS:WEAPONPROF=Longsword|PCSIZE|1`

Allows a small character to use a longsword as if he were medium sized.

`BONUS:WEAPONPROF=Greatsword|TOHITOVERSIZE|1`

Allows a medium character to use a Greatsword one handed without penalty.

`BONUS:WEAPONPROF=Longsword|WIELDCATEGORY|-1`

Lowers the weapons wieldcatagory, if it were OneHanded it becomes Light.

`CHOOSE:FEAT=Weapon Focus|1 <tab> BONUS:WEAPONPROF=%LIST|TOHIT|1`

Chooser for weapons proficiency to add 1 to the to-hit of a Weapon Focus.

`CHOOSE:FEAT=Greater Weapon Focus|1 <tab> BONUS:WEAPONPROF=%LIST|DAMAGE|2`

Chooser for weapons proficiency to add 2 to the damager of a Weapon Focus.

`BONUS:WEAPONPROF=Cannon|TOHIT|-2|TYPE=GunneryPenalty`

Subtracts two from the to hit of Cannons due to gunnery.

`BONUS:WEAPONPROF=Dagger|DAMAGEMULT:0|.5`

Increases the damage multiplier of the dagger weapon by half your strength bonus when wielding it off handed.

*** New 5.5.2

Tag Name: BONUS:WIELDCATEGORY|x,x|y

Variables Used (x): Light (Effects Light weapon category)

Variables Used (x): OneHanded (Effects OneHanded weapon category)

Variables Used (x): TwoHanded (Effects TwoHanded weapon category)

Variables Used (x): ALL (Effects all weapon categories)

Variables Used (y): Number, variable or formula (Number to increase or decrease the category by)

What it Does:

Changes the wield category of weapons a character may use.

The wield category names are defined in the system/gameModes/miscinfo.lst file.

This bonus will only have an effect if the gameMode has defined wield categories, currently only the 3.5e RSRD gameMode uses wield categories.

Example:

`BONUS:WIELDCATEGORY|TwoHanded|-1`

Allows a character to wield any larger Two Handed weapon than would normally be allowed.

`BONUS:WIELDCATEGORY|ALL|-1`

Allows a character to use all weapons that are one Size Category larger.

`BONUS:WIELDCATEGORY|OneHanded,Light|1`

Allows a character to use smaller 'Light' and 'OneHanded' weapons than would normally be allowed.