8 Commits

Author SHA1 Message Date
Jaysyn904
9405f279d5 2026/04/27 Update
Updated expanded spells & abilities.
Updated PEPS.
Updated Markshire Nomeclature.
Full compile.
2026-04-27 10:21:53 -04:00
Jaysyn904
0ec85e91b7 2026/02/08 Update
Added & activated PRCX.
Full compile.
2026-02-08 23:43:01 -05:00
Jaysyn904
f0453e0f90 2026/02/05 Update
Disabled the PRC_XP_SIMPLE_LA switch.
Full compile.
2026-02-05 14:38:04 -05:00
Jaysyn904
223d71f051 2025/12/01 Updated
Removed unneeded 2DAs from top hak.
Updated NWNxEE libraries
Updated PEPS
Updated nim tooling.
Updated NPC template scripts.
Full compile.
2025-12-01 13:05:25 -05:00
Jaysyn904
9142d652cd 2025/10/24 Update
Renamed and reassociated Expanded Ability hak.
Updated Drow creatures to work with PEPS.
2025-10-24 07:34:20 -04:00
Jaysyn904
051ddf5d7f Updated dm_forge_confg
Updated dm_forge_confg.
Full compile.
2025-10-21 20:01:20 -04:00
Jaysyn904
cbf0febd8b 2025/10/21 Update
Added PEPS AI.
Hopefully stopped "bleed" bug after being healed from dying.
Full compile.
2025-10-21 10:30:05 -04:00
Jaysyn904
aa4680cac9 2025/09/16 Update
XP System was turned off somehow.
2025-09-16 12:36:52 -04:00
1094 changed files with 179041 additions and 34544 deletions

View File

@@ -1,5 +1,5 @@
:loop
"C:\NWN Work\nwnsc.exe" -o -w -n "C:\Games\Steam\steamapps\common\Neverwinter Nights" -i "D:\NWN Repos\PoA_PRC8\_haks\poa_exp_abilities";"D:\NWN Repos\PRC8\nwn\nwnprc\trunk\include" "D:\NWN Repos\PoA_PRC8\_haks\poa_exp_abilities\*.nss"
"C:\NWN Work\nwnsc.exe" -o -w -n "C:\Games\Steam\steamapps\common\Neverwinter Nights" -i "D:\NWN Repos\PoA_PRC8\_haks\poa_exp_ability";"D:\NWN Repos\PRC8\nwn\nwnprc\trunk\include" "D:\NWN Repos\PoA_PRC8\_haks\poa_exp_ability\*.nss"
if %errorLevel% == -1 goto :loop
"C:\NWN Work\nwnsc.exe" -o -w -n "C:\Games\Steam\steamapps\common\Neverwinter Nights" -i "D:\NWN Repos\PoA_PRC8\_haks\poa_exp_spells";"D:\NWN Repos\PRC8\nwn\nwnprc\trunk\include" "D:\NWN Repos\PoA_PRC8\_haks\poa_exp_spells\*.nss"

View File

@@ -8,8 +8,8 @@
"CompileModels": false
},
{
"Name": "poa_exp_abilities",
"Path": "./poa_exp_abilities/",
"Name": "poa_exp_ability",
"Path": "./poa_exp_ability/",
"CompileModels": false
},
{

Binary file not shown.

View File

@@ -71,6 +71,7 @@ SetLocalInt(OBJECT_SELF, "X2_L_LAST_SPELLSCHOOL_VAR", SPELL_SCHOOL_NECROMANCY);
//Enter Metamagic conditions
//--------------------------------------------------------------------------
nDamage = PRCMaximizeOrEmpower(6,nDDice,nMetaMagic);
nDamage += SpellDamagePerDice(OBJECT_SELF, nDDice);
int nDuration = nCasterLevel/3;
if ((nMetaMagic & METAMAGIC_EXTEND))

Binary file not shown.

View File

@@ -51,7 +51,7 @@ void main()
nDamage = nDamage / 2;
}
//Set the damage effect
eDam = EffectDamage(nDamage, DAMAGE_TYPE_COLD);
eDam = PRCEffectDamage(oTarget, nDamage, DAMAGE_TYPE_COLD);
//Apply the VFX constant and damage effect
ApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget);
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);

Binary file not shown.

View File

@@ -47,10 +47,10 @@ void main()
{
nDamage = nDamage / 2;
}
eDam = EffectDamage(nDamage, DAMAGE_TYPE_ELECTRICAL);
eDam = PRCEffectDamage(oTarget, nDamage, DAMAGE_TYPE_ELECTRICAL);
//Apply the VFX impact and effects
DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget));
DelayCommand(0.0f, ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget));
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget);
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
}
//Get next target in spell area
oTarget = GetNextInPersistentObject();

Binary file not shown.

View File

@@ -12,13 +12,29 @@
//:: Created By: Preston Watamaniuk
//:: Created On: May 25, 2001
//:://////////////////////////////////////////////
//:: Modified By: Brian Greinke
//:: Modified On: 2004/01/30
//:: Re: Added disable/reenable support
//:://////////////////////////////////////////////
//:: Modified By: Jaysyn
//:: Modified On: 2023/02/11
//:: Re: Added PnP Aura behavior support
//:://////////////////////////////////////////////
// Modified 2004/01/30 (Brian Greinke)
// Added disable/reenable support
#include "prc_alterations"
#include "utl_i_sqluuid"
void main()
{
//:: Declare major variables
object oMob = GetAreaOfEffectCreator();
int bPNPAuras = GetPRCSwitch(PRC_PNP_FEAR_AURAS);
string sMobUUID = GetObjectUUID(oMob);
//first, look to see if effect is already activated
if ( GetHasSpellEffect(SPELLABILITY_AURA_FEAR, OBJECT_SELF) )
{
@@ -58,5 +74,5 @@ if(GetLocalInt(GetArea(oCaster), "JAIL")==1)
//Set and apply AOE object
effect eAOE = EffectAreaOfEffect(AOE_MOB_FEAR);
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eAOE, OBJECT_SELF, HoursToSeconds(100));
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eAOE, OBJECT_SELF, HoursToSeconds(100));
}

Binary file not shown.

View File

@@ -49,9 +49,9 @@ void main()
nDamage = nDamage / 2;
}
//Set the damage effect
eDam = EffectDamage(nDamage, DAMAGE_TYPE_FIRE);
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
ApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget);
eDam = PRCEffectDamage(oTarget, nDamage, DAMAGE_TYPE_FIRE);
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eDam, oTarget);
}
//Get next target in spell area
oTarget = GetNextInPersistentObject();

Binary file not shown.

View File

@@ -26,8 +26,7 @@ void main()
int nDuration = 1 + (GetHitDice(oNPC)/3);
int nCHAMod = GetAbilityModifier(ABILITY_CHARISMA, oNPC);
int nDC = 10 +nCHAMod+ (GetHitDice(oNPC)/2);
int nLevel = GetCasterLevel(OBJECT_SELF);
int nMetaMagic = PRCGetMetaMagicFeat();
int nLevel = PRCGetCasterLevel(OBJECT_SELF);
effect eVis = EffectVisualEffect(VFX_IMP_DOOM);
effect eLink = CreateDoomEffectsLink();
@@ -39,8 +38,8 @@ void main()
//Spell Resistance and Saving throw
if (!/*Will Save*/ PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC))
{
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink , oTarget, TurnsToSeconds(nDuration));
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink , oTarget, TurnsToSeconds(nDuration));
}
}
}

View File

@@ -12,12 +12,12 @@
//:: Created By: Preston Watamaniuk
//:: Created On:Jan 8, 2002, 2001
//:://////////////////////////////////////////////
#include "NW_I0_SPELLS"
#include "prc_inc_spells"
//#include "wm_include"
void main()
{
//Declare major variables
effect eProt = CreateProtectionFromAlignmentLink(ALIGNMENT_EVIL);
effect eProt = PRCCreateProtectionFromAlignmentLink(ALIGNMENT_EVIL);
effect eGlobe = EffectSpellLevelAbsorption(3, 0);
effect eDur = EffectVisualEffect(VFX_DUR_GLOBE_MINOR);
@@ -30,6 +30,6 @@ void main()
if(GetIsFriend(oTarget, GetAreaOfEffectCreator()))
{
//Apply the VFX impact and effects
ApplyEffectToObject(DURATION_TYPE_PERMANENT, eLink, oTarget);
SPApplyEffectToObject(DURATION_TYPE_PERMANENT, eLink, oTarget);
}
}

Binary file not shown.

View File

@@ -41,8 +41,8 @@ void main()
if(!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_MIND_SPELLS))
{
//Apply the VFX impact and effects
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nDuration));
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nDuration));
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
}
}
}

Binary file not shown.

View File

@@ -27,7 +27,7 @@ void main()
int nDuration = GetHitDice(oNPC);
int nCHAMod = GetAbilityModifier(ABILITY_CHARISMA, oNPC);
int nRacial = GetRacialType(oTarget);
int nRacial = MyPRCGetRacialType(oTarget);
int nDC = 10 + nCHAMod + (GetHitDice(oNPC)/2);
if(GetIsEnemy(oTarget))
@@ -41,7 +41,7 @@ void main()
//if (!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_FEAR)) //:: This ability only affects animals & they don't get a save.
//{
//Apply the VFX impact and effects
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nDuration));
SPApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, RoundsToSeconds(nDuration));
//}
}
}

Binary file not shown.

View File

@@ -39,7 +39,7 @@ void main()
if(!PRCMySavingThrow(SAVING_THROW_WILL, oTarget, nDC, SAVING_THROW_TYPE_DEATH))
{
//Apply the VFX impact and effects
ApplyEffectToObject(DURATION_TYPE_INSTANT, eDeath, oTarget);
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eDeath, oTarget);
//ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
}
}

View File

@@ -326,7 +326,7 @@ void main()
else if (nFrost>0)
FloatingTextStringOnCreature("Frostrage failed, invalid weapon", oPC, FALSE);
//Apply the VFX impact and effects
//Apply the VFX impact and the actual rage effects
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oPC, fDuration);
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oPC);
@@ -434,6 +434,12 @@ void main()
// to determine what the ability scores become after adding the bonuses to them.
DelayCommand(0.1, GiveExtraRageBonuses(nCon, StrBeforeBonuses, ConBeforeBonuses, iStr, iCon, nSave, DAMAGE_TYPE_BASE_WEAPON, oPC));
if(GetLevelByClass(CLASS_TYPE_FORSAKER, oPC) >= 3) //Run feat script if Forsaker lvl3 to increase AC based on CON, then decrease again after it ends
{
ExecuteScript("prc_forsaker", oPC);
DelayCommand(fDuration + 0.1, ExecuteScript("prc_forsaker", oPC));
}
}
}
}

Binary file not shown.

View File

@@ -5,13 +5,13 @@
//:://////////////////////////////////////////////
/*
Creature must make a ranged touch attack to hit
the intended target. Reflex or Will save is
needed to halve damage or avoid effect.
the intended target.
*/
//:://////////////////////////////////////////////
//:: Created By: Preston Watamaniuk
//:: Created On: May 11 , 2001
//:://////////////////////////////////////////////
#include "prc_inc_sp_tch"
#include "NW_I0_SPELLS"
#include "prc_inc_spells"
//#include "wm_include"
@@ -44,10 +44,9 @@ void main()
SignalEvent(oTarget, EventSpellCastAt(oNPC, SPELLABILITY_BOLT_ACID));
//Adjust the damage based on the Reflex Save, Evasion and Improved Evasion.
nDamage = PRCGetReflexAdjustedDamage(nDamage, oTarget, nDC,SAVING_THROW_TYPE_ACID);
//nDamage = GetReflexAdjustedDamage(nDamage, oTarget, nDC,SAVING_THROW_TYPE_ACID);
//Make a ranged touch attack
int nTouch = TouchAttackRanged(oTarget);
int nTouch = PRCDoRangedTouchAttack(oTarget);
if(nTouch > 0)
{
if(nTouch == 2)
@@ -59,8 +58,8 @@ void main()
if(nDamage > 0)
{
//Apply the VFX impact and effects
ApplyEffectToObject(DURATION_TYPE_INSTANT, eBolt, oTarget);
ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eBolt, oTarget);
SPApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget);
}
}
}

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More