-
Notifications
You must be signed in to change notification settings - Fork 80
Combat Formulas
source - 1 / 1.2 / 2
It's the multiplier based on combat instance, respectively full attack, balanced and full defense.
####Armor
source - minArmorReduction = (armorValue * 0.475),
maxArmorReduction = (((armorValue * 0.475) - 1) + minArmorReduction)
It's a value subtracted from total damage, first one to be applied, if it reduces the total damage to 0 a spark animation is applied. It's a random value between the minimum and maximum formulas values defined by the formula. Where armorValue is the sum of the armor values of all items wielded by the player.
####Shielding
source - (((defenseSkill * (defenseValue * 0.015)) + (defenseValue * 0.1)) * defenseFactor)
It's a value subtracted from total damage after armor is applied, if a hit is reduced to 0 because of it there is a puff animation. It's a random value between 0 to the maximum block value defined by the formula. Where defenseSkill is the player shielding skill, defenseValue is the shield item defense value, and defenseFactor is the combat factor multiplier.
####Distance hit chance source
Distance weapons chance to hit will depends on the weapon, players skill and also distance from monsters. While at melee range it's the lowest, with 1sqm difference it's the best, and slowly decreases as the target get distance.
####Distance minimum damage
source - (playerLevel * 0.2)
Distance weapons damage are a random value between the value from this formula and the one below. playerLevel is simply the level of the player.
####Melee/Distance
source - (2 * ((attackValue * (attackSkill + 5.8) / 25. + level / 10. - 0.1) / attackFactor))
For melee weapons the damage is a random number between 0 and the value from this formula, for distance weapons the damage is a random number between the value from the previous formula (Distance minimum damage) and this one. Where attackValue is the weapon item wielded attack value, attackSkill is the player skill level with the weapon used, level is the player level, and attackFactor is the combat factor multiplier. You should change this formula to the ones below depending of what you seek with your server.
- a) real 7.x =
((attackValue * attackSkill * 0.065) / attackFactor) - b) current =
(2 * (attackValue * (attackSkill + 5.8) / 25 + (level - 1) / 10.)) / attackFactor) - c) current reduced =
(1.5 * (attackValue * (attackSkill + 5.8) / 25 + (level - 1) / 10.)) / attackFactor) - d) balanced =
((attackValue * attackSkill * 0.075 + level * 0.3) / attackFactor)
Exemples:
lvl 27 skill 68 weapon 28
a 124
b 170
c 128
d 151
lvl 50 skill 75 weapon 38
a 186
b 255
c 192
d 229
lvl 70 skill 85 weapon 46
a 255
b 347
c 261
d 315
lvl 100 skill 90 weapon 50
a 293
b 403
c 303
d 368