-Added two new effects (BlockTarget & Duel).

-Added <target hp="n%" /> condition (example - Last Attack skill).
-Updated DamOverTime effect - add increase charges count over time.
-Updated EnergyAttack effect to new charges system.
-Updated FatalBlow effect (able to increase skill power damage if target has affected by selected abnormal type).
-Added parameter ignorePhysDefPercent for skills that ignores some % of enemy pDef.
-Added function isInvulnerableFor(player) and updated PcCondOverride for this function.
-NPC and NPC buffers data updated for Othell Ground skill Poison Zone.
-Updated PhysicalAttack effect for skills, that decreases power when using some weapon types, and increases power when using some weapon types. also added isLastAttack parameter (for skill Last Attack atm).
-Added stat momentumSkillPower (for Tyrr' passive). Increases power when player have more charges (max 3).
-Updated some effect for working with maxSkillDamage parameter.
-Updated some old and new skills to 10531.

Contributed by NviX.
This commit is contained in:
MobiusDev
2015-07-14 20:03:39 +00:00
parent b07f46dc5c
commit d722c7a961
26 changed files with 2227 additions and 1002 deletions

View File

@@ -746,17 +746,23 @@ public final class Formulas
}
damage = (skill != null) ? ((damage * ssBoost) + skill.getPower(attacker, target, isPvP, isPvE)) : (damage * ssBoost);
double reduceDef = 1;
if (skill != null)
{
reduceDef -= (skill.getIgnorePhysDefPercent() / 100.0);
}
if (crit)
{
// Finally retail like formula
damage = 2 * attacker.calcStat(Stats.CRITICAL_DAMAGE, 1, target, skill) * target.calcStat(Stats.DEFENCE_CRITICAL_DAMAGE, 1, target, null) * ((70 * damage) / defence);
damage = 2 * attacker.calcStat(Stats.CRITICAL_DAMAGE, 1, target, skill) * target.calcStat(Stats.DEFENCE_CRITICAL_DAMAGE, 1, target, null) * ((70 * damage) / (defence * reduceDef));
// Crit dmg add is almost useless in normal hits...
damage += ((attacker.calcStat(Stats.CRITICAL_DAMAGE_ADD, 0, target, skill) * 70) / defence);
damage += ((attacker.calcStat(Stats.CRITICAL_DAMAGE_ADD, 0, target, skill) * 70) / (defence * reduceDef));
damage += target.calcStat(Stats.DEFENCE_CRITICAL_DAMAGE_ADD, 0, target, skill);
}
else
{
damage = (70 * damage) / defence;
damage = (70 * damage) / (defence * reduceDef);
}
damage *= calcAttackTraitBonus(attacker, target);

View File

@@ -59,6 +59,7 @@ public enum Stats
CRITICAL_DAMAGE_ADD("cAtkAdd"), // this is another type for special critical damage mods - vicious stance, critical power and critical damage SA
MAGIC_CRIT_DMG("mCritPower"),
MAGIC_CRIT_DMG_ADD("mCritPowerAdd"),
MOMENTUM_SKILL_POWER("momentumSkillPower"),
// PVP BONUS
PVP_PHYSICAL_DMG("pvpPhysDmg"),