diff --git a/nwn/nwnprc/trunk/2das/feat.2da b/nwn/nwnprc/trunk/2das/feat.2da index 8957d2e8..420dc0f1 100644 --- a/nwn/nwnprc/trunk/2das/feat.2da +++ b/nwn/nwnprc/trunk/2das/feat.2da @@ -323,7 +323,7 @@ 319 Knowledge_Domain_Power 5959 5975 id_knowledge **** **** **** **** **** **** **** **** **** **** 0 0 0 **** 5 **** **** 0.5 **** **** **** **** **** **** **** **** **** **** **** **** FEAT_KNOWLEDGE_DOMAIN_POWER 6 **** **** **** **** **** 0 1 320 Magic_Domain_Power 5960 5976 id_magic **** **** **** **** **** **** **** **** **** **** 0 0 0 **** 5 **** **** 0.5 **** **** **** **** **** **** **** **** **** **** **** **** FEAT_MAGIC_DOMAIN_POWER 6 **** **** **** **** **** 0 1 321 Plant_Domain_Power 5961 16827779 id_plant **** **** **** **** **** **** **** **** **** **** 0 0 0 **** 5 1729 **** 0.5 33 **** 1 **** **** **** **** **** **** **** **** **** FEAT_PLANT_DOMAIN_POWER 6 **** **** **** **** **** 0 1 -322 Sun_Domain_Power 5962 16827780 id_sun **** **** **** **** **** **** **** **** **** **** 0 0 0 **** 5 2651 **** 0.5 33 **** 1 **** **** **** **** **** **** **** **** **** FEAT_SUN_DOMAIN_POWER 6 **** **** **** **** **** 0 1 +322 Sun_Domain_Power 5962 16827780 id_sun **** **** **** **** **** **** **** **** **** **** 0 0 0 **** 5 2651 **** 0.5 33 **** 1 **** **** **** **** **** **** **** **** **** FEAT_SUN_DOMAIN_POWER 6 **** **** **** **** **** 0 0 323 Travel_Domain_Power 5963 16827781 id_travel **** **** **** **** **** **** **** **** **** **** 0 0 0 **** 5 1725 **** 0.5 1 **** 1 **** **** **** **** **** **** **** **** **** FEAT_TRAVEL_DOMAIN_POWER 6 **** **** **** **** **** 0 1 324 Trickery_Domain_Power 5964 16827782 id_trickery **** **** **** **** **** **** **** **** **** **** 0 0 0 10 5 384 **** 0.5 1 **** 1 **** **** **** **** **** **** **** **** **** FEAT_TRICKERY_DOMAIN_POWER 6 **** **** **** **** **** 0 1 325 Water_Domain_Power 5965 16827787 id_water **** **** **** **** **** **** **** **** **** **** 0 0 0 **** 5 1733 **** 0.5 33 **** 1 **** **** **** **** **** **** **** **** **** FEAT_WATER_DOMAIN_POWER 6 **** **** **** **** **** 0 1 @@ -24067,7 +24067,7 @@ 24063 SuperiorTwoWeaponFighting 16827155 16827156 ife_X2MightRage **** **** **** **** **** **** **** **** **** **** 0 0 0 **** **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** 4 **** **** **** **** **** 0 0 24064 TigerClawSynergy 16827157 16827158 ife_X2GWShp2 **** **** **** **** **** **** **** **** **** **** 0 0 0 **** **** **** **** 1 **** **** **** **** **** **** **** **** **** **** **** **** **** 4 **** **** **** **** **** 0 0 24065 RendingClaws 16827159 16827160 ife_X2GWShp1 **** **** **** **** **** **** **** **** **** **** 0 0 0 **** **** 17997 **** 1 **** **** 1 **** **** **** **** **** **** **** **** **** FEAT_BCM_RENDING_CLAWS 4 **** **** **** **** **** 0 0 -24066 PouncingStrike 16827161 16827162 ife_X2BaneEnem **** **** **** **** **** **** **** **** **** **** 0 0 0 **** **** 2085 **** 1 -1 **** 1 **** **** **** **** **** **** **** **** **** **** 4 **** **** **** **** **** 0 0 +24066 PouncingStrike 16827161 16827162 ife_X2BaneEnem **** **** **** **** **** **** **** **** **** **** 0 0 0 **** **** 2085 **** 1 -1 **** 0 **** **** **** **** **** **** **** **** **** FEAT_BCM_POUNCING_STRIKE 4 1 **** **** **** **** 0 0 24067 Shifting1 16827163 16827164 ife_wildshape **** **** **** **** **** **** **** **** **** **** 0 0 0 **** **** 2100 24068 1 1 **** 1 **** **** **** **** **** **** **** **** **** **** 4 **** **** **** **** **** 0 0 24068 Shifting2 16827163 16827164 ife_wildshape **** **** **** **** **** **** **** **** **** **** 0 0 0 **** **** 2100 24069 1 2 **** 1 **** **** **** **** **** **** **** **** **** **** 4 **** **** **** **** **** 0 0 24069 Shifting3 16827163 16827164 ife_wildshape **** **** **** **** **** **** **** **** **** **** 0 0 0 **** **** 2100 **** 1 3 **** 1 **** **** **** **** **** **** **** **** **** **** 4 **** **** **** **** **** 0 0 diff --git a/nwn/nwnprc/trunk/include/prc_inc_wpnrest.nss b/nwn/nwnprc/trunk/include/prc_inc_wpnrest.nss index 0a598923..6a8baaf2 100644 --- a/nwn/nwnprc/trunk/include/prc_inc_wpnrest.nss +++ b/nwn/nwnprc/trunk/include/prc_inc_wpnrest.nss @@ -1090,7 +1090,8 @@ void DoWeaponEquip(object oPC, object oItem, int nHand) { nSize++; // If you try and use the big weapons - if (nWeaponSize > nRealSize) + //if (nWeaponSize > nRealSize) + if (nWeaponSize > nRealSize && GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oPC) != OBJECT_INVALID) { SetCompositeAttackBonus(oPC, "MonkeyGripL", -2, ATTACK_BONUS_OFFHAND); SetCompositeAttackBonus(oPC, "MonkeyGripR", -2, ATTACK_BONUS_ONHAND); diff --git a/nwn/nwnprc/trunk/scripts/prc_dom_sun.nss b/nwn/nwnprc/trunk/scripts/prc_dom_sun.nss index e15b5c7a..36979989 100644 --- a/nwn/nwnprc/trunk/scripts/prc_dom_sun.nss +++ b/nwn/nwnprc/trunk/scripts/prc_dom_sun.nss @@ -1,7 +1,50 @@ +//:://///////////////////////////////////////////// +//:: Sun Domain Power +//:: prc_dom_sun.nss +//::////////////////////////////////////////////// +/* + Type of Feat: Domain. + + Specifics: Once per day, you can perform a greater turning + against undead in place of a regular turning. The greater + turning destroys undead instead of turning them. + + Use: Selected. +*/ +//::////////////////////////////////////////////// #include "inc_newspellbook" #include "prc_inc_domain" +#include "prc_inc_spells" + +void main() +{ + object oPC = OBJECT_SELF; + + // Used by the uses per day check code for bonus domains + if(!DecrementDomainUses(PRC_DOMAIN_SUN, oPC)) return; + + if(!CheckTurnUndeadUses(oPC, 1)) + { + SpeakStringByStrRef(40550); + return; + } + + // Mystics with sun domain can turn undead, but can't use greater turning + int bMystic = GetLevelByClass(CLASS_TYPE_MYSTIC, oPC) && GetHasFeat(FEAT_BONUS_DOMAIN_SUN, oPC); -void main() + if(bMystic) + { + if(!GetHasFeat(FEAT_TURN_UNDEAD, oPC)) + return; + } + + ActionDoCommand(SetLocalInt(oPC, "UsingSunDomain", TRUE)); + ActionCastSpellAtObject(SPELLABILITY_TURN_UNDEAD, oPC, METAMAGIC_ANY, TRUE); + ActionDoCommand(DelayCommand(0.1f, DeleteLocalInt(oPC, "UsingSunDomain"))); +} + + +/* void main() { object oPC = OBJECT_SELF; @@ -20,4 +63,4 @@ void main() ActionCastSpell(SPELLABILITY_TURN_UNDEAD); ActionDoCommand(DecrementRemainingFeatUses(oPC, FEAT_TURN_UNDEAD)); ActionDoCommand(DeleteLocalInt(oPC, "UsingSunDomain")); -} \ No newline at end of file +} */ \ No newline at end of file diff --git a/nwn/nwnprc/trunk/scripts/prc_forsaker.nss b/nwn/nwnprc/trunk/scripts/prc_forsaker.nss index e6084c79..ac5f48e6 100644 --- a/nwn/nwnprc/trunk/scripts/prc_forsaker.nss +++ b/nwn/nwnprc/trunk/scripts/prc_forsaker.nss @@ -9,6 +9,101 @@ #include "prc_inc_combat" #include "inc_dynconv" #include "prc_alterations" + +int PRCStackSpellResistance(object oPC) +{ + int nTotalSR = 0; + + // Racial Spell Resistance + int nRacialSR = 0; + if(GetHasFeat(FEAT_SPELL27, oPC)) nRacialSR = 27; + else if(GetHasFeat(FEAT_SPELL25, oPC)) nRacialSR = 25; + else if(GetHasFeat(FEAT_SPELL23, oPC)) nRacialSR = 23; + else if(GetHasFeat(FEAT_SPELL22, oPC)) nRacialSR = 22; + else if(GetHasFeat(FEAT_SPELL21, oPC)) nRacialSR = 21; + else if(GetHasFeat(FEAT_SPELL20, oPC)) nRacialSR = 20; + else if(GetHasFeat(FEAT_SPELL19, oPC)) nRacialSR = 19; + else if(GetHasFeat(FEAT_SPELL18, oPC)) nRacialSR = 18; + else if(GetHasFeat(FEAT_SPELL17, oPC)) nRacialSR = 17; + else if(GetHasFeat(FEAT_SPELL16, oPC)) nRacialSR = 16; + else if(GetHasFeat(FEAT_SPELL15, oPC)) nRacialSR = 15; + else if(GetHasFeat(FEAT_SPELL14, oPC)) nRacialSR = 14; + else if(GetHasFeat(FEAT_SPELL13, oPC)) nRacialSR = 13; + else if(GetHasFeat(FEAT_SPELL11, oPC)) nRacialSR = 11; + else if(GetHasFeat(FEAT_SPELL10, oPC)) nRacialSR = 10; + else if(GetHasFeat(FEAT_SPELL8, oPC)) nRacialSR = 8; + else if(GetHasFeat(FEAT_SPELL5, oPC)) nRacialSR = 5; + + if(nRacialSR > 0) + { + nTotalSR += nRacialSR + GetHitDice(oPC); // Base SR + 1 per level + } + + // Improved Spell Resistance feats (epic feats, +2 SR each, stackable) + int nImprovedSR = 0; + if(GetHasFeat(FEAT_EPIC_IMPROVED_SPELL_RESISTANCE_1, oPC)) nImprovedSR += 2; + if(GetHasFeat(FEAT_EPIC_IMPROVED_SPELL_RESISTANCE_2, oPC)) nImprovedSR += 2; + if(GetHasFeat(FEAT_EPIC_IMPROVED_SPELL_RESISTANCE_3, oPC)) nImprovedSR += 2; + if(GetHasFeat(FEAT_EPIC_IMPROVED_SPELL_RESISTANCE_4, oPC)) nImprovedSR += 2; + if(GetHasFeat(FEAT_EPIC_IMPROVED_SPELL_RESISTANCE_5, oPC)) nImprovedSR += 2; + if(GetHasFeat(FEAT_EPIC_IMPROVED_SPELL_RESISTANCE_6, oPC)) nImprovedSR += 2; + if(GetHasFeat(FEAT_EPIC_IMPROVED_SPELL_RESISTANCE_7, oPC)) nImprovedSR += 2; + if(GetHasFeat(FEAT_EPIC_IMPROVED_SPELL_RESISTANCE_8, oPC)) nImprovedSR += 2; + if(GetHasFeat(FEAT_EPIC_IMPROVED_SPELL_RESISTANCE_9, oPC)) nImprovedSR += 2; + if(GetHasFeat(FEAT_EPIC_IMPROVED_SPELL_RESISTANCE_10, oPC)) nImprovedSR += 2; + + nTotalSR += nImprovedSR; + + // Class-based Spell Resistance + int nMonkLvl = GetLevelByClass(CLASS_TYPE_MONK, oPC); + int nForsakerLvl = GetLevelByClass(CLASS_TYPE_FORSAKER, oPC); + int nEnlightenedFistLvl = GetLevelByClass(CLASS_TYPE_ENLIGHTENEDFIST, oPC); + int nDraconicMysteriesLvl = GetLevelByClass(CLASS_TYPE_INITIATE_DRACONIC, oPC); + int nSanctifiedMindLvl = GetLevelByClass(CLASS_TYPE_SANCTIFIED_MIND, oPC); + int nUrPriestLvl = GetLevelByClass(CLASS_TYPE_UR_PRIEST, oPC); + + // Monk Diamond Soul (level 13+) + if(nMonkLvl >= 13) + { + nTotalSR += (nMonkLvl + 10); + } + + // Forsaker SR + if(nForsakerLvl > 0) + { + nTotalSR += (10 + nForsakerLvl); + } + + // Enlightened Fist Diamond Soul (level 9+) + if(nEnlightenedFistLvl >= 9) + { + nTotalSR += (10 + nMonkLvl + nEnlightenedFistLvl); + } + + // Initiate of Draconic Mysteries (level 7+) + if(nDraconicMysteriesLvl >= 7) + { + nTotalSR += (15 + nDraconicMysteriesLvl); + } + + // Sanctified Mind Power Resistance (level 6+) + if(nSanctifiedMindLvl >= 6) + { + nTotalSR += (5 + GetHitDice(oPC)); + } + + // Ur-Priest Divine Spell Resistance + if(nUrPriestLvl >= 8) + { + nTotalSR += 20; // SR 20 at level 8+ + } + else if(nUrPriestLvl >= 4) + { + nTotalSR += 15; // SR 15 at level 4-7 + } + + return nTotalSR; +} void main() { @@ -37,7 +132,13 @@ void main() int nForsakerLvlCheck; int nBonus = nForsakerLvl/2; int nRegen = 1 + nForsakerLvl/4; - int nSR = 10 + nForsakerLvl; + int nSR = 10 + nForsakerLvl; + + // Calculate stacked spell resistance for Forsaker special case + int nTotalSR = PRCStackSpellResistance(oPC); + + // Apply combined SR as single property + IPSafeAddItemProperty(oSkin, ItemPropertyBonusSpellResistance(GetSRByValue(nTotalSR)), 0.0, X2_IP_ADDPROP_POLICY_REPLACE_EXISTING, FALSE, FALSE); if(nEvent == FALSE) { diff --git a/nwn/nwnprc/trunk/scripts/prc_hexbl_comp.nss b/nwn/nwnprc/trunk/scripts/prc_hexbl_comp.nss index 5a8000cb..984a7208 100644 --- a/nwn/nwnprc/trunk/scripts/prc_hexbl_comp.nss +++ b/nwn/nwnprc/trunk/scripts/prc_hexbl_comp.nss @@ -34,7 +34,9 @@ void main() eLink = EffectLinkEffects(eLink, EffectVisualEffect(VFX_DUR_GLOW_GREY));//VFX_DUR_PROT_PRC_SHADOW_ARMOR eLink = EffectLinkEffects(eLink, EffectCutsceneGhost()); eLink = EffectLinkEffects(eLink, EffectEthereal()); + eLink = TagEffect(eLink, "DARK_COMPANION"); eLink = UnyieldingEffect(eLink); + ApplyEffectToObject(DURATION_TYPE_PERMANENT, eLink, oCompanion); } \ No newline at end of file diff --git a/nwn/nwnprc/trunk/scripts/prc_hexbl_compai.nss b/nwn/nwnprc/trunk/scripts/prc_hexbl_compai.nss index 309a0d0c..550e89a3 100644 --- a/nwn/nwnprc/trunk/scripts/prc_hexbl_compai.nss +++ b/nwn/nwnprc/trunk/scripts/prc_hexbl_compai.nss @@ -10,31 +10,75 @@ * This just tells it to follow the master and do nothing else. */ -#include "inc_debug" - -void main() -{ - object oMaster = GetMaster(); - - if(!GetIsObjectValid(oMaster)) - { - SetIsDestroyable(TRUE, FALSE, FALSE); - DestroyObject(OBJECT_SELF, 0.2); - } - - // Forces it to move to the master's attack target so it take the penalty. - if(GetIsInCombat(oMaster)) - { - object oMove = GetAttackTarget(oMaster); - if(GetIsObjectValid(oMove)) - { - ClearAllActions(TRUE); - ActionForceFollowObject(GetAttackTarget(oMaster), 1.0f); - } - } - else - { - ClearAllActions(TRUE); - ActionForceFollowObject(oMaster, 4.0f); - } +#include "inc_debug" +#include "prc_misc_const" + +void main() +{ + object oMaster = GetMaster(); + + if(!GetIsObjectValid(oMaster)) + { + SetIsDestroyable(TRUE, FALSE, FALSE); + DestroyObject(OBJECT_SELF, 0.2); + return; + } + + // Check for missing DARK_COMPANION effects and reapply if needed + int bHasAOE = FALSE; + int bHasGhost = FALSE; + int bHasEthereal = FALSE; + + effect eCheck = GetFirstEffect(OBJECT_SELF); + while(GetIsEffectValid(eCheck)) + { + if(GetEffectTag(eCheck) == "DARK_COMPANION") + { + int nType = GetEffectType(eCheck); + if(nType == EFFECT_TYPE_AREA_OF_EFFECT) bHasAOE = TRUE; + if(nType == EFFECT_TYPE_CUTSCENEGHOST) bHasGhost = TRUE; + if(nType == EFFECT_TYPE_ETHEREAL) bHasEthereal = TRUE; + } + eCheck = GetNextEffect(OBJECT_SELF); + } + + // Reapply all effects if any are missing + if(!bHasAOE || !bHasGhost || !bHasEthereal) + { + // Remove any existing DARK_COMPANION effects first + eCheck = GetFirstEffect(OBJECT_SELF); + while(GetIsEffectValid(eCheck)) + { + if(GetEffectTag(eCheck) == "DARK_COMPANION") + { + RemoveEffect(OBJECT_SELF, eCheck); + } + eCheck = GetNextEffect(OBJECT_SELF); + } + + // Reapply the complete effect package + effect eLink = EffectAreaOfEffect(VFX_PER_10_FT_INVIS, "prc_hexbl_comp_a", "prc_hexbl_comp_c", ""); + eLink = EffectLinkEffects(eLink, EffectVisualEffect(VFX_DUR_GLOW_GREY)); + eLink = EffectLinkEffects(eLink, EffectCutsceneGhost()); + eLink = EffectLinkEffects(eLink, EffectEthereal()); + eLink = TagEffect(eLink, "DARK_COMPANION"); + eLink = SupernaturalEffect(eLink); + ApplyEffectToObject(DURATION_TYPE_PERMANENT, eLink, OBJECT_SELF); + } + + // Movement logic + if(GetIsInCombat(oMaster)) + { + object oMove = GetAttackTarget(oMaster); + if(GetIsObjectValid(oMove)) + { + ClearAllActions(TRUE); + ActionForceFollowObject(GetAttackTarget(oMaster), 1.0f); + } + } + else + { + ClearAllActions(TRUE); + ActionForceFollowObject(oMaster, 4.0f); + } } \ No newline at end of file diff --git a/nwn/nwnprc/trunk/spells/sp_otiluke_rs.nss b/nwn/nwnprc/trunk/spells/sp_otiluke_rs.nss index 10d20d6e..141201fb 100644 --- a/nwn/nwnprc/trunk/spells/sp_otiluke_rs.nss +++ b/nwn/nwnprc/trunk/spells/sp_otiluke_rs.nss @@ -49,8 +49,8 @@ void main() //Make SR check if (!PRCDoResistSpell(OBJECT_SELF, oTarget,nCasterLvl)) { - //Make Forttude save - if (!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, (PRCGetSaveDC(oTarget,OBJECT_SELF)), SAVING_THROW_TYPE_NONE)) + //Make Reflex save + if (!PRCMySavingThrow(SAVING_THROW_REFLEX, oTarget, (PRCGetSaveDC(oTarget,OBJECT_SELF)), SAVING_THROW_TYPE_NONE)) { //Set local to signify the target SetLocalInt(oTarget, "PRC_OTILUKES_RS_TARGET", 1); diff --git a/nwn/nwnprc/trunk/tlk/prc8_consortium.tlk b/nwn/nwnprc/trunk/tlk/prc8_consortium.tlk index 5194bf16..d05e8017 100644 Binary files a/nwn/nwnprc/trunk/tlk/prc8_consortium.tlk and b/nwn/nwnprc/trunk/tlk/prc8_consortium.tlk differ diff --git a/nwn/nwnprc/trunk/tlk/prc8_consortium.tlk.xml b/nwn/nwnprc/trunk/tlk/prc8_consortium.tlk.xml index ca88f44c..8c8856c5 100644 --- a/nwn/nwnprc/trunk/tlk/prc8_consortium.tlk.xml +++ b/nwn/nwnprc/trunk/tlk/prc8_consortium.tlk.xml @@ -10022,8 +10022,7 @@ Combining the dynamic powers of martial prowess and arcane might, the Hexblade p - Alignment Restrictions: non-good only - Hit Die: d10 -- Proficiencies: Hexblades are proficient with all simple and martial weapons, and with light armor but not with shields. - +- Proficiencies: Hexblades are proficient with all simple and martial weapons, and with light armor but not with shields. - Skill Points: 2+ Int Modifier. CLASS FEATURES: @@ -47005,7 +47004,7 @@ All frostragers are barbarians to some degree, although many are multiclass barb - Hit Die: d12 - Proficiencies: A frostrager does not gain any additional weapon or armor proficiencies. -- Skill Points: 2+ Int Modifier. +- Skill Points: 2+ Int Modifier. REQUIREMENTS: @@ -47063,7 +47062,7 @@ Most sacred purifiers are clerics (often of Pelor), but paladins have also been - Hit Die: d8 - Proficiencies: A sacred purifier does not gain any additional weapon or armor proficiencies. -- Skill Points: 2+ Int Modifier. +- Skill Points: 2+ Int Modifier. REQUIREMENTS: @@ -47109,7 +47108,7 @@ If you have a disciplined worldview and a certain level of combat prowess, and y - Hit Die: d8 - Proficiencies: A serene guardian does not gain any additional weapon or armor proficiencies. -- Skill Points: 2+ Int Modifier. +- Skill Points: 2+ Int Modifier. REQUIREMENTS: @@ -48217,7 +48216,7 @@ You get a 2nd use at 4th, 3rd at 6th, 4th at 8th, and 5th at 10th levels. You al Use: Selected Undead Bear Undead Panther - Undead Wolve + Undead Wolf Undead Boar Undead Badger Animate Dead Animal @@ -48298,7 +48297,7 @@ Fighters and paladins are well served by becoming battlesmiths. Spellcasters are - Hit Die: d10 - Proficiencies: A battlesmith gains no additional proficiencies -- Skill Points: 2+ Int Modifier. +- Skill Points: 2+ Int Modifier. REQUIREMENTS: @@ -48349,7 +48348,7 @@ Some believe that the ultimate expression of the warforged experiment is the jug - Hit Die: d12 - Proficiencies: A Warforged Juggernaut gains no additional proficiencies -- Skill Points: 2+ Int Modifier. +- Skill Points: 2+ Int Modifier. REQUIREMENTS: @@ -48415,7 +48414,7 @@ As members of this prestige class must have the ability to cast arcane spells, f - Hit Die: d4 - Proficiencies: A Frost Mage gains no additional proficiencies -- Skill Points: 2+ Int Modifier. +- Skill Points: 2+ Int Modifier. REQUIREMENTS: @@ -48463,7 +48462,7 @@ Most wayfarer guides are wizards or sorcerers, though a few clerics with access - Hit Die: d6 - Proficiencies: A Wayfarer Guide gains no additional proficiencies -- Skill Points: 2+ Int Modifier. +- Skill Points: 2+ Int Modifier. REQUIREMENTS: @@ -48614,7 +48613,7 @@ Over a dozen deities have worshipers who are paladins, promoting law and good ac - Hit Die: d8 - Proficiencies: Knights of the Weave gain no proficiencies -- Skill Points: 2+ Int Modifier. +- Skill Points: 2+ Int Modifier. REQUIREMENTS: @@ -48654,7 +48653,7 @@ Spelldancers are an energetic sort of spellcaster who draw on the quasi-primal e - Hit Die: d6 - Proficiencies: Spelldancers gain no proficiencies -- Skill Points: 2+ Int Modifier. +- Skill Points: 2+ Int Modifier. REQUIREMENTS: @@ -50362,7 +50361,7 @@ Ur-priests despise gods. However, a small number of them have learned to tap int - Hit Die: d8 - Proficiencies: An ur-priest does not gain any additional weapon or armor proficiencies. -- Skill Points: 2+ Int Modifier. +- Skill Points: 2+ Int Modifier. REQUIREMENTS: @@ -51817,7 +51816,7 @@ and her companions. The wild mage accepts this as the price of her convictions. - Hit Die: d4 - Proficiencies: A Wild Mage gains no additional proficiencies -- Skill Points: 2+ Int Modifier. +- Skill Points: 2+ Int Modifier. REQUIREMENTS: @@ -51863,7 +51862,7 @@ Other spellcasters don't understand the force missile mages' dedication to only - Hit Die: d4 - Proficiencies: A Force Missile gains no additional proficiencies -- Skill Points: 2+ Int Modifier. +- Skill Points: 2+ Int Modifier. REQUIREMENTS: @@ -68727,7 +68726,7 @@ Magic is evil. Magic tempts. Magic perverts. Magic corrupts. Anyone who cannot e - Hit Die: d12 - Proficiencies: Forsakers gain no proficiencies -- Skill Points: 2+ Int Modifier. +- Skill Points: 2+ Int Modifier. REQUIREMENTS: @@ -76815,4 +76814,4 @@ Specifics: You gain a +4 perfection bonus on Will saving throws against charm an Type of Feat: Exalted Prerequisite: Wis 13+ Specifics: You gain a +2 bonus on saving throws to resist any fear effect, despair effect (such as the crushing despair spell), or similar mind-affecting condition, but not charms or compulsions (such as the charm person and dominate person spells) - + \ No newline at end of file diff --git a/nwn/nwnprc/trunk/tlk/prc_consortium.tlk b/nwn/nwnprc/trunk/tlk/prc_consortium.tlk index 5194bf16..d05e8017 100644 Binary files a/nwn/nwnprc/trunk/tlk/prc_consortium.tlk and b/nwn/nwnprc/trunk/tlk/prc_consortium.tlk differ