User blog:Luxionmk2/Poison DOT, part deux, but more of a re-deux

Still trying to figure out how poison DOT is calculated, or at least what's displayed in the unit's profile. Figuring this out will allow me to predict very accurately what the DOT is at higher levels. The less accurate method is simply add 10% per rank...

Note that all base damage in the game is displayed as the +10%, ROUNDED DOWN. Poison doesn't appear to follow that rule. So I'll be applying mathematical methods to a bunch of samples/examples. The more "hits" a method gets will tell me which method probably works best for getting the in-game DOT display.

Methods
Once we have the "base" damage per rank, there's a couple of methods to apply to get DOT. Here, the ROUND DOWN rule might or might not apply. It works in some cases, but in others, it seems that ROUND OFF or ROUND UP yields the numbers we want.

Base Large Tick Value: I can almost confidently say that this value is calculated from the average of displayed (rounded) Rank 1 base damage of the attack, rounded up/off - it doesn't matter since you either have a half or not.

Large Method #1:
 * Determine Rank 1 base damage plus 10% per rank, then take that average. Note that this is the equivalent of adding 10% per rank directly to the tick value. Note whether ROUNDING was necessary to reach the in-game displayed value.
 * Example: R1 45-75, +10% = 66.

Large Method #2:
 * Average the rounded-down damage per rank, that is, add 10% per rank then round down.
 * Example: R1 45-75, R2 49-82. Average is (49+82)/2 = 65.5. Differs from Method #1 by 0.5.

Small Method #1:
 * Simply take the calculated large tick value and divide by the duration. Note the rounding needed to match the in-game displayed value.

Small Method #2 (for ranks 2+):
 * Simply add 10% per rank to the Rank 1 small tick value. ROUND DOWN is expected, but note what is actually needed.

Small Method #3:
 * Divide the large tick, calculated from base damage before rounding, by the duration. This needs to be coupled with a Large Method since there are multiple ways to calculate the damage which yields different results before rounding.  Note the rounding needed to match the in-game displayed value.

Chem Trooper Chemical Sweep
Displayed stats:
 * Rank 1 Base Damage: 45-75
 * R2 Base Damage: 49-82 (10% increase, rounded down)
 * R1 Poison DOT, large tick: 60
 * R1 Poison DOT, Small tick: 20
 * R2 Poison DOT, large tick: 66
 * R2 Poison DOT, small tick: 22

Base Rank 1 Large Tick:  45+75/2 = 60

Large Method #1 (works here since the base value is a multiple of 10, so won't generate fractions): R2 large tick: 110%(45+75)/2    = 66

Large Method #2 works, but with ROUND UP/ROUND OFF R2 large tick: (49+82)/2        = 65.5

Small Method #1 works here because the large tick is divisible by the duration and never has a fraction. R1 small tick: 60/3        = 20 R2 small tick: 66/3        = 22

Small Method #2: R2 small tick: 110%(20)    = 22

Large Method #1 + Small Method #3: R2 small tick: (110%(45+75)/2)/3 = 22

Large Method #2 + Small Method #3: R2 small tick: ((49+82)/2)/3     = 21.8333... ROUND UP/ROUND OFF

Heavy Chemical Tank Eruption
Displayed stats:
 * Rank 1 Base Damage: 56-84
 * R2 Base Damage: 61-92 (10% increase, rounded down)
 * R1 Poison DOT, large tick: 70
 * R1 Poison DOT, Small tick: 23
 * R2 Poison DOT, large tick: 77
 * R2 Poison DOT, small tick: 26

Base Rank 1 Large Tick:  56+84/2 = 70

Large Method #1: R2 large tick: 110%(56+84)/2    = 77

Large Method #2 works, but with ROUND UP/ROUND OFF R2 large tick: (61+92)/2        = 76.5

Small Method #1: R1 small tick: 70/3        = 23.333... ROUND DOWN/ROUND OFF R2 small tick: 77/3        = 25.667... ROUND UP/ROUND OFF The inconsistency leads towards ROUND OFF in this case.

Small Method #2: R2 small tick: 110%(23)    = 25.3 ROUND UP

Large Method #1 + Small Method #3: R2 small tick: (110%(56+84)/2)/3 = 25.667... ROUND UP/ROUND OFF

Large Method #2 + Small Method #3: R2 small tick: ((61+92)/2)/3     = 25.5 ROUND UP/ROUND OFF

Aries Chem Shell
Displayed stats:
 * Rank 1 Base Damage: 30-46
 * Rank 1 Chem Shell Base Damage: 12-18 (40%, 12-18.4)
 * R2 Base Damage: 13-19 (10% increase, rounded down)
 * R1 Poison DOT, large tick: 15
 * R1 Poison DOT, Small tick: 5
 * R2 Poison DOT, large tick: 16
 * R2 Poison DOT, small tick: 5

Base Rank 1 Large Tick:  12+18/2 = 15

Large Method #1: R2 large tick: 110%(12+18)/2    = 16.5 ROUND DOWN

Large Method #2: R2 large tick: (13+19)/2        = 16

Small Method #1: R1 small tick: 15/3        = 5 R2 small tick: 16/3        = 5.333... ROUND DOWN/ROUND OFF Looking at the above example with the Heavy Chemical Tank, ROUND OFF would be the case if Small Method #1 was used to calculate the small damage tick value.

Small Method #2: R2 small tick: 110%(5)    = 5.5 ROUND DOWN/ROUND OFF

Large Method #1 + Small Method #3: R2 small tick: (110%(12+18)/2)/3 = 5.5 ROUND DOWN'

Large Method #2 + Small Method #3: R2 small tick: ((13+19)/2)/3     = 5.333... ROUND DOWN/ROUND OFF

Hunter Poisoned Arrow
Displayed stats:
 * Rank 1 Base Damage: 23-28
 * Rank 1 Poisoned Arrow Base Damage: 11-14 (50%, 11.5-14)
 * R5 Base Damage: 15-19 (10% increase, rounded down from calculated Poisoned Arrow rank 1 base damage)
 * R1 Poison DOT, large tick: 13
 * R1 Poison DOT, Small tick: 4
 * R5 Poison DOT, large tick: 17
 * R5 Poison DOT, small tick: 6

Base Rank 1 Large Tick:  11+14/2 = 12.5 ROUND UP/ROUND OFF

Large Method #1: R5 large tick: 140%(11+14)/2    = 17.5 ROUND DOWN

Large Method #2: R2 large tick: (15+19)/2        = 17

Small Method #1: R1 small tick: 13/3        = 4.333... ROUND DOWN/ROUND OFF R5 small tick: 17/3        = 5.667... ROUND UP/ROUND OFF Again, more support for ROUND OFF if this was the way small tick damage was calculated.

Small Method #2: R5 small tick: 140%(4)    = 5.6 ROUND UP/ROUND OFF Comparing this to the Aries Chem Shell, ROUND OFF is more consistent at this point.

Large Method #1 + Small Method #3: R5 small tick: (140%(11+14)/2)/3 = 5.8333... ROUND UP/ROUND OFF This example seems to go against everything I've found so far, so I'm thinking Rank 1 base damage isn't used for calculating this value.

Large Method #2 + Small Method #3: R5 small tick: ((15+19)/2)/3     = 5.667... ROUND UP/ROUND OFF

Conclusion
To be continued...