本篇教程由作者设定使用 CC BY-NC 协议。

新人第一次尝试写教程,可能会有不完备的地方,请多多包涵~


(木偶、竹光、银纸、白鞘依然是单独注册的物品,可直接使用,故不再说明)

拔刀剑重锋的物品NBT格式与之前有所不同,原有参考文献不能完全对应,故编写此教程。

先说方法:一如既往的是,必须要对任务物品进行NBT编辑,具体操作如下

选取物品后,将bladeState这一项中包含的内容进行大裁剪,只需保留translationKeySpecialEffectsModelNameSpecialAttackTypeTextureName这几项,随后将NBT匹配设为True,模糊匹配同样设为True,这样就能正常区分了。关于拔刀剑重锋如何编辑FTB任务物品-第1张图片

关于拔刀剑重锋如何编辑FTB任务物品-第2张图片


下面是关于为什么要这样改的详细分析

此处以“枯石大刀”为例进行数据结构的说明,因为该刀的机制较为全面:

(由于原始NBT数据较长故用截图展示)

关于拔刀剑重锋如何编辑FTB任务物品-第3张图片关于拔刀剑重锋如何编辑FTB任务物品-第4张图片

图1为创造直接拿出来的本体,图2为经过使用后的物品,可以对比观看。注意到物品有两个标签:拔刀剑数据bladeState和附魔数据Enchantments,其中需要编辑的为bladeState。蓝色为建议保留的部分,红色为必须删除的部分。

由于示例直接选择了原版物品,所以只删红色部分也行。但考虑到各种自定义刀和附属包还会增加别的内容,因此依然只建议保留蓝色部分。

具体分析如下:

建议保留,这部分能让刀在任务中呈现正常的物品样式
translationKey物品翻译数据
SpecialEffects被动特殊效果,如示例刀的“凋零性”
ModelName

物品模型

SpecialAttackType特殊攻击,即SA
TextureName物品贴图
必须删除,这部分内容每把刀都不一样
lastActionTime
这把刀上次使用的时间刻,没用过则为0
currentCombo

这把刀当前连段使用的出招

(但由于NBT更新的原因有时变化不及时,

会记录为上一次使用的出招)

BladeUniqueId

这把刀的独特ID,每把刀都不同

(示例中由于都是创造拿的故相同)

proudSoul、killCount耀魂数、击杀数,会随刀的使用自然增长
maxDamage、RepairCounter

伤害上限、强化次数,会随刀的强化自然增长

TargetEntity、fallDecreaseRate使用中自动产生的数据

其余内容(如幻影剑样式SummonedSwordColor、模型位置修正adjustXYZ等)虽然不影响匹配,但在任务显示中也无帮助,出于尽可能简化的缘故一并删除。


补充:实际使用中的一点细节纠正

有些时候即便根据上述步骤更改了NBT数据,也依然不能很好的识别物品,测试后发现这很可能是由附魔数据导致的。

众所周知拔刀剑可用的附魔非常多,集盔甲、剑、弓于一体,不加其他附魔模组的情况下一把刀依然能达到上十个,这或许导致了FTB任务在进行匹配时不能正常运行,结果迟迟无法完成任务。

从技术上解决这个问题不难,将任务物品的附魔数据Enchantments删掉即可,但是这样会导致任务中的物品图标有些“枯燥”:

关于拔刀剑重锋如何编辑FTB任务物品-第5张图片

所以用自定义任务物品图标替代本身的图标:

关于拔刀剑重锋如何编辑FTB任务物品-第6张图片

这样就能取得更加完美的匹配了。关于拔刀剑重锋如何编辑FTB任务物品-第7张图片