| 技能的伤害公式,你不一定在数据库设定的界面写,也可以改脚本。我抛砖引玉吧。 
 class Game_Battler < Game_BattlerBase  #--------------------------------------------------------------------------  # ● 计算伤害  #--------------------------------------------------------------------------  def make_damage_value(user, item)    if item.is_a?(RPG::Skill)#如果使用的是技能(在VA里发动技能就是使用物品,所以有这个判定)      case item.id#技能id        when 218#比如218号技能的技能伤害你想自己写不引用数据库里的设定。另外,在这里的设定,等同于在数据库技能公式伤害的设定。user=a,self=b,value代表伤害公式计算结果。           value = 0          value = user.atk if user.weapons.include?($data_weapons[155])#举例,如果装备了155号武器,并且发动的是218号技能,那么伤害结果=a.atk,否则就是0.         else #218号技能以外的情况          value = item.damage.eval(user, self, $game_variables)#这个就是取数据库设定的计算公式了。      end    end    value *= item_element_rate(user, item)#离散度    value *= pdr if item.physical?#是否物理伤害    value *= mdr if item.magical?#是否魔法伤害    value *= rec if item.damage.recover?#这个不记得了,懒得查……    value = apply_critical(value) if @result.critical#好像是物理伤害加深    value = apply_variance(value, item.damage.variance)#同上魔法伤害加深    value = apply_guard(value)#防御状态    @result.make_damage(value.to_i, item)#返回最终计算结果  endend
class Game_Battler < Game_BattlerBase 
  #-------------------------------------------------------------------------- 
  # ● 计算伤害 
  #-------------------------------------------------------------------------- 
  def make_damage_value(user, item) 
    if item.is_a?(RPG::Skill)#如果使用的是技能(在VA里发动技能就是使用物品,所以有这个判定) 
      case item.id#技能id 
        when 218#比如218号技能的技能伤害你想自己写不引用数据库里的设定。另外,在这里的设定,等同于在数据库技能公式伤害的设定。user=a,self=b,value代表伤害公式计算结果。 
           value = 0 
          value = user.atk if user.weapons.include?($data_weapons[155])#举例,如果装备了155号武器,并且发动的是218号技能,那么伤害结果=a.atk,否则就是0.  
        else #218号技能以外的情况 
          value = item.damage.eval(user, self, $game_variables)#这个就是取数据库设定的计算公式了。 
      end 
    end 
    value *= item_element_rate(user, item)#离散度 
    value *= pdr if item.physical?#是否物理伤害 
    value *= mdr if item.magical?#是否魔法伤害 
    value *= rec if item.damage.recover?#这个不记得了,懒得查…… 
    value = apply_critical(value) if @result.critical#好像是物理伤害加深 
    value = apply_variance(value, item.damage.variance)#同上魔法伤害加深 
    value = apply_guard(value)#防御状态 
    @result.make_damage(value.to_i, item)#返回最终计算结果 
  end 
end 
 |