From 9ccaf7d7a0c7e3e746eb9ec20d45520e5e6435d6 Mon Sep 17 00:00:00 2001 From: Shauren Date: Sun, 1 Feb 2015 00:38:28 +0100 Subject: Core/Spells: Updated base spell hit chance calculation (spells will never miss targets up to 3 levels higher than caster) --- src/server/game/Entities/Unit/Unit.cpp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 07d10c4a360..3b63facf708 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -2399,11 +2399,9 @@ SpellMissInfo Unit::MagicSpellHitResult(Unit* victim, SpellInfo const* spellInfo int32 leveldif = int32(victim->getLevelForTarget(this)) - thisLevel; // Base hit chance from attacker and victim levels - int32 modHitChance; - if (leveldif < 3) - modHitChance = 96 - leveldif; - else - modHitChance = 94 - (leveldif - 2) * lchance; + int32 modHitChance = 100; + if (leveldif > 3) + modHitChance -= (leveldif - 3) * lchance; // Spellmod from SPELLMOD_RESIST_MISS_CHANCE if (Player* modOwner = GetSpellModOwner()) -- cgit v1.2.3