Spell damage calculations

I was hoping to figure out exactly how spell damage calculations are done in this game.  I have spent multiple days collecting data and testing hypotheses.  The formula as detailed on uoguide or here on the uo.com wiki is very close, but it can't tell anything about which numbers specifically will be dealt in the range, and occasionally the range is off.

What UOGuide and UO.com and EC  say the formula is is:
  6 to 7.2 as base damage and then multiple by eval bonus and then sdi bonus
   base*(eval*3/100)*(sdi+trunc(int/10))

but there are cases where this doesn't match the in game damage.

e.g.:
72 eval
10 int
0 sdi

mouse over fireball spell in game (EC) or use the above formula, to get 19-22 damage
However, you can do 18 damage

@Parallax - Is there any way someone could take a bit of time to look at the source code and find the exact formula?






optional further reading for context:
my spreadsheet with test formulas and damage experiments:
 https://docs.google.com/spreadsheets/d/1e9IDLcxF6_CqGAHpfxkv-XpbnlpQO931NQpmW4LSmHk/edit?usp=sharing
This includes a fully working damage calculator for fighter damage, with exactly the 5 numbers that you will be able to deal, given the base weapon range.
I have a formula I'm pretty confident in for fireball with only 10 int and no sdi, it works for every value of eval, but already its pretty ... arcane.

Strange things seem to happen when combing sdi and eval, such as 100 eval, 150 int, 10 sdi.
that gives the damages [30,31,32,33,36], and an expected simple multiplier of 5x
another set with 5x multiplier:  50 eval, 150 int, 85 sdi -> [30,31,33,34,36] 

as is standard with uo, it must be multiplying by your damage mod, flooring, then doing it again for another source, then flooring.  It's not that simple here.  eval is flooring to .2 (or calculations are performed where base damage is 30, and then at almost the end divide by 5)
Tagged:

Comments

  • looploop Posts: 501
    When you say fireball should be 19 - 22 damage but you can do 18, does that mean you casted the spell on a target expecting to do 19 - 22 damage but ended up doing 18? Could your target’s resistance have played a factor in the discrepancy? Was the resistance 0?
  • bartmanbartman Posts: 3
    correct.  All tests were conducted on an Ice Ogre Lord with 0 fire resist.
Sign In or Register to comment.