以下为伤害计算公式,其中attackResult,defenceResult分别为攻击和反击造成的伤害
attackForce = attacker.attack * (attacker.health / attacker.maxHealth)
defenseForce = defender.defense * (defender.health / defender.maxHealth) * defenseBonus
totalDamage = attackForce + defenseForce
attackResult = round((attackForce / totalDamage) * attacker.attack * 4.5)
defenseResult = round((defenseForce / totalDamage) * defender.defense * 4.5)
通常情况下defensebonus的值为1,在普通城市内或在地形防御加成下为1.5,在有城墙的城市中为4
attackForce = attacker.attack * (attacker.health / attacker.maxHealth)
defenseForce = defender.defense * (defender.health / defender.maxHealth) * defenseBonus
totalDamage = attackForce + defenseForce
attackResult = round((attackForce / totalDamage) * attacker.attack * 4.5)
defenseResult = round((defenseForce / totalDamage) * defender.defense * 4.5)
通常情况下defensebonus的值为1,在普通城市内或在地形防御加成下为1.5,在有城墙的城市中为4