设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2100|回复: 8
打印 上一主题 下一主题

自订技能伤害计算公式

 关闭 [复制链接]

Lv2.观梦者 (管理员)

八云紫的式神

梦石
0
星屑
614
在线时间
1243 小时
注册时间
2008-1-1
帖子
4282

烫烫烫

跳转到指定楼层
1
发表于 2008-5-24 21:51:11 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
怎么自定技能伤害计算公式,就是不用VX自带的公式,而是自己编,比如
设置一个技能,可以
伤害对方HP = 物理攻击伤害 * [变量001]
或者
伤害对方HP = 主角当前HP
之类的


3楼的,看不懂。。。。。。。。。。是在公共事件里加脚本吗
版务信息:本贴由楼主自主结贴~
rm for linux(wine)制作中,期待夏娜SAMA能实现到webrm上
头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-4-7
帖子
55
9
发表于 2008-5-28 04:37:03 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv2.观梦者 (管理员)

八云紫的式神

梦石
0
星屑
614
在线时间
1243 小时
注册时间
2008-1-1
帖子
4282

烫烫烫

8
 楼主| 发表于 2008-5-25 18:57:53 | 只看该作者
以下引用天仙玉女于2008-5-25 7:48:26的发言:

放在Game_Battler最後一個end前面


还是看不懂…………这怎么在技能设定里体现出来
rm for linux(wine)制作中,期待夏娜SAMA能实现到webrm上
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
3 小时
注册时间
2008-3-29
帖子
79
7
发表于 2008-5-25 17:09:06 | 只看该作者
3楼的,看不懂。。。。。。。。。。是在公共事件里加脚本吗

版主对此帖的评论:『純引=灌水』,积分『-5』。这些被扣积分的一半会用于对本帖正确答案的悬赏。
http://imgbj.jpg.name/tthwvttwyhhzthhyjwywzwjwzjwswzhjtrvjj.gif (抄袭的图) http://rpg.blue/upload_program/files/1231241.gif
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-5-6
帖子
277
6
发表于 2008-5-25 15:48:26 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv2.观梦者 (管理员)

八云紫的式神

梦石
0
星屑
614
在线时间
1243 小时
注册时间
2008-1-1
帖子
4282

烫烫烫

5
 楼主| 发表于 2008-5-25 15:27:32 | 只看该作者
3楼的,看不懂。。。。。。。。。。是在公共事件里加脚本吗
rm for linux(wine)制作中,期待夏娜SAMA能实现到webrm上
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-4-7
帖子
55
4
发表于 2008-5-25 01:43:36 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
12 小时
注册时间
2006-5-21
帖子
773
3
发表于 2008-5-24 22:54:58 | 只看该作者
#--------------------------------------------------------------------------
  # ● 计算普通攻击造成的伤害
  #     attacker : 攻击者
  #    结果代入 @hp_damage。
  #--------------------------------------------------------------------------
  def make_attack_damage_value(attacker)
    damage = attacker.atk * 4 - self.def * 2        # 基本计算
    damage = 0 if damage < 0                        # 减少为 0
    damage *= elements_max_rate(attacker, attacker.element_set)   # 修正属性
    damage /= 100
    if damage == 0                                  # 伤害为 0
      damage = rand(2)                              # 1/2 概率为伤害 1
    elsif damage > 0                                # 伤害为正数
      @critical = (rand(100) < attacker.cri)        # 判断会心一击
      @critical = false if prevent_critical         # 防止会心一击?
      damage *= 3 if @critical                      # 会心一击修正
    end
    damage = apply_variance(damage, 20)             # 分散
    damage = apply_guard(damage)                    # 防御修正
    @hp_damage = damage                             # HP 伤害
  end
  #--------------------------------------------------------------------------
  # ● 计算特技以及物品造成的伤害
  #     user : 使用特技以及物品的人
  #     obj  : 特技以及物品
  #    将结果代入 @hp_damage 或 @mp_damage。
  #--------------------------------------------------------------------------
  def make_obj_damage_value(user, obj)
    damage = obj.base_damage                        # 获取基本伤害
    if damage > 0                                   # 伤害为正数
      damage += user.atk * 4 * obj.atk_f / 100      # 打击关系度: 使用者
      damage += user.spi * 2 * obj.spi_f / 100      # 精神关系度: 使用者
      unless obj.ignore_defense                     # 无视防御力以外
        damage -= self.def * 2 * obj.atk_f / 100    # 打击关系度: 对象者
        damage -= self.spi * 1 * obj.spi_f / 100    # 精神关系度: 对象者
      end
      damage = 0 if damage < 0                      # 减少为 0
    elsif damage < 0                                # 伤害为负数
      damage -= user.atk * 4 * obj.atk_f / 100      # 打击关系度: 使用者
      damage -= user.spi * 2 * obj.spi_f / 100      # 精神关系度: 使用者
    end
    damage *= elements_max_rate(user, obj.element_set)    # 属性修正
    damage /= 100
    damage = apply_variance(damage, obj.variance)   # 分散
    damage = apply_guard(damage)                    # 防御修正
    if obj.damage_to_mp  
      @mp_damage = damage                           # MP 伤害
    else
      @hp_damage = damage                           # HP 伤害
    end
  end

普通攻击和技能的伤害计算
可以发现单看普通攻击,伤害=攻击者的攻击力*4-对方防御*2
可以这么加上一句
damage *= $game_variables[n]  伤害乘上某变量加成。
MadniMStudio|Beside
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

名侦探小柯

梦石
0
星屑
3299
在线时间
3619 小时
注册时间
2006-9-6
帖子
37400

开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

2
发表于 2008-5-24 22:26:21 | 只看该作者
MS很难吧……

LZ是要用系统自带的那种战斗系统咯?
那样的话改起来就麻烦了……

如果是事件自制战斗就简单了……(全是废话……)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-12-25 10:24

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表