What is spell.value?
effectiveness *= (1 - (nerf * 0.01));
so lets say effectiveness starts at 1.0
1.0 *= (1 - (200 * .01))
1.0 *= -1
- 1.0
in ApplyEffectOnTarget:
- Code: Select all
if (m_spellLine.KeyName == GlobalSpellsLines.Item_Effects || m_spellLine.KeyName == GlobalSpellsLines.Combat_Styles_Effect || m_spellLine.KeyName == GlobalSpellsLines.Potions_Effects || m_spellLine.KeyName == Specs.Savagery || m_spellLine.KeyName == GlobalSpellsLines.Character_Abilities || m_spellLine.KeyName == "OffensiveProc")
effectiveness = 1.0; // TODO player.PlayerEffectiveness
if (effectiveness <= 0)
return; // no effect
So place a log.Debug statement in there and see why or if effectiveness is being ignored. Also make sure effectiveness is the value that's expected. That's how I would do it. I've been programming for over 20 years but I still spit out debug info to make sure something I coded works as intended. Apparently there are some, much younger than me, who feel like they don't need to test things .... which is probably why there are so many things to fix.
If you could test this and tell us the results it would be very helpful.