MMO News and theorycrafting for advanced MMO gamers. News and articles that relate to your gameplay. World of Warcraft, SWTOR, Guild Wars 2, Rift, TERA, Eve Online, Star Wars the Old Republic, Diablo3, The Secret World and all Western AAA MMOs

Hello There, Guest! Register

 Damage and Healing formula
09-23-2011, 10:24 AM (This post was last modified: 12-02-2011 08:15 AM by Freehugs.)
Post: #1
 Freehugs Contributor Posts: 288 Joined: Sep 2011 Reputation: 5
Damage and Healing formula
Note: More up to date game math is here:

Update 26th Oct 2011:
OK, deleted all my initial rubbish to reflect where we're at with the formula in this first post.
We're no longer using the XML data to calculate damage because too much of it has changed. Instead I've collected a data set and with the assistance of people posting below, derived the x, y and z values for a range of abilities. I then applied the calculated values with the formula below to a second data set and got all results within 1 point of the tooltip damage.

I dub it the Kore equation: x*Main-hand + x*0.3*Off-hand + y*Bonus + z = tooltip
x = weapon damage modifier for min and max values and all ranks of the ability
y = force/tech/melee/ranged damage bonus modifier for min and max values and all ranks of the ability
z = base damage, which can vary for the min and max values and varies for each rank of the ability

Drawn and Dangerous, a D&D webcomic
A.K.A Skree, Aid (Dalbora server), acnoj (official forums).
09-24-2011, 01:07 AM (This post was last modified: 09-24-2011 01:29 AM by Karmond.)
Post: #2
 Karmond Junior Member Posts: 12 Joined: Sep 2011 Reputation: 0
RE: XML Game Data
(09-23-2011 10:24 AM)Freehugs Wrote:  As an example I went to the talent calculator (http://torguild.net/calculator/) and made the assumption that each set of numbers in the talents were derived from a level 10 character but that the bonus damage/healing varied between characters because of the different gear/class.
Sorry to disappoint, but only some were derived from a level 10 character.

Just an example;
Bounty Hunter: Advanced Prototype + Shield Tech were from a lvl 10 BH, but Firebug and the Mercenary trees were from a level 12 character. I would have liked to have been more consistant, but beggars can't be choosers.

If it helps though; In the Firebug tree Incendiary Missile displayed 52 - 61 for the lvl 10, and 58 - 67 for the lvl 12. Thermal Detonator showed 54 - 57 for the lvl 10 and 59 - 62 for the lvl 12.

My sources were just the standard array of leaks found on Alterswtor & BetaFootage; namely here, here, here, here, here, here, here and here (also a Commando leak, but that is no longer there). The missing trees were constructed by copying the mirror class and using names and descriptions from the xml files.
09-24-2011, 03:16 AM (This post was last modified: 09-26-2011 02:01 PM by Anubis Black.)
Post: #3
 Anubis Black Banned Posts: 239 Joined: Jun 2011
RE: XML Game Data
Freehugs, this is one of the formulae we have been working with as well. But we have found a number of discrepancies, including the ones you listed. What is your take on Lightning Strike, which lists standardhealthpercentmin and max, but not standarddamagepercentmin or max?

Great work, Karmond, the whole community greatly appreciates the efforts you've put in creating the calculator.
09-24-2011, 10:00 AM (This post was last modified: 09-24-2011 10:20 AM by Freehugs.)
Post: #4
 Freehugs Contributor Posts: 288 Joined: Sep 2011 Reputation: 5
RE: XML Game Data
(09-23-2011 01:48 AM)Anubis Black Wrote:  Freehugs, this is one of the formulae we have been working with as well. But we have found a number of discrepancies, including the ones you listed. What is your take on Lightning Strike, which lists standardhealthpercentmin and max, but not standarddamagepercentmin or max?

All the damage and healing abilities use standardhealthpercentmin and max.
The standarddamagepercentmin is a variable I made up to highlight the fact tha the value comes from a different table....although in retrospec I didn't need to do that, so I've changed it back.

Drawn and Dangerous, a D&D webcomic
A.K.A Skree, Aid (Dalbora server), acnoj (official forums).
09-27-2011, 01:27 AM
Post: #5
 Anubis Black Banned Posts: 239 Joined: Jun 2011
RE: Damage and Healing formula
Beliel Wrote:Unless I'm figuring things wrong, that damage formula is a little off compared to the tooltips that I have from a recent SI video. The player didn't have any talents that would alter the calculations other than Will of the Sith which should be reflected in the paperdoll.

The closest formula roofie and I could come up with is
Code:
`( ( percent[min|max] * standarddamage ) * ( 1 - modifier ) ) + ( coefficient * bonus )`

I whipped up a quick and dirty app to run those four abilities with each formula (using all feasible standard damages for the one quoted above )

[EDIT] Of course the sample size is small (and still not perfect) that was as close as we could get. I would appreciate anymore tooltip images (along with paperdoll/talent images all from the same level/gear) that people have.

Alright, let's work under the assumption this is the correct formula

Code:
`(standardhealthpercentmin * standarddamageperlevel) * (1 - amountmodifierpercent) + (coefficient * bonus damage)`

for the low end and

Code:
`(standardhealthpercentmax * standarddamageperlevel) * (1 - amountmodifierpercent) + (coefficient * bonus damage)`

for the high end of the damage range respectively. Where standarddamageperlevel is taken from tbl / cbtstandarddamageperleveltable.

I created an excel spreadsheet comparing (1 + modifier) with (1 - modifier) and using the latter seems to be indeed more accurate, however there are some discrepancies:

AbilityProposed DamageTooltip Damage
Electrocute159- 198157 - 194
Force Lightning881875
Crushing Darkness (Direct)324- 362324- 362
Crushing Darkness (DoT)494494
Shock416- 454416- 455

At the end of my post you can find attached the spreadsheet in question. Attempt to find an explanation for the discrepancies. In addition, seeing how

Code:
`10 * (standardhealthpercentmin + standardhealthpercentmax) / 2 = coefficient`

it seems there might be more to it. We still haven't factored in abilities' ranks, which are nowhere to be found.

09-27-2011, 04:19 AM
Post: #6
 Beliel Newbie Posts: 2 Joined: Sep 2011 Reputation: 1
RE: Damage and Healing formula
Well I emailed Anubis earlier but, going by the time stamp, this was posted before that so I guess I'll just copy/paste the email.

Quote:Well I was all posed to submit that post on your guys' forums but then started looking at the data. Went back checked it and removed the Math.Round functions on the calculations and decided not to hit submit. The two formulas seem really close to me [see attached picture], and was wondering what your take is on it? Is it really worth posting at this point with the, currently, small sample size?

This new formula does take into account the all the variables in the XML per ability, for non-weapon based skills. And at the very least, it's a different possible approach.
09-27-2011, 05:39 PM (This post was last modified: 09-27-2011 05:59 PM by Freehugs.)
Post: #7
 Freehugs Contributor Posts: 288 Joined: Sep 2011 Reputation: 5
RE: Damage and Healing formula
What's the source of these screenshots? I notice that the background of the abilities is different in every screenshot. Can we be sure that the player isn't being influenced by buffs or debuffs, or changing gear between the ability screenshots?

The formula (standardhealthpercentmax * standarddamageperlevel) + (coefficient * bonus damage) is close to being right here, and the formula (standardhealthpercentmax * standarddamageperlevel) * (1 - amountmodifierpercent) + (coefficient * bonus damage) is even closer...but the variations are irregular some up, some down. We can't fine tune a formula unless we're entirely certain that our data is correct.

(09-27-2011 04:19 AM)Beliel Wrote:  This new formula does take into account the all the variables in the XML per ability, for non-weapon based skills.

I'm not certain that SWTOR attacks are broken into weapon and non-weapon categories. Do we have any solid info on this?

Drawn and Dangerous, a D&D webcomic
A.K.A Skree, Aid (Dalbora server), acnoj (official forums).
09-27-2011, 08:55 PM
Post: #8
 Masterkiller Administrator Posts: 872 Joined: May 2013 Reputation: 8
RE: Damage and Healing formula
(09-27-2011 05:39 PM)Freehugs Wrote:  I'm not certain that SWTOR attacks are broken into weapon and non-weapon categories. Do we have any solid info on this?

Force based attacks should use standarddamageperlevel attribute as it's base, where weapon based attacks rely on the base damage of the weapon.
09-27-2011, 10:48 PM
Post: #9
 Anubis Black Banned Posts: 239 Joined: Jun 2011
RE: Damage and Healing formula
Beliel, isn't that the initial formula that we had? I have included it in the table below as

Original (Low/High): (standardhealthpercentmin/max * standarddamageperlevel) + (coefficient * bonus damage)

Freehugs, the source is this Assassin video. So you can check for any discrepancies there, I assumed the data was correct.

Anyway, we have been playing around with different versions and indeed the big problem is that most formulae overestimate the damage of some abilities and underestimate the damage of others. So in the following table you can see the difference between the approximated and actual damage for Electrocute, Force Lightning (Tick), Crushing Darkness (Direct), Crushing Darkness (DoT tick), Shock (using 1st coeff.), Shock (using 2nd coeff.) in that order. You can ignore Shock (using 1st coeff.) or 5th row (penultimate one), as it is far off and we have decided to use the 2nd coefficient instead (last row). 3rd and 4th coeff. of Shock (not included in the table) are most likely connected to the talent Chain Shock and thus irrelevant.

Key:

NameFormula
I (Low/High)(standardhealthpercentmin/max * standarddamageperlevel) * (1 + amountmodifierpercent) + (coefficient * bonus damage)
II (Low/High)(standardhealthpercentmin/max * standarddamageperlevel) * (1 - amountmodifierpercent) + (coefficient * bonus damage)
III (Low/High)(standardhealthpercentmin/max * standarddamageperlevel) / (1 + amountmodifierpercent) + (coefficient * bonus damage)
IV (Low/High)(standardhealthpercentmin/max * standarddamageperlevel) / (1 - amountmodifierpercent) + (coefficient * bonus damage)
V (Low/High)(standardhealthpercentmin/max * standarddamageperlevel) + (coefficient * bonus damage) * (1 - amountmodifierpercent)
VI (Low/High)(standardhealthpercentmin/max * standarddamageperlevel) + (coefficient * bonus damage) / (1 - amountmodifierpercent)
VII (Low/High)(standardhealthpercentmin/max * standarddamageperlevel) + (coefficient * bonus damage) * (1 + amountmodifierpercent)
VIII (Low/High)(standardhealthpercentmin/max * standarddamageperlevel) + (coefficient * bonus damage) / (1 + amountmodifierpercent)

From this, we can see that closest to the actual damage for Electrocute and Force Lightning is V, and closest to the actual damage for Crushing Darkness and Shock is III. V overestimates in both cases, III underestimates in all three cases. I concur with Freehugs and it was pointed out in other conversations, that such fluctuations can't help us improve the formula, since we don't know if we are over- or underestimating, considering both are present.

And yes, there is a different formula for melee and ranged damage as already pointed out.

Ranks might be incorporated in the coefficients and modifiers somehow, but we haven't come up with a solid assumption yet. MK had a suggestion, that he seems to have abandoned (or maybe working on improving?).
09-28-2011, 02:04 AM
Post: #10
 Kaedis Super Moderator Posts: 1,587 Joined: Sep 2011 Reputation: 7
RE: Damage and Healing formula
I suspect, due to the low magnitude of the fluctuations, that what we are seeing is the result of rounding or truncation at various points in the formula. I also suspect, just due to my gut instinct as to how they would have implemented the system, that formula 3 or 8 are more likely than any 1 - Mod formulae.

Even Angels must kill from time to time...
 « Next Oldest | Next Newest »

Forum Jump:

User(s) browsing this thread: 2 Guest(s)