Minecraft指令手册

你好MC

首页 >> Minecraft指令手册 >> Minecraft指令手册最新章节(目录)
大家在看盗墓仙尊全职剑修开局云养女帝佣兵与冒险家莫纳德遗迹直播之我在北极当守冰人我也想正经修仙,但仙子泰酷辣!绝世武帝企鹅系玩家高武三国:从五斗米教开始
Minecraft指令手册 你好MC - Minecraft指令手册全文阅读 - Minecraft指令手册txt下载 - Minecraft指令手册最新章节 - 好看的玄幻魔法小说

第五十四章 初识NBT

上一章目录下一章阅读记录

(此章节已于2022年8月1日再次修改)

你肯定很好奇为什么多人游戏指令讲着讲着就突然讲到Nbt了。实际上原本这一章讲的是『解封玩家』,但在本书第一次大修过程中这一章的内容被合并到了第五十二章,因此这一章就空了出来。

还有一个原因是,第一次大修过程中,我也去参考了许多其他制作得比较优良的minecraft命令教程,发现他们大多数讲Nbt比较早,这样子以后深入时就好展开讲。而本书在第一次大修前,Nbt的内容在第100章才匆忙开始。

因此,为了让各位读者能够更好地掌握Nbt的相关知识,我们就先在这里初步认识一下Nbt。

————————————

在第一次听到Nbt这个词时,你脑海里肯定会浮现出三个问题:

『什么是Nbt?Nbt能干什么?我该如何使用Nbt?』

Nbt,全称Named binary tag,中文翻译为二进制命名标签。它在minecraft中你虽然见不到,但它无处不在:在鸡里面、在计分板里面、在玩家里面、在区块里面......

所以Nbt到底是啥?

.........

『看,那里有一个东西!』

单纯这样描述,你估计想不出来也不了解这个『东西』是什么。但如果我这样描述呢:

这个东西的『种类』是『生物』

『生物种类』是『狗』

『毛发颜色』是『黄色』

『品种』是『哈士奇』

『质量』是『33kg』

『主人』是『旁边的那个人』

『年龄』是『5岁』

当我像上面这样描述时,你对这个东西也越发的变得了解。Nbt也是个类似的玩意儿,只不过它不光是给你看的,它还是给游戏看的。

在minecraft中,Nbt就像上面我描述那个东西所用的方法一样,它也用于『描述』游戏内部的事物:

『命名空间Id』是『minecraft:mand_block』

『限制』是『无条件限制』

『坐标』是『45,12,32』

『自动激活』是『关闭』

『内部指令』是『say hello!』

通过上面的描述,你和游戏应该都清楚了,这是一个脉冲型、没有条件限制、处于坐标(45,12,32)、需要红石、写有指令『say hello!』的命令方块。

仔细观察上面的内容,你应该会发现,我们都是使用类似于下面的格式来进行描述:

『一个描述』是『多少』

像上面这样子的一对『描述』和『值』,在Nbt中就叫做『标签』。

一个标签具有标签名称和值,标签名称规定了这个标签具体是干啥用的,值则描述了这个标签具体是怎么干的。标签名称和值使用英文半角冒号分开,标签名在左,值在右。比如:

health:20.0f

这个标签的名称是『health』,代表着这个标签用来记录着这个东西的生命值。值是『20.0f』,代表着这个东西当前的生命值为20.0(你先不用管f是啥)。

标签和标签之间使用英文半角逗号区分,比如:

health:20.0f,customName:“what?“

一堆像这样的标签,就组成了一个Nbt标签:

{health:20.0f,customName:“what?“}

一个Nbt标签内有一个或多个标签,外面被花括号所包围。Nbt标签其实还可以嵌套作为值成为『复合标签』,下面会具体讲到这个东西。

和JSoN文本一样,标签的值也有许多类型,具体的我们到以后再详细了解,这里就先简单介绍一下。

值的数据类型可以粗略分为五种:数组、数值、文本、复合标签和列表。数组以后再讲,现在我们只需要来认识一下剩下的四种。

数值类型,也就是一串数字。一般这一串数字为整型数,比如:

{dimension:10}

但有些标签的值也可以是浮点数,如:

{health:7.8f}

(f在这边代表值类型为单精度浮点数,一般情况下可以省略这些后缀字母,但如果出了问题还是要加上的)

什么是整型和浮点数?简单来说,整型就是整数数据类型,也就是整数;浮点数是一种看起来很像小数的表示方法。其中,后者具有小数点,既能表示整数也能表示小数。比如:

10

10.0

虽然这两个数大小一样,也都是整数。但在计算机眼中,上者是『整型数』,下者是『浮点数』,并不一样。

文本类型,也就是一串文本。和数值不一样的是,文本需要使用英文半角引号将内容包裹起来。如:

{customName:“Arcaea“}

在Java1.14及以上版本中,引号也可以使用半角单引号:

{customName:'Arcaea'}

复合标签类型听起来很高大上。但只要你语文好一点,就会发现它并没有多么高大上。

『复合』的意思是:把两种或几种成分结合起来。所以『复合标签』的意思就是:把多个标签结合起来。在这边,这个标签并不是普通的标签,而是由多个标签组合成的Nbt标签:

{标签名:{标签名:值,标签名:值......}}

也就是说,复合标签本质上,其实就是将一个Nbt标签塞到另一个Nbt标签里面去:

{Riding:{id:“xxxx“,health:20.0f},id:“yyy“}

列表类型常常与复合标签类型结合使用。它长这个样子:

{标签名:[值,值,值,值......]}

列表类型的本质,就是把多个同类型的值组合在一起。比如:

{Friends:[“xiaohong“,“xiaoming“,“xiaoZhang“]}

这里Friends标签的值就是三个文本组成的列表。

刚才说过列表类型常常与复合标签类型结合使用,具体的使用法是这样子的:

{标签:[{标签},{标签},{标签}]}

也就是把多个Nbt标签(复合标签)组合成一个列表。在以后我们会经常性地遇到这样的用法。

这就是Nbt,或者说,是mojang专门研发出来能够给人看的:SNbt(Stringified Nbt),也就是『字符串化的二进制命名标签』。而真正的Nbt,其实是树状结构,和上面的SNbt有很大差别。只不过你不用担心怎么区分Nbt和SNbt,因为干嘛要管呢?在大多数语境下,大家是不会特意区分Nbt和SNbt的,一般都统称为Nbt。

现在你能够看懂Nbt了吧?你可以尝试一下下面的这串,看看能否看懂。

{Elements:[{Name:“pyro“,Id:1},{Name:“hydro“,Id:2},{Name:“Anemo“,Id:3},{Name:“Electro“,Id:4},{Name:“dendro“,Id:5},{Name:“cryo“,Id:6},{Name:“Geo“,Id:7}]}

本章就到这里了。

(其实,标签的本质,和JSoN的组件差不多,都是一个『键-值对』)

上一章目录下一章存书签
站内强推骑士遥远的记忆原神仙途你好,我最爱的人平安修行记我以神明为食风流小屌丝朕实在太难了明末好国舅她是人生客卒舞从超兽武装开始盘点奥特:月总的媳妇是哦斯超人红警的黑科技帝国火系法爷修炼指南财团终结者糖心蛋夹心甜轮回游戏之魔兽直播算命,同妻被吃绝户初之心盛霆烨免费阅读无弹窗从火影开始
经典收藏某科学的次元突破谋入相思傀女大祭司大武器时代之红瞳少年无限之万界高校不死的召唤师我雕刻神像,敕封诸天神明生活魔法的作用一品农门联盟:拿命竞技,成为华夏电竞之光万物至臻录戌狗圣徒剑装重生年代,退婚嫁最猛糙汉子神话的开端重生异界狂妃她又A又飒穿越娱乐女王雨霁云舒拜见血主大人离婚后,玄学大佬火爆全球
最近更新两界穿越,我吞噬万物成宇宙之主玄幻:分身搞事不停,我幕后长生系统要我君临天下遗失之香开局加载领主系统,我发育成王请仙人赴死白九我在凡间做道士废柴仙途:逆命而起,踏破九霄每走一步,涨一点血气,终成无上妖帝灵墓密影咸鱼的异界系统之旅异能学渣剑起星辰万尾妖王的影新书重生大明:帝王的雕刻术穿越到三界我成了御仙兽师吾,苍族天子,帝临万古岁月邪尊收手吧,没必要坏事做尽啊开局:被诡异女子强行抱走
Minecraft指令手册 你好MC - Minecraft指令手册txt下载 - Minecraft指令手册最新章节 - Minecraft指令手册全文阅读 - 好看的玄幻魔法小说