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

Project1

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

[有事请教] 同样的技能,伤害加入了变量,怎样区分谁用的技能

[复制链接]

Lv3.寻梦者

梦石
0
星屑
3972
在线时间
1000 小时
注册时间
2016-12-6
帖子
370
1
发表于 2023-10-13 13:36:35 | 显示全部楼层
如果你是觉得每个角色都要创建一个变量还要分情景去调用很麻烦,可以考虑创建一些自变量属性,和ATK、MAT这些基本属性一样,变量名统一,但在不同角色下,数值是不一样的
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3972
在线时间
1000 小时
注册时间
2016-12-6
帖子
370
2
发表于 2023-10-13 14:14:44 | 显示全部楼层
根五 发表于 2023-10-13 14:04
你说的就是我想要的效果,但是我不会

google上搜索RPG maker Custom param,能找到很多支持定制自定义属性的插件
如果你也在用YEP系列插件我可以教你怎么用YEP插件做出自定义属性并显示出来
如果没有用YEP插件,那出于兼容性考虑,最好是自己去翻各种Custom param插件测试效果
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3972
在线时间
1000 小时
注册时间
2016-12-6
帖子
370
3
发表于 2023-10-13 15:52:28 | 显示全部楼层
根五 发表于 2023-10-13 15:15
我用的是YEP和Drill大佬的插件。
用YEP插件做的话是不是得会点代码才行?我是一点都不懂 ...

那确实,起码你得知道怎么用YEP_AutoPassiveStates写被动技能
因为你说自己有几十个角色都需要做元素亲和的属性,所以我想法是做一个公共被动效果,给每一个人赋予一个Elemental Affinities自变量,计算魔法伤害时使用自定义伤害公式,根据对应元素调用角色的对应Elemental Affinities数值进行乘算,这样也就模拟出了你要的效果
你会用YEP_AutoPassiveStates就应该理解我是怎么操作的
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3972
在线时间
1000 小时
注册时间
2016-12-6
帖子
370
4
发表于 2023-10-13 16:07:41 | 显示全部楼层
我随手写了个模板给你参考下
给公共被动池加入这个状态,全员就拥有了火元素亲和力这个属性,你可以通过装备、技能去额外强化这个亲和力
只要给火元素魔法的伤害公式里补充这个火元素亲和力的系数去修正伤害,就能起效
我给的参考是20,也就意味着这个火魔法的基础伤害会被提升20倍,百分比提升就改写成小数

photo_2023-10-13_16-03-33.jpg (109.18 KB, 下载次数: 18)

火元素亲和的被动技能模板

火元素亲和的被动技能模板

photo_2023-10-13_16-03-36.jpg (139.98 KB, 下载次数: 22)

火魔法的伤害公式中附加了亲和力系数

火魔法的伤害公式中附加了亲和力系数
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3972
在线时间
1000 小时
注册时间
2016-12-6
帖子
370
5
发表于 2023-10-16 15:33:04 | 显示全部楼层
根五 发表于 2023-10-16 11:51
大佬,你给的模板我明白了,你继续往下说说,我现在有几个问题
1.技能和装备怎样附加这个值。我希望的效 ...

1. 因为已经定制了自变量,所以学正常变量调节一样去增减这个值就行,难点则是如何只在学习技能和装备某件物品时生效(反之也是遗忘技能和脱下装备会失去效果),这里有两个方法:一是继续制作被动技能,让技能或装备去捆绑这个被动技能,二是额外使用WAY_CustomOnEquipEval插件,它可以使装备物品、脱下物品两个操作都进行自定义的代码运算,你可以利用这个机制去增减一些自定义属性

2.被动状态会自动识别捆绑的对象,所以你无需担心对象问题,user._fireAffinity的user前缀就是捆绑了状态的持有者,以及也是因为这个原因我建议全员被动只负责初始化这个值(改写成user._fireAffinity = user._fireAffinity || 0),附加值交由其他工具去增减,至于敌人怎么增加,敌人也可以绑定被动技能的

3.显示的问题需要你去增添draw代码捆绑变量,你显示状态的窗口是默认的还是也用了YEP_StatusMenuCore,后者的话有扩展插件去额外定制显示的属性,如果你是期望在战斗中显示这个值供玩家参考,也有其他方法
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3972
在线时间
1000 小时
注册时间
2016-12-6
帖子
370
6
发表于 2023-10-17 17:37:19 | 显示全部楼层
根五 发表于 2023-10-17 16:14
WAY_CustomOnEquipEval这个插件我没有,我在站内和百度都没搜索到,不过对于我这种不懂代码,只能简单的 ...

用google搜,很多插件国内没有的,还有这插件和YEP插件基本一个用法,你会用YEP插件就很好上手

被动技能加入进装备和技能里的书写格式也一样都是<Passive State: X>,但要注意技能只有习得时才能获得被动效果,通过装备、状态的特性得到的技能不会获取对应的被动效果,这是插件故意的限制

把自定义变量显示在YEP_StatusMenuCore里则确实需要一点改代码能力,但也有CaeX_YEPStatusMenuExt扩展插件提供了更加便捷的添加自定义显示的工具,估计一样只能靠google搜到
有空我搬运汉化下丢论坛里好了,也应该有不少人需要
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
3972
在线时间
1000 小时
注册时间
2016-12-6
帖子
370
7
发表于 2023-10-18 14:19:20 | 显示全部楼层
Rose_shadows 发表于 2023-10-18 12:23
如果是在使用YEP_StatusMenuCore.js 的话,可以搭配使用我修改过的 CaeX_YEPStatusMenuExt.js 来显示自定义 ...

只能显示百分比数是因为它只使用了drawAttributeRate函数,这是原代码,看得出效果就是把固定数转化成百分比:

Window_StatusInfo.prototype.drawAttributeRate = function(rate, dx, dy, dw) {
    var value = (rate * 100).toFixed(Yanfly.Param.StatusAttrDec) + '%';
    this.setRateColor(rate);
    this.drawAttributeValue(value, dx, dy, dw);
};

但插件里原本也有drawAttributeValue函数给你调用,所以把Rate改成Value就能显示固定数了

点评

原来如此,我试试看能不能做一下适配,感谢感谢  发表于 2023-10-18 14:44
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-5-15 04:40

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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