本帖最后由 SHEEP_REALMS 于 2022-4-20 22:46 编辑
我平时对指令这方面比较感兴趣 今天就整合了一下npc的指令 希望对你有帮助
我还把一些重要的东西用红色标注了出来 必看!必看!必看!
如果你想跳过前面的基础指令请前往第2条分割线后查看
首先 我们要知道npc的原型其实是村民 所以我们可以输入
复制代码
来创造一个原版的村民 然后可以在后面的括号中加入CustomName:"我的名字" 就可以自定义npc的名字 不过要记住在这些后面想加人别的内容需要一个逗号 你还可以输入 Tags:["我的标签"] 为npc添加一个标签 这时候就有人问了 标签有什么用 如果你弄错了npc或者找不到npc了就可以通过 /kill @e[tag=实体标签] 来清理这个实体,或使用 @e[tag=实体标签] 选择器选择此实体以实现其他功能
以上就是村民的基础功能

然后我们还可以通过指令对npc设置一些效果 比如说 括号里输入Glowing:1b可以让实体发光 Invulnerable:1b可以让实体无敌 Silent:1b可以禁止实体发出声音 (以上的命令适用于所有生物)

接下来才是npc的重点 创造商店
当你输入好一个村民的基础指令后就可以开始编辑村民的交易内容 比如说我们使用一个石头兑换一个石头(**河里)
复制代码我们来解释一下这条指令 括号里面的Offers是玩家需要提供的物品 recipes没什么实际作用 但是必须有它!后面要加上[{两个括号 uses暂时先不管 buy:{id这里填需要的物品id}(可以参考下面链接我的世界1.12全物品id物品id前面记得加上minecraft:) Count:物品数量b(控制在64以内) Damage:物品损坏多少s 这里一般是武器装备才用得到 其他的物品用默认的0就行 在最后去前面看看有多少个括号 在后面按照相对应的顺序把括号补齐
这个时候又双叒叕有人问了 如果我想用两组或者两个无法叠加的物品去兑换怎么办 只需要在第一个buy写完之后 在它的括号后面加上一个buyB就可以实现
为了防止一些大聪明忘记括号的位置我在这单独提一下(没错 这个大聪明就是我)
profession他的括号一个在它前面 另一个在整条指令最后面 offers他的一个在他后面另一个在最后倒数第二个 recipes就比较特殊他需要两个括号冒号后面加上[{最后面的位置可以根据上面说的往前排 buy在冒号后面一个 另一个在这个物品描述完之后 sell也一样 记住同一括号内的几个东西之间一定要用逗号分开
以上就是玩家需要支付的物品指令 用sell可以实现给予玩家物品 指令形式与上面基本一致

接下来是村民的一些特殊设定(如果做npc的话基本上用不到)
复制代码像是这条指令 我删掉了村民的交易面板 单独拿出来看Profession冒号后面跟的是村民的类型 上面的-1是随机 0是农民 1是图书管理员 2是牧师 等等....
大家感兴趣可以百度 我就不再一一介绍
Career后面加的是村民的职业 每一种村民类型都有着不同的村民职业 同样这些可以百度到
然后就是后面的CareerLevel这是村民的职业等级 注意!注意!注意! npc的等级一定要调的高一点 否则就会出现bug(玩家进行交易后村民进行升级 然后后面出现一些不该有的交易内容) Riches后面加的是村民拥有的绿宝石数量 也就是说他的绿宝石用光你就无法继续交易(不过以物换物不用担心 这个不会消耗绿宝石 所以可以用默认的0)

这时候又双叒叕有人问 我想让一个npc进行好几种交易怎么办
复制代码看这串指令 相信你如果认真读完了上面的内容 这些你一眼就看明白了 只需要在第一个uses结束后 写好括号 一个逗号 下面接着一个uses就可以继续编写下面的内容(理论上来讲uses是可以写无数个的 但是具体会怎么样我还没有试过)(但是不建议大家设置太多这个 毕竟会让人找不到想要的东西)

学完上面这些你基本上已经了解的如何去制作一个npc 接下来我会说一些扩展用法
复制代码在大括号的最前面写上CustomNameVisible:1b可以设置玩家始终能看到npc的名字 默认的是只有准星对准才会显示 把冒号后面的1b换成0b就可以设置玩家始终无法看到npc的名字
复制代码接下来这个是令npc背对着一个实体 众所周知 村民会面向附近的玩家 这时候你只需要写一个Passenger 后面的id写上实体id就可以令村民背对着他(我拿僵尸做例子)(实体id同样可以在上面说的网址中找到)
复制代码这个是给实体装备(村民装备不会显示 但属性依旧还在)大家可以根据上面讲到的部分用法去理解ArmorItems盔甲物品 括号空着的代表里面没有东西 第一个括号代表靴子 第二个是护腿 第三个胸甲 第四个头盔 在里面根据上面的写法进行编辑 最后的ArmorDropChances是物品的掉了几率 需要用到的1f代表百分百的概率 如果一半的概率就是0.5f 不能掉落是0.0f (如果你想掉落没有破碎的装备需要给装备无限耐久)(这些都是对于无插件的rpg怪物的编辑 以后我会再出一期rpg的怪物)

以上就是本帖的全部内容 期中可能有一些说的不对的 不准确的 大家可以在帖子里纠正 同时如果有一些更好的更有趣的指令也可以在下面分享给大家 制作不易 希望大家....(疯狂暗示)
以后我还会再继续分享一些实用的指令 比如这次没有提到的物品编辑 可以用到村民的交易里面
还有rpg里面怪物与武器的教程
这里发一个我做的一个例子(仅供参考)
复制代码以往帖子
[1.8-1.12]利用计分板和你的小伙伴来一场比赛吧
[1.8-1.12]利用告示牌实现各种功能 你绝对没有见过的功能都在这里
[1.8-1.12]与JSON有关 关于命令书 这些你绝对不知道
我平时对指令这方面比较感兴趣 今天就整合了一下npc的指令 希望对你有帮助
如果你想跳过前面的基础指令请前往第2条分割线后查看
首先 我们要知道npc的原型其实是村民 所以我们可以输入
- /summon minecraft:villager ~ ~1 ~ {Profession:-1}
来创造一个原版的村民 然后可以在后面的括号中加入CustomName:"我的名字" 就可以自定义npc的名字 不过要记住在这些后面想加人别的内容需要一个逗号 你还可以输入 Tags:["我的标签"] 为npc添加一个标签 这时候就有人问了 标签有什么用 如果你弄错了npc或者找不到npc了就可以通过 /kill @e[tag=实体标签] 来清理这个实体,或使用 @e[tag=实体标签] 选择器选择此实体以实现其他功能
以上就是村民的基础功能

然后我们还可以通过指令对npc设置一些效果 比如说 括号里输入Glowing:1b可以让实体发光 Invulnerable:1b可以让实体无敌 Silent:1b可以禁止实体发出声音 (以上的命令适用于所有生物)

接下来才是npc的重点 创造商店
当你输入好一个村民的基础指令后就可以开始编辑村民的交易内容 比如说我们使用一个石头兑换一个石头(**河里)
- /summon minecraft:villager ~ ~1 ~ {Profession:-1,Offers:{Recipes:[{uses:0,buy:{id:"minecraft:stone",Count:1b,Damage:0s},sell:{id:"minecraft:stone",Count:1b,Damage:0s}}]}}
这个时候又双叒叕有人问了 如果我想用两组或者两个无法叠加的物品去兑换怎么办 只需要在第一个buy写完之后 在它的括号后面加上一个buyB就可以实现
为了防止一些大聪明忘记括号的位置我在这单独提一下(没错 这个大聪明就是我)
profession他的括号一个在它前面 另一个在整条指令最后面 offers他的一个在他后面另一个在最后倒数第二个 recipes就比较特殊他需要两个括号冒号后面加上[{最后面的位置可以根据上面说的往前排 buy在冒号后面一个 另一个在这个物品描述完之后 sell也一样 记住同一括号内的几个东西之间一定要用逗号分开
以上就是玩家需要支付的物品指令 用sell可以实现给予玩家物品 指令形式与上面基本一致

接下来是村民的一些特殊设定(如果做npc的话基本上用不到)
- /summon minecraft:villager ~ ~1 ~ {Profession:0,Career:2,CareerLevel:64,Riches:128}
大家感兴趣可以百度 我就不再一一介绍
Career后面加的是村民的职业 每一种村民类型都有着不同的村民职业 同样这些可以百度到
然后就是后面的CareerLevel这是村民的职业等级 注意!注意!注意! npc的等级一定要调的高一点 否则就会出现bug(玩家进行交易后村民进行升级 然后后面出现一些不该有的交易内容) Riches后面加的是村民拥有的绿宝石数量 也就是说他的绿宝石用光你就无法继续交易(不过以物换物不用担心 这个不会消耗绿宝石 所以可以用默认的0)

这时候又双叒叕有人问 我想让一个npc进行好几种交易怎么办
- /summon minecraft:villager ~ ~1 ~ {Profession:-1,Offers:{Recipes:[{uses:0,buy:{id:"minecraft:stone",Count:1b,Damage:5s},sell:{id:"minecraft:stone",Count:1b,Damage:5s}},{uses:0,buy:{id:"minecraft:stone",Count:1b,Damage:5s},sell:{id:"minecraft:stone",Count:1b,Damage:5s}}]}}

学完上面这些你基本上已经了解的如何去制作一个npc 接下来我会说一些扩展用法
- /summon minecraft:villager ~ ~1 ~ {CustomNameVisible:1b,Profession:-1}
- /summon minecraft:villager ~ ~1 ~ {Passengers:[{id:"minecraft:zombie"}],Profession:-1}
- /summon minecraft:villager ~ ~1 ~ {ArmorItems:[{},{},{},{id:"minecraft:stone",Count:1b,Damage:5s}],ArmorDropChances:[0.0f,0.0f,0.0f,5f],Profession:-1}

以上就是本帖的全部内容 期中可能有一些说的不对的 不准确的 大家可以在帖子里纠正 同时如果有一些更好的更有趣的指令也可以在下面分享给大家 制作不易 希望大家....(疯狂暗示)
以后我还会再继续分享一些实用的指令 比如这次没有提到的物品编辑 可以用到村民的交易里面
这里发一个我做的一个例子(仅供参考)
- /summon minecraft:villager ~ ~1 ~ {CustomName:"楼主最帅",Tags:["楼主最帅"],CustomNameVisible:1b,Invulnerable:1b,ArmorItems:[{},{},{},{id:"minecraft:leather_helmet",Count:1b,Damage:0s,tag:{AttributeModifiers:[{Operation:0,Amount:10,UUIDLeast:-1895557996164269537L,UUIDMost:2659164949723459758L,AttributeName:"generic.attackDamage",Name:"generic.attackDamage"},{Operation:0,Amount:0.2,UUIDLeast:-1811719411593854896L,UUIDMost:2443163174716782937L,AttributeName:"generic.attackSpeed",Name:"generic.attackSpeed"},{Operation:0,Amount:1000,UUIDLeast:-1935643631859674258L,UUIDMost:2238542477765732658L,AttributeName:"generic.maxHealth",Name:"generic.maxHealth"}],display:{Name:"楼主的帽子",Lore:["什么?你想要绿色的 不可能"],color:14745344},Unbreakable:1,ench:[{id:-1,lvl:0}]}}],Profession:1,Career:1,CareerLevel:999,Offers:{Recipes:[{uses:0,buy:{id:"minecraft:gold_ingot",Count:1b,Damage:0s,tag:{display:{Name:"10"}}},sell:{id:"minecraft:book",Count:1b,Damage:0s,tag:{display:{Name:"金砖之书",Lore:["利用10金砖制作而成的书"]}}}},{uses:0,buy:{id:"minecraft:book",Count:1b,Damage:0s,tag:{display:{Name:"金砖之书",Lore:["利用10金砖制作而成的书"]}}},sell:{id:"minecraft:gold_ingot",Count:1b,Damage:0s,tag:{display:{Name:"10"}}}}]}}
[1.8-1.12]利用计分板和你的小伙伴来一场比赛吧
[1.8-1.12]利用告示牌实现各种功能 你绝对没有见过的功能都在这里
[1.8-1.12]与JSON有关 关于命令书 这些你绝对不知道
家银们 整理不易 给点评分吧
非常不错的整理,我倒是很喜欢这种东西,楼主加油!
编。。。编程开发区??
马上去用我的好室友试试
6666666666666666666666666666666
827530010 发表于 2022-4-21 12:05
室友:我谢谢你嗷
我室友:今晚别睡太死昂
66666666666666666666
谢谢大佬分享指令,这就去试试
这就去找‘好盆友’试一试
又可以和朋友愉快的玩耍了,感谢分享
真好,我明天给室友真一套
MCBBS有你更精彩~
不错,明早就给闺蜜体会一把啥叫人间险恶
这我必给我舍友安排上
指令整理的不错支持一下
教程非常不错,早就想学怎么弄npc了,在百度上找了半天,没想到这里就有,谢谢楼主
MCBBS有你更精彩~
可以可以学到了很简单
0000000000000000000
感谢命令大佬,明天就去和朋友愉快地玩耍
马上去用我的好室友试试
我正常都用shopkeeper来实现npc的制作
我曾经有个朋友?
HHHHH基友 我来了 感谢大佬的整理 让我的游戏更有乐趣
以前都不会,搞服务器老麻烦了
仅有的几个mc好友都没了(doge
《关于坑杀好朋友需要学编程那点事》
朋友新玩mc 赶紧去让他体验社会的险恶
没开过服务器的我看的一脸蒙 都是代码
这样会不会太坏
TTong_0105 发表于 2022-4-22 10:23
这就去找‘好盆友’试一试
哈哈哈哈真坏朋友一起
这,这样不太好吧,毕竟我的朋友都退游一些了,嘿嘿嘿
笑死了,这样搞朋友他还会和我玩吗
属于是好朋友啦
太险恶了呃呃呃呃呃呃呃鹅鹅鹅
已经对基友下手了,基友把我ban了
楼主加油
好家伙还有这种操作,直呼666!!!
大佬666牛牛牛
6666666666666666666666666666666666666666666666666666
楼主加油
这就喊上朋友试试 芜湖
本帖最后由 PainAxis 于 2022-8-4 13:43 编辑
楼主的教程很实用,效果也很好,那么朋友去哪领(另外,是不是可以改成例如拿一个铁锭对着村民使用可以召唤铁傀儡的版本
楼主的教程很实用,效果也很好,那么朋友去哪领(另外,是不是可以改成例如拿一个铁锭对着村民使用可以召唤铁傀儡的版本
理论存在,实践开始!
很邪恶的想法
没想到我为了整蛊朋友要学个编程