求助~1.21.1村民交易自定义指令
RT,/summon minecraft:villager ~ ~0.5 ~0 {"fabric:attachments": {"accessories:inventory_holder": {}},"CustomNameVisible": 1b, "attributes": [ {"id": "minecraft:generic.movement_speed", "base": 0.5d}, { "modifiers": [{"amount": 0.0536689925335371d, "operation": "add_multiplied_base", "id": "minecraft:random_spawn_bonus"}], "id": "minecraft:generic.follow_range", "base": 48.0d }],"CustomName": '"卖油翁"',"CobbleMerchantShop": [],"NoAI": 1b,"Offers": { "Recipes":[{"buy": {"id": "minecraft:emerald", "count": 1,tag:{display:{Lore:['{"text":"使用最广泛的货币"},"color":"yellow"'],Name:{"text":"基础货币"}}}}, "sell": {"id": "rusticdelight:cooking_oil", "count": 2}, "maxUses": 9999999} ]},"Inventory": [],"VillagerData": {"type": "minecraft:plains", "profession": "minecraft:librarian", "level": 99},"PersistenceRequired": 1b, }这是一个实例的指令用于命令方块生成一个村民,有问题的是绿宝石那一段{"buy": {"id": "minecraft:emerald", "count": 1,tag:{display:{Lore:['{"text":"使用最广泛的货币"},"color":"yellow"'],Name:{"text":"基础货币"}}}}这一段在命令方块里面也是绿的没有红标报错,但是生成出来的交易项还是只有原版绿宝石没有NBT属性,如下这个是生成的村民的无效交易项
这是带NBT直接用give指令生成的绿宝石(目标货币)
但是这个绿宝石的生成指令是give @p minecraft:emerald]也跟以前版本的方法不一样。
搜了很多教程和文档都没解决,求助一下各位大佬应该怎么在1.21.1版本修改可以用的带NBT村民自定义交易.
本帖最后由 teddyxlandlee 于 2025-7-28 18:30 编辑
{"buy": {"id": "minecraft:emerald", "count": 1,tag:{display:{Lore:['{"text":"使用最广泛的货币"},"color":"yellow"'],Name:{"text":"基础货币"}}}}
自1.20.5开始,Java版更改了物品堆叠(Item Stack)的格式,因此“id/count/tag”的格式被改成了“id/count/components”,以前的物品NBT被完全重写。
基于您更改Lore的需求,这一段应该改成这样:
{"buy":{"id":"minecraft:emerald","count":1,"components":{"minecraft:lore":[{"text":"使用最广泛的货币","color":"yellow"}],"minecraft:custom_name":{"text":"基础货币"}}}}
但请允许我提醒一下,货币的防伪依靠Lore可能是不够的,您可能需要使用 minecraft:custom_data 或其他物品组件。
有关1.20.5及以后的物品堆叠的格式,详见Minecraft Wiki。
另外提醒,1.21及以后的版本(好像是),SNBT 和 JSON 的格式基本被打通(即大部分情况下可以互转)。因此 Lore 里面单引号套双引号的情况将不复存在。
Edit: 村民NBT的设置在Wiki上也有。
开服一定要养成看Wiki的好习惯,国内的教程很多都是过时的,且有相当一部分是从Wiki或其他可信渠道传抄的。 本帖最后由 PandaLAY 于 2025-7-28 23:07 编辑
teddyxlandlee 发表于 2025-7-28 18:26
自1.20.5开始,Java版更改了物品堆叠(Item Stack)的格式,因此“id/count/tag”的格式被改成了“id/cou ...
如图修改为components格式依旧在交易界面没有显示NBT,还是普通绿宝石。
页:
[1]