[Paladin] Seal of Righteousness doing too much damage
Hello,
Actually the seal of righteousness is doing too much damage. This is because the formula seems a bit weird (coming from BC ?):
float damageBasePoints;
if (item && item->GetProto()->InventoryType == INVTYPE_2HWEAPON)
// two hand weapon
{ damageBasePoints = 1.20f * triggerAmount * 1.2f * 1.03f * speed / 100.0f + 1; }
else
// one hand weapon/no weapon
{ damageBasePoints = 0.85f * ceil(triggerAmount * 1.2f * 1.03f * speed / 100.0f) - 1; }
int32 damagePoint = int32(damageBasePoints + 0.03f * (GetWeaponDamageRange(BASE_ATTACK, MINDAMAGE) + GetWeaponDamageRange(BASE_ATTACK, MAXDAMAGE)) / 2.0f) + 1;
// apply damage bonuses manually
if (damagePoint >= 0)
{
damagePoint = SpellDamageBonusDone(pVictim, dummySpell, damagePoint, SPELL_DIRECT_DAMAGE);
damagePoint = pVictim->SpellDamageBonusTaken(this, dummySpell, damagePoint, SPELL_DIRECT_DAMAGE);
}
CastCustomSpell(pVictim, spellId, &damagePoint, NULL, NULL, true, NULL, triggeredByAura);
The DBC have actually the maximum of damage stored in it and that value has to be divided to get min-max range of damage:
- To get min range, divide the value by 87.
- To get max range, divide the value by 25.
Therefore, I propose the following formula to adjust the damage done:
- 1.5 speed weapon and lower does the minimum damage
- 4.0 speed weapon and higher does the maximum damage
Damage = (speed=4.0?max:min+(((max-min)/2.5f)*(speed-1.5))));
Recommended Comments
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now