apeoppeo
本帖最后由 apeoppeo 于 2022-4-9 23:38 编辑

最近mc回坑,准备和朋友做一张RPG地图,里面需要自定义村民的交易,我用以前版本的指令,然后意料之中的失败了,之后我去看视频学习,可还是弄不出来,然后我试了试在论坛里面找,有一个指令是这样的summon minecraft:villager ~ ~1 ~ {CustomName:"小宝",Profession:1,Career:0,Willing:0b,Offers:{Recipes:[{maxUses:999999998,uses:1,max:null,buy:{id:"minecraft:diamond",Count:3b,Damage:0s},sell:{id:"minecraft:record_13",Count:1b,Damage:0s}}]}}
我去试了一下,成功生成出了村民,但是交易界面之闪了一下就没了,然后这个指令应该是指定了这个村民的id叫 小宝 可是也没有显示出来,求大佬告知一下1.18版本的村民交易指令怎么写

尸先peng
本帖最后由 尸先peng 于 2022-4-9 23:52 编辑

删掉村民ai即可或者村民交易等级大于1也可以

apeoppeo

大佬大佬,怎么删,是删掉后面的nbt吗

尸先peng
apeoppeo 发表于 2022-4-9 23:50
大佬大佬,怎么删,是删掉后面的nbt吗

/summon minecraft:villager ~ ~1 ~ {NoAI:1b,VillagerData:{lvl:2}}



{NoAI:1b}:
清除ai,最简单粗暴的方法

{VillagerData:{lvl:2}}
村民交易等级大于1也可以锁定交易

apeoppeo
尸先peng 发表于 2022-4-9 23:55
/summon minecraft:villager ~ ~1 ~ {NoAI:1b,VillagerData:{lvl:2}}

成了!感谢大佬,还有最后一个问题就是,指令生成出来的村民都是傻子村民,怎样更改他的外形以及让他不受到伤害(就是无敌)

apeoppeo
尸先peng 发表于 2022-4-9 23:55
/summon minecraft:villager ~ ~1 ~ {NoAI:1b,VillagerData:{lvl:2}}

然后我现在成功的指令是
summon minecraft:villager ~ ~1 ~ {CustomName:'[{"text":"666"}]',NoAI:1b,VillagerData:{lvl:2},Offers:{Recipes:[{maxUses:999999998,uses:1,max:null,buy:{id:"minecraft:diamond",Count:3b,Damage:0s},sell:{id:"minecraft:dirt",Count:1b,Damage:0s}}]}}
成功的生成出了一个名叫666的村民,且交易的物品是三个钻石换一个绿宝石,符合我上面写的指令

尸先peng
apeoppeo 发表于 2022-4-10 00:14
然后我现在成功的指令是
summon minecraft:villager ~ ~1 ~ {CustomName:'[{"text":"666"}]',NoAI:1b,Vil ...

/summon minecraft:villager ~ ~1 ~ {Invulnerable:1b,VillagerData:{type:"minecraft:desert",profession:"minecraft:cleric"}}


{Invulnerable:1b}
让村民无敌

{VillagerData:{profession:"minecraft:cleric"}}
让村民改为牧师(cleric可以改为别的)

{VillagerData:{type:"minecraft:desert"}}
让村民改为沙漠服装的(desert可以改为别的)



apeoppeo
尸先peng 发表于 2022-4-10 00:24
/summon minecraft:villager ~ ~1 ~ {Invulnerable:1b,VillagerData:{type:"minecraft:desert",profession ...

了解,也成功了,我还有最后一个疑问就是,如果我要给交易的物品补充一个tag的话,这个tag是写在哪里呢,比如我写一个泥土换一把附魔锋利3的钻石剑,前面的泥土我回,后面如果是普通钻石剑我也会,附魔了的,怎么写,buy:{id:"minecraft:dirt",Count:1b,Damage:0s},sell:{id:"minecraft:diamond_sword",Count:1b,Damage:0s}这个是普通泥土换普通的剑

尸先peng
本帖最后由 尸先peng 于 2022-4-10 01:43 编辑
apeoppeo 发表于 2022-4-10 00:59
了解,也成功了,我还有最后一个疑问就是,如果我要给交易的物品补充一个tag的话,这个tag是写在哪里呢, ...

用指令生成器解决90%的指令问题(
https://www.mcmod.cn/tools/cbcreator/

(设置里面选择mc版本1.14.4,最后出来的指令也是支持1.18.2的)


/summon minecraft:villager ~ ~1 ~ {Offers:{Recipes:[{buy:{id:"minecraft:air",Count:1b},sell:{id:"minecraft:air",Count:1b}},{buy:{id:"minecraft:air",Count:1b},sell:{id:"minecraft:air",Count:1b}}]}}

直接逗号隔开再写一个就可以了

我是jacobs
删除村民AI或者设置NPC