NWNWiki
Advertisement
NWNWiki
3,718
pages

DC bug[]

The DC calculation for the spell is buged, its always 14. Cause they take the DC from the placeable. -ILKAY

  • Fox fix the bug you must modify the scrip x2_s0_glphwardx.nss at line 96.
    int nBonus;
    if(GetHasFeat(FEAT_EPIC_SPELL_FOCUS_ABJURATION,oCreator))
        {
        nBonus = 6;
        }
    else if(GetHasFeat(FEAT_GREATER_SPELL_FOCUS_ABJURATION,oCreator))
        {
        nBonus = 4;
        }
    else if(GetHasFeat(FEAT_SPELL_FOCUS_ABJURATION,oCreator))
        {
        nBonus = 2;
        }
    //Change damage according to Reflex, Evasion and Improved Evasion
    if(!GetIsObjectValid(GetSpellCastItem()))
        {
        nDamage = GetReflexAdjustedDamage(nDamage, oTarget, 13+GetAbilityModifier(ABILITY_WISDOM,oCreator)+nBonus, SAVING_THROW_TYPE_SONIC, oCreator);
        }
    else
        {
        nDamage = GetReflexAdjustedDamage(nDamage, oTarget, GetSpellSaveDC(), SAVING_THROW_TYPE_SONIC, oCreator);
        }
I take in note of spell focus feat, if the spell come from a item and the cleric wisdom modifier. I dont know if there a easier way to fix it. But i tested it and that work fine ILKAY 22:16, 5 August 2009 (UTC)
  • Does that work when the spell is cast from an item? Since this script is executed long after the initial spellscript ends, neither GetSpellCastItem() nor GetSpellSaveDC() would be returning reliable values. I'd think it would be much better (more reliable and simpler) to stick a line like
 
SetLocalInt(oGlyph, "X2_PLC_GLYPH_DC", GetSpellSaveDC());
 
in x2_s0_glphward, then in x2_s0_glphwardx change "GetSpellSaveDC()" to "GetLocalInt(OBJECT_SELF, "X2_PLC_GLYPH_DC")" instead of the above fix. --The Krit 21:36, 31 August 2009 (UTC)
  • Oops missed that note ;p, yep that will be much more easy the way you said. --ILKAY 21:11, October 5, 2009 (UTC)
Advertisement