Advanced Race Creation Guide:Archetypes
[This page is under heavy construction]
Advanced Race Guide: Archetypes
Details for implementing Aasimar (ARG) racial archetypes, Purifier (Oracle) and Tranquil Guardian (Paladin)
Purifier (Oracle)
Purifier Rules
- The purifier seeks out signs of possession or mind control that manifest from unwilling (and often unwitting) servants for fiendish corruptors and their mortal minions. A purifier seeks liberation of mind, body, and spirit from the bondage of sin and the taint of the unholy. A purifier gains the following class features.
- Recommended Mysteries
- ancestor, battle, heavens, lore.
- Bonus Spells
- veil of heaven (2nd), confess (4th), cast out (6th), denounce (8th), dispel evil (10th), banishment (12th), holy word (14th), mind blank (16th), freedom (18th).
- Diminished Spellcasting
- A purifier can use one fewer spell per day of each level and does not automatically learn cure or inflict spells. Her number of oracle spells known is unchanged.
- Revelations
- A purifier must take the following revelations at the listed levels.
- See Sin (Sp): At 3rd level, a purifier gains a bonus equal to 1/2 her oracle level on Sense Motive checks to sense enchantments, which she can make as a full-round action. She also gains a bonus equal to 1/2 her oracle level on Spellcraft checks to identify enchantment school spells and spells with the curse or emotion descriptor (see page 251 of for spells in the and that have the curse or emotion descriptor).
- Celestial Armor (Su): At 7th level, a purifier's armor takes on a golden or silvery sheen and becomes light as a feather. Her armor weighs half as much as long as she wears it, and she also gains armor training as a fighter 4 levels lower than her oracle level. At 11th level, a purifier gains heavy armor proficiency.
- Sin Eater (Su): At 11th level, a purifier can consume a curse, enchantment, or emotion effect by touch as a full-round action. She can do this a number of times per day equal to her Charisma modifier, and must make a Charisma check with a bonus equal to her oracle level against a DC of 11 + the caster level of the effect (or the Hit Dice of the creator for a supernatural effect). If the check succeeds, the effect is negated; however, the purifier is sickened for 1d4 rounds. If the target is possessed (such as by a magic jar effect or a ghost's malevolence ability), the possessor is forced out on a successful check. Whether the check succeeds or fails, the possessor is sickened for 2d4 rounds.
- Sacred Scourge (Su)
- At 5th level, a purifier may channel holy power to harm evil outsiders as a cleric of her level using the Alignment Channel feat. She may use this ability a number of times per day equal to 1 + her Charisma modifier.
- Holy Terror (Su)
- At 9th level, a purifier may use her sacred scourge to panic evil outsiders as if using the Turn Undead feat against undead.
- Celestial Master (Su)
- At 13th level, a purifier may use her sacred scourge to compel good outsiders to serve her, as if using the Command Undead feat against undead.
SO, first step: go to Class sheet and for slot 1, Fetch Existing Class, Oracle (P), this one is named "Purifier". The new class archetype will be filled it with the name "Purifier (P)", and the abbreviation will still be "Oracle". Change this to "Purifier", and then we can start implementing some of the class rules.
So... for the Purifier, we see spells, revelations, powers. This is my first custom class, but since these are the listed features, I anticipated finding slots for existing Oracle rules (either Text or Abilities), and changing them to meet my needs. As it turns out, this is exactly what I found. :)
Revelations
Class sheet, at the section "CUSTOM Mystery Revelations"
Name | Text | Has Effect? |
See Sin |
=IF(PEP_MysteryLevel=0,"n/a", " (Sp): Gain a +"&TRUNC(PEP_MysteryLevel/2)&" bonus to Sense Motive checks to sense enchantments, as a full-round action."& "Gain a +"&TRUNC(PEP_MysteryLevel/2)&" bonus to Spellcraft checks to identify enchantment school spells and spells with the curse or emotion descriptor") |
TRUE |
Celestial Armor |
=IF(PEP_MysteryLevel=0,"n/a", " (Su): Armor weight is halved. Gain armor training as a fighter level "&PEP_MysteryLevel-4& IF(PEP_MysteryLevel<11,"",". Gain heavy armor proficiency")& IF(COUNTIF(t_MIW,"Celestial Armor (Purifier)")=0, CR&ErrStart&"Add the item Celestial Armor (Purifier) to Magical Items Worn!"&ErrEnd, "")) |
FALSE |
Sin Eater |
=IF(PEP_MysteryLevel=0,"n/a"," (Su): "&i_CHAModif&"/day, consume a curse, enchantment, or emotion effect by touch as a full-round action. Must make a Charisma check (bonus "&PEP_MysteryLevel&") vs. DC 11+caster level of the effect. If the check succeeds, the effect is negated but the purifier is sicked for 1d4 rnd."&" If the target is possessed (such as by a magic jar effect or a ghost's malevolence ability), the possessor is forced out on a successful check. Whether the check succeeds or fails, the possessor is sickened for 2d4 rounds") |
FALSE |
See Sin
We said TRUE for "See Sin" effects, so let's up an ability for it.:
We see the others are named, "Revelation: Foo" so we'll do that with ours.
Column | Value |
Name |
=IF(PEP_MysteryLevel>2,"Revelation: See Sin","") |
---|---|
Conditional Text |
="+"&PEP_MysteryLevel/2&" to Sense Motive checks to sense enchantments. +"&PEP_MysteryLevel/2& " to Spellcraft checks to identify enchantment school spells and spells with the curse or emotion descriptor (See Sin)" |
Perm | Yes |
Column | Effect Name | Effect Type | Effect Modifier |
Effect 1 | Conditional Sense Motive-p | Unnamed | =TRUNC(PEP_MysteryLevel/2) |
---|---|---|---|
Effect 2 | Conditional Spellcraft-p | Unnamed | =TRUNC(PEP_MysteryLevel/2) |
- Note
- Since this Ability has conditional effects, we made sure to include some Conditional text to show when they apply.
Celestial Armor
For Celestial Armor, we have an issue: a standard ability won't do everything we want, because we need to additionally include a weight value. However, that's not difficult to do, because (as we covered with Gear and Items) custom Gear and Items are simply defined as Abilities with weight, spell failure rates, armor check penalties, and other optional columns. When they are equipped, and the Perm column is set to YES, their effects become active.
So we created a custom Item called "Celestial Armor (Purifier)". It has 3 values filled in, weight, adj. weight, and 1 effect (Armor Training Level)
Column | Value |
Name | Celestial Armor (Purifier) |
---|---|
Weight |
=IF(b_WearingArmor,-VLOOKUP(-tSel_Armor, t_Armor, index_Armor_Weight,FALSE)/2) |
Adj. Weight |
=IF(b_WearingArmor,-VLOOKUP(tSel_Armor, t_Armor, index_Armor_AdjWeight,FALSE)/2*res_ArmorWeightMulti) |
Perm | Yes |
Column | Effect Name | Effect Type | Effect Modifier |
Effect 1 | Armor Training (Ex) Level | Unnamed |
=PEP_MysteryLevel-4 |
---|
This is all very well and good, but I was concerned that... even though we've told the sheet that the character has an "Armor Training Level (Ex)" value, till have to verify that the effect actually does anything for an Oracle.
So I went on to the Ability table and searched for Armor Training... and there it was! SOLVED! It was so simple: To make "Armor Training Level (Ex)" have a meaning, all I have to do was put the Ability name "Armor Training" into the class abilities, in tSel_Class1_Ability10. This made the line grey out, as the words "Using existing" appeared... and now all the armor bonuses are applied to my class!
Sin Eater
This class feature doesn't adjust any existing stats, so we don't need to add an ability for it. Done! :)
Class features
for 3rd level rev...
- Hard Coded to "See Sin", so:
=IF(OR(lvl_Custom1=0),"",BULLET&"See Sin"&VLOOKUP("See Sin",tp_RevelationsCustom,2,FALSE))
- do similar for other abilities
=IF(OR(lvl_Custom1=0),"",BULLET&"Celestial Armor"&VLOOKUP("Celestial Armor",tp_RevelationsCustom,2,FALSE)) =IF(OR(lvl_Custom1=0),"",BULLET&"Sin Eater"&VLOOKUP("Sin Eater",tp_RevelationsCustom,2,FALSE))
Added powers from class description in the first unused Class Features lines, setting the right levels, for Sacred Scourge, Holy Terror and Celestial Master (5,9,13):
="Sacred Scourge (Su): "&1+i_CHAModif&"/day, channel holy power to harm evil outsiders as a level "&PEP_MysteryLevel&" cleric using Alignment Channel" | 5
Holy Terror (Su): May use Sacred Scourge to panic evil outsiders as if using Turn Undead against undead | 9
Celestial Master (Su): May use Sacred Scourge to compel good outsiders to serve the player, as if using Command Undead against undead. | 13
Abilities
Diminished Spellcasting
- A purifier can use one fewer spell per day of each level and does not automatically learn cure or inflict spells. Her number of oracle spells known is unchanged.
Column | Value |
Name | Diminished Spellcasting |
---|---|
Perm | Yes |
Column | Effect Name | Effect Type | Effect Modifier |
Effect 1 | Purifier (P) All Spells Per Day Slots | Unnamed | -1 |
---|
Spells
populate bonus spells:
- veil of heaven (2nd), confess (4th), cast out (6th), denounce (8th), dispel evil (10th), banishment (12th), holy word (14th), mind blank (16th), freedom (18th).
the CLASS sez, spell at a given character level.
the SHEET sez, spells OF a given level, e.g. 1st level spells, 2nd level spells, etc. Veil of Heaven Confess Cast Out Denounce Dispel Evil Banishment Holy Word Mind Blank Freedom
So, added those to the slots, tSel_Class1_SpellList1-9, clicked "Assign Spells for Class #1"
Now, hardcode the list of bonus spells. This is normally looked up from the mystery, but I have a specific list to assign, so replace the
formula at Class #1 - Class Features, item 5:
=IF(OR(lvl_OracleP<2,NOT(b_MysteryWind)),"n/a", "Alter Winds"& IF(lvl_OracleP>3,", Gust of Wind","")& IF(lvl_OracleP>5,", Cloak of Winds","")& IF(lvl_OracleP>7,", River of Wind","")& IF(lvl_OracleP>9,", Control Winds","")& IF(lvl_OracleP>11,", Sirocco","")& IF(lvl_OracleP>13,", Control Weather","")& IF(lvl_OracleP>15,", Whirlwind","")& IF(lvl_OracleP>17,", Winds of Vengeance",""))
with
=IF(lvl_Custom2<2,"n/a", "Veil of Heaven"& IF(lvl_Custom2>3,", Confess","")& IF(lvl_Custom2>5,", Cast Out","")& IF(lvl_Custom2>7,", Denounce","")& IF(lvl_Custom2>9,", Dispel Evil","")& IF(lvl_Custom2>11,", Banishment","")& IF(lvl_Custom2>13,", Holy Word","")& IF(lvl_Custom2>15,", Mind Blank","")& IF(lvl_Custom2>17,", Freedom",""))
Tranquil Guardian (Paladin)
- A tranquil guardian is a missionary of peace and tranquility, a soothing voice of succor in a violent and dangerous world. A tranquil guardian gains the following class features.
copied from the Paladin (P) class, but the value "Is this a spellcasting class" comes over hardcoded to "No", and not the formula it should be: =IF(lvl_PaladinP<4,"No","Yes") which in our case becomes =IF(lvl_Custom2<4,"No","Yes")
Tranquil Guardian Rules
- Touch of Serenity (Su)
- At 1st level, a tranquil guardian gains Touch of Serenity as a bonus feat, even if she does not meet the prerequisites. At 6th level, and every six levels thereafter, the duration of a tranquil guardian's Touch of Serenity increases by 1 round. Each round on its turn, the target may attempt a new Will save to end the effect. The duration does not stack; only the longest remaining duration applies.
- This ability replaces smite evil.
- Serene Strike (Su)
- At 3rd level, when a tranquil guardian confirms a critical hit, she may convert all damage from her attack to nonlethal damage, and when she does, she can activate Touch of Serenity through her weapon or unarmed strike. Using serene strike is a free action.
- This ability replaces aura of courage.
- Divine Bond (Su)
- A tranquil guardian who chooses a weapon as her divine bond may only increase her weapon's enhancement bonus or add the following properties to her weapon: conductive, defending, disruptive, grayflame , or merciful.
- Aura of Calm (Su)
- At 8th level, a tranquil guardian is immune to all spells and spell-like abilities with the emotion descriptor, as well as all fear effects. Each ally within 10 feet of her gains a +4 morale bonus on saving throws against these effects. This ability functions only while the tranquil guardian is conscious, not if she is unconscious or dead.
- This ability replaces aura of resolve.
- Waves of Peace (Su)
- At 11th level, a tranquil guardian may expend 2 uses of her Touch of Serenity to affect each opponent within 5 feet ofher with that effect. She does not need to touch the creature for the effect to take hold.
- This ability replaces aura of justice.
- Apostle of Peace (Su)
- At 20th level, a tranquil guardian's DR increases to 10/evil, and whenever she channels positive energy or uses lay on hands to heal, she heals the maximum possible amount. In addition, any creature struck by her Touch of Serenity, even if it saves, must make an additional Will save (DC 10 + 1/2 her tranquil guardian level + her Charisma modifier) the next time it tries to attack. If it fails this save, the attack (including spells or special abilities) automatically fails.
- This ability replaces holy champion.
Traits
Core Abilities
As usual, the existing ability for the base (in this case, "Paladin (P) Abilities") is a good starting place for our custom class archetype. As usual, the only different in the formulas is what value is read for class level. in this case, just replace lvl_PaladinP with lvl_Custom2.
Column | Value |
Name | Tranquil Guardian (P) Abilities |
---|---|
Perm | Yes |
Column | Effect Name | Effect Type | Effect Modifier |
Effect 1 |
=IF(lvl_Custom2>16,"Damage Reduction Evil","") |
Max Value |
=IF(lvl_Custom2>19,10,5) |
---|---|---|---|
Effect 2 | Lay on Hands (Su) per Day | Unnamed |
=SUM(TRUNC((lvl_Custom2+PEP_LayOnHandsLevelAdj)/2), i_CHABonus) |
Effect 3 |
=tSel_Class2_Name& " Caster Level (Spell Effects)" |
Unnamed |
=IF(lvl_Custom2>3,-3,0) |
Effect 4 | Level for Mercy | Unnamed |
=lvl_Custom2 |
Touch of Serenity
- Touch of Serenity (Su)
- At 1st level, a tranquil guardian gains Touch of Serenity as a bonus feat, even if she does not meet the prerequisites. At 6th level, and every six levels thereafter, the duration of a tranquil guardian's Touch of Serenity increases by 1 round. Each round on its turn, the target may attempt a new Will save to end the effect. The duration does not stack; only the longest remaining duration applies.
- This ability replaces smite evil.
Touch of Serenity (Tranquil Guardian) Class Ability.
Found the Smite Evil ability name in tSel_Class2_Ability, AI23. Next to it were the words, use existing, because the details of this ability are defined on the Ability worksheet. Well... all we have to do is put in a different name, and we now have a blank ability slot... which is convenient because the class description SAYS this ability replaces Smite Evil... and replaced it with :
Column | Value |
Name | Touch of Serenity (Tranquil Guardian) |
---|---|
Perm | Yes |
Column | Effect Name | Effect Type | Effect Modifier |
Effect 1 | Bonus Feats | Unnamed | 1 |
---|---|---|---|
Effect 2 | Touch of Serenity Prereqs Met | Unnamed | 1 |
If you've read about feats, you may remember that the formula used for prerequisites included the possibility that the prereqs could be overridden by an effect. Well, that's exactly what has happened here: The EFFECT of the Feat name + " Prereqs Met" is read by the formula for the "Touch of Serenity" feat prerequisites. That way, when the user picks it in the feats table (as we're about to advise them :-), instead of showing an error about the missing pre-requisites (including Improved Unarmed Strike, a BAB of +8, and a WIS of 18!), it shows a checkmark for the feat requirements and its description is shown.
- Note
- This one was tricky to figure out how to do correctly. The rule for the text says, our class gains a round of effect every 6 levels, but TOS+ had a formula that only gave that bonus to Monk of the Lotus (P), which has a similar rule. So at first I thought I would have to add an CUSTOM custom feat (hehe) to have the specifics for the ability.
- However, it turned out to be much simpler than that. The feat itself has no effects, so all I have to worry about is text. And that leads to the second use of a Custom effect that I've found! Watch this:
A new effect:
The new effect will be called, "Touch of Serenity Rounds", its type Unnamed, and its value will be the number of rounds listed in the feat description for Touch of Serenity!
Then in our class feature text, since the rule says we get to add 1 rnd for every 6 levels, the computed value we put into the string becomes:
"Tranquil Guardian's Touch of Serenity lasts "&ParseEffect("Touch of Serenity Rounds")+TRUNC(lvl_Custom2/6)&" rnds"
Column | Effect Name | Effect Type | Effect Modifier |
Effect 3 | Touch of Serenity Rounds | Unnamed |
=PerUse(VLOOKUP("Touch of Serenity",t_Feats,index_Feats_Desc,FALSE),"nd","r") |
---|
- Note
- the PerUse() function is a custom TOS+ function that is documented elsewhere. Here, I'm matching a value in a string like "... for 1rnd unless..." with a "seperator" of 'r' and a "use" of 'nd'.
- we will include a matching advisement on class TEXT to say, pick it!
Now the TEXT for "Smite Evil" is replaced with "Touch of Serenity".
"Class #2 - CLASS FEATURES" Item 3 (Class!B174):
started with: =IF(lvl_Custom2=0,"n/a",
"Code of Conduct: Must be LG, respect legitimate authority, act with honor"&CR& "Aura of Good (Ex): Level "&PE_AuraOfGoodEx&CR& "Detect Evil (Sp): At will"&CR& # this portion of the string will be replaced, all the way up to the last ',' "Smite Evil (Su): "&PE_SmiteEvilSuPerDay&"/day: +"&IF(i_CHAModif>0,i_CHAModif,0)& " Attack, +"&PE_SmiteEvilSuDamageMultiplier*PE_SmiteEvilSuLevel&" dmg < "& REPT(t_CM,PE_SmiteEvilSuPerDay)&" >"&CRB&"+"& 2*PE_SmiteEvilSuDamageMultiplier*PE_SmiteEvilSuLevel& " dmg on the first successful attack vs Evil Outsiders/Dragons or Undead"&CRB& "Bypasses any damage reduction"&IF(i_CHABonus>0,CRB&"+"&i_CHABonus& " deflection bonus to AC vs target of Smite Evil while it is in effect", ""))
Replaced with:
=IF(lvl_Custom2=0,"n/a", "Code of Conduct: Must be LG, respect legitimate authority, act with honor"&CR& "Aura of Good (Ex): Level "&PE_AuraOfGoodEx&CR& "Detect Evil (Sp): At will"&CR& "Touch of Serenity (Su): Gain 'Touch of Serenity' as a bonus feat. "&CR& IF(lvl_Custom2<6,"", BULLET&"Tranquil Guardian's Touch of Serenity lasts for "& ParseEffect("Touch of Serenity Rounds")+TRUNC(lvl_Custom2/6)&" rnds"&CR))& IF(COUNTIF(tSel_Feats,"Touch of Serenity")>0,"" ErrStart&"Add 'Touch of Serenity' to the Feats table"&ErrEnd&CR )
The message about picking the feat is there, and the addendum stating the number of rounds only appears when the Tranquil Guardian's level is high enough to show a different value from the feat description.
Divine Bond
- Rule
- A tranquil guardian who chooses a weapon as her divine bond may only increase her weapon's enhancement bonus or add the following properties to her weapon: conductive, defending, disruptive, grayflame , or merciful.
I found this text in class feature 13, all we're changing here is to REMOVE some of the options (and replace one).
edited to remove un-specified damage types from the text, becomes:
=IF(lvl_Custom2=0,"n/a", "Divine Bond (Sp): "&TRUNC((lvl_Custom2+3)/4)&"/day"& IF(t_CM="",""," < "&REPT(t_CM,TRUNC((lvl_Custom2+3)/4))&" >")& IF(tSel_PF_DivineBond="",CRB&ErrStart&"Select your Divine Bond on the Customize Sheet"&ErrEnd, IF(tSel_PF_DivineBond="Special Mount", IF(tSel_MountRace="",ErrStart&" No Mount defined on the Mount Sheet!!"&ErrEnd, tSel_MountRace&" Special Mount")&CRB&TRUNC((lvl_Custom2-1)/4)& "/day, as a full round action, magically call the Mount at your side"& IF(lvl_Custom2>10, CRB&"The mount gains the Celestial Template and becomes a Magical Beast"& IF(lvl_Custom2>14,CRB&"Your Mount gains Spell Resistance "&SUM(lvl_Custom2,11),""),""),CRT& "As a std action, call upon the aid of a celestial spirit"&CRB& "Your weapon sheds light as a torch for "&lvl_Custom2&" mins."&CRB& "Add enhancements and properties totalling +"&TRUNC((lvl_Custom2-2)/3)& ". Properties available:"&CRTeB& "Costing +1: Conductive, Defending, Grayflame, Merciful"& IF(lvl_Custom2>7,CRTeB&"Costing +2: Disruption",""))))
Serene Strike
- Rule
- At 3rd level, when a tranquil guardian confirms a critical hit, she may convert all damage from her attack to nonlethal damage, and when she does, she can activate Touch of Serenity through her weapon or unarmed strike. Using serene strike is a free action.
- Replaces
- aura of courage (class feature 7)
- Replace with
- Serene Strike (Su): As a free action, may convert all damage from a critical to nonlethal damage, and can activate Touch of Serenity through the weapon or unarmed strike.
Aura of Calm
- Rule
- At 8th level, a tranquil guardian is immune to all spells and spell-like abilities with the emotion descriptor, as well as all fear effects. Each ally within 10 feet of her gains a +4 morale bonus on saving throws against these effects.
- This ability functions only while the tranquil guardian is conscious, not if she is unconscious or dead.
- Replaces
- aura of resolve (class feature 14)
- Replace with
- Aura of Calm (Su): Immune to emotion spells and spell-like abilities, and fear. Allies within 10 feet gain a +4 morale bonus on saves vs these effects.
Waves of Peace
- Rule
- At 11th level, a tranquil guardian may expend 2 uses of her Touch of Serenity to affect each opponent within 5 feet of her with that effect. She does not need to touch the creature for the effect to take hold. This ability replaces aura of justice.
- Replaces
- aura of justice (class feature 15)
- Replace with
- Waves of Peace (Su): Expend 2 uses of her Touch of Serenity to affect each opponent within 5'
Apostle of Peace
- Rule
- At 20th level, a tranquil guardian's DR increases to 10/evil, and whenever she channels positive energy or uses lay on hands to heal, she heals the maximum possible amount. In addition, any creature struck by her Touch of Serenity, even if it saves, must make an additional Will save (DC 10 + 1/2 her tranquil guardian level + her Charisma modifier) the next time it tries to attack. If it fails this save, the attack (including spells or special abilities) automatically fails.
- Replaces
- holy champion
- Replace with
="Apostle of Peace (Su): DR increases to 10/evil. Whenever you channel positive energy or uses lay on hands to heal a creature, you heal the maximum possible amount. "&"In addition, any creature struck by Touch of Serenity, even if it saves, must make an additional DC"&10 + TRUNC(lvl_Custom2/2) + i_CHAModif&" Will save the next time it tries to attack or the attack (including spells or special abilities) fails automatically"
Channel Energy
class feature 9
This string displays details about channeling energy, but it uses values from 3 other cells, and a SUBSTITUTE() operation I don't understand. But I DID finally figure out that the references were still pointing to Paladin (P), and that using OFFSET() could get the right values into my class feature description. :)
- Copied values at the end of the formula refer to the "Paladin (P)" row in the Classes table [COLUMN]87 (EB87, DZ87, ED87) - BUT in our custom class, they are lines in the Class Features, feature 10,11,12 are Bonus, Dice, and DC.
- so replace "CHANNELDICE",EB87),"CHANNELBONUS",DZ87),"CHANNELDC",ED87)) with -"CHANNELDICE",OFFSET($A$1,ROW()+1,COLUMN()-1)), "CHANNELBONUS",OFFSET($A$1,ROW(),COLUMN()-1)), "CHANNELDC",OFFSET($A$1,ROW()+2,COLUMN()-1)))
Abilities
(placeholder here)
I started with the Paladin (P) abilities as the core, but realized it wasn't quite right, so I copied its values to a new Ability and updated them.
Specifically, lvl_PaladinP isn't affected by levels in this archetype, so more than one effect doesn't end up with the right value.
Back to the Advanced Race Creation Guide
Back to the Advanced User Guide