Alternate tempfix for defence calculations.

This commit is contained in:
MobiusDevelopment
2019-04-19 17:04:54 +00:00
parent b6d6a94bff
commit 63e4b56dae
77 changed files with 385 additions and 143 deletions

View File

@@ -122,6 +122,9 @@ public final class EnergyAttack extends AbstractEffect
if (defence != -1)
{
// TODO: Find proper defence formula.
defence = effected.getLevel() > 99 ? defence / 10 : defence;
// Trait, elements
final double weaponTraitMod = Formulas.calcWeaponTraitBonus(attacker, effected);
final double generalTraitMod = Formulas.calcGeneralTraitBonus(attacker, effected, skill.getTraitType(), true);
@@ -147,7 +150,7 @@ public final class EnergyAttack extends AbstractEffect
// ...................________Initial Damage_________...__Charges Additional Damage__...____________________________________
// ATTACK CALCULATION ((77 * ((pAtk * lvlMod) + power) * (1 + (0.1 * chargesConsumed)) / pdef) * skillPower) + skillPowerAdd
// ```````````````````^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^```^^^^^^^^^^^^^^^^^^^^^^^^^^^^^```^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
final double baseMod = (77 * ((attacker.getPAtk() * attacker.getLevelMod()) + _power)) / (defence / effector.getLevelMod());
final double baseMod = (77 * ((attacker.getPAtk() * attacker.getLevelMod()) + _power)) / defence;
damage = baseMod * ssmod * critMod * weaponTraitMod * generalTraitMod * attributeMod * energyChargesBoost * pvpPveMod;
damage += attacker.getStat().getValue(Stats.PHYSICAL_SKILL_POWER, 0);
}

View File

@@ -137,6 +137,9 @@ public final class PhysicalAttack extends AbstractEffect
if (defence != -1)
{
// TODO: Find proper defence formula.
defence = effected.getLevel() > 99 ? defence / 10 : defence;
// Trait, elements
final double weaponTraitMod = Formulas.calcWeaponTraitBonus(effector, effected);
final double generalTraitMod = Formulas.calcGeneralTraitBonus(effector, effected, skill.getTraitType(), true);
@@ -165,7 +168,7 @@ public final class PhysicalAttack extends AbstractEffect
// ...................____________Melee Damage_____________......................................___________________Ranged Damage____________________
// ATTACK CALCULATION 77 * ((pAtk * lvlMod) + power) / pdef            RANGED ATTACK CALCULATION 70 * ((pAtk * lvlMod) + power + patk + power) / pdef
// ```````````````````^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^``````````````````````````````````````^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
final double baseMod = (wpnMod * ((attack * effector.getLevelMod()) + _power + rangedBonus)) / (defence / effector.getLevelMod());
final double baseMod = (wpnMod * ((attack * effector.getLevelMod()) + _power + rangedBonus)) / defence;
damage = baseMod * abnormalMod * ssmod * critMod * weaponTraitMod * generalTraitMod * attributeMod * pvpPveMod * randomMod;
damage += effector.getStat().getValue(Stats.PHYSICAL_SKILL_POWER, 0);
}

View File

@@ -99,6 +99,9 @@ public final class PhysicalAttackHpLink extends AbstractEffect
if (defence != -1)
{
// TODO: Find proper defence formula.
defence = effected.getLevel() > 99 ? defence / 10 : defence;
// Trait, elements
final double weaponTraitMod = Formulas.calcWeaponTraitBonus(effector, effected);
final double generalTraitMod = Formulas.calcGeneralTraitBonus(effector, effected, skill.getTraitType(), true);
@@ -126,7 +129,7 @@ public final class PhysicalAttackHpLink extends AbstractEffect
// ...................____________Melee Damage_____________......................................___________________Ranged Damage____________________
// ATTACK CALCULATION 77 * ((pAtk * lvlMod) + power) / pdef            RANGED ATTACK CALCULATION 70 * ((pAtk * lvlMod) + power + patk + power) / pdef
// ```````````````````^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^``````````````````````````````````````^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
final double baseMod = (wpnMod * ((attack * effector.getLevelMod()) + power + rangedBonus)) / (defence / effector.getLevelMod());
final double baseMod = (wpnMod * ((attack * effector.getLevelMod()) + power + rangedBonus)) / defence;
damage = baseMod * ssmod * critMod * weaponTraitMod * generalTraitMod * attributeMod * pvpPveMod * randomMod;
damage += effector.getStat().getValue(Stats.PHYSICAL_SKILL_POWER, 0);
damage *= -((effector.getCurrentHp() * 2) / effector.getMaxHp()) + 2;

View File

@@ -110,6 +110,9 @@ public final class PhysicalAttackSaveHp extends AbstractEffect
if (defence != -1)
{
// TODO: Find proper defence formula.
defence = effected.getLevel() > 99 ? defence / 10 : defence;
// Trait, elements
final double weaponTraitMod = Formulas.calcWeaponTraitBonus(effector, effected);
final double generalTraitMod = Formulas.calcGeneralTraitBonus(effector, effected, skill.getTraitType(), true);
@@ -137,7 +140,7 @@ public final class PhysicalAttackSaveHp extends AbstractEffect
// ...................____________Melee Damage_____________......................................___________________Ranged Damage____________________
// ATTACK CALCULATION 77 * ((pAtk * lvlMod) + power) / pdef            RANGED ATTACK CALCULATION 70 * ((pAtk * lvlMod) + power + patk + power) / pdef
// ```````````````````^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^``````````````````````````````````````^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
final double baseMod = (wpnMod * ((attack * effector.getLevelMod()) + _power + rangedBonus)) / (defence / effector.getLevelMod());
final double baseMod = (wpnMod * ((attack * effector.getLevelMod()) + _power + rangedBonus)) / defence;
damage = baseMod * ssmod * critMod * weaponTraitMod * generalTraitMod * attributeMod * pvpPveMod * randomMod;
damage += effector.getStat().getValue(Stats.PHYSICAL_SKILL_POWER, 0);
}

View File

@@ -130,6 +130,9 @@ public final class PhysicalAttackWeaponBonus extends AbstractEffect
if (defence != -1)
{
// TODO: Find proper defence formula.
defence = effected.getLevel() > 99 ? defence / 10 : defence;
// Trait, elements
final double weaponTraitMod = Formulas.calcWeaponTraitBonus(effector, effected);
final double generalTraitMod = Formulas.calcGeneralTraitBonus(effector, effected, skill.getTraitType(), true);
@@ -158,7 +161,7 @@ public final class PhysicalAttackWeaponBonus extends AbstractEffect
// ...................____________Melee Damage_____________......................................___________________Ranged Damage____________________
// ATTACK CALCULATION 77 * ((pAtk * lvlMod) + power) / pdef            RANGED ATTACK CALCULATION 70 * ((pAtk * lvlMod) + power + patk + power) / pdef
// ```````````````````^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^``````````````````````````````````````^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
final double baseMod = (wpnMod * ((attack * effector.getLevelMod()) + _power + rangedBonus)) / (defence / effector.getLevelMod());
final double baseMod = (wpnMod * ((attack * effector.getLevelMod()) + _power + rangedBonus)) / defence;
damage = baseMod * ssmod * critMod * weaponBonus * weaponTraitMod * generalTraitMod * attributeMod * pvpPveMod * randomMod;
damage += effector.getStat().getValue(Stats.PHYSICAL_SKILL_POWER, 0);
}

View File

@@ -124,6 +124,9 @@ public final class PhysicalSoulAttack extends AbstractEffect
if (defence != -1)
{
// TODO: Find proper defence formula.
defence = effected.getLevel() > 99 ? defence / 10 : defence;
// Trait, elements
final double weaponTraitMod = Formulas.calcWeaponTraitBonus(effector, effected);
final double generalTraitMod = Formulas.calcGeneralTraitBonus(effector, effected, skill.getTraitType(), true);
@@ -152,7 +155,7 @@ public final class PhysicalSoulAttack extends AbstractEffect
// ...................____________Melee Damage_____________......................................___________________Ranged Damage____________________
// ATTACK CALCULATION 77 * ((pAtk * lvlMod) + power) / pdef            RANGED ATTACK CALCULATION 70 * ((pAtk * lvlMod) + power + patk + power) / pdef
// ```````````````````^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^``````````````````````````````````````^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
final double baseMod = (wpnMod * ((attack * effector.getLevelMod()) + _power + rangedBonus)) / (defence / effector.getLevelMod());
final double baseMod = (wpnMod * ((attack * effector.getLevelMod()) + _power + rangedBonus)) / defence;
damage = baseMod * soulsMod * ssmod * critMod * weaponTraitMod * generalTraitMod * attributeMod * pvpPveMod * randomMod;
damage += effector.getStat().getValue(Stats.PHYSICAL_SKILL_POWER, 0);
}