Fixed Sigmata radials

Fixed Sigmata radials.  Added spiritual weapon sanity checks.  Forsaker & Vow of Poverty fixes by @Fencas.  Updated Saint template.  Fixed minor TLK updates.  Updated release archive.
This commit is contained in:
Jaysyn904 2024-12-28 22:43:13 -05:00
parent 99298bfadc
commit 7a4dc4dffc
12 changed files with 55 additions and 32 deletions

BIN
Release/PRC8_20241228.7z Normal file

Binary file not shown.

View File

@ -2192,11 +2192,11 @@
2188 RKVDivineFury 16827175 is_ShadShld T P vs 0x3a 0x09 tob_rby_divfury **** **** **** **** **** **** 8 1500 hand **** **** vco_lgrinodd01 sco_lgrinodd01 vs_chant_illu_hm vs_chant_illu_hf self 1000 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** 12 **** 1 16829171 1 0 **** 0 **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
2189 Summon_Familiar 16825363 ife_familiar V S s 0x00 0x0c nw_s2_familiar **** **** **** **** **** **** 1 500 head **** **** **** **** **** **** out 500 **** **** **** **** 0 **** **** **** **** **** **** 1 **** **** **** **** **** **** **** 3 **** 0 0 53216 0 3161 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
2190 RavageGoldenIce 16823002 ife_MagWeap V M v 0x00 0x3a gen_sptouchice **** **** **** **** **** **** 3 1500 hand **** vco_mehanfire03 **** sco_mehancold01 vs_chant_conj_lm vs_chant_conj_lf out 1700 **** **** **** **** 0 **** **** **** **** path Poison 1 **** **** **** **** **** 2 **** 4 **** 0 0 **** 1 **** **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
2191 SPELL_STIGMATA 16823008 **** V P s 0x00 0x02 gensp_stigmata **** **** **** **** **** **** 1 1500 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 0 2192 2193 2194 2195 **** **** **** 3 **** 0 0 **** 0 3163 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
2192 SPELL_STIGMATA5 16823004 ife_layon V P vs **** 0x02 gensp_stigmata **** **** **** **** **** **** 3 1500 hand **** vco_mehannatr02 **** sco_mehannatr02 **** **** out 1000 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** **** 2191 3 **** 0 0 **** 0 525995099 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
2193 SPELL_STIGMATA2 16823007 ife_layon V P vs **** 0x02 gensp_stigmata **** **** **** **** **** **** 3 1500 hand **** vco_mehannatr02 **** sco_mehannatr02 **** **** out 1000 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** **** 2191 3 **** 0 0 **** 0 525798491 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
2194 SPELL_STIGMATA3 16823006 ife_layon V P vs **** 0x02 gensp_stigmata **** **** **** **** **** **** 3 1500 hand **** vco_mehannatr02 **** sco_mehannatr02 **** **** out 1000 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** **** 2191 3 **** 0 0 **** 0 525864027 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
2195 SPELL_STIGMATA4 16823005 ife_layon V P vs **** 0x02 gensp_stigmata **** **** **** **** **** **** 3 1500 hand **** vco_mehannatr02 **** sco_mehannatr02 **** **** out 1000 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** **** 2191 3 **** 0 0 **** 0 525929563 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
2191 SPELL_STIGMATA 16825908 **** V P s 0x00 0x02 gensp_stigmata **** **** **** **** **** **** 1 1500 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** 0 2192 2193 2194 2195 **** **** **** 3 16825909 0 0 **** 0 3163 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
2192 SPELL_STIGMATA5 16825904 ife_layon V P vs **** 0x02 gensp_stigmata **** **** **** **** **** **** 3 1500 hand **** vco_mehannatr02 **** sco_mehannatr02 **** **** out 1000 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** **** 2191 3 16825909 0 0 **** 0 525995099 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
2193 SPELL_STIGMATA2 16825907 ife_layon V P vs **** 0x02 gensp_stigmata **** **** **** **** **** **** 3 1500 hand **** vco_mehannatr02 **** sco_mehannatr02 **** **** out 1000 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** **** 2191 3 16825909 0 0 **** 0 525798491 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
2194 SPELL_STIGMATA3 16825906 ife_layon V P vs **** 0x02 gensp_stigmata **** **** **** **** **** **** 3 1500 hand **** vco_mehannatr02 **** sco_mehannatr02 **** **** out 1000 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** **** 2191 3 16825909 0 0 **** 0 525864027 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
2195 SPELL_STIGMATA4 16825905 ife_layon V P vs **** 0x02 gensp_stigmata **** **** **** **** **** **** 3 1500 hand **** vco_mehannatr02 **** sco_mehannatr02 **** **** out 1000 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** **** 2191 3 16825909 0 0 **** 0 525929563 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
2196 SPELL_HOLYRADIANCE 16825910 ife_holyrad V P vs 0x00 0x09 gensp_holyrad **** **** **** **** **** **** 1 0 head vco_mehanholy01 **** **** sco_mehanholy01 **** **** up 0 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** 8 **** 3 **** 0 0 **** 0 3164 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
2197 FEAT_ANIMALMASTERY 16825924 is_GenDomain C P vs 0x00 0x01 tamer_cvanimal **** **** **** **** **** **** 1 1500 head vco_mehanholy01 **** **** sco_mehanholy01 **** **** up 1000 **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** 8 **** 3 **** 0 0 **** 0 3160 **** **** 0 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****
2198 IncreaseUnarmedEpic 16825981 ife_cripple V L vs 0x00 0x32 ini_epicinc **** **** **** **** **** **** 5 0 **** **** **** **** **** **** **** **** **** **** **** **** **** 0 **** **** **** **** **** **** 0 **** **** **** **** **** **** **** 3 **** **** 0 **** 0 3186 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****

View File

@ -189,7 +189,9 @@ void SetDeityByClass(object oCreature)
if(GetLevelByClass(CLASS_TYPE_PRC_EYE_OF_GRUUMSH, oCreature) > 0 ) SetDeity(oCreature, "Gruumsh");
if(GetLevelByClass(CLASS_TYPE_JUDICATOR, oCreature) > 0 ) SetDeity(oCreature, "Selvetarm");
//if(GetLevelByClass(CLASS_TYPE_JUDICATOR, oCreature) > 0 ) SetDeity(oCreature, "Selvetarm");
if(GetLevelByClass(CLASS_TYPE_JUDICATOR, oCreature) > 0 ) SetDeity(oCreature, "Lolth");
if(GetLevelByClass(CLASS_TYPE_OCULAR, oCreature) > 0 ) SetDeity(oCreature, "Great Mother");
@ -794,6 +796,11 @@ void HandleSpiritualWeaponUnequipEvent()
// Get the item that was unequipped
object oWeapon = GetPCItemLastUnequipped();
if(GetIsPC(oSummon) == TRUE)
{
return;
}
int nCasterLevel = PRCGetCasterLevel(oCaster);
int nDuration = nCasterLevel;
int nPenetr = nCasterLevel + SPGetPenetr();

View File

@ -155,7 +155,7 @@
151 Arctic_Dwarf Ad 16826721 16826722 16826723 16826724 16826725 **** 2 4 -2 0 -2 0 2 20 7 RACE_FEAT_ARCDW 8157 1 RACIAL_TYPE_ARC_DWARF 50 7 1 dwarf **** **** **** 4 30 3 1 INT 261
152 Gold_Dwarf Gd 16826726 16826727 16826728 16826729 16826730 **** 0 0 -2 0 0 0 2 20 4 RACE_FEAT_GDWA 8157 1 RACIAL_TYPE_GOLD_DWARF 50 4 1 dwarf **** **** **** 4 30 3 1 INT 261
153 Gray_Dwarf Du 16826731 16826731 16826732 16826731 16826734 **** 0 0 0 0 -4 0 2 20 4 RACE_FEAT_DUERG 16826910 1 RACIAL_TYPE_DUERGAR 40 4 1 duergar **** **** **** 4 30 3 1 INT 261
154 EmptyVessel Ev 16852282 16852282 16852283 16852284 16852285 **** 6 0 0 0 0 0 0 30 145 RACE_FEAT_EMPTYV 8163 1 RACIAL_TYPE_EMPTY_VESSEL 40 145 1 empty_vessel **** 1 1 4 30 3 1 INT 261
154 EmptyVessel Ev 16852282 16852282 16852283 16852284 16852285 **** 6 0 0 0 0 0 0 30 145 RACE_FEAT_EMPTYV 8163 1 RACIAL_TYPE_EMPTY_VESSEL 40 145 1 human **** 1 1 4 30 3 1 INT 261
155 Urdunnir Ud 16826740 16826740 16826741 16826742 16826743 **** 0 0 0 0 -2 0 2 20 4 RACE_FEAT_URDIN 16826911 1 RACIAL_TYPE_URDINNIR 50 4 1 dwarf **** **** **** 4 30 3 1 INT 261
156 Wild_Dwarf Wd 16826744 16826745 16826746 16826747 16826748 **** 2 0 0 0 -2 0 2 20 0 RACE_FEAT_WDWARF 16826911 1 RACIAL_TYPE_WILD_DWARF 50 0 1 dwarf **** **** **** 4 30 3 1 INT 261
157 **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** **** ****

View File

@ -45,7 +45,7 @@ void main()
object oShield;
object oSkin = GetPCSkin(oPC);
int nSlot;
int nEvent = GetRunningEvent();
int nEvent = GetCurrentlyRunningEvent();
int nLevel = GetCharacterLevel(oPC);
int nLevelCheck;
int nACArmor = 4+nLevel/3;
@ -161,13 +161,17 @@ void main()
FloatingTextStringOnCreature(GetName(oItem)+" would break your vow!", oPC, FALSE);
}
}
if(DEBUG) DoDebug("ft_vowofpoverty: Adding eventhooks");
AddEventScript(oPC, EVENT_ONPLAYEREQUIPITEM, "ft_vowofpoverty", TRUE, FALSE);
AddEventScript(oPC, EVENT_ONPLAYERUNEQUIPITEM, "ft_vowofpoverty", TRUE, FALSE);
oItem = GetPCItemLastUnequipped();
if((IPGetIsMeleeWeapon(oItem) || GetWeaponRanged(oItem)))
{
IPRemoveAllItemProperties(oItem, DURATION_TYPE_PERMANENT); //Remove bonus from unequiped weapons
}
AddEventScript(oPC, EVENT_SCRIPT_MODULE_ON_EQUIP_ITEM, "ft_vowofpoverty", TRUE, FALSE);
}
// We are called from the OnPlayerUnEquipItem eventhook. Remove OnHitCast: Unique Power from oPC's weapon
else if(nEvent == EVENT_ONPLAYEREQUIPITEM)
else if(nEvent == EVENT_SCRIPT_MODULE_ON_EQUIP_ITEM)
{
oItem = GetPCItemLastEquipped();
int iWeaponAllowed = GetBaseItemType(oItem) == BASE_ITEM_CLUB
@ -186,18 +190,17 @@ void main()
|| GetBaseItemType(oItem) == BASE_ITEM_KATAR
|| GetBaseItemType(oItem) == BASE_ITEM_HEAVY_MACE
|| GetBaseItemType(oItem) == BASE_ITEM_BULLET;
if(GetIsItemPropertyValid(GetFirstItemProperty(oItem)) || !iWeaponAllowed) //Check if weapon is magical or not on allowed list
if((IPGetIsMeleeWeapon(oItem) || GetWeaponRanged(oItem)) &&
(GetIsItemPropertyValid(GetFirstItemProperty(oItem)) || !iWeaponAllowed)) //Check if weapon is magical or not on allowed list
{
if(!(GetBaseItemType(oItem) == BASE_ITEM_SLING && GetItemPropertyType(GetFirstItemProperty(oItem)) == ITEM_PROPERTY_MIGHTY)) //Allow Mighty Bonus on Slings
{
AssignCommand(oPC, ClearAllActions(TRUE));
AssignCommand(oPC, ActionUnequipItem(oItem));
FloatingTextStringOnCreature(GetName(oItem)+" would break your vow!", oPC, FALSE);
}
}
else if(nEvent == EVENT_ONPLAYERUNEQUIPITEM)
{
oItem = GetItemLastUnequipped();
if((IPGetIsMeleeWeapon(oItem) || GetWeaponRanged(oItem))) IPRemoveAllItemProperties(oItem, DURATION_TYPE_PERMANENT); //Remove bonus from unequiped weapons
}
}

View File

@ -77,7 +77,6 @@ void main()
object oSummon = GetItemPossessor(oWeapon); // The wielder of the weapon
object oTarget = PRCGetSpellTargetObject(); // The creature being attacked
object oCaster = GetLocalObject(oSummon, "MY_CASTER"); // Retrieve the stored caster
object oPC = GetFirstPC(); // First player character for debug messages
int nRunEvent = GetRunningEvent();
@ -85,7 +84,13 @@ void main()
{
oSummon = GetPCItemLastUnequippedBy();
oWeapon = GetPCItemLastUnequipped();
SendMessageToPC(GetFirstPC(), "prc_evnt_spirwep: Item OnUnEquip / OnUnAcquire Event running.");
if(GetIsPC(oSummon) == TRUE)
{
return;
}
if(DEBUG) DoDebug("prc_evnt_spirwep: Item OnUnEquip / OnUnAcquire Event running.");
HandleSpiritualWeaponUnequipEvent();
return;
}

View File

@ -27,7 +27,6 @@ void main()
int nRegen = 1 + nClass/4;
int nSR = 10 + nClass;
int nEvent = GetCurrentlyRunningEvent();
//PostString(oPC, "prc_forsaker running, event: " + IntToString(nEvent), 0, 0, SCREEN_ANCHOR_TOP_LEFT, 20.0, 0xFF0000FF, 0x00000000);
// We aren't being called from any event, instead from EvalPRCFeats
if(nEvent == FALSE)
@ -95,7 +94,9 @@ void main()
{
oItem = GetPCItemLastEquipped();
//Check if weapons are magical
if(GetIsItemPropertyValid(GetFirstItemProperty(oItem)) && (IPGetIsMeleeWeapon(oItem) || GetWeaponRanged(oItem))) //Check if weapon is magical or not on allowed list
if(GetIsItemPropertyValid(GetFirstItemProperty(oItem)) && (IPGetIsMeleeWeapon(oItem) || GetWeaponRanged(oItem)) &&
!(GetBaseItemType(oItem) == BASE_ITEM_SLING && GetItemPropertyType(GetFirstItemProperty(oItem)) == ITEM_PROPERTY_MIGHTY))
//Check if weapon is magical or not on allowed list
{
AssignCommand(oPC, ClearAllActions(TRUE));
AssignCommand(oPC, ActionUnequipItem(oItem));
@ -120,4 +121,11 @@ void main()
}
}
}
//Add AC bonus for rage
//else if(nEvent == EVENT_ONHEARTBEAT)
//{
// PostString(oPC, "Tum tum", 0, 0, SCREEN_ANCHOR_TOP_LEFT, 20.0, 0xFF0000FF, 0x00000000);
// if (nClass >= 3) ApplyEffectToObject(DURATION_TYPE_PERMANENT, EffectACIncrease(GetAbilityModifier(ABILITY_CONSTITUTION, oPC), AC_NATURAL_BONUS), oPC);
//}
}

View File

@ -227,7 +227,7 @@ void main()
//:: Setup Holy Touch extra damage vs evil
object oItem = GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oPC);
effect eEffect1 = VersusAlignmentEffect(EffectDamageIncrease(7, DAMAGE_TYPE_DIVINE), 0, ALIGNMENT_EVIL);
effect eEffect1 = VersusAlignmentEffect(EffectDamageIncrease(DAMAGE_BONUS_1d6, DAMAGE_TYPE_DIVINE), 0, ALIGNMENT_EVIL);
effect eEffect2 = VersusAlignmentEffect(EffectDamageIncrease(DAMAGE_BONUS_2, DAMAGE_TYPE_DIVINE), 0, ALIGNMENT_EVIL);
eEffect2 = VersusRacialTypeEffect(eEffect2, RACIAL_TYPE_OUTSIDER);
effect eEffect3 = VersusAlignmentEffect(EffectDamageIncrease(DAMAGE_BONUS_2, DAMAGE_TYPE_DIVINE), 0, ALIGNMENT_EVIL);

View File

@ -20961,7 +20961,7 @@ Sharess is a paradoxical deity. Originally, she was a war goddess of the Mulhora
- Hit Die: d6
- Proficiencies: Celebrants of Sharess gain no proficiencies
- Skill Points: 6 + Int Modifier.
- Skill Points: 6+ Int modifier.
REQUIREMENTS:
@ -48937,7 +48937,7 @@ Those they name as heretics or servants of evil call them zealots. Those they pr
- Hit Die: d8
- Proficiencies: Shadowbane Stalkers gain no proficiencies.
- Skill Points: 6 + Int Modifier.
- Skill Points: 6+ Int modifier.
REQUIREMENTS: