查看: 1034|回复: 3

[已经解决] 求助 如何更改命中率公式

[复制链接]
梦石
0
星屑
187
在线时间
85 小时
注册时间
2024-1-8
回帖
11
发表于 2024-4-29 17:04:35 | 显示全部楼层 |阅读模式

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

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

×
大佬们!!!!!!孩子是新人!!!
是这样的大家,就是我翻了很久论坛。
知道了咱们VA默认的命中计算方式是是分开算的,也就是我方命中和敌方回避分开。
这样也就是即使我方命中率400%,敌人有100%的闪避就等于打不到了

对应的我猜测(猜错了不要骂我)应该是Game_Battler里的这几行
#--------------------------------------------------------------------------
  # ● スキル/アイテムの命中率計算
  #--------------------------------------------------------------------------
  def item_hit(user, item)
    rate = item.success_rate * 0.01         # 成功率を取得
    rate *= user.hit if item.physical?      # 物理攻撃:命中率を乗算
    return rate                             # 計算した命中率を返す
  end
  #--------------------------------------------------------------------------
  # ● スキル/アイテムの回避率計算
  #--------------------------------------------------------------------------
  def item_eva(user, item)
    return eva if item.physical?            # 物理攻撃なら回避率を返す
    return mev if item.magical?             # 魔法攻撃なら魔法回避率を返す
    return 0
  end

我想知道的是怎么改这里能让我们的命中逻辑改成我方命中率-敌方闪避率,也就是400%物理命中率-100%物理闪避后还能打中敌人
梦石
0
星屑
187
在线时间
85 小时
注册时间
2024-1-8
回帖
11
 楼主| 发表于 2024-4-29 17:06:38 | 显示全部楼层
孩子刚接触没多久,对于这方面不是很懂,可能我找的地方都不对TAT
但想向大家请教一下
回复

使用道具 举报

梦石
0
星屑
6375
在线时间
1473 小时
注册时间
2015-7-25
回帖
609

极短25参与开拓者

发表于 2024-4-30 15:56:46 | 显示全部楼层
可能会有bug,建议多测试一下~

[pre lang="ruby"]class Game_ActionResult
  def item_hit=(hit)
    @used ? hit : false
  end
end
class Game_Battler
  def item_final_hit(user, item)
    item_hit(user, item) - item_eva(user, item)
  end
  def item_apply(user, item)
    @result.clear
    @result.used = item_test(user, item)
    @result.missed = (@result.used && rand >= item_hit(user, item))
    @result.evaded = (!@result.missed && rand < item_eva(user, item))
    if @result.item_hit = (rand < item_final_hit(user, item))
      @result.missed = false
      @result.evaded = false
      unless item.damage.none?
        @result.critical = (rand < item_cri(user, item))
        make_damage_value(user, item)
        execute_damage(user)
      end
      item.effects.each {|effect| item_effect_apply(user, item, effect) }
      item_user_effect(user, item)
    end
  end
end[/pre]

评分

参与人数 1赞 +1 收起 理由
神隐的主犯 + 1 认可答案

查看全部评分

笨肉包的游戏讨论群932812135 (实时更新) 喜欢的话欢迎加入~
目前的坑
??? #像素风OC游戏 准备中 短篇-约5小时
花城梦之心 #像素风OC游戏 系统开发+素材绘制中
【不可思议的迷宫】幽灵契约外传:歌莉娅 v0.4 游戏文件已更新
同时更新中~ (沉迷摸鱼中~更新速度较慢请见谅w)
这是属于笨肉包一个人的旅行~(这只肉包又在摸鱼!
旅途的最终目标~ ???(保密~
回复 1 0

使用道具 举报

梦石
0
星屑
187
在线时间
85 小时
注册时间
2024-1-8
回帖
11
 楼主| 发表于 2024-4-30 23:44:59 | 显示全部楼层
魔法丶小肉包 发表于 2024-4-30 15:56
可能会有bug,建议多测试一下~

class Game_ActionResult

大佬眷顾臣妾,臣妾铭记在心!
经过多次变量测试,可以正常生效!!!!!
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部