> |NAME|

> |RACE| |FOR,%class,0,COUNT[CLASSES]-1,1,1| |IIF(CLASS.%class.TYPE:Monster)| |ELSE| |IIF(CLASS.%class.LEVEL:N/A)| |ELSE| , |CLASS.%class.LEVEL| |IIF(CLASS.%class.LEVEL:1.OR.CLASS.%class.LEVEL:21)| st |ELSE| |IIF(CLASS.%class.LEVEL:2.OR.CLASS.%class.LEVEL:22)| nd |ELSE| |IIF(CLASS.%class.LEVEL:3.OR.CLASS.%class.LEVEL:23)| rd |ELSE| th |ENDIF| |ENDIF| |ENDIF| -Level |CLASS.%class| |ENDIF| |ENDIF| |ENDFOR|

> | |SIZELONG| |IIF(RACETYPE:None)| |TEXT.TITLE.TYPE| |ELSE| |RACETYPE| |ENDIF| |IIF(VAR.IF(var("COUNT[RACESUBTYPES]")==0;1;0):1)| |ELSE| ( |FOR,%subtype,0,COUNT[RACESUBTYPES]-2,1,1| |RACESUBTYPE.%subtype|, |ENDFOR| |FOR,%subtype,COUNT[RACESUBTYPES]-1,COUNT[RACESUBTYPES]-1,1,1| |RACESUBTYPE.%subtype| |ENDFOR| ) |ENDIF|
> Hit Dice: | |HITDICE| (|HP| hp)
> Initiative: | |INITIATIVEMOD|
> Speed: | |FOR,%movement,0,COUNT[MOVE]-1,1,1| |IIF(MOVE.0.NAME:Walk)| |IIF(MOVE.%movement.NAME:Walk)| |MOVE.%movement.RATE| (|MOVE.%movement.SQUARES| squares) |ELSE| |MOVE.%movement.NAME| |MOVE.%movement.RATE| |ENDIF| |ELSE| |MOVE.%movement.NAME| |MOVE.%movement.RATE| (|MOVE.%movement.SQUARES| squares) |ENDIF| , |ENDFOR|

> Armor Class:

> |AC.Total| ( |IIF(AC.Size:0)| |ELSE| |AC.Size.SIGN| size, |ENDIF| |IIF(AC.Ability:0)| |ELSE| |AC.Ability.SIGN| Dex, |ENDIF| |IIF(AC.NaturalArmor:0)| |ELSE| |AC.NaturalArmor.SIGN| natural, |ENDIF| |IIF(AC.Dodge:0)| |ELSE| |AC.Dodge.SIGN| dodge, |ENDIF| |IIF(AC.Deflection:0)| |ELSE| |AC.Deflection.SIGN| deflection, |ENDIF| |IIF(AC.Misc:0)| |ELSE| |AC.Misc.SIGN| misc, |ENDIF| |IIF(AC.Armor:0)| |ELSE| |AC.Armor.SIGN| |EQ.IS.ARMOR.0.NAME|, |ENDIF| |IIF(AC.Shield:0)| |ELSE| |AC.Shield.SIGN| |IIF(EQ.IS.SHIELD.0.TYPE:HEAVY)| Heavy Shield, |ELSE| |ENDIF| |IIF(EQ.IS.SHIELD.0.TYPE:LIGHT)| Light Shield, |ELSE| |ENDIF| |IIF(EQ.IS.SHIELD.0.TYPE:BUCKLER)| Buckler, |ELSE| |ENDIF| |IIF(EQ.IS.SHIELD.0.TYPE:TOWER)| Tower Shield, |ELSE| |ENDIF| |ENDIF| ) touch |AC.Touch|, flatfooted |AC.Flatfooted|

> |IIF(VAR.UseCombatManueverBonus:1)| |IIF(VAR.IF(VAR("CMD")>0;1;0):1)|
> Base Attack/CMB/CMD: | |VAR.BAB.INTVAL.SIGN|/|VAR.CMB.INTVAL.SIGN|/|VAR.CMD.INTVAL.SIGN|
> |ELSE|
> Base Attack/CMB: | |VAR.BAB.INTVAL.SIGN|/|VAR.CMB.INTVAL.SIGN|
> |ENDIF| |ELSE|
> Base Attack/Grapple: | |VAR.BAB.INTVAL.SIGN|/ |IIF(VAR.IF(var("CanNotGrapple")==0;1;0):1)| |VAR.(STR+BAB+(SIZE-4)+(SIZE-4)+(SIZE-4)+(SIZE-4)+(ATTACK.GRAPPLE.MISC)).INTVAL.SIGN| |ELSE| — |ENDIF|
> |ENDIF|

> Full Attack:

> |FOR,%weap,0,COUNT[EQTYPE.Weapon]-1,1,0| |WEAPON.%weap.NAME.NOSTAR| |IIF(WEAPON.%weap.BASEHIT:N/A)| |WEAPON.%weap.THHIT| melee (|WEAPON.%weap.THDAMAGE| |FOR,%CritTest,STRLEN[WEAPON.%weap.CRIT],STRLEN[WEAPON.%weap.CRIT],1,0| |IIF(%CritTest:2)| |ELSE| /|WEAPON.%weap.CRIT| |ENDIF| |ENDFOR| |IIF(WEAPON.%weap.MULT:2)| |ELSE| /x|WEAPON.%weap.MULT| |ENDIF| ); |ELSE| |WEAPON.%weap.BASEHIT| |IIF(WEAPON.%weap.ISTYPE.Ranged)| ranged |ELSE| melee |ENDIF| ( |IIF(WEAPON.%weap.ISTYPE.Ranged)| |WEAPON.%weap.RANGELIST.0.DAMAGE| |ELSE| |WEAPON.%weap.DAMAGE| |ENDIF| |FOR,%CritTest,STRLEN[WEAPON.%weap.CRIT],STRLEN[WEAPON.%weap.CRIT],1,0| |IIF(%CritTest:2)| |ELSE| /|WEAPON.%weap.CRIT| |ENDIF| |ENDFOR| |IIF(WEAPON.%weap.MULT:2)| |ELSE| /x|WEAPON.%weap.MULT| |ENDIF| ); |ENDIF| |ENDFOR|

> Attack:

> |FOR,%weap,0,COUNT[EQTYPE.Weapon]-1,1,0| |WEAPON.%weap.NAME.NOSTAR| |IIF(WEAPON.%weap.BASEHIT:N/A)| |WEAPON.%weap.THHIT.0| melee (|WEAPON.%weap.THDAMAGE| |FOR,%CritTest,STRLEN[WEAPON.%weap.CRIT],STRLEN[WEAPON.%weap.CRIT],1,0| |IIF(%CritTest:2)| |ELSE| /|WEAPON.%weap.CRIT| |ENDIF| |ENDFOR| |IIF(WEAPON.%weap.MULT:2)| |ELSE| /x|WEAPON.%weap.MULT| |ENDIF| ); |ELSE| |WEAPON.%weap.BASEHIT.0| |IIF(WEAPON.%weap.ISTYPE.Ranged)| ranged |ELSE| melee |ENDIF| ( |IIF(WEAPON.%weap.ISTYPE.Ranged)| |WEAPON.%weap.RANGELIST.0.DAMAGE| |ELSE| |WEAPON.%weap.DAMAGE| |ENDIF| |FOR,%CritTest,STRLEN[WEAPON.%weap.CRIT],STRLEN[WEAPON.%weap.CRIT],1,0| |IIF(%CritTest:2)| |ELSE| /|WEAPON.%weap.CRIT| |ENDIF| |ENDFOR| |IIF(WEAPON.%weap.MULT:2)| |ELSE| /x|WEAPON.%weap.MULT| |ENDIF| ); |ENDIF| |ENDFOR|

> Face/Reach: | |FACE|/|REACH|

> Special Attacks/Qualities:

> |IIF(count("ABILITIES";"CATEGORY=Special Ability";"VISIBILITY=DEFAULT")>0)| |FOR,%specialAbilities,0,count("ABILITIES","CATEGORY=Special Ability")-1,1,0| |IIF(ABILITYALL.Special Ability.%specialAbilities.TYPE:Extraordinary)| |ABILITYALL.Special Ability.%specialAbilities| (Ex), |ELSE| |IIF(ABILITYALL.Special Ability.%specialAbilities.TYPE:Supernatural)| |ABILITYALL.Special Ability.%specialAbilities| (Su), |ELSE| |IIF(ABILITYALL.Special Ability.%specialAbilities.TYPE:SpellLike)| |ABILITYALL.Special Ability.%specialAbilities| (Sp), |ELSE| |IIF(ABILITYALL.Special Ability.%specialAbilities.TYPE:PsiLike)| |ABILITYALL.Special Ability.%specialAbilities| (Ps), |ELSE| |ABILITYALL.Special Ability.%specialAbilities|, |ENDIF| |ENDIF| |ENDIF| |ENDIF| |ENDFOR| |ENDIF| |FOR,%DRtest,STRLEN[DR],STRLEN[DR],1,0| |IIF(%DRtest:0)| |ELSE| Damage Reduction |DR|, |ENDIF| |ENDFOR| |IIF(SR:0)| |ELSE| Spell Resistance |SR|, |ENDIF| |FOR,%vision,0,COUNT[VISION]-1,1,0| |VISION.%vision|, |ENDFOR| |SPECIALLIST|

> Saves: | Fort: |CHECK.FORTITUDE.TOTAL|, Ref: |CHECK.REFLEX.TOTAL|, Will: |CHECK.WILL.TOTAL|
> Abilities: | Str |STAT.0|, Dex |STAT.1|, Con |STAT.2|, Int |STAT.3|, Wis |STAT.4|, Cha |STAT.5|
> Skills: | |FOR,%skill,0,COUNT[SKILLS]-1,1,0| |IIF(SKILL.%skill.TYPE:SkillUse)| |ELSE| |IIF(VAR.IF(var("SKILL.%skill.RANK")==0;1;0):1)| |IIF(VAR.IF(var("SKILL.%skill.TOTAL")==0;1;0):1)| |ELSE| |SKILL.%skill| |SKILL.%skill.TOTAL.INTVAL.SIGN|; |ENDIF| |ELSE| |SKILL.%skill| |SKILL.%skill.TOTAL.INTVAL.SIGN|; |ENDIF| |ENDIF| |ENDFOR|
> Feats: | |FEATLIST| |VFEATLIST| |FEATAUTOLIST|
> Challenge Rating: | |CR|
> Alignment: | |ALIGNMENT|
> Level Adjustment: | |IIF(VAR.IF(var("ECL-TL")==0;1;0):1)| - |ELSE| +|VAR.ECL-TL.INTVAL| |ENDIF|

> Languages: |LANGUAGES|

> |%REGION|

> Region: |REGION|

> |%|

> Possessions: |FOR.0,COUNT[EQUIPMENT.Not.Natural],100,\EQ.%.NAME\; , , ,0|

> |FOR,%spellbook,2,COUNT[SPELLBOOKS]-1,1,0| |IIF(SPELLBOOK.%spellbook.TYPE:Spell Book)|

> Spell Book: |SPELLBOOKNAME.%spellbook| |FOR,%class,COUNT[SPELLRACE],COUNT[SPELLRACE]+COUNT[CLASSES]-1,1,1| |IIF(SPELLLISTMEMORIZE.%class:false)| |ELSE|
> |SPELLLISTCLASS.%class| (CL |SPELLLISTCLASS.%class.LEVEL|): |FOR,%level,0,9,1,1| |FOR,%spelllevelcount,COUNT[SPELLSINBOOK.%class.%spellbook.%level],COUNT[SPELLSINBOOK.%class.%spellbook.%level],1,0| |IIF(%spelllevelcount:0)| |ELSE| |MANUALWHITESPACE||%level||TEXT.NUMSUFFIX.%level||ENDMANUALWHITESPACE| - |FOR,%spell,0,COUNT[SPELLSINBOOK.%class.%spellbook.%level]-2,1,0| |TEXT.LOWER.SPELLMEM.%class.%spellbook.%level.%spell.NAME| |IIF(SPELLMEM.%class.%spellbook.%level.%spell.TIMES:1)| |ELSE| (|SPELLMEM.%class.%spellbook.%level.%spell.TIMES|) |ENDIF| |IIF(SPELLMEM.%class.%spellbook.%level.%spell.SAVEINFO:None)| |ELSE| (DC |SPELLMEM.%class.%spellbook.%level.%spell.DC|) |ENDIF| , |ENDFOR| |FOR,%spell,COUNT[SPELLSINBOOK.%class.%spellbook.%level]-1,COUNT[SPELLSINBOOK.%class.%spellbook.%level]-1,1,0| |SPELLMEM.%class.%spellbook.%level.%spell.BONUSSPELL||TEXT.LOWER.SPELLMEM.%class.%spellbook.%level.%spell.NAME| |IIF(SPELLMEM.%class.%spellbook.%level.%spell.TIMES:1)| |ELSE| (|SPELLMEM.%class.%spellbook.%level.%spell.TIMES|) |ENDIF| |IIF(SPELLMEM.%class.%spellbook.%level.%spell.SAVEINFO:None)| |ELSE| (DC |SPELLMEM.%class.%spellbook.%level.%spell.DC|) |ENDIF| |ENDFOR| |ENDIF| |ENDFOR| |ENDFOR| |ENDIF| |ENDFOR| |ELSE|

> |ENDIF| |ENDFOR| |%DOMAIN.1|

> Deity: |DEITY| Domains: |FOR.1,COUNT[DOMAINS]+1,1,\DOMAIN.%\(\DOMAIN.%.POWER\), ,NONE,2|

> |%| |IIF(VAR.IF(VAR("COUNT[SPELLSINBOOK.0.1.0]")>0;1;0):1)|

> Innate Spell-Like Abilities: |FOR,%spellbook,1,1,1,0| |FOR,%class,0,0,1,0| |FOR,%level,0,0,1,0| |%SPELLLISTBOOK.%class.%level.%spellbook| |FOR,%spell,0,COUNT[SPELLSINBOOK.%class.%spellbook.%level]-1,1,0| |TEXT.LOWER.SPELLMEM.%class.%spellbook.%level.%spell.NAME| ( |IIF(SPELLMEM.%class.%spellbook.%level.%spell.SAVEINFO:None)| |ELSE| DC |SPELLMEM.%class.%spellbook.%level.%spell.DC|, |ENDIF| |IIF(SPELLMEM.%class.%spellbook.%level.%spell.TIMES:At Will)| at will) |ELSE| |SPELLMEM.%class.%spellbook.%level.%spell.TIMES|/|SPELLMEM.%class.%spellbook.%level.%spell.TIMEUNIT|) |ENDIF| |ENDFOR| |%| |ENDFOR| |ENDFOR| |ENDFOR|

> |ENDIF| |FOR,%spellbook,2,COUNT[SPELLBOOKS]-1,1,0| |IIF(SPELLBOOK.%spellbook.TYPE:Innate Spell List)| |IIF(VAR.IF(VAR("COUNT[SPELLSINBOOK.0.%spellbook.0]")>0;1;0):1)|

> |SPELLBOOK.%spellbook.NAME| Spell-Like Abilities: |FOR,%class,0,0,1,0| |FOR,%level,0,0,1,0| |%SPELLLISTBOOK.%class.%level.%spellbook| |FOR,%spell,0,COUNT[SPELLSINBOOK.%class.%spellbook.%level]-1,1,0| |TEXT.LOWER.SPELLMEM.%class.%spellbook.%level.%spell.NAME| ( |IIF(SPELLMEM.%class.%spellbook.%level.%spell.SAVEINFO:None)| |ELSE| DC |SPELLMEM.%class.%spellbook.%level.%spell.DC|, |ENDIF| |IIF(SPELLMEM.%class.%spellbook.%level.%spell.TIMES:At Will)| at will) |ELSE| |SPELLMEM.%class.%spellbook.%level.%spell.TIMES|/|SPELLMEM.%class.%spellbook.%level.%spell.TIMEUNIT|) |ENDIF| |ENDFOR| |%| |ENDFOR| |ENDFOR|

> |ENDIF| |ENDIF| |ENDFOR| |%SPELLLISTCLASS.0|

> Spells:

> |%| |FOR,%spellbook,2,COUNT[SPELLBOOKS]-1,1,0| |IIF(SPELLBOOK.%spellbook.TYPE:Prepared Spell List)|

> |SPELLBOOKNAME.%spellbook| Prepared Spells: |FOR,%class,COUNT[SPELLRACE],COUNT[SPELLRACE]+COUNT[CLASSES]-1,1,1| |IIF(SPELLLISTMEMORIZE.%class:false)| |ELSE|
> |SPELLLISTCLASS.%class| (CL |SPELLLISTCLASS.%class.LEVEL|): |FOR,%level,0,9,1,1| |FOR,%spelllevelcount,COUNT[SPELLSINBOOK.%class.%spellbook.%level],COUNT[SPELLSINBOOK.%class.%spellbook.%level],1,0| |IIF(%spelllevelcount:0)| |ELSE| |MANUALWHITESPACE||%level||TEXT.NUMSUFFIX.%level||ENDMANUALWHITESPACE| - |FOR,%spell,0,COUNT[SPELLSINBOOK.%class.%spellbook.%level]-2,1,0| |TEXT.LOWER.SPELLMEM.%class.%spellbook.%level.%spell.NAME| |IIF(SPELLMEM.%class.%spellbook.%level.%spell.TIMES:1)| |ELSE| (|SPELLMEM.%class.%spellbook.%level.%spell.TIMES|) |ENDIF| |IIF(SPELLMEM.%class.%spellbook.%level.%spell.SAVEINFO:None)| |ELSE| (DC |SPELLMEM.%class.%spellbook.%level.%spell.DC|) |ENDIF| , |ENDFOR| |FOR,%spell,COUNT[SPELLSINBOOK.%class.%spellbook.%level]-1,COUNT[SPELLSINBOOK.%class.%spellbook.%level]-1,1,0| |SPELLMEM.%class.%spellbook.%level.%spell.BONUSSPELL||TEXT.LOWER.SPELLMEM.%class.%spellbook.%level.%spell.NAME| |IIF(SPELLMEM.%class.%spellbook.%level.%spell.TIMES:1)| |ELSE| (|SPELLMEM.%class.%spellbook.%level.%spell.TIMES|) |ENDIF| |IIF(SPELLMEM.%class.%spellbook.%level.%spell.SAVEINFO:None)| |ELSE| (DC |SPELLMEM.%class.%spellbook.%level.%spell.DC|) |ENDIF| |ENDFOR| |ENDIF| |ENDFOR| |ENDFOR| |ENDIF| |ENDFOR| |ELSE|

> |ENDIF| |ENDFOR| |FOR,%class,COUNT[SPELLRACE],COUNT[CLASSES],1,1| |%SPELLLISTCLASS.%class|

> |SPELLLISTCLASS.%class|: Spells per Day: (|FOR.0,9,1,\SPELLLISTCAST.%class.%\,NONE,/,0| DC:|SPELLLISTDC.%class.1|+spell level), Spells Known: |FOR,%level,0,MAXSPELLLEVEL.%class,1,1| |%SPELLLISTBOOK.%class.%level.0| |MANUALWHITESPACE||%level||TEXT.NUMSUFFIX.%level||ENDMANUALWHITESPACE| - |FOR,%spell,0,COUNT[SPELLSINBOOK.%class.0.%level]-2,1,1| |SPELLMEM.%class.0.%level.%spell.NAME|, |ENDFOR| |FOR,%spell,COUNT[SPELLSINBOOK.%class.0.%level]-1,COUNT[SPELLSINBOOK.%class.0.%level]-1,1,1| |SPELLMEM.%class.0.%level.%spell.NAME| |ENDFOR| |%| |ENDFOR|

> |ENDFOR| |%|

> |IIF(VAR.IF(var("FEATPOINTS")==0;1;0):1)| |ELSE| Unspent Feat Points: |FEATPOINTS.INTVAL| |ENDIF| |IIF(VAR.IF(var("SKILLPOINTS.UNUSED")==0;1;0):1)| |ELSE|
> Unspent Skill Points: |SKILLPOINTS.UNUSED.INTVAL| |ENDIF|

> Skill Breakdown

> |FOR,%skill,0,COUNT[SKILLS]-1,1,0| |IIF(VAR.IF(var("SKILL.%skill.RANK")==0;1;0):1)| |IIF(VAR.IF(var("SKILL.%skill.TOTAL")==0;1;0):1)| |ELSE| |SKILL.%skill| |SKILL.%skill.TOTAL.INTVAL.SIGN| = |SKILL.%skill.EXPLAIN_LONG|
> |ENDIF| |ELSE| |SKILL.%skill| |SKILL.%skill.TOTAL.INTVAL.SIGN| = |SKILL.%skill.RANK.INTVAL.SIGN|[RANK] |SKILL.%skill.EXPLAIN_LONG|
> |ENDIF| |ENDFOR|

> Created using PCGen |EXPORT.VERSION| on |EXPORT.DATE|