伤害计算公式(第二世代)

来自口袋百科
跳转至:导航搜索

目录

伤害计算流程

  1. 计算能力值。
  2. 计算基础伤害。
  3. 计算天气修正。
  4. 计算徽章修正。
  5. 计算属性加成修正。
  6. 计算属性相克修正。
  7. 计算随机修正。

能力值计算

  1. 如果技能是物理属性,取攻击方攻击作为攻击力;如果技能是特殊属性,取攻击方特殊作为攻击力。
  2. 如果技能是物理属性,取防御方防御作为防御力;如果技能是特殊属性,取防御方特殊作为防御力。
  3. 如果拥有飞翼徽章,且技能是物理属性,攻击力=⌊攻击力×9÷8⌋。
  4. 如果拥有钢铁徽章,且技能是物理属性,防御力=⌊防御力×9÷8⌋。
  5. 如果拥有冰之徽章,且技能是特殊属性,攻击力=⌊攻击力×9÷8⌋。
  6. 计算能力等级修正。如果出现会心一击,且攻击方攻击力等级≤防御方防御力等级,跳过此步骤。
  7. 如果技能是自爆大爆炸,防御力=⌊防御力÷2⌋。
  8. 如果防御方场上存在反射盾,且技能是物理属性,防御力=防御力×2。如果出现会心一击,且攻击方攻击力等级≤防御方防御力等级,跳过此步骤。
  9. 如果防御方场上存在光之壁,且技能是特殊属性,防御力=防御力×2。如果出现会心一击,且攻击方攻击力等级≤防御方防御力等级,跳过此步骤。
  10. 如果攻击方是携带电珠皮卡丘,且技能是特殊属性,攻击力=攻击力×2。
  11. 如果攻击方是携带粗骨头嘎拉嘎拉,且技能是物理属性,攻击力=攻击力×2。
  12. 如果攻击方是携带金属粉末百变怪,,防御力=⌊防御力×1.5⌋。
  13. 如果攻击力>255或防御力>255,同时令攻击力=⌊攻击力÷4⌋,防御力=⌊防御力÷4⌋。由于Bug的存在,计算结果以8位二进制数储存,8位之前的数字被舍弃,实际的计算结果需要用255求模。此步骤导致当攻击力或防御力达到或超过1024时,会出现数字溢出。
  14. 如果攻击力=0,攻击力=1;如果防御力=0,防御力=1。

基础伤害计算

  1. 基础伤害=⌊⌊⌊攻击方等级×2÷5+2⌋×攻击力×技能威力÷防御力⌋÷50⌋
  2. 如果出现会心一击,伤害=伤害×2。
  3. 如果攻击方携带属性强化道具,且技能是对应属性,伤害=⌊伤害×1.1⌋。
  4. 如果基础伤害>997,基础伤害=997。
  5. 基础伤害=基础伤害+2。

天气修正

  1. 如果天气是晴天,且技能是属性,伤害=⌊伤害×1.5⌋;如果技能是属性,伤害=⌊伤害÷2⌋。
  2. 如果天气是雨天,且技能是属性,伤害=⌊伤害×1.5⌋;如果技能是属性,伤害=⌊伤害÷2⌋。
  3. 如果天气是雨天,且技能是太阳光线,伤害=⌊伤害÷2⌋。

徽章修正

  1. 如果拥有对应技能属性的徽章,伤害=⌊伤害×9÷8⌋。

属性加成修正

  1. 如果技能属性与攻击方属性之一相同,伤害=⌊伤害×1.5⌋。

属性相克修正

  1. 根据属性相克表取得属性相克倍率,伤害=⌊伤害×属性相克倍率⌋。

随机修正

  1. 从217~255中产生随机数R,伤害=⌊伤害×R÷255⌋。

相关链接