MOD链接:https://www.curseforge.com/minec ... tom-villager-trades
他这个NBT用法一点也不清楚
NBT例子https://pastebin.com/DEjWk9XG
复制代码
他这个NBT用法一点也不清楚
NBT例子https://pastebin.com/DEjWk9XG
- {
 
-    "offer":{
 
-       "itemKey":"minecraft:dirt",
 
-       "amount":1,
 
-       "priceModifier":0,
 
-       "nbtTags":[
 
-          {
 
-             "nbtName":"test",
 
-             "data":"this is the data",
 
-             "dataType":"string"
 
-          }
 
-       ]
 
-    },
 
-    "request":{
 
-       "itemKey":"minecraft:cobblestone",
 
-       "amount":1,
 
-       "priceModifier":0
 
-    },
 
-    "tradeExp":3,
 
-    "maxUses":10,
 
-    "priceMultiplier":0.1,
 
-    "tradeLevel":1
 
- }
itemKey和nbtTags,这两个部分你能看懂吧,一个是物品的英文id,一个是物品的tag
写在offer里的就是村民卖的物品,写在request里的就是玩家需要给出的物品
priceModifier的作用看不出来,盲猜是用来最后加减物品的数量
priceMultiplier是原版村民就有的参数,你可以把它理解为打折的力度,具体看这里https://minecraft.fandom.com/zh/wiki/%E6%9D%91%E6%B0%91
tradeExp和tradeLevel,看名字猜的话,一个是交易得到的经验(就是不知道这个是指村民得到的经验还是玩家得到的经验),一个是村民解锁这个交易需要的等级
写在offer里的就是村民卖的物品,写在request里的就是玩家需要给出的物品
priceModifier的作用看不出来,盲猜是用来最后加减物品的数量
priceMultiplier是原版村民就有的参数,你可以把它理解为打折的力度,具体看这里https://minecraft.fandom.com/zh/wiki/%E6%9D%91%E6%B0%91
tradeExp和tradeLevel,看名字猜的话,一个是交易得到的经验(就是不知道这个是指村民得到的经验还是玩家得到的经验),一个是村民解锁这个交易需要的等级
无敌三脚猫 发表于 2022-2-6 00:04
itemKey和nbtTags,这两个部分你能看懂吧,一个是物品的英文id,一个是物品的tag
写在offer里的就是村民卖 ...
我这除了
-  "nbtTags":[
 
-          {
 
-             "nbtName":"test",
 
-             "data":"this is the data",
 
-             "dataType":"string"
 
-          }
 
- ]
都看懂了 NBT试了半天不会用
无敌三脚猫 发表于 2022-2-6 00:04
itemKey和nbtTags,这两个部分你能看懂吧,一个是物品的英文id,一个是物品的tag
写在offer里的就是村民卖 ...
- {
 
-     "profession": "armorer", //村民的职业
 
-     "removeOtherTrades": false, //屏蔽原版交易
 
-     "trades": [ //交易组
 
-         {
 
-             "offer": { //交易类型 offer给予
 
-                 "itemKey": "minecraft:dirt", //物品类型
 
-                 "amount": 3, //物品数量
 
-                 "priceModifier": 0, //价格修正
 
-                 "enchantments": [ //附魔组
 
-                     {
 
-                         "enchantmentKey": "minecraft:knockback", //附魔类型 '#'号分割附魔类型 分割后附魔类型随机
 
-                         "enchantmentLevel": 2, //附魔等级
 
-                         "maxEnchantmentLevel": 3 //最大附魔等级
 
-                     },
 
-                     {
 
-                         "enchantmentKey": "minecraft:sharpness", //附魔类型 "enchantmentKey": "random"随机附魔
 
-                         "enchantmentLevel": -1, //附魔等级
 
-                         "maxEnchantmentLevel": 5 //最大附魔等级
 
-                     }
 
-                 ],
 
-                 "blacklistedEnchantments": [ //随机附魔黑名单
 
-                     "minecraft:protection", //附魔1
 
-                     "minecraft:fire_protection" //附魔2
 
-                 ]
 
-             },
 
-             "request": { //交易类型 request索要
 
-                 "itemKey": "minecraft:cobblestone", //物品类型
 
-                 "amount": 1, //物品数量
 
-                 "priceModifier": 0 //价格修正(负数打折)
 
-             },
 
-             "additionalRequest": { //附加请求
 
-                 "itemKey": "minecraft:gold_ingot", //物品类型
 
-                 "amount": 1, //物品数量
 
-                 "priceModifier": 0 //价格修正(负数打折)
 
-             },
 
-             "tradeExp": 3, //交易获得经验
 
-             "maxUses": 10, //最大交易次数
 
-             "priceMultiplier": 0.1, //价格乘数
 
-             "tradeLevel": 1 //交易等级
 
-         },
 
-         {
 
-             "multiOffer": [ //multiOffer交易类型 给予组 组内随机出现
 
-                 {
 
-                   "itemKey": "minecraft:iron_axe", //物品类型
 
-                   "amount": 1, //物品数量
 
-                   "priceModifier": -3 //价格修正(负数打折)
 
-                 },
 
-                 {
 
-                   "itemKey": "minecraft:golden_axe", //物品类型
 
-                   "amount": 1, //物品数量
 
-                   "priceModifier": 0 //价格修正(负数打折)
 
-                 },
 
-                 {
 
-                   "itemKey": "minecraft:diamond_axe", //物品类型
 
-                   "amount": 1, //物品数量
 
-                   "priceModifier": 4 //价格修正(负数打折)
 
-                 }
 
-               ],
 
-               "request": { //交易类型 request索要
 
-                 "itemKey": "minecraft:iron_ingot",
 
-                 "amount": 6, //物品数量
 
-                 "priceModifier": 0 //价格修正(负数打折)
 
-               },
 
-               "tradeExp": 15, //交易获得经验
 
-               "maxUses": 5, //最大交易次数
 
-               "priceMultiplier": 0.1, //价格乘数
 
-               "tradeLevel": 3 //交易等级
 
-         }
 
-     ]
 
- }
作为补充参考
我就是想知道怎么通过修改 买卖一个物品名字和描述不一样的物品
太古巨龙 发表于 2022-2-6 00:22
作为补充参考
我就是想知道怎么通过修改 买卖一个物品名字和描述不一样的物品 ...
nbtTags还要指定类型是真的迷,要是tag套tag该指定什么类型呢……
好在还有一个advancedNBTData可以用,这个和原版的nbt写法就是一样的了,如果你会用原版give指令给予自己一个有描述有名字的物品,那你就会写这个
举个例子,一个有名字和描述的泥土
"itemKey":"minecraft:dirt",
"amount":1,
"priceModifier":0,
"advancedNBTData": "{display:{Name:'{\"text\":\"白色名字,不是斜体\",\"italic\":false}',Lore:['{\"text\":\"第一行描述,不是斜体,蓝色\",\"italic\":\"false\",\"color\":\"blue\"}']}}"
你可能会好奇为什么我不把这些代码写到
- 这个框框里面
 本帖最后由 太古巨龙 于 2022-2-6 17:42 编辑 
确实可以了但是只能使用英文 找到个网站可以了https://www.ip138.com/ascii/ 直接用\UXXX
无敌三脚猫 发表于 2022-2-6 11:25
nbtTags还要指定类型是真的迷,要是tag套tag该指定什么类型呢……
好在还有一个advancedNBTData可以用, ...
确实可以了但是只能使用英文 找到个网站可以了https://www.ip138.com/ascii/ 直接用\UXXX