Jump to content

Design Formulas


Leandro

Recommended Posts

This is a reference to take into account when you suggest new powersets or changes to existing ones. While these formulas can be broken with enough justification, they should definitely be followed as a starting point in order to make sure your power "feels right" when compared to other powers in COH.

 

Note: I am not a powers developer and I have no idea what most of these numbers mean in a practical sense, I am just posting them by request.

 

Standard Damage Formula

(0.2*(0.8*Recharge+1.8)) / (Standard Area Factor)

  • Standard Area Factor will equal 1 on single target attacks (i.e., Radius and Arc are 0)

 

Standard Area Factor

Spheres: (1+(Radius*0.15))

Cones: ((1+(Radius*0.15))-(((Radius/6)*0.011)/5)*(360-Arc))

 

Standard Attack Endurance Cost

(Standard Damage Formula)*EndConstraint*ATConstraint*10

 

EndConstraint = 0.65

 

ATConstraint =

0.8 for most ATs primary and secondary power pools,

1.0 for Master Mind primary and secondary, and all other non-primary/secondary pools.

 

PvP Damage Formula

((CastTime+InterruptTime)*0.7+Recharge*0.04+0.4)/AreaFactor

 

PvP Damage Modifiers

 

AT Melee Ranged
Tank 1.04 0.83
Scrapper 1.32 0.75*
Blaster 1.26 1.82
Defender 0.88 1.33
Controller 0.95 1.21
Brute 1.04 0.89*
Stalker 1.04 0.80*
Corruptor 1.04 1.33
Dominator 1.51 1.75
Mastermind 0.85 1.09
Kheldian 1.05 1.26
Soldier 1.04 1.33
Sentinel 1.22 1.37

 

*Keep in mind Epic Attacks for Melee ATs tend to always use Melee damage modifiers, but pool powers like Sorcery's Arcane Bolt always use ranged modifiers.

 

Edited by Faultline
Updated with info from Vanden.
  • Like 1
Link to comment
Share on other sites

  • 3 weeks later

Regarding the first formula, I think it should have "/AreaFactor" at the end, shouldn't it?

 

I tried using the given AreaFactor formula as a divisor, and it doesn't seem to work.  Ex: Whirling Axe has an AF (per above) of (1+(8*0.15) = ) 2.2, and Pendulum has ((1+(7*0.15)) - (((7/6)*0.011)/5)*(360-180) = ) ~1.6.  The standard damage formula above gives . . . ~144.6 and ~153.5 for them, so you'd expect ~65.6 and ~96 damage respectively; but it's actually about 55.6 and 105.7 (so the AoE is doing less than expected and the Cone is doing more than expected).

No-Set Builds: Tanker Scrapper Brute Stalker

Link to comment
Share on other sites

Are there similar formulas for the extra effects, such as the extra effects (-def, DoT, -dmg) that tend to be attached to damage-focused attacks? Or for the various control effects of mezes, or pet abilities including but not limited to both?

Link to comment
Share on other sites

Regarding the first formula, I think it should have "/AreaFactor" at the end, shouldn't it?

I tried using the given AreaFactor formula as a divisor, and it doesn't seem to work.  Ex: Whirling Axe has an AF (per above) of (1+(8*0.15) = ) 2.2, and Pendulum has ((1+(7*0.15)) - (((7/6)*0.011)/5)*(360-180) = ) ~1.6.  The standard damage formula above gives . . . ~144.6 and ~153.5 for them, so you'd expect ~65.6 and ~96 damage respectively; but it's actually about 55.6 and 105.7 (so the AoE is doing less than expected and the Cone is doing more than expected).

So I know for a fact that the damage formula should have area factor applied to it as a divisor, my phrasing that statement in the form of a question was done for politeness.

 

Now on the specific powers you mentioned, you have a point that they seem to be in violation of the standard rules. According to Pines Whirling Axe has a damage scale of 1 while the formulae give it a scale of 1.18. Similarly Pendulum has a damage scale of 1.9 while the formulae say it should have 1.74. This isn't entirely unheard of, while the standard formulae were intended as a starting point there are powers that violate them.

 

Side note: when talking about how much damage a power should do it's better to just give the damage scale rather than the absolute damage since the absolute damage depends on the AT.

Defender Smash!

Link to comment
Share on other sites

Side note: when talking about how much damage a power should do it's better to just give the damage scale rather than the absolute damage since the absolute damage depends on the AT.

 

I find the damage numbers more 'readable,' and provided them at 1.00 (tanker/0.8 or scrapper/1.125), but that's fair.

 

The thing is -- it's not just those powers.  Here's a few more:

 

Name   AF  Calc.
DF
Actual
DF
Frost 1.5 1.41 1.62
The Lotus Drops  2.2 1.18 1.54
Crowd Control 1.7 1.34 1.6
Shadow Maul 1.2 1.37 2.12

 

When I can't find a single hit for the expected result, I feel like I've gotta question the formula.

 

No-Set Builds: Tanker Scrapper Brute Stalker

Link to comment
Share on other sites

Side note: when talking about how much damage a power should do it's better to just give the damage scale rather than the absolute damage since the absolute damage depends on the AT.

 

I find the damage numbers more 'readable,' and provided them at 1.00 (tanker/0.8 or scrapper/1.125), but that's fair.

 

The thing is -- it's not just those powers.  Here's a few more:

 

Name   AF  Calc.
DF
Actual
DF
Frost 1.5 1.41 1.62
The Lotus Drops  2.2 1.18 1.54
Crowd Control 1.7 1.34 1.6
Shadow Maul 1.2 1.37 2.12

 

When I can't find a single hit for the expected result, I feel like I've gotta question the formula.

 

Can't speak for the history of all of these, but Shadow Maul and Frost break the formula intentionally. It was done at some point in the game's life to improve those sets.

Buff Trick Arrows! | Buff Poison! | Powerset Suggestions: Circus Performers Telepathy | Old Powerset Suggestions:  Probability Distortion | Magnetism | Hyper-Intellect

Some day, the prophecy will be fulfilled; Trick Arrows will be buffed and I will finally be allowed to diehttps://twitter.com/trickshootah

 

The Strange Relationship between Damage Buffs and Damage Resistance OR "Why doesn't Power Boost work on Cold Shields!?"

Link to comment
Share on other sites

I have a couple more formulas, if anyone wanted to work backwards a bit, and knew the damage they WANTED to cause, but not the recharge:

 

ST RECHARGE FORMULA:

(DamageScale - 0.36)/0.16 = RechargeTime

 

AOE RECHARGE FORMULA

((DamageScale*AreaFactor) - 0.36)/0.16 = RechargeTime

Buff Trick Arrows! | Buff Poison! | Powerset Suggestions: Circus Performers Telepathy | Old Powerset Suggestions:  Probability Distortion | Magnetism | Hyper-Intellect

Some day, the prophecy will be fulfilled; Trick Arrows will be buffed and I will finally be allowed to diehttps://twitter.com/trickshootah

 

The Strange Relationship between Damage Buffs and Damage Resistance OR "Why doesn't Power Boost work on Cold Shields!?"

Link to comment
Share on other sites

When I can't find a single hit for the expected result, I feel like I've gotta question the formula.

Well the formulae were always a guideline rather than a hard and fast rule, individual powers were adjusted on an as-needed basis to tweak the power of specific power sets.

 

That being said, it does look like the formulae for cones was violated more than most. The single target and circular AOE formulae are correct for most powers but cones do appear to be all over the place. I ran the numbers for Assault Rifle and all three cones are violating the formulae.

 

We may need to perform the ritual to summon Arcanaville.

Defender Smash!

Link to comment
Share on other sites

Is the EndConstraint meant to be 6.5, rather than 0.65?

Buff Trick Arrows! | Buff Poison! | Powerset Suggestions: Circus Performers Telepathy | Old Powerset Suggestions:  Probability Distortion | Magnetism | Hyper-Intellect

Some day, the prophecy will be fulfilled; Trick Arrows will be buffed and I will finally be allowed to diehttps://twitter.com/trickshootah

 

The Strange Relationship between Damage Buffs and Damage Resistance OR "Why doesn't Power Boost work on Cold Shields!?"

Link to comment
Share on other sites

Someone help me here.  Either I am misreading this, or the formula above ignore animation time entirely?

Great Justice - Invuln/Energy Melee Tank

Ann Atomic - Radiation/Super Strength Tank

Elecutrix - Electric Blast/Super Reflexes Sentinel

Ramayael - Titan Weapons/Bio Scrapper

C'len - Spines/Bio Brute

Link to comment
Share on other sites

Yes, the damage formulas do not consider animation time at all.

 

The early devs literally thought that animation speed wasn't important; they thought about cycle time (animation+recharge) instead of DPA. Of course, this was wildly wrong: when Claws got faster animations, the devs thought it would be a small DPS buff because the cycle time decreased only slightly; in fact it was an enormous buff because every power's DPA went way up.

 

Once they realized that fast powers are much better, they wised up a bit, but they tended to just pick animation speeds that kept DPA within the range they wanted, instead of literally accounting for it in the formula. For example, all of Water Blasts's single-target powers have pretty similar DPA, while a launch set like Ice Blast has DPA values all over the place.

  • Thanks 1
Link to comment
Share on other sites

"PvP AreaFactor"

 

This needs to just be removed from the game completely. AOEs were never used for anything other than attacking single targets anyways. High movement in pvp means no one is EVER standing next to each other, meaning the extra utility and potential damage of attacks being AOE is not a factor at all does not merit lowering damage of these attacks at all. This formula made a lot of sets in pvp that rely on AOE attacks at all absolute trash.

 

I'll elaborate more in a future post.

 

Link to comment
Share on other sites

When I can't find a single hit for the expected result, I feel like I've gotta question the formula.

Well the formulae were always a guideline rather than a hard and fast rule, individual powers were adjusted on an as-needed basis to tweak the power of specific power sets.

 

That being said, it does look like the formulae for cones was violated more than most. The single target and circular AOE formulae are correct for most powers but cones do appear to be all over the place. I ran the numbers for Assault Rifle and all three cones are violating the formulae.

 

We may need to perform the ritual to summon Arcanaville.

 

Actually, the damage formulas were an actual rule, but in some legacy cases the rules were broken in a way no one noticed until too late (i.e. Claws), and in some later cases were explicitly messed around with to try to experiment with modifying the rules (i.e. Claws again).  And anything using a pseudo pet was basically lucky to not be one shotting Hamidon by accident.

 

The damage/recharge, and damage/endurance (factoring in AoE modifiers) were *supposed* to be followed consistently.  They just were not always.

Link to comment
Share on other sites

Yes, the damage formulas do not consider animation time at all.

 

The early devs literally thought that animation speed wasn't important; they thought about cycle time (animation+recharge) instead of DPA. Of course, this was wildly wrong: when Claws got faster animations, the devs thought it would be a small DPS buff because the cycle time decreased only slightly; in fact it was an enormous buff because every power's DPA went way up.

 

Once they realized that fast powers are much better, they wised up a bit, but they tended to just pick animation speeds that kept DPA within the range they wanted, instead of literally accounting for it in the formula. For example, all of Water Blasts's single-target powers have pretty similar DPA, while a launch set like Ice Blast has DPA values all over the place.

 

This one was very specifically my fault, and as with most problems having to do with damage calculations, you can blame Claws.  When Claws went through its update the devs predicted the changes were going to boost Claws by a few percent, I predicted the changes were going to boost Claws into the stratosphere, and my predictions ended up being accurate to within about 10% after the set was tested.  That's when DPA calculations went from being an interesting attack chain arithmetic thing to being the *only* thing relevant to attack set performance metrics.

 

You know, it still amuses me that "DPA" is something that doesn't really exist much outside of CoH.  Part of that is CoH was originally designed without global cooldown, which means unlike almost all other MMOs CoH attack powers do not have fixed DPS.  And part of this is due to the fact that for a small little superhero MMO we had a super-high concentration of quants.  I haven't seen anything like the quant community in CoH outside of maybe Eve Online.  Few MMO player communities could even do these kinds of analyses much less invent them from scratch.

  • Thanks 1
Link to comment
Share on other sites

When I can't find a single hit for the expected result, I feel like I've gotta question the formula.

Well the formulae were always a guideline rather than a hard and fast rule, individual powers were adjusted on an as-needed basis to tweak the power of specific power sets.

 

That being said, it does look like the formulae for cones was violated more than most. The single target and circular AOE formulae are correct for most powers but cones do appear to be all over the place. I ran the numbers for Assault Rifle and all three cones are violating the formulae.

 

We may need to perform the ritual to summon Arcanaville.

 

Actually, the damage formulas were an actual rule, but in some legacy cases the rules were broken in a way no one noticed until too late (i.e. Claws), and in some later cases were explicitly messed around with to try to experiment with modifying the rules (i.e. Claws again).  And anything using a pseudo pet was basically lucky to not be one shotting Hamidon by accident.

 

The damage/recharge, and damage/endurance (factoring in AoE modifiers) were *supposed* to be followed consistently.  They just were not always.

Do you have any clue what's going on with the Area Factor for cones then? Because i'm struggling to find a cone that fits the formula so I'm wondering if the given formula is incorrect in some fashion.

 

EDIT: Energy Torrent fits, but a lot of others don't.

Defender Smash!

Link to comment
Share on other sites

When I can't find a single hit for the expected result, I feel like I've gotta question the formula.

Well the formulae were always a guideline rather than a hard and fast rule, individual powers were adjusted on an as-needed basis to tweak the power of specific power sets.

 

That being said, it does look like the formulae for cones was violated more than most. The single target and circular AOE formulae are correct for most powers but cones do appear to be all over the place. I ran the numbers for Assault Rifle and all three cones are violating the formulae.

 

We may need to perform the ritual to summon Arcanaville.

 

Actually, the damage formulas were an actual rule, but in some legacy cases the rules were broken in a way no one noticed until too late (i.e. Claws), and in some later cases were explicitly messed around with to try to experiment with modifying the rules (i.e. Claws again).  And anything using a pseudo pet was basically lucky to not be one shotting Hamidon by accident.

 

The damage/recharge, and damage/endurance (factoring in AoE modifiers) were *supposed* to be followed consistently.  They just were not always.

Do you have any clue what's going on with the Area Factor for cones then? Because i'm struggling to find a cone that fits the formula so I'm wondering if the given formula is incorrect in some fashion.

 

EDIT: Energy Torrent fits, but a lot of others don't.

 

It's been a while, but I will try to do some research on this when I get some time.  I do recall that the formula worked in general for most blaster ranged AoE attacks.  It did not work for many melee attacks because many fell into "exceptions."  Shadow Maul, for example, is an exception.  So-called pencil cones were also I believe exceptions.  Attacks that were not balanced as "attacks" were exceptions - for example, Siphon Life although that's not an AoE, doesn't obey the damage formulas in general because it isn't treated as a conventional attack.  Let me see what I can do here.

Link to comment
Share on other sites

  • 1 month later

Hi, ive been working on a formula for pvp damages based on the AT modifiers listed above. Here are two links that both have the inputs set to look at Archery's Aimed Shot for a Blaster:

One, Two.

 

S is the Scalar

C is the cast time of the power (so currently set to 1.67 for Aimed Shot),

R is the recharge of the power (6s for Aimed Shot)

A is the area divisor incase it ever proves useful.

 

Now you may have noticed that in these two formulas that what I multiply S with is different, with one using 56.1 and another using 42.27. The way I set up the formula multiplies the AT Modifier above with these numbers to create the true scalar. Now what I expected is that since here blaster melee damage scalar is listed as 1.000, and in this table the corresponding value is 56.10 (at level 50), doesnt this mean that a scalar of 1.000 = 56.10? If that is true then the above listed AT modifiers must be wrong, since as you see in order to correctly predict Aimed Shot's pvp damage value I had to change the blaster ranged AT modifier from it's listed 1.82 to 1.383. Alternately if im wrong, can someone explain why when using the listed AT Modifier of 1.82, I needed to multiply this by 42.27 in order to generate accurate* results, and where this number could come from?

 

*Multiple powers were tested using both formulas, not just Aimed shot. It does produce quite accurate values for the powers I tested that dont do extra funky effects like holds.

Edited by Alouu
  • Like 1
Link to comment
Share on other sites

  • 3 weeks later
  • 2 weeks later
On 9/19/2019 at 9:14 AM, DarknessEternal said:

So what explains why Thunderous Blast has a longer recharge than the other Blaster T9s, and does the same damage?

Other nukes already don't follow the damage formula: with a 145s recharge and a 25-foot radius, you would expect a power like Nova to deal scale 4.96 damage, but instead it's scale 4.00.

 

That said, I still don't see any reason for Thunderous Blast to have a longer recharge. Neither its damage nor its secondary effects are better than various other nukes with 145s recharge.

Link to comment
Share on other sites

  • 3 weeks later
On 9/19/2019 at 12:14 PM, DarknessEternal said:

So what explains why Thunderous Blast has a longer recharge than the other Blaster T9s, and does the same damage?

It's 60 ft range. Of all the T9s that do upfront base scale 4 damage, it is the only one that isn't a PBAoE.

Buff Trick Arrows! | Buff Poison! | Powerset Suggestions: Circus Performers Telepathy | Old Powerset Suggestions:  Probability Distortion | Magnetism | Hyper-Intellect

Some day, the prophecy will be fulfilled; Trick Arrows will be buffed and I will finally be allowed to diehttps://twitter.com/trickshootah

 

The Strange Relationship between Damage Buffs and Damage Resistance OR "Why doesn't Power Boost work on Cold Shields!?"

Link to comment
Share on other sites

  • 2 months later
On 9/3/2019 at 6:40 AM, Alouu said:

Hi, ive been working on a formula for pvp damages based on the AT modifiers listed above. Here are two links that both have the inputs set to look at Archery's Aimed Shot for a Blaster:

One, Two.

 

S is the Scalar

C is the cast time of the power (so currently set to 1.67 for Aimed Shot),

R is the recharge of the power (6s for Aimed Shot)

A is the area divisor incase it ever proves useful.

 

Now you may have noticed that in these two formulas that what I multiply S with is different, with one using 56.1 and another using 42.27. The way I set up the formula multiplies the AT Modifier above with these numbers to create the true scalar. Now what I expected is that since here blaster melee damage scalar is listed as 1.000, and in this table the corresponding value is 56.10 (at level 50), doesnt this mean that a scalar of 1.000 = 56.10? If that is true then the above listed AT modifiers must be wrong, since as you see in order to correctly predict Aimed Shot's pvp damage value I had to change the blaster ranged AT modifier from it's listed 1.82 to 1.383. Alternately if im wrong, can someone explain why when using the listed AT Modifier of 1.82, I needed to multiply this by 42.27 in order to generate accurate* results, and where this number could come from?

 

*Multiple powers were tested using both formulas, not just Aimed shot. It does produce quite accurate values for the powers I tested that dont do extra funky effects like holds.

Ok, no one has deigned to answer your question in the last few months, so I'm going to give it a go…

 

Damage, as designed by the Paragon Studios staff, was a rather complex beast pulling from multiple tables with a host of variables, both logical and illogical.

 

It all starts by determining the base health of a generic entity at a given level.  From there, base damage for a generic entity is determined by the formula:

 

BaseDMG_Generic = (HP_Generic * 0.3) / 3

 

This is equal to the base damage for temporary powers for each archetype.

 

From there, the individual archetypes then undergo the formula:

 

BaseDMG_Class = ((BaseDMG_Generic * (1 - LevelModifier)) + (BaseDMG_Generic * ATModifier * LevelModifier)) * (UnspecializiedLevelEffectiveness/100)

 

Where

LevelModifier = 0.20 @ level 1; 1.00 @ level 20+

UnspecializiedLevelEffectiveness = 100 @ 1; 51.93 @ 50

Sounds like a lot?  Good thing I already did it for you.

 

This is then applied to the scale value derived from the RechargeTime and Endurance equations for PVE.

 

PVP damage undergoes an additional formula:

 

(CastTime*0.7+RechargeTime*0.04+0.4)*AdjustedATDamageMod*DamageType%*(1/3.25)

 

AdjustedATDamageMod


Tanker           1.267988141
Scrapper       1.147593307
Blaster           1.229564258
Defender       1.560600789
Controller      1.676678533
Brute              1.352520684
Stalker           1.014390513
Corrupter       1.352520684
Dominator     1.4
Mastermind  1.50901068
Kheldian        1.2
Veat                1.2
Pet                  1

 

Maybe that will help some?

 

  • Like 1
Link to comment
Share on other sites

Thanks Crimson-Oriole, that was quite informative though there are still missing pieces in my understanding.

 

From what you've laid out, my quick and dirty takeaways are:

 

HP_Generic = 1070.90

BaseDMG_Generic = 107.09

LevelModifier = 1
UnspecializiedLevelEffectiveness = 51.93

 

Then BaseDMG_Class for an AT scalar of 1.00 can be gotten by simplifying your formula down to something like this.

 

Which gets me back to my magic number that I pulled from the table before of 55.61*. Well im glad I have a bit more understanding of where this number comes from but it doesnt really change my use-case for it, I can still just think of it as an arbitrary number.

*Which in my previous post I accidentally miswrote as 56.10, but you can see from my formulas I was using 55.61.

 

So in my previous post, I was stuck between a situation in which using two numbers supplied would not produce the correct results, but I could by process of narrowing down on the missing variable approximate it and make it work. The missing variables were either a number which competes with 55.61, which I approximated to be 42.27, or a number which competes with leandro's supplied 1.82 ranged AT scalar, which I approximated to be 1.383. I did not know which of the two options was correct, but thanks to your AdjustedATDamageMod values, reaching the value of 1.383 (which is an approximated value for a suitable blaster ranged damage pvp AT scalar) for example is possible by multiplying the standard blaster ranged AT scalar of 1.125, and your AdjustedATDamageMod value of 1.229564258.

 

So the conclusion I have to reach from this is that the first formula of the two options was the right one. However this just leads right into the question, what are leandro's pvp AT scalar numbers then? They don't produce correct results and arent needed at all in the formula which actually does, which uses the seemingly unrelated AdjustedATDamageMod values instead.

 

Edited by Alouu
Link to comment
Share on other sites

On 1/10/2020 at 10:50 PM, Alouu said:

So the conclusion I have to reach from this is that the first formula of the two options was the right one. However this just leads right into the question, what are leandro's pvp AT scalar numbers then? They don't produce correct results and arent needed at all in the formula which actually does, which uses the seemingly unrelated AdjustedATDamageMod values instead.

Quite frankly, I have no idea where those PVP scalars came from, but unless the SCORE team rebalanced PVP at some point, they do not appear to be correct.  The modifiers that I quoted come directly from the source spreadsheets available through Ourodev.  They have the values and formulas used by PS developers at the time of the shutdown.

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...