2025/12/10 Update

Fixed some corrupt spell components UTIs
Updated several scripts fixing not-quite bugs that choke nwn_script_comp.
Updated PRC8 version.
Re-enabled erroneously disabled Pale Master marker feat.
Updated Tester module.
This commit is contained in:
Jaysyn904
2025-12-10 22:48:43 -05:00
parent 54386fc90c
commit 24e69c926c
21 changed files with 40 additions and 43 deletions

1
.gitignore vendored
View File

@@ -146,3 +146,4 @@ nwn/nwnprc/trunk/makefile.temp
/Release
/old_backup
*.7z
nwn/nwnprc/trunk/newcompilepsi.bat

View File

@@ -13,26 +13,26 @@
9 FEAT_DEATHLESS_MASTER_TOUCH 897 3 10 1
10 darkvision 228 3 3 0
11 FEAT_EPIC_PALE_MASTER 984 3 11 0
12 FEAT_PALEMASTER_SPELLCASTING_FEY 18239 2 999 0
13 FEAT_PALEMASTER_SPELLCASTING_ABERRATION 18285 2 999 0
14 FEAT_PALEMASTER_SPELLCASTING_MONSTROUS 18332 2 999 0
15 FEAT_PALEMASTER_SPELLCASTING_OUTSIDER 18379 2 999 0
16 FEAT_PALEMASTER_SPELLCASTING_SHAPECHANGER 18426 2 999 0
17 FEAT_PALEMASTER_SPELLCASTING_ASSASSIN 18462 2 999 0
18 FEAT_PALEMASTER_SPELLCASTING_BARD 18503 2 999 0
19 FEAT_PALEMASTER_SPELLCASTING_BEGUILER 18547 2 999 0
20 FEAT_PALEMASTER_SPELLCASTING_CULTIST_PEAK 18613 2 999 0
21 FEAT_PALEMASTER_SPELLCASTING_DNECRO 18655 2 999 0
22 FEAT_PALEMASTER_SPELLCASTING_DUSKBLADE 18697 2 999 0
23 FEAT_PALEMASTER_SPELLCASTING_HARPER 18731 2 999 0
24 FEAT_PALEMASTER_SPELLCASTING_HEXBLADE 18768 2 999 0
25 FEAT_PALEMASTER_SPELLCASTING_KNIGHT_WEAVE 18805 2 999 0
26 FEAT_PALEMASTER_SPELLCASTING_SHADOWLORD 18843 2 999 0
27 FEAT_PALEMASTER_SPELLCASTING_SORCERER 18889 2 999 0
28 FEAT_PALEMASTER_SPELLCASTING_SUBLIME_CHORD 18935 2 999 0
29 FEAT_PALEMASTER_SPELLCASTING_SUEL_ARCHANAMACH 18978 2 999 0
30 FEAT_PALEMASTER_SPELLCASTING_WARMAGE 19021 2 999 0
31 FEAT_PALEMASTER_SPELLCASTING_WIZARD 19066 2 999 0
12 FEAT_PALEMASTER_SPELLCASTING_FEY 18239 2 1 0
13 FEAT_PALEMASTER_SPELLCASTING_ABERRATION 18285 2 1 0
14 FEAT_PALEMASTER_SPELLCASTING_MONSTROUS 18332 2 1 0
15 FEAT_PALEMASTER_SPELLCASTING_OUTSIDER 18379 2 1 0
16 FEAT_PALEMASTER_SPELLCASTING_SHAPECHANGER 18426 2 1 0
17 FEAT_PALEMASTER_SPELLCASTING_ASSASSIN 18462 2 1 0
18 FEAT_PALEMASTER_SPELLCASTING_BARD 18503 2 1 0
19 FEAT_PALEMASTER_SPELLCASTING_BEGUILER 18547 2 1 0
20 FEAT_PALEMASTER_SPELLCASTING_CULTIST_PEAK 18613 2 1 0
21 FEAT_PALEMASTER_SPELLCASTING_DNECRO 18655 2 1 0
22 FEAT_PALEMASTER_SPELLCASTING_DUSKBLADE 18697 2 1 0
23 FEAT_PALEMASTER_SPELLCASTING_HARPER 18731 2 1 0
24 FEAT_PALEMASTER_SPELLCASTING_HEXBLADE 18768 2 1 0
25 FEAT_PALEMASTER_SPELLCASTING_KNIGHT_WEAVE 18805 2 1 0
26 FEAT_PALEMASTER_SPELLCASTING_SHADOWLORD 18843 2 1 0
27 FEAT_PALEMASTER_SPELLCASTING_SORCERER 18889 2 1 0
28 FEAT_PALEMASTER_SPELLCASTING_SUBLIME_CHORD 18935 2 1 0
29 FEAT_PALEMASTER_SPELLCASTING_SUEL_ARCHANAMACH 18978 2 1 0
30 FEAT_PALEMASTER_SPELLCASTING_WARMAGE 19021 2 1 0
31 FEAT_PALEMASTER_SPELLCASTING_WIZARD 19066 2 1 0
32 DefArrow 8 0 -1 0
33 Ambidex 1 0 -1 0
34 FEAT_EPIC_SPELL_FOCUS_ABJURATION 610 1 -1 0

View File

@@ -58,7 +58,7 @@ int SPGetPenetrAOE(object oCaster = OBJECT_SELF, int nCasterLvl = 0);
//#include "prc_alterations"
//#include "prcsp_archmaginc"
//#include "prc_inc_racial"
#include "inc_2dacache"
//////////////////////////////////////////////////
/* Function definitions */

View File

@@ -1370,7 +1370,9 @@ void _prc_inc_shifting_ShiftIntoTemplateAux(object oShifter, int nShifterType, o
if(GetIsObjectValid(oShifterCWpR)) MyDestroyObject(oShifterCWpR);
if(GetIsObjectValid(oShifterCWpL)) MyDestroyObject(oShifterCWpL);
if(GetIsObjectValid(oShifterCWpB)) MyDestroyObject(oShifterCWpB);
oShifterCWpR = oShifterCWpL = oShifterCWpR = OBJECT_INVALID;
oShifterCWpR = OBJECT_INVALID;
oShifterCWpL = OBJECT_INVALID;
oShifterCWpB = OBJECT_INVALID;
// Copy the template's weapons and assign equipping

View File

@@ -76,7 +76,7 @@
/* This variable MUST be updated with every new version of the PRC!!! */
const string PRC_VERSION = "PRC8 4.73";
const string PRC_VERSION = "PRC8 4.74";
/* This variable MUST be updated every time 'assemble_spellbooks.bat' is run!!! */

View File

@@ -20,9 +20,6 @@
//:: Last Update: 2003-10-07
//:://////////////////////////////////////////////
//:: Test void
//:: void main (){}
//Changed by primogenitor to include CEP itemtypes
// * The tag of the ip work container, a placeable which has to be set into each

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -38,7 +38,7 @@
#include "psi_inc_psifunc"
#include "psi_spellhook"
#include "spinc_dimdoor";
#include "spinc_dimdoor"
void main()

View File

@@ -329,8 +329,11 @@ void SecondaryTargetsCheck(object oManifester, object oMainTarget, int nSecondar
array_set_object(oManifester, SECONDARY_TARGETS_ARRAY, i, oTest);
// Find next empty slot
while(array_get_object(oManifester, SECONDARY_TARGETS_ARRAY, ++i) != OBJECT_INVALID)
;
while(i < nSecondaryTargets &&
array_get_object(oManifester, SECONDARY_TARGETS_ARRAY, ++i) != OBJECT_INVALID)
{
// Continue searching
}
}
// Get next potential target

View File

@@ -30,7 +30,7 @@
//:://////////////////////////////////////////////
//:://////////////////////////////////////////////
#include "prc_alterations" Provided by prc_alterations
#include "prc_alterations" //:: Provided by prc_alterations
#include "psi_inc_soulkn"
int LOCAL_DEBUG = DEBUG;

View File

@@ -1,6 +1,6 @@
void Cleanup(object oArea)
{
if (GetResRef(oArea) == "bdd_cave");
if (GetResRef(oArea) == "bdd_cave")
{
DestroyArea(GetObjectByTag("bdd_basinrim"));
//DestroyArea(GetObjectByTag("bdd_cave"));

View File

@@ -1,6 +1,6 @@
#include "prc_alterations"
#include "prc_inc_spells.nss"
#include "prc_inc_spells"
#include "prc_add_spell_dc"
int GetIsValidAnimate(object oTarget);
@@ -248,6 +248,3 @@ void main()
SendMessageToPC(OBJECT_SELF, "Target cannot be magical");
}
}

View File

@@ -36,11 +36,8 @@ Created: 6/28/06
*/
//:://////////////////////////////////////////////
//:://////////////////////////////////////////////
#include "prc_inc_spells"
#include "prc_ip_srcost.nss"
#include "prc_ip_srcost"
int GetERSpellResistance(int nCasterLvl)
{
@@ -101,7 +98,7 @@ void main()
}
effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE);
itemproperty ipArmor = ItemPropertyACBonus(nBonusAC += nArmor);
itemproperty ipArmor = ItemPropertyACBonus(nBonusAC + nArmor);
itemproperty ipDR = ItemPropertyDamageReduction(IP_CONST_DAMAGEREDUCTION_2, IP_CONST_DAMAGESOAK_10_HP);
itemproperty ipSR = ItemPropertyBonusSpellResistance(nSR);