Main Page

Difference between revisions of "Damage Formula (NGS)"

From Arks-Visiphone
Jump to navigation Jump to search
(Add Megalotix title buff, Metis/Transorve ShifDeba, Enemy Healing section)
(Separate enemy damage formula into min/max to reflect how it is calculated internally)
Line 103: Line 103:
 
Enemy damage formula is quite similar to player damage:
 
Enemy damage formula is quite similar to player damage:
  
<p class="lead text-center">Enemy Damage = ( FLOOR(EnemyATK * EnemyATK Modifer) * Variance - PlayerDEF ) * Damage Multipliers * 0.2</p>
+
<p class="lead text-center">Minimum Enemy Damage = ( FLOOR(EnemyMinATK * EnemyATK Modifer) - PlayerDEF ) * Damage Multipliers * 0.2</p>
  
* '''EnemyATK''': The internal attack value of the enemy. Scales with enemy level. See [[Enemy Stats (NGS)|Enemy Stats]].
+
<p class="lead text-center">Maximum Enemy Damage = ( FLOOR(EnemyMaxATK * EnemyATK Modifer) - PlayerDEF ) * Damage Multipliers * 0.2</p>
 +
 
 +
* '''EnemyMin/MaxATK''': The internal attack values of the enemy. Unlike players, enemies have their internal values for minimum and maximum attack set separately. The actual values scale to enemy levels but the variance range stays mostly consistent (approximately 49/51 or 0.960784, but rounded so the ratio is not always exact). See [[Enemy Stats (NGS)|Enemy Stats]].
 
* '''EnemyATK Modifier''': Each enemy has a set modifier used to multiply the base attack value. The resulting attack value is then floored. Modifier values found so far range around 0.99 - 1.03.
 
* '''EnemyATK Modifier''': Each enemy has a set modifier used to multiply the base attack value. The resulting attack value is then floored. Modifier values found so far range around 0.99 - 1.03.
* '''Variance''': The range in which attack is scaled. Each enemy has a minimum and maximum attack value defined internally. The variance ratio (MaxATK/MinATK) can be approximated as 49/51 or 0.960784. Note that the defined values are already rounded so this ratio is not always exact. See [[Enemy Stats (NGS)|Enemy Stats]].
 
 
* '''PlayerDEF''': The defense value shown in stats window. See [[Player Stats (NGS)|Player Stats]].
 
* '''PlayerDEF''': The defense value shown in stats window. See [[Player Stats (NGS)|Player Stats]].
 
* '''Damage Multipliers''': Final damage multipliers applied from various sources. See [[#Enemy Damage Multipliers|Enemy Damage Multipliers]].
 
* '''Damage Multipliers''': Final damage multipliers applied from various sources. See [[#Enemy Damage Multipliers|Enemy Damage Multipliers]].

Revision as of 11:46, 13 February 2022

Player Damage

The following sections discuss player damage, i.e., damage done by the player.

Damage Formula

Player damage can be described with the following formula:

Player Damage = ( WeaponATK * Variance + PlayerATK - FLOOR(EnemyDEF) ) * Damage Multipliers * 0.2

  • WeaponATK: The attack value of the weapon equipped as shown on item details.
  • Variance: The range in which WeaponATK is scaled. This is shown on page 2 of item details. See Weapon Variance.
  • PlayerATK: The attack value shown in stats window with no equipments. See Player Stats.
  • EnemyDEF: The internal defense value of the enemy. Scales with enemy level. This value is floored when used. See Enemy Stats.
  • Damage Multipliers: Final damage multipliers applied from various sources. See Player Damage Multipliers.

The resulting damage from the calculation is rounded to the nearest integer.

Weapon Variance

The variance range of a weapon is shown on page 2 of item details. A value is selected at random from this range to be used as the variance multiplier in the damage formula. For example, if a weapon has 70% - 100% variance range. A value between 0.7 and 1.0 is randomly selected and used to scale the weapon's attack value in damage calculation. The probability to get each value in the range seems to be the same, i.e., variance is uniformly distributed.

Increasing the variance floor via external sources like Abilities adds a multiplier to the variance floor in calculation. For example, if a weapon has 70% - 100% variance range, having 1% increased variance floor gives us a range of 70 * 1.01 = 70.7% - 100%. Variance floor increase stacks multiplicatively.

With knowledge on variance, we can derive the minimum/maximum player damage from the initial damage formula:

Minimum Player Damage = ( WeaponATK * Minimum Variance + PlayerATK - FLOOR(EnemyDEF) ) * Damage Multipliers * 0.2

Maximum Player Damage = ( WeaponATK + PlayerATK - FLOOR(EnemyDEF) ) * Damage Multipliers * 0.2

Player Damage Multipliers

There are many damage multipliers modifying the resulting damage done. These multipliers stack multiplicatively. Some common sources of damage multipliers are:

  • PA/Tech Notation: The damage modifier of the attack used. This is usually shown in-game as a percentage value for Photon Arts and Techniques, but actual testing is required to determine the distribution of damage notation for each hit of those attacks. Other attacks in-game can also be tested in a similar fashion. For example, Barta has 250 power shown in its in-game description, but testing revealed that it does 150% damage uncharged, and 250% damage when charged (used as 1.5 and 2.5 multiplier in calculation respectively).
  • Part Boost: Damage multiplier depending on the part of the target enemy where the attack lands. Common values known are:
    • Elemental Weakness: 1.2 (Elemental attacks only)
    • Weak Point: 1.5
    • Weak Bullet: 1.2
    • Reinforced Weak Bullet: 1.25
  • Class Skills
  • Weapon Potentials
  • Preset Abilities
  • Special Abilities
  • Unit stats
  • Food buffs
  • Region Mag buffs
  • Enemy buffs: See Enemy Buffs.
  • Level Difference Modifier: Damage reduction from level difference below enemy. See Level Difference Modifiers.
  • Optimal Range Multiplier: Damage multipliers depending on the distance between the player and where the attack lands. Only affects certain weapons. See Optimal Range.

Critical Damage

Critical damage is shown with a larger font in-game (not to be confused with weak point damage which is shown in blue, see Weak Point Damage (Blue Damage)). Critical damage is 120% of maximum player damage, as shown with the following formula:

Critical Damage = Maximum Player Damage * 1.2

or in expanded form:

Critical Damage = ( WeaponATK + PlayerATK - FLOOR(EnemyDEF) ) * Damage Multipliers * 0.2 * 1.2

Where 1.2 is the critical multiplier.

The default critical rate is approximated to be 5%. This can be increased (likely additively) via other sources like Potentials and Abilities.

Optimal Range

Optimal Range (適正距離) is a term used to describe the mechanics of certain weapon types having increased damage depending on the distance from the player to where the attack lands. Each range gives a specific damage multiplier to most attacks. The range giving the highest damage multiplier (AKA the Optimal Range) is indicated by the target marker turning orange in-game.

Weapon Close Range Mid Range Far Range
Wired Lance 1.0 1.2 1.0
Rifle 1.1 1.2 1.0
Twin Machinegun 1.2 1.1 1.0

Note: Actual distance for each range differs for each weapon type.

Enemy Damage

The following sections discuss enemy damage, i.e., damage done to the player.

Damage Formula

Enemy damage formula is quite similar to player damage:

Minimum Enemy Damage = ( FLOOR(EnemyMinATK * EnemyATK Modifer) - PlayerDEF ) * Damage Multipliers * 0.2

Maximum Enemy Damage = ( FLOOR(EnemyMaxATK * EnemyATK Modifer) - PlayerDEF ) * Damage Multipliers * 0.2

  • EnemyMin/MaxATK: The internal attack values of the enemy. Unlike players, enemies have their internal values for minimum and maximum attack set separately. The actual values scale to enemy levels but the variance range stays mostly consistent (approximately 49/51 or 0.960784, but rounded so the ratio is not always exact). See Enemy Stats.
  • EnemyATK Modifier: Each enemy has a set modifier used to multiply the base attack value. The resulting attack value is then floored. Modifier values found so far range around 0.99 - 1.03.
  • PlayerDEF: The defense value shown in stats window. See Player Stats.
  • Damage Multipliers: Final damage multipliers applied from various sources. See Enemy Damage Multipliers.

The resulting damage from the calculation is rounded to the nearest integer.

Enemy Damage Multipliers

There are many damage multipliers modifying enemy damage. These multipliers stack multiplicatively. Some common sources of damage multipliers are:

  • Attack Notation: The damage modifier of the attack used. Most common values seem to be multiples of 50 (e.g., 100%, 150%, 200%, 250%), but there are also exceptions (e.g., Vyne Hog's Spike attack is 80%).
  • Player Damage Reduction: Damage reduction (or negative reduction which increases damage instead) the player has. Common sources known are:
    • Class Skills
    • Weapon Potentials
    • Preset Abilities
    • Special Abilities
    • Unit stats
    • Food buffs
  • Enemy buffs: See Enemy Buffs.
  • Level Difference Modifier: Damage increase from level difference above player. See Level Difference Modifiers.

Enemy Healing

The following sections discuss enemy healing.

Healing Formula

Some enemies are capable of recovering HP of itself and other enemies nearby. The recovery value can be described by the following formula:

Enemy Healing = FLOOR( FLOOR(EnemyMinATK * EnemyATK Modifer) * Healing Notation )


  • EnemyMinATK: The internal minimum attack value of the enemy. Scales with enemy level. See Enemy Stats.
  • EnemyATK Modifier: Each enemy has a set modifier used to multiply the base attack value. The resulting attack value is then floored. Modifier values found so far range around 0.99 - 1.03.
  • Healing Notation: The healing modifier of the healing used. This is specifically set for each enemy/healing. See Healing Notation.

The resulting healing value from the calculation is rounded down.

Healing Notation

So far each enemy only has one healing move so notations are simply listed per enemy.

Enemy Healing Notation
Metis 6.5
Gilnach 3


Appendix

Enemy Buffs

There are several sources of buffs modifying an enemy's damage done and received. These modifiers stack additively.

Title Buffs

Enemies with title included in their names receive the following damage modifiers:

Title Damage done Damage received
Silver
白銀の
- -
Golden
金色の
- -
Battle-Hardened
老練の
+30% -
Despair
絶望の
+150% -50%
Elite
精鋭の
+150% -

Weather Buffs

Weather buff is indicated in-game by a small icon next to enemy name when targeted. This buff gives certain enemies +20% damage done during specific weather conditions.

Daynight Shift

Alters enemies change their appearances significantly during night time. This is called "Daynight Shift" which also gives them +30% damage done in their night forms.

Shifta/Deband

Some enemies/objects can cast Shifta/Deband, affecting themselves and/or other nearby enemies. The buff has been found to stack additively up to a set number of times. The following table lists all enemies capable of casting Shifta/Deband known so far and their buff properties.

Enemy Duration (max) Damage done Damage received Stacks
Gulf Roar 30s (30s) +5% -5% 5 times
Fangulf Roar 30s (30s) +5% -5% 5 times
El Discythe 30s (30s) +25% -5% 2 times
Ciacurio 30s (30s) +25% -10% 2 times
Metis 30s (30s) +50% - -
Transorve Permanent +50% -10% -

Enhanced Enemies

Enhanced Enemies have an Enhancer core attached to them and glow red. They receive the following damage modifiers:

Core state Damage done Damage received (multiplicative)
Intact +50% Core: 1.2
Body: 0.1
Destroyed - Weak element: 1.5
(stacks with weakness multiplier = 1.5 * 1.2)

As noted, Enhanced Enemies' damage received modifiers seem to be applied as multiplicative part boosts unlike damage reduction from other enemy buffs.

Level Difference Modifiers

Both player damage and enemy damage are modified when the player's level is lower than the enemy's.

Player Damage Modifier based on Level Difference

When the enemy level is higher than the player's Main Class level by 5 levels or more, player damage done to the enemy is reduced. The damage reduction can be calculated with the following formula:

Damage Reduction = (Level Difference - 1) * 10%

For example, against an enemy at level 15, level 10 players' damage will be reduced by 40%, level 7 players' damage reduced by 70%, while level 11 and above players do not get their damage reduced. This modifier seems to have a maximum value of 90% damage reduction.

Changelog:

  • 2021/07/14 Update: Against Gigantix, damage from underleveled players will be reduced to 1 instead.
  • 2021/08/04 Update: Players can bypass this damage reduction if their Power Level is high enough. Specific values required depend enemy levels.

Enemy Damage Modifier based on Level Difference

When the enemy level is higher than the player's Main Class level, enemy damage done to the player is increased. The damage increase can be calculated with the following formula:

Damage Increase = (Level Difference) * 20%

For example, against an enemy at level 15, level 10 player will receive 100% increased damage, level 12 player will receive 60% increased damage, while level 15 player will receive the normal amount of damage. This modifier has a maximum value of 100% damage increase.

Attack Limit

This section contains data derived from datamining the game files. All values may be changed in the future.

There is a maximum limit set to post-variance attack value used in calculating damage done to an enemy at each level. The damage formula can be rewritten as follows:

Player Damage = ( MIN(WeaponATK * Variance + PlayerATK, AtkLimit(EnemyLevel)) - FLOOR(EnemyDEF) ) * Damage Multipliers * 0.2

As of 2021/08/04, the attack limit value is only applied to player damage. All values up to level 200 have been found from datamining the game files. Note that these values may require in-game verification and can be changed in the future.

Level Attack Limit
1 900
2 918
3 935
4 953
5 972
6 990
7 1009
8 1028
9 1049
10 1068
11 1090
12 1110
13 1132
14 1153
15 1176
16 1199
17 1220
18 1244
19 1268
20 1292
21 1318
22 1343
23 1369
24 1396
25 1422
26 1450
27 1477
28 1506
29 1535
30 1565
31 1595
32 1625
33 1656
34 1687
35 1721
36 1753
37 1788
38 1823
39 1858
40 1892
41 1930
42 1967
43 2004
44 2042
45 2082
46 2123
47 2162
48 2204
49 2248
50 2291
51 2334
52 2380
53 2425
54 2472
55 2520
56 2568
57 2617
58 2668
59 2719
60 2772
61 2825
62 2879
63 2934
64 2990
65 3048
66 3107
67 3167
68 3228
69 3289
70 3353
71 3418
72 3484
73 3551
74 3619
75 3689
76 3760
77 3833
78 3906
79 3980
80 4057
81 4135
82 4216
83 4296
84 4379
85 4463
86 4549
87 4637
88 4727
89 4817
90 4909
91 5004
92 5100
93 5198
94 5298
95 5400
96 5504
97 5610
98 5718
99 5828
100 5940
101 6054
102 6172
103 6289
104 6412
105 6534
106 6660
107 6788
108 6919
109 7051
110 7188
111 7326
112 7468
113 7610
114 7758
115 7907
116 8059
117 8214
118 8371
119 8533
120 8698
121 8864
122 9036
123 9209
124 9386
125 9568
126 9751
127 9938
128 10129
129 10325
130 10524
131 10727
132 10933
133 11143
134 11358
135 11575
136 11798
137 12025
138 12258
139 12493
140 12733
141 12979
142 13229
143 13483
144 13742
145 14008
146 14276
147 14551
148 14832
149 15118
150 15408
151 15704
152 16007
153 16314
154 16628
155 16949
156 17275
157 17608
158 17946
159 18292
160 18643
161 19002
162 19368
163 19741
164 20120
165 20508
166 20903
167 21305
168 21715
169 22133
170 22559
171 22993
172 23436
173 23886
174 24347
175 24815
176 25291
177 25778
178 26275
179 26780
180 27295
181 27822
182 28357
183 28902
184 29459
185 30025
186 30604
187 31193
188 31793
189 32405
190 33029
191 33665
192 34313
193 34973
194 35645
195 36331
196 37031
197 37742
198 38470
199 39210
200 39965

Changelog:

Weak Point Damage (Blue Damage)

When an attack lands on a weak point, the damage number is shown in blue in-game. The following are known sources of blue damage numbers:

  • Natural weak points on enemies
  • Enhancer
  • Weak Bullet
  • Reinforced Weak Bullet

See Also