本帖最后由 1916125401 于 2021-11-18 12:09 编辑
rt,做一个无序合成配方,合成结果是一个带有nbt数据的物品,刚刚查了下Wiki发现不支持nbt,有没有什么其他方法可以实现 版本是1.17.1
rt,做一个无序合成配方,合成结果是一个带有nbt数据的物品,刚刚查了下Wiki发现不支持nbt,有没有什么其他方法可以实现 版本是1.17.1
本帖最后由 无敌三脚猫 于 2021-11-18 10:51 编辑
我很久以前也发现wiki里写唔,有可能它说的是远古版本?别的版本我不知道,但是1.16的自定义配方是可以用nbt的,举个例子,用火焰弹合成一根带nbt的木棍复制代码{
"type": "minecraft:crafting_shapeless",
"ingredients": [
{
"item": "minecraft:fire_charge"
}
],
"result": {
"nbt": "{Enchantments:[{lvl:5s,id:\"minecraft:knockback\"}],display:{Name:'{\"text\":\"击退棒\",\"italic\":false,\"color\":\"red\"}',Lore:['{\"text\":\"啦啦啦\",\"italic\":\"false\",\"color\":\"blue\"}']}}",
"item": "minecraft:stick",
"count": 1,
"type": "minecraft:item_nbt"
}
}
我很久以前也发现wiki里写
配方的输出物品不能设置自定义的NBT数据标签
- 等等我在下面重写一次,我发现写在这个代码框里的转义字符会被吞掉
"type": "minecraft:crafting_shapeless",
"ingredients": [
{
"item": "minecraft:fire_charge"
}
],
"result": {
"nbt": "{Enchantments:[{lvl:5s,id:\"minecraft:knockback\"}],display:{Name:'{\"text\":\"击退棒\",\"italic\":false,\"color\":\"red\"}',Lore:['{\"text\":\"啦啦啦\",\"italic\":\"false\",\"color\":\"blue\"}']}}",
"item": "minecraft:stick",
"count": 1,
"type": "minecraft:item_nbt"
}
}
无敌三脚猫 发表于 2021-11-18 10:48
我很久以前也发现wiki里写唔,有可能它说的是远古版本?别的版本我不知道,但是1.16的自定义配方是可以用nb ...
忘了说了版本是1.17.1 我回去试试行不行
无敌三脚猫 发表于 2021-11-18 10:48
我很久以前也发现wiki里写唔,有可能它说的是远古版本?别的版本我不知道,但是1.16的自定义配方是可以用nb ...
好像不行 这么写合出来的物品是不带nbt的
无敌三脚猫 发表于 2021-11-18 10:48
我很久以前也发现wiki里写唔,有可能它说的是远古版本?别的版本我不知道,但是1.16的自定义配方是可以用nb ...
crafting_shapeless
代表一个工作台的无序合成配方。
在ingredients中定义的原料数量应在1至9个之间。
配方的输出物品不能设置自定义的NBT数据标签。
无敌三脚猫 发表于 2021-11-18 12:26
但是1.16用起来没问题
你确定你写的和我一样吗?把你的json截个图我看看
...
我就你发的那个原封不动复制粘贴过去的
晴路卡 发表于 2021-11-18 12:53
https://www.mcbbs.net/thread-1074290-1-1.html
我猜上边那位不是原版
我明白了

fabric应该也有自己的写法
所以wiki说的是对的
无敌三脚猫 发表于 2021-11-18 13:08
我明白了原来这个写法是forge提供的,不装forge就没效果
fabric应该也有自己的写法
所以wiki说的是对的
但是不知道fabric怎么写 麻了
既然都写了配方了,索性再写个函数
传统方法:
先写一个配方,但输出是知识之书
然后tick函数检测玩家背包里面是否有该知识之书,如果有则clear该书并give指定的物品,做到合成出nbt物品的效果
知识之书mcwiki:
https://wiki.biligame.com/mc/%E7%9F%A5%E8%AF%86%E4%B9%8B%E4%B9%A6
传统方法:
先写一个配方,但输出是知识之书
然后tick函数检测玩家背包里面是否有该知识之书,如果有则clear该书并give指定的物品,做到合成出nbt物品的效果
知识之书mcwiki:
https://wiki.biligame.com/mc/%E7%9F%A5%E8%AF%86%E4%B9%8B%E4%B9%A6
1916125401 发表于 2021-11-18 13:34
但是不知道fabric怎么写 麻了
好吧,我错了,fabric没有提供类似的写法
不过有个fabric mod提供了https://www.curseforge.com/minecraft/mc-mods/nbt-crafting
可以仅用于服务端
无敌三脚猫 发表于 2021-11-18 10:48
我很久以前也发现wiki里写唔,有可能它说的是远古版本?别的版本我不知道,但是1.16的自定义配方是可以用nb ...
卧槽,我刚好1.16.5,谢谢大佬!