SF and GSF Transmutation not applying to animal spells
-
Area name: N/A
Issue Location: N/A
Quest Name: N/A
Store Name: N/A
NPC Name: N/A
NPC Location: N/A
Server Version: Puffy 6571
Screen Shot: oops
Time: lots of timesIssue Description: You can still roll 2s and 3s on animal buffs, even with GSF Transmutation.
Going ahead and compiling the module to see if that helps.
-
Area name: N/A
Issue Location: N/A
Quest Name: N/A
Store Name: N/A
NPC Name: N/A
NPC Location: N/A
Server Version: 6662
Screen Shot:
Time: lots of times
-
We know, and we know it's still broken. We do not need duplicate entries. When it's fixed, a DM will post here.
-
I was told by a DM who was not aware that this bug existed to bug report it.
-
///////////////////////////////////////////////// // Bull's Strength //----------------------------------------------- // Created By: Brenon Holmes // Created On: 10/12/2000 // Description: This script changes someone's strength // Updated 2003-07-17 to fix stacking issue with blackguard ///////////////////////////////////////////////// //:: Modified By: Fargle //:: Modified On: 11/26/19 //:: Modifications: Casters with SF Transmutation now buff by 1d3+2 (3-5) //:: Casters with GSF Transmutation now buff by 1d2+3 (4-5) //::///////////////////////////////////////////// #include "x2_inc_spellhook" #include "nw_i0_spells" void main() { /* Spellcast Hook Code Added 2003-06-23 by GeorgZ If you want to make changes to all spells, check x2_inc_spellhook.nss to find out more */ if (!X2PreSpellCastCode()) { // If code within the PreSpellCastHook (i.e. UMD) reports FALSE, do not run this spell return; } // End of Spell Cast Hook //Declare major variables object oTarget = GetSpellTargetObject(); effect eStr; effect eVis = EffectVisualEffect(VFX_IMP_IMPROVE_ABILITY_SCORE); effect eDur = EffectVisualEffect(VFX_DUR_CESSATE_POSITIVE); int nCasterLvl = GetAdjustedCasterLevel(OBJECT_SELF); // int nModify = d4() + 1; ---REMOVED BY FARGLE 11/26/19:--- deprecated by new code //---ADDED BY FARGLE 11/26/19--- int bHasSFT = GetHasFeat(FEAT_SPELL_FOCUS_TRANSMUTATION, OBJECT_SELF); int bHasGSFT = GetHasFeat(FEAT_GREATER_SPELL_FOCUS_TRANSMUTATION, OBJECT_SELF); int nModify; //---ADDED BY FARGLE 12/16/19--- //Debug messages, to figure out why the heck stuff isn't working. SendMessageToPC(OBJECT_SELF, "bHasSFT, checking feat no. " + IntToString(FEAT_SPELL_FOCUS_TRANSMUTATION) + ": " + IntToString(bHasSFT)); SendMessageToPC(OBJECT_SELF, "bHasGSFT, checking feat no. " + IntToString(FEAT_GREATER_SPELL_FOCUS_TRANSMUTATION) + ": " + IntToString(bHasGSFT)); //---END ADDED BY FARGLE 12/16/19--- //If the caster has GSF Transmutation, then the buff should be 4-5 points; //If they have SF Transmutation, the buff should be 3-5 points; //If neither, it should be the standard 2-5. if(bHasGSFT == TRUE) { nModify = Random(2) + 4; } else if(bHasSFT == TRUE) { nModify = Random(3) + 3; } else { nModify = Random(4) + 2; } //---END ADDED BY FARGLE 11/26/19--- float fDuration = HoursToSeconds(nCasterLvl); int nMetaMagic = GetMetaMagicFeat(); //Signal the spell cast at event SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELL_BULLS_STRENGTH, FALSE)); //Enter Metamagic conditions if (nMetaMagic == METAMAGIC_MAXIMIZE) { nModify = 5;//Damage is at max } if (nMetaMagic == METAMAGIC_EMPOWER) { nModify = nModify + (nModify / 2); } if (nMetaMagic == METAMAGIC_EXTEND) { fDuration = fDuration * 2.0; //Duration is +100% } ApplyEffectToObject(DURATION_TYPE_INSTANT, eVis, oTarget); // This code was there to prevent stacking issues, but programming says thats handled in code... /* if (GetHasSpellEffect(SPELL_GREATER_BULLS_STRENGTH)) { return; } //Apply effects and VFX to target RemoveSpellEffects(SPELL_BULLS_STRENGTH, OBJECT_SELF, oTarget); RemoveSpellEffects(SPELLABILITY_BG_BULLS_STRENGTH, OBJECT_SELF, oTarget); */ eStr = EffectAbilityIncrease(ABILITY_STRENGTH, nModify); effect eLink = EffectLinkEffects(eStr, eDur); ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eLink, oTarget, fDuration); }
This is the script.
-
Resolved(?)
-
@Echo
Yes