Index: game/Unit.cpp =================================================================== --- game/Unit.cpp (revision 5121) +++ game/Unit.cpp (working copy) @@ -6939,7 +6924,8 @@ spellProto->EffectApplyAuraName[effect_index] == SPELL_AURA_PERIODIC_LEECH) ) modOwner->ApplySpellMod(spellProto->Id, SPELLMOD_DOT, value); - modOwner->ApplySpellMod(spellProto->Id, SPELLMOD_DAMAGE, value); + if ( spellProto->Effect[effect_index] != SPELL_EFFECT_WEAPON_PERCENT_DAMAGE ) + modOwner->ApplySpellMod(spellProto->Id, SPELLMOD_DAMAGE, value); } return value;