diff --git a/zone/spell_effects.cpp b/zone/spell_effects.cpp index 48fd61234..65784154a 100644 --- a/zone/spell_effects.cpp +++ b/zone/spell_effects.cpp @@ -4270,6 +4270,9 @@ void Mob::BuffFadeBySlot(int slot, bool iRecalcBonuses, bool suppress, uint32 su } } + // Skip effect removal for suppressed slots — effects were already removed + // during initial suppression, and accessing spells[SPELL_SUPPRESSED] would be OOB. + if (buffs[slot].spellid != SPELL_SUPPRESSED) for (int i=0; i < EFFECT_COUNT; i++) { if(IsBlankSpellEffect(buffs[slot].spellid, i))