[原创_Mythicmobs](粗略的)技能相关的护甲、破甲机制 - 插件衍生资源 - Minecraft(我的世界)中文论坛 -.html

[原创|Mythicmobs](粗略的)技能相关的护甲、破甲机制 - 插件衍生资源 - Minecraft(我的世界)中文论坛 -

Minecraft(我的世界)中文论坛

 找回密码
 注册(register)

!header_login!

只需一步,立刻登录

查看: 775|回复: 2
打印 上一主题 下一主题

[衍生资源] [原创|Mythicmobs](粗略的)技能相关的护甲、破甲机制

[复制链接]
1356280265 当前离线
积分
65
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2023-1-18
查看详细资料

来自:未知地域

跳转到指定楼层
楼主
发表于 2023-1-23 16:46:32 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

您尚未登录,立即登录享受更好的浏览体验!

您需要 登录 才可以下载或查看,没有帐号?注册(register)

x
本帖最后由 TUCAOEVER 于 2023-1-27 20:52 编辑

前言

算是自学mythicmobs不到一周的一个小记录,虽然自己(目前)已经差不多满意但仍有很多瑕疵。在资源区像没看到有关这个方向的教程,于是发出来记录一下自己的成果。同时请各位大佬看看有无修改意见。本人能力浅薄,各位大佬见笑了

实例方面涉及较少,只给出了一个简单的模板(也许还有些问题),主要聚焦于解释机制。估计看到这贴真的感觉有帮助的,只有和我一样的mm萌新吧()



简介


      主要是只应用mythicmobs(及附属),完成了目前我在mcbbs还未见到过的机制(也许有但只是我看不到) 有关技能的护甲 破甲 增伤机制(既然是有关技能,或许叫做技能抗性会更好?)

配置

spigot 1.12.2

mythicmobs付费版 4.11

mythicartifacts 0.1.30

原理

     主要应用计分板的原理。



     首先生物(主要是非原版)出生就会给自己初始化护甲值(若未初始化或者是原版生物则为0)

  Skills:
   - modifytargetscore{o=护甲值;v=3;a=SET} @self ~onSpawn


     这里的初始化数值是“3”



     所谓的破甲,指的就是修改这个计分板数值,来改变生物的护甲数值

- modifytargetscore{o=护甲值;v=2;a=SUBTRACT}
- delay 240
- modifytargetscore{o=护甲值;v=2;a=ADD}


     这里是护甲先减少2,在240刻(也就是12秒)后增加2,也就是说,这个技能会造成2点的破甲效果,持续12秒

     而计分板有一个非常好的特性,如果这个计分板选项(护甲值)没有被提前设定(原版生物),在这个运算里可以默认当成0看待,而不会报错(如果用变量就会报错...而且还影响运算结果)



     护甲值设定完毕,对护甲的修改也设置完毕,最后只要让造成的伤害的运算里包括护甲值就可以完成护甲对伤害的影响了。

     但这里有两个不同的选择:

1.直接在伤害表达式加上护甲运算

例: - Damage{a=10-<target.score.护甲值>}

      在这里,非常简单地认为了一个护甲减少一点伤害(可以自行修改计算式)
2.先造成基础伤害,再治疗回护甲的减伤(或者顺序相反)

- heal{a=<target.score.护甲值>}
- damage{a=10}


(也许中间delay 1会比较好?)(思路部分参考了mm插件教程的护盾)
     但是问题就在于,先治疗后伤害会使得第一次攻击不能正确计算减伤(这次治疗是溢出的,而我的mm就算加了oh=true依然不能正确加上这部分血,也许别的版本可以?)先伤害后治疗会不能计算致死伤害的减伤(已经死了,又怎么再恢复?)(但是这条我好像看过别的教程有不同的说法...但是我实测是这样的)

     

(ps:对生物的boss血条设置应用这行代码可以显示生命以及当前护甲值

    Title: '<mob.name> &a&l生命&8[&b&l<mob.hp>&f/&b&l<mob.mhp>&8],&a&l护甲值:&b&l<caster.score.护甲值>'

   

部分解释



      为什么用计分板不用变量?

      变量只能给非原版生物设置(否则后台报错!虽然好像报错也没什么影响),而计分板可以给所有生物设置。同时引用一个不存在的变量会导致最终伤害计算出错(例如引用原版生物的护甲值),而计分板可以默认不存在的项目值为0

       只用mm有什么优缺点

       优点:方便,不需要别的插件的辅助

       缺点:也没法辅助别的插件,且只能改变技能的伤害(所以不如叫技能抗性,在大部分情况下还会有别的护甲值的)

      当前遗留问题

1.无法正确计算第一次攻击或者致死攻击的减伤(在不采用溢出破甲值转化的情况下)
2.溢出的破甲还能增伤,从感觉上违背了对于护甲与破甲的理解不过也不是没有游戏这么写(原神:是我的元素抗性机制吗)(但是原神溢出的减抗转化为增伤似乎不是1:1)
3.其他暂未发现的问题

设计历程

1.用变量模拟破甲值的设定增加与减少,同时用两次damage(基础伤害+破甲值修正伤害,pi=true)来完成破甲值的增加和减少

   漏洞:这哪里是护甲机制,这明明是增伤机制,而且对原版生物/未设定生物会报错。

2.用计分板替代变量,采用上面第二种方法来实现。

非常简单的示例

测试木桩.yml (621 Bytes, 下载次数: 7)

破甲示例.yml (257 Bytes, 下载次数: 3)




帖子永久链接: 

Minecraft中文论坛 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
2、本站所有主题由该帖子作者发表,该帖子作者享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者的同意
4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖若有内容转载自其它媒体,不代表本站赞同其观点和对其真实性负责
6、若本帖涉及任何版权问题,请立即告知本站,本站将及时予以删除并致以最深的歉意
7、Minecraft(我的世界)中文论坛管理员和版主有权不事先通知发贴者而删除本文

3452922042 当前离线
积分
56
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2018-11-26
查看详细资料

来自:未知地域

沙发
发表于 2023-1-24 11:08:36 | 只看该作者
很好的想法可以的话希望做成插件!!!!这种破甲机制可以很好的提高rpg和pvp的娱乐性!
回复

使用道具 举报

夜雨晨风丶 当前离线
积分
5477
帖子
主题
精华
贡献
爱心
钻石
人气
下界之星
最后登录
1970-1-1
注册时间
2022-4-4
查看详细资料

来自:广东

板凳
发表于 2023-1-25 07:21:22 | 只看该作者
很有想法,但是我觉得这种机制用属性插件去制作可能会更加容易。像是AP,或者AS都能轻易的自定义属性机制
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册(register)

本版积分规则

Archiver|小黑屋|Mcbbs.net ( 京ICP备15023768号-1 ) | 京公网安备 11010502037624号 | 手机版

GMT+8, 2023-9-19 20:52 , Processed in 0.045693 second(s), Total 18, Slave 17 queries, Release: Build.2023.08.07 0824, Gzip On, Redis On.

"Minecraft"以及"我的世界"为美国微软公司的商标 本站与微软公司没有从属关系

© 2010-2023 我的世界中文论坛 版权所有 本站内原创内容版权属于其原创作者,除作者或版规特别声明外未经许可不得转载