From f1d267bb2df9b9fe8bdb099f8897bfb9ed2bf823 Mon Sep 17 00:00:00 2001 From: KayenEQ Date: Mon, 4 Oct 2021 08:31:52 -0400 Subject: [PATCH] Update spell_effects.cpp --- zone/spell_effects.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/zone/spell_effects.cpp b/zone/spell_effects.cpp index 61ff24b0b..33e1fdfeb 100644 --- a/zone/spell_effects.cpp +++ b/zone/spell_effects.cpp @@ -1077,7 +1077,12 @@ bool Mob::SpellEffect(Mob* caster, uint16 spell_id, float partial, int level_ove caster->MessageString(Chat::SpellFailure, SPELL_NO_EFFECT, spells[spell_id].name); break; } - int chance = spells[spell_id].base[i] - 20; //Baseline 2% negative modifer derived from parsing. + /* + TODO: Parsing shows there is no level modifier. However, a consistent -2% modifer was + found on spell with value 950 (95% spells would have 7% failure rates). + Further investigation is needed. ~ Kayen + */ + int chance = spells[spell_id].base[i]; int buff_count = GetMaxTotalSlots(); for(int slot = 0; slot < buff_count; slot++) { if (buffs[slot].spellid != SPELL_UNKNOWN && @@ -1103,7 +1108,8 @@ bool Mob::SpellEffect(Mob* caster, uint16 spell_id, float partial, int level_ove caster->MessageString(Chat::SpellFailure, SPELL_NO_EFFECT, spells[spell_id].name); break; } - int chance = spells[spell_id].base[i] - 20; //Baseline 2% negative modifer derived from parsing. + + int chance = spells[spell_id].base[i]; int buff_count = GetMaxTotalSlots(); for(int slot = 0; slot < buff_count; slot++) { if (buffs[slot].spellid != SPELL_UNKNOWN &&