| 
 话说,在很久很久以前,接触rm开始,对数据库编写一直头疼。最郁闷的就是技能描述中的那几句话。 
“造成大量伤害”,“大量治疗”……试问,这大量……到底是多少? 
大家都了解“魔兽世界”这款游戏吧,他的技能描述就很实际。跟你写出个具体数值,供你参考。这个数值就有了个量的概念,比“大量”“少量”来的实际的多。 
 
还请大家测试下,谢谢。 
这个是给一般的默认战斗系统使用的:[code]#==============================================================================#                      ★超级懒人之技能物品描述自生成系统★#说明:这个脚本几乎兼容任何脚本,可以生成技能的伤害写在描述中,也可以生成武器#      防具的表述,再也不用自己编写描述想半天写不出半个字了。#By:希望化身##设置:角色属性存储变量(用于计算技能伤害,默认为30-34)FOR_SKILL_STATES = 30##==============================================================================class Scene_Skill  #--------------------------------------------------------------------------  # ● 主处理(追加读取角色属性)  #--------------------------------------------------------------------------  def main    # 获取角色    @actor = $game_party.actors[@actor_index]        $game_variables[FOR_SKILL_STATES] = @actor.atk    $game_variables[FOR_SKILL_STATES + 1] = @actor.str    $game_variables[FOR_SKILL_STATES + 2] = @actor.dex    $game_variables[FOR_SKILL_STATES + 3] = @actor.agi    $game_variables[FOR_SKILL_STATES + 4] = @actor.int    # 生成帮助窗口、状态窗口、特技窗口    @help_window = Window_Help.new    @status_window = Window_SkillStatus.new(@actor)    @skill_window = Window_Skill.new(@actor)    # 关联帮助窗口    @skill_window.help_window = @help_window    # 生成目标窗口 (设置为不可见・不活动)    @target_window = Window_Target.new    @target_window.visible = false    @target_window.active = false    # 执行过渡    Graphics.transition    # 主循环    loop do      # 刷新游戏画面      Graphics.update      # 刷新输入信息      Input.update      # 刷新画面      update      # 如果画面切换的话就中断循环      if $scene != self        break      end    end    # 准备过渡    Graphics.freeze    # 释放窗口    @help_window.dispose    @status_window.dispose    @skill_window.dispose    @target_window.dispose  endendclass Window_Skill < Window_Selectable  #--------------------------------------------------------------------------  # ● 初始化对像  #     actor : 角色  #--------------------------------------------------------------------------  def initialize(actor)    super(0, 128, 640, 352)    @actor = actor    @column_max = 2    refresh    self.index = 0    # 战斗中的情况下将窗口移至中央并将其半透明化    if $game_temp.in_battle      self.y = 64      self.height = 256      self.back_opacity = 160    $game_variables[FOR_SKILL_STATES] = @actor.atk    $game_variables[FOR_SKILL_STATES + 1] = @actor.str    $game_variables[FOR_SKILL_STATES + 2] = @actor.dex    $game_variables[FOR_SKILL_STATES + 3] = @actor.agi    $game_variables[FOR_SKILL_STATES + 4] = @actor.int    end  endendmodule RPGclass Skill      attr_accessor :sdag      attr_accessor :sdag_max      attr_accessor :sdag_min  #==============================================================================# 定义技能描述后缀#==============================================================================     def description      if @power != 0      # 计算威力      sdag = power + $game_variables[FOR_SKILL_STATES + 0] * atk_f / 100      # 计算倍率      rate = 20      rate += ($game_variables[FOR_SKILL_STATES + 1] * str_f / 100)      rate += ($game_variables[FOR_SKILL_STATES + 2] * dex_f / 100)      rate += ($game_variables[FOR_SKILL_STATES + 3] * agi_f / 100)      rate += ($game_variables[FOR_SKILL_STATES + 4] * int_f / 100)      # 计算基本伤害      sdag_max = sdag * rate / 20      sdag_min = sdag * rate / 20# 分散      if variance > 0 and sdag_max.abs > 0        amp = [sdag_max.abs * variance / 100, 1].max        sdag_max += amp        sdag_min -= amp      end      if sdag != 0 or sdag != 1      if sdag 0        amp = [sdag_max.abs * variance / 100, 1].max        sdag_max += amp        sdag_min -= amp      end      if sdag != 0 or sdag != 1      if sdag  |