查看: 2597|回复: 6

[已经过期] 求教如何在伤害公式计算前确定能力值的下限

[复制链接]
梦石
0
星屑
266
在线时间
35 小时
注册时间
2018-2-6
回帖
0
发表于 2022-2-1 18:06:41 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 Zutianqi 于 2022-2-1 18:09 编辑

如题,萌新在写技能公式的时候把大部分技能的伤害公式设置成了类似于
user.atk*user.atk/self.def的类型(或者是mat和mdf)
在被攻击者受到防御减益时伤害就会变得极高
现在有的想法是在伤害判定前如果魔抗/防御低于一定值(比如12)则将被攻击者的魔抗/防御固定为12

在Game_Battler里找相关代码然后(比较菜)无从下手
(在Game_Battler 359行    @result.make_damage(value.to_i, item)前
添加    value *= self.def / 12 if item.physical? && self.def <=12) 不太可行(有特殊设定的技能)

或者在全局里修改 使全体角色与敌人防御和魔抗最低值为12也可以,但...没有找到相关代码

请高手施教,谢谢大大们了()
屏幕截图 2022-02-01 173333.png
梦石
0
星屑
39236
在线时间
11155 小时
注册时间
2009-3-15
回帖
4768
发表于 2022-2-1 18:30:25 | 显示全部楼层
本帖最后由 soulsaga 于 2022-2-1 18:55 编辑

伤害公式写
[pre lang="ruby"]sdef = [12,self.def].max;user.atk*user.atk/sdef[/pre]

未测试..萌新不保证..

点评

我用rmmv的话可以自己执行脚本和插件  发表于 2022-2-1 19:00
那就换个..  发表于 2022-2-1 18:55
喔,,,抱歉, 没看到你是说在"伤害公式"写  发表于 2022-2-1 18:48
人人都知def是保留字, 不能一开头就写def  发表于 2022-2-1 18:46
回复 1 0

使用道具 举报

梦石
0
星屑
2866
在线时间
446 小时
注册时间
2016-9-26
回帖
1175
发表于 2022-2-1 18:53:32 | 显示全部楼层
这几天我rmmv实测的结果是,脚本可以写在明确的伤害值前面(伤害公式处的)。
要注意的一点是,该技能若是多重或目标是多人时,你的脚本可能会多次执行
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部