赞 | 1 |
VIP | 0 |
好人卡 | 0 |
积分 | 11 |
经验 | 0 |
最后登录 | 2024-11-19 |
在线时间 | 209 小时 |
Lv3.寻梦者
- 梦石
- 0
- 星屑
- 1126
- 在线时间
- 209 小时
- 注册时间
- 2023-7-14
- 帖子
- 86
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 catxiaolang 于 2024-1-23 18:55 编辑
===2024年1月23日更新===
Visu中的实现方法如下(发帖当时完全不懂脚本,没看明白这一段)
所需插件:
VisuMZ_0_CoreEngine
VisuStella MZ - Skills & States Core
帮助文本中相关段落的汉化:
在 RPG Maker 中,"Slip Damage" 指的是随着时间推移而产生的伤害。以下注释标签允许您执行自定义的持续伤害/持续治疗。
【持续伤害】
<JS type Slip Damage>
code
code
damage = code;
</JS type Slip Damage>
- 用于:状态注释
- 该代码用于确定在每个再生阶段对受影响单位造成多少持续伤害。
- 将'type'替换为'HP'、'MP'或'TP'。
- 将'code'替换为计算持续伤害的具体公式。
- 'user'变量表示状态来源单位。
- 'target'变量表示受到伤害的受影响单位。
- 'state'变量表示当前受影响的状态。
- 'damage'变量是最终要造成的持续伤害值。
- 当这些状态通过行动效果应用时,持续伤害的计算是一次性的,在应用时进行计算,并将伤害缓存以便于未来的再生计算中使用。
- 因此,请勿在此处包含游戏机制,比如添加状态、增益、减益等,因为此注释标签仅用于计算。请使用VisuStella Battle Core的<JS Pre-Regenerate>和<JS Post-Regenerate>注释标签来处理游戏机制。
- 被动状态和带有<JS Slip Refresh>注释标签的状态不受一次性计算的影响,它们在每个再生阶段都会重新计算。
【持续治疗】
<JS type Slip Heal>
代码
代码
heal = code;
</JS type Slip Heal>
- 用于:状态备注标签
- 代码用于确定在每个再生阶段向受影响单位施加多少持续恢复效果。
- 将 'type' 替换为 'HP'、'MP' 或 'TP'。
- 将 'code' 替换为用于确定持续恢复效果的计算代码。
- 'user' 变量指向状态的施加来源。
- 'target' 变量指向接收恢复效果的受影响单位。
- 'state' 变量指当前受到影响的状态。
- 'heal' 变量为最终持续恢复值。
- 当这些状态通过行动效果应用时,持续恢复计算仅进行一次,并将伤害缓存以备将来的再生计算使用。
- 因此,请不要在此处包含游戏机制,例如添加状态、增益、减益等,因为此标签仅用于计算。请改用VisuStella Battle Core插件的 <JS Pre-Regenerate> 和 <JS Post-Regenerate> 标签处理游戏机制。
- 被动状态和带有 <JS Slip Refresh> 标签的状态不受一次性计算的影响,并且会在每个再生阶段重新计算。
【将伤害/治疗值从快照机制转化为动态变化】
<JS Slip Refresh>
- 用于:状态备注标签
- 在每个再生阶段开始时刷新JS Slip伤害/恢复量的计算,以实现动态伤害范围。
===原帖==================
同样待实现的还有HOT治疗,以及基于自身为他人附加攻击力等状态。
这种在现今游戏中常见的设定在MZ中却没有。
而是用了毒伤基于中毒者生命百分比这种设定。
搜索了一些过去的提问,解决这个要么是用MV,要么语焉不详。
翻了visu系列里关于state的一些插件也没有找到结果,不知道是它没有这个功能还是我蠢没找到。
另外楼主很多其它功能的实现都基于Visu系列插件,希望解决方法没有兼容性冲突。
求教大佬们了。
===已解决===
插件已上传至附件
感谢暴走的露露推荐该插件
NRP_StateEX.zip
(8.96 KB, 下载次数: 28)
原地址
https://newrpg.seesaa.net/article/488957733.html |
|