2026/01/10 Update

Added three starting packages for the Binder class.
Updated any PrCs that can advance invokers to allow invocation feats during level up.
Updated invoker feats to require Eldritch Blast & DFA Breath where appropriate.
Fixed bad constant on Rising Phoenix.
Fixed Oozemaster Oozy Touch/Glob bonus feat bug.
Vassal of Bahamut's Platinum Armor is now much closer to PnP.
Craft (Alchemy) is a class skill for Binders.
Moved packages into \Craft2das\ so the PRC8 would continue to build.
Updated personal_switch.2da to not stack Power Attack by default.
Fixed creature size related screw-up that happened when I was trying to fix unarmed damage for large creatures.
+10 Jump bonus for Leaping Dragon Stance was being improperly gated by Blood Claw Master.
Fixed duration bug w/ Supress Weapon.
Fixed broken loop bug w/ Supress Weapon.
Restoration shouldn't be able to remove Crack of Doom user's AB penalty.
Epic Vassal's of Bahamut now get their proper allowance.
Mirror Images might not spawning in dead anymore.  YMMV, Harrowport.
Added package TLK worksheet to notes.
This commit is contained in:
Jaysyn904
2026-01-10 21:27:52 -05:00
parent 87b2622b0c
commit a713b8c422
140 changed files with 3467 additions and 2349 deletions

View File

@@ -66,6 +66,7 @@ void main()
effect eAttacks = SupernaturalEffect(EffectModifyAttacks(nAttacks));
effect ePenalty = SupernaturalEffect(EffectAttackDecrease(nPenalty));
effect eLink = EffectLinkEffects(eAttacks, ePenalty);
eLink = UnyieldingEffect(eLink);
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eLink, oPC);
if(nAttacks == 1)

View File

@@ -13,7 +13,32 @@
#include "prc_feat_const"
#include "prc_class_const"
void CleanExtraArmors(object oPC)
void CleanExtraArmors(object oPC)
{
// Cleanup routine variables
object oChk;
int nArmor8 = 0;
// Clean up any extra +8 armors
oChk = GetFirstItemInInventory(oPC);
while (GetIsObjectValid(oChk))
{
if (GetTag(oChk) == "PlatinumArmor8")
{
nArmor8++;
if (nArmor8 > 1) DestroyObject(oChk, 0.0);
}
else if (GetTag(oChk) == "PlatinumArmor4" || GetTag(oChk) == "PlatinumArmor6")
{
// Destroy any remaining +4 or +6 armors
DestroyObject(oChk, 0.0);
}
oChk = GetNextItemInInventory(oPC);
}
}
/* void CleanExtraArmors(object oPC)
{
// Cleanup routine variables
object oChk;
@@ -66,6 +91,7 @@ void CleanExtraArmors(object oPC)
}
}
}
*/
void AddArmorOnhit(object oPC,int iEquip)
{
@@ -243,6 +269,7 @@ void DWLeftWeap(object oPC, int iEquip)
}
}
*/
void ImperiousAura(object oPC, object oSkin, int iLevel)
{
if(GetLocalInt(oSkin, "ImperiousAura") == iLevel) return;

View File

@@ -1,39 +1,52 @@
//:: prc_vassal_treas.nss
#include "prc_class_const"
#include "inc_persist_loca"
void main()
{
object oPC = OBJECT_SELF;
int nVassal = GetLevelByClass(CLASS_TYPE_VASSAL, oPC);
if(GetPersistantLocalInt(oPC, "VassalLvl") >= nVassal)
return;
// *Level 8
if(nVassal == 8)
{
// *Shared Trove
GiveGoldToCreature(oPC, 80000);
SetPersistantLocalInt(oPC, "VassalLvl", 8);
}
// *Level 5
else if(nVassal == 5)
{
// *Shared Trove
GiveGoldToCreature(oPC, 50000);
SetPersistantLocalInt(oPC, "VassalLvl", 5);
}
// *Level 2
else if(nVassal == 2)
{
// *Shared Trove
GiveGoldToCreature(oPC, 20000);
SetPersistantLocalInt(oPC, "VassalLvl", 2);
}
// *Level 1
else if(nVassal == 1)
{
CreateItemOnObject("Platinumarmor8", oPC, 1);
SetPersistantLocalInt(oPC, "VassalLvl", 1);
}
void main()
{
object oPC = OBJECT_SELF;
int nVassal = GetLevelByClass(CLASS_TYPE_VASSAL, oPC);
if(GetPersistantLocalInt(oPC, "VassalLvl") >= nVassal)
return;
// *Level 8
if(nVassal == 8)
{
// *Shared Trove
GiveGoldToCreature(oPC, 80000);
SetPersistantLocalInt(oPC, "VassalLvl", 8);
}
// *Level 5
else if(nVassal == 5)
{
// *Shared Trove
GiveGoldToCreature(oPC, 50000);
SetPersistantLocalInt(oPC, "VassalLvl", 5);
}
// *Level 2
else if(nVassal == 2)
{
// *Shared Trove
GiveGoldToCreature(oPC, 20000);
SetPersistantLocalInt(oPC, "VassalLvl", 2);
}
// *Level 1
else if(nVassal == 1)
{
CreateItemOnObject("Platinumarmor8", oPC, 1);
SetPersistantLocalInt(oPC, "VassalLvl", 1);
}
// *Epic levels - 30,000 gp every 3 levels (11, 14, 17, 20, 23, etc.)
else if(nVassal >= 11)
{
// Check if this is an epic level that grants trove (every 3 levels)
if((nVassal - 11) % 3 == 0)
{
// *Shared Trove - Epic
GiveGoldToCreature(oPC, 30000);
SetPersistantLocalInt(oPC, "VassalLvl", nVassal);
}
}
}