Here's what I've come up with so far:
This is what happens if a mob damages you
ORDER OF EVENTS:
- Check if the mob missed the attack. If so, return 0 damage.
- The mob's attack is fetched
- If the mob is affected by Threaten, reduce it's WATK value by the percentage given in the skill OR if a mob is influenced by a damage increasing skill, increase the WATK. Precedence is on Threaten.
- Constrain mob attack between 29,999 and 1.
- Calculate mob base damage
- MobMin = mobAttack * 0.85
- MobMax = mobAttack
- return (MobMin - MobMax) * MobMin * 0.000000100000010000001 + MobMax;
- Calculate Player PDD - this NEVER takes into account StandardPDD.img - this img file is never used.
- Then perform the following calculation on PDD --> pdd = math.round(totalPDD * 0.25, 0)
- Subtract pdd from mob base damage
- Multiply the damage according to damage reduction skills (Achilles, Combo Barrier)
- Factor in Meso Guard
- Constrain the damage between 999,999 and 1
- Return damage