Game mechanics: Difference between revisions
(→Physical damage: Normalised the final damage output to a normal attack with its fixed 0.9 modifier. Otherwise the damage calculations for Heavy, Special and Sacrificials are wrong.) |
m (→Accuracy) |
||
Line 95: | Line 95: | ||
<code>EVP<sub>eff</sub> = EVP<sub>base</sub> * (Status Effect modifier)</code> | <code>EVP<sub>eff</sub> = EVP<sub>base</sub> * (Status Effect modifier)</code> | ||
* EVP<sub>base</sub> = [[Monsters/Full Monster Table|Target base EVP]] | * EVP<sub>base</sub> = [[Monsters/Full Monster Table|Target base EVP]] | ||
* | * [[Status effects|Status effect]] modifier is: | ||
** {{Paralyzed}} or {{Shocked}}: 0.85 | ** {{Paralyzed}} or {{Shocked}}: 0.85 | ||
** {{Frozen}}: 0.7 | ** {{Frozen}}: 0.7 |
Revision as of 17:06, 29 January 2025
Compilation of formulas and other mechanics.
Physical damage
To calculate physical damage (i.e. any damage not resulting from a fire/electric special attack or a Technique):
1. Begin by calculating the equipment ATP EQATP:
EQATP = [WATP,min + (Grind * 2) + FATP + BaATP] x [Watr + 1]
- WATP,min = Minimum possible weapon ATP
- FATP = Frame ATP
- BaATP = Barrier ATP
- Watr = Weapon attribute %
2. Next, calculate the BaseATP:
BaseATP = BaseATP,max - Pvar,max
- BaseATP,max = ATP value displayed ingame in the Menu in brackets (see here for stat tables)
- Pvar,max = Maximum profession variance, which is
Note: the game always displays the maximum ATP values in the menu. In reality, each class has a hidden base ATP value to which a random, profession-specific ATP value is added. This base ATP value is of importance for ATP increases through Shifta as seen in step 3 (more detail on Base ATP here).
3. Next, determine your effective ATP by applying the Shifta bonus SA to BaseATP and adding EQATP and Pvar:
ATPeff = [BaseATP + Wvar * (WATP,max - WATP,min)] * (1 + SA) + EQATP + Pvar
- SA =
Shifta base power in %
- Wvar = A random decimal between 0 and 1 for the weapon ATP variance per attack.
- WATP,max = Maximum possible weapon ATP
- Pvar = Profession variance, a random value between:
4. Next, determine the effective target DFP:
DFPeff = DFPbase * (1 - ZL)
- DFPbase = Target base DFP
- ZL =
Zalure base power in %
5. Finally, to calculate your damage on an enemy:
Damage = [(ATPeff - DFPeff) / 5] x 0.9 x Attack modifier
- Attack modifier is:
- Normal: 1
- Heavy: 1.89
- Special: 0.56
- Sacrificial: 3.33
Vjaya: 5.67
5a. If the attack is a critical hit, calculate critical damage:
Critical damage = Damage x 1.5
- The chance for an attack to be a critical hit is calculated with the following formula:
Critical hit rate = [LCK / 5]%
Note: the game doesn't round up damage values and instead truncates them. E.g. if the final calculated damage is 100.92
, the real damage output is 100
.
Note: the formulas above show that a weapons attribute percentages are only applied to its minimum possible weapon ATP. E.g. if a weapon has 300-400 ATP and 100% in an attribute, the ATP is increased to 600-700 (not 600-800). The variable spread remains a fixed value.
Knockdown
Characters will be knocked down if a single attack does 25% or more of their max HP.
Accuracy
To calculate accuracy:
1. Begin by calculating total ATA:
ATAtotal = ATAbase + WATA + FATA + BaATA
- ATAbase = ATA value displayed ingame in the Menu in brackets (see here for stat tables)
- WATA = Weapon ATA including Hit
- FATA = Frame ATA
- BaATA = Barrier ATA
Note: ATAtotal is the ATA value shown ingame (not in brackets) in the menu and thus can be directly determined without the formula above.
2. Next, calculate effective ATA:
ATAeff = ATAtotal * (Attack Type modifier) * (Combo Step modifier)
- ATAtotal = Total ATA value shown ingame in the Menu (not in brackets)
- Attack Type modifier is:
- Normal: 1.0
- Heavy: 0.7
- Special: 0.5
- Combo Step modifier is:
- First attack: 1.0
- Second attack: 1.3
- Third attack: 1.69
3. Next, calculate the enemy's effective EVP:
EVPeff = EVPbase * (Status Effect modifier)
- EVPbase = Target base EVP
- Status effect modifier is:
4. Finally, calculate accuracy using the appropriate melee or ranged accuracy formula:
Accuracymelee= ATAeff - (EVPeff * 0.2)
Accuracyranged = ATAeff - (EVPeff * 0.2) - (Distance Penalty)
- The calculated numbers are percentages. For accuracy values above
100
, the given attack hits 100%. For negative values, the attack always misses (0%). - Distance Penalty is
Distance * 0.33
if the character is a Hunter or Force withoutSmartlink (see Smartlink page for more detail), and 0 otherwise.
The accuracy check does not occur for certain projectiles if the target has moved too far when the projectile reaches the target's hitbox. This distance is 8 units for bullets. If the target has moved towards the player when manual evasion occurs, the "MISS" text is displayed. Certain weapons create attacks with launcher projectiles that do not have a manual evasion check.
Slicer projectiles follow different rules for collision. The projectile must come within 10 units of its intended target's original position for any collision check to occur. When this condition is met, the projectile connects with the target if the distance between the target's hitbox and the slicer's original position is less than the weapon's max distance. Due to consideration of the target's hitbox, slicers rarely experience manual evasion on most enemies.
Projectiles that are both subject to manual evasion and specifically fired at a target will have a lifetime calculated by (Distance to Target) / Speed
. It is possible for the game to destroy the projectile before it physically collides with the target's hitbox if the target was pushed back. There will be no "MISS" text in this case. This is commonly seen when using Heavy Attacks with weapons such as L&K38 Combat and
Yasminkov 9000M at a distance.
Techniques
Technique damage formula
[(MST + TBP)/5] x (1.0 + CB + WB + FB + MB) x (1 - RES)
- TBP: Technique Base Power
- CB: Class Boost
- WB: Weapon Boost
- FB: Frame Boost
- MB: Merge Boost
- RES: Enemy Resistance
Resta power
Amount healed by Resta (including
Leilla Photon Blast):
MST * 0.5 + TBP
Technique Base Power
- TLv = Technique level
Technique | Base Power Formula | TP Cost Formula |
---|---|---|
![]() |
Lv. 1-15: |
[1.3 * (TLv - 1)] + 5
|
![]() |
Lv. 1-15: |
[0.37 x (TLv - 1)] + 20
|
![]() |
Lv. 1-15: |
[0.25 * (TLv - 1)] + 30
|
![]() |
Lv. 1-15: |
[1.2 * (TLv - 1)] + 4
|
![]() |
Lv. 1-15: |
[0.5 * (TLv - 1)] + 25
|
![]() |
Lv. 1-15: |
[0.2 * (TLv - 1)] + 35
|
![]() |
Lv. 1-15: |
[1.1 * (TLv - 1)] + 6
|
![]() |
Lv. 1-15: |
[0.6 * (TLv - 1)] + 25
|
![]() |
Lv. 1-15: |
[0.3 * (TLv - 1)] + 35
|
![]() |
Lv. 1-15: |
[1.1 * (TLv - 1)] + 45
|
![]() |
Lv. 1-15: |
[1.05 * (TLv - 1)] + 30
|
![]() |
Lv. 1-30: |
[1.2 * (TLv - 1)] + 15
|
![]() |
- | [0.5 * (TLv - 1)] + 10
|
![]() |
- | 20 |
![]() |
Lv. 1-30: |
[1.2 * (TLv - 1)] + 15
|
![]() |
Lv. 1-30: |
[(TLv - 1)] + 10
|
![]() |
Lv. 1-30: |
[(TLv - 1)] + 10
|
![]() |
Lv. 1-30: |
[0.5 * (TLv - 1)] + 10
|
![]() |
- | 10 |
Special attacks
- Main article: Special attacks
(See also: List of weapons with reduced specials)
Frame data
- Phantasy Star Online Blue Burst runs at 30 frames per second ("FPS")
- See Game mechanics/Frame data for individual weapon/technique frame data