2025/06/05 Late Update

Expanded Hand of the Winged Masters for epic progression.
Expanded Crusader for epic progression.
Expanded Swordsage for epic progression.
Tweaked Warblade's epic bonus feat list.
Updated iprp_casterlvl.2da to allow higher DC for Runecrafting.
Updated Aligned Aura, Soldiers of Sanctity, Divine Protection, Tortiseshell & Mantle of Egregious Might to give correct AC type.
This commit is contained in:
Jaysyn904
2025-06-05 23:35:34 -04:00
parent 9121e8fc6b
commit 3eae65b914
25 changed files with 4348 additions and 3419 deletions

View File

@@ -149,6 +149,9 @@ const int FEAT_EPIC_RAGE_MAGE = 25112;
const int FEAT_EPIC_DRAGONHEART_MAGE = 25113;
const int FEAT_EPIC_SWIFT_WING = 25114;
const int FEAT_EPIC_DIAMOND_DRAGON = 25115;
const int FEAT_EPIC_CRUSADER = 25116;
const int FEAT_EPIC_SWORDSAGE = 25117;
const int FEAT_EPIC_WARBLADE = 25118;
//:: Vile Martial Strike Expansion
const int FEAT_VILE_MARTIAL_EAGLE_CLAW = 24800;
@@ -978,11 +981,21 @@ const int FEAT_SPECIAL_SNEAK_ATTACK_2D6 = 3940;
const int FEAT_SPECIAL_SNEAK_ATTACK_3D6 = 3941;
const int FEAT_SPECIAL_SNEAK_ATTACK_4D6 = 3942;
const int FEAT_SPECIAL_SNEAK_ATTACK_5D6 = 3943;
const int FEAT_SPECIAL_SNEAK_ATTACK_6D6 = 24901;
const int FEAT_SPECIAL_SNEAK_ATTACK_7D6 = 24902;
const int FEAT_SPECIAL_SNEAK_ATTACK_8D6 = 24903;
const int FEAT_SPECIAL_SNEAK_ATTACK_9D6 = 24904;
const int FEAT_SPECIAL_SNEAK_ATTACK_10D6 = 24905;
const int FEAT_SPECIAL_SKIRMISH_1D6 = 3944;
const int FEAT_SPECIAL_SKIRMISH_2D6 = 3945;
const int FEAT_SPECIAL_SKIRMISH_3D6 = 3946;
const int FEAT_SPECIAL_SKIRMISH_4D6 = 3947;
const int FEAT_SPECIAL_SKIRMISH_5D6 = 3948;
const int FEAT_SPECIAL_SKIRMISH_6D6 = 24911;
const int FEAT_SPECIAL_SKIRMISH_7D6 = 24912;
const int FEAT_SPECIAL_SKIRMISH_8D6 = 24913;
const int FEAT_SPECIAL_SKIRMISH_9D6 = 24914;
const int FEAT_SPECIAL_SKIRMISH_10D6 = 24915;
const int FEAT_IMP_DRAGONFIRE_STRIKE = 3950;
const int FEAT_MASTERS_GIFT = 3951;
const int FEAT_TRUE_STEALTH = 3952;

View File

@@ -184,7 +184,7 @@ itemproperty ItemPropertyCastSpellCasterLevel(int nSpell, int nLevel)
itemproperty ItemPropertyCastSpellDC(int nSpell, int nDC)
{
//convert nSpell into reference to iprip_spells.2da
//convert nSpell into reference to iprp_spells.2da
nSpell = IPGetIPConstCastSpellFromSpellID(nSpell);
itemproperty ipReturn;

View File

@@ -158,7 +158,35 @@ int GetRogueSneak(object oPC)
iClassLevel = GetLevelByClass(CLASS_TYPE_UMBRAL_DISCIPLE, oPC);
if (iClassLevel) iRogueSneak += (iClassLevel + 1) / 3;
//Dragon Devotee and Hand of the Winged Masters
// Dragon Devotee and Hand of the Winged Masters
int nBonusFeatDice = 0;
int nCount;
// First check for 10d6 to 6d6 (second 2DA range: 24905<30>24901)
for(nCount = FEAT_SPECIAL_SNEAK_ATTACK_10D6; nCount >= FEAT_SPECIAL_SNEAK_ATTACK_6D6; nCount--)
{
if (GetHasFeat(nCount, oPC))
{
nBonusFeatDice = nCount - FEAT_SPECIAL_SNEAK_ATTACK_6D6 + 6;
//if (DEBUG) DoDebug("prc_inc_sneak: Bonus Sneak Dice: " + IntToString(nBonusFeatDice));
break;
}
}
// If nothing found yet, check original range 5d6 to 1d6
if (nBonusFeatDice == 0)
{
for(nCount = FEAT_SPECIAL_SNEAK_ATTACK_5D6; nCount >= FEAT_SPECIAL_SNEAK_ATTACK_1D6; nCount--)
{
if (GetHasFeat(nCount, oPC))
{
nBonusFeatDice = nCount - FEAT_SPECIAL_SNEAK_ATTACK_1D6 + 1;
//if (DEBUG) DoDebug("prc_inc_sneak: Bonus Sneak Dice: " + IntToString(nBonusFeatDice));
break;
}
}
}
/* //Dragon Devotee and Hand of the Winged Masters
int nBonusFeatDice = 0;
int nCount;
for(nCount = FEAT_SPECIAL_SNEAK_ATTACK_5D6; nCount >= FEAT_SPECIAL_SNEAK_ATTACK_1D6; nCount--)
@@ -169,7 +197,7 @@ int GetRogueSneak(object oPC)
//if (DEBUG) DoDebug("prc_inc_sneak: Bonus Sneak Dice: " + IntToString(nBonusFeatDice));
break;
}
}
} */
//:: Shadowbane Inquisitor
iClassLevel = GetLevelByClass(CLASS_TYPE_SHADOWBANE_INQUISITOR, oPC);
@@ -697,4 +725,6 @@ int GetFavouredEnemyBonus(object oPC)
if (DEBUG) DoDebug("prc_inc_sneak: Favoured Enemy Bonus: " + IntToString(nFE));
return nFE;
}
}
//;: void main (){}