写在前面
相比起原版,使用MM制作的元素反应肯定会有不足
而且因为MM与MC本身的特性,在一些版本使用时会出现bug
所以这一套配置更多是一个MM技能制作时思路的启发
本配置制作时使用spigot1.12.2,Mythicmobs4.72付费版
亲测paper1.16.5 Mythicmobs4.12付费版可行
其实有无付费关系不大(doge)
进入正题:
1.认识元素反应机制 玩原神的朋友应该不陌生吧...见以下图解 [spoiler] 两种元素相加,即可产生反应
游戏内预览: [/spoiler]
既然要制作元素反应,那么便可以得出以下几个技能的部分:
既然要进行判断,自然要用到条件(Conditions)在这里,我选择的是条件中的tag。 我们以燃烧这一技能作为示范 代码如下:
- 燃烧:
- TargetConditions:
- - hastag {t=燃烧} false
- Skills:
- - sendtitle{title="&c&l燃 烧";subtitle="";d=13;fi=2;fo=2} @self
- - addtag{tag=燃烧} @target
- - skill{s=蒸发} @target
- - skill{s=融化} @target
- - skill{s=超载1} @target
- - sudoskill{s=燃烧移除;setcasterastrigger=false} @target
复制代码
燃烧这一技能,旨在给予目标燃烧这一标签,并尝试进行反应, TargetConditions: 则是在目标已经处于燃烧状态时,不允许再次被加上这一tag
想必现在各位水友们已经开始懵逼了,莫慌.继续看下去 - skill{s=蒸发} @target - skill{s=融化} @target - skill{s=超载1} @target
这三行则是燃烧这一技能的效应体 下面是这三行技能的详细代码
- 超载1:
- TargetConditions:
- - hastag {t=**}
- Skills:
- - sendtitle{title="&5&l超 载";subtitle="";d=13;fi=2;fo=2} @self
- - effect:particles{particle=largeexplode;amount=1} @target
- - damage{a=0} @target
- - removetag{tag=燃烧} @target
- - removetag{tag=**} @target
- 蒸发:
- TargetConditions:
- - hastag {t=潮湿}
- Skills:
- - sendtitle{title="&7&l蒸 发";subtitle="";d=13;fi=2;fo=2} @self
- - effect:particles{particle=cloud;y=1.5;vs=0.6;hs=0.6;a=10} @target
- - damage{a=1} @target
- - removetag{tag=潮湿} @target
- - removetag{tag=燃烧} @target
- 融化:
- TargetConditions:
- - hastag {t=冻结}
- Skills:
- - sendtitle{title="&f&l融 化";subtitle="";d=13;fi=2;fo=2} @self
- - effect:particles{particle=cloud;y=1.5;vs=0.6;hs=0.6;a=10} @target
- - potion{type=SLOW;duration=30;level=1} @target
- - damage{a=0} @target
- - removetag{tag=冻结} @target
- - removetag{tag=燃烧} @target
复制代码参照游戏中的感电,燃烧,潮湿,冻结几个状态,在MC中则表现为
目标身上的tag,所以当玩家执行技能时,若Target的身上有对应Tag
那么与此元素有关的技能便可以判断成功,执行效果
一整个元素反应系统包括多个部分,以多个技能为一个整体
也就是说
燃烧这一技能调用了超载,融化,蒸发这几个技能
让他们产生了类似分支结构的效果
那么是否存在同时产生多个反应效果的可能性?
答案是否定的
每个Tag都需要相应的技能来给予,当给予Tag时就将先进行一次反应。
标签在效应完成后的移除:
这个应该不用我详细说了
看代码吧.
- <blockquote><span style="font-size: 14px;">感电移除:</span>
复制代码
2.技能属性部分. 原神中的反应所产生的伤害都是这一次技能所造成的, 那么以这一思路类推 可以在效应项中的damage改为本次伤害 如果觉得给技能挨个加效应技能过于麻烦 可以直接设置变量,并在效应技能中计算变量
3.技能效应部分. 前文已经讲过,此处不再赘述
4.如何使用 在你所需加入元素反应的技能后添加上对应属性的反应技能即可 在使用时适当修改目标选择器 (根据实际需要)
这一配置的不足 我在序言中已经提到了这个配置是不完善的,主要是在AOE类型技能中无法进行操作 (或许可以,我没有测试) 其次,这一配置占用资源会比较高,因为玩家与怪物都会触发元素反应 并且每个技能都需要再次配置(貌似工作量没多少哈)
我个人不推荐在服务器中大量使用 关于如何在mm中调用玩家的ap属性的方法:
-setvariable{var=caster.变量名字;type="float";value=%ap_ap内的属性变量名%} 目标选择器
在使用这个变量时 直接将原来的数值用 <你命名的变量值>代替
ps:关于为什么没有草元素,是因为我写完它的时候根本没出须弥 (你可以尝试自制草元素 家庭作业.jpg)
本资源所有内容均为原创,不存在借用/抄袭等行为
|