手机游戏> 我的世界> 游戏新闻> NBT命令和指令方块的入门指南(“我的世界脚本”)

NBT命令和指令方块的入门指南(“我的世界脚本”)

作者:佚名 来源:九游 发布时间:2018-02-05 14:43:00
上九游,领福利
t15_2-t15_1:11.0

导读:觉得Minecraft里指令太多,不知道从哪开始上手?这篇博客将带你轻松入门!

大家好!

 

编辑: 

  我想大家都听过Minecraft我的世界,而且都熟悉并喜爱这个块状沙盒游戏(如果不是因为这个沙盒游戏,你们可能都不会看这篇文章)。这些年来,Minecraft已经从一个(并不)“简单”的块状沙盒游戏发展成一个巨型的游戏平台。不要误会我的意思:它仍然是原来那个有趣的沙盒生存游戏,但是如果你深入了解一下指令方块和其功能的概念(如1.12),你将会发现一个全新的世界。 

 

  像所有事情一样,从什么地方开始入手是一个问题。Minecraft太大型了,如果你看一下(https://minecraft.gamepedia.com/Commands)这里面的指令,你会立刻意识到这里面包含太多东西了。如果你觉得这些不足以让你惊奇,那么你可以再去关注以下内容:在你使用自定义的项目时(例如:一个拥有自定义特征的镐,就包含自定义名称和一些特定的附魔),你会发现更多闻所未闻的东西:如称之为NBT结构(https://minecraft.gamepedia.com/Chunk_format#NBT_stru

cture)。它基本上是一个特定的代码,用来指定某些与你想要定制或生成的物品(或玩家,怪物,街道等)直接相关的属性。 

  还是不知道怎么开始吗?不用担心,这篇博客能够教你入门:-)

 

要求: 

  在开始之前,你要确保你有一个Minecraft世界(创造模式)在你的处置范围内(确保你能使用作弊码)。在这里,我建议你使用MCEdit(下载地址 https://www.mcedit.net/)。MCEdit是Minecraft的开放源地图编辑器。你可以在里面下载保存一个世界,并在你的世界里编辑任何内容----从世界里的任何特定方块,到玩家的库存和物品。 

  虽然不是必须的,但它们对你能有很大的帮助,特别是如果你想手动确定某些物品属性时。(后面我会再解释的) 

 

建议:不要依赖指令生成器! 

  你可能会想:“为什么不要这样呢?”毕竟很多所谓的指令生成器,只要你大概指定出你需要的东西,他们就会为你生成你所需要的指令。问题就这样简单地解决了,对吧?

  当然不。使用这些生成器并不能解决你的问题。事实上,你没有解决任何问题,只是将一些不可避免的问题推迟了。如果这些网站的信息是错误的呢?这种情况很常见;如果你要升级更新Minecraft版本?它可能会破坏你现有的指令;又如果你用的某些指令生成器不是最新版本,那么你就倒霉了。 

  但如果你理解了这些基本概念,也就不会有这些麻烦了。

 

步骤1 - 了解指令结构(NBT 命令) 

  “我的世界”中的所有指令都由这些部分组成:指令本身,一个或多个指令的参数(考虑坐标时用/tp,考虑数量时用/give),和一些可选择的NBT标签,其可以在处理项目时用来设置特定的属性。例如指定剑上的附魔。 

  NBT部分对大多数玩家来说很难,但如果你认真琢磨一下原理,其实它是非常简单的。首先:整个定义位于大括号之间:{}。第二:组成NBT数据的几个元素('命令')可以由特定的部分组成: 

· TAG_Compound母标签类的一种:当你拥有不同元素组成的东西时,我们通常把它称为一个复合物,你需要使用大括号包含它:{} 

· TAG_List母命令类的一种:有时是多个项目形成的一种集合,例如物品上的传说(你用不同的字符来定义)或者附魔(由不同的化合物组成)。我们使用方括号包含一个列表:[] 

· TAG_String字符类的一种:基本上是一个字或一段文字。它使用引号组包含在一起:“” 

· TAG_Boolean数值类的一种:它用来表明某事是对的或错的,然后接受或者拒绝,它的作用就像仅使用0和1这样的值时的作用。 

还有很多命令可以使用,但因为这是一篇入门博客,我现在就只说这些基本的,有关NBT命令的完整概述,请参阅此wiki页面。(https://minecraft.gamepedia.com/NBT_format)

 

步骤2 - 了解要使用的数据(命令) 

  MCEdit在这可以起作用了,而minecraft wiki在这也可以起很好的作用。比如,我们想给自己的钻石剑改名为Mobslicer,它具有Unbreaking III(不可摧毁 lv3)的附魔。这时我们可以看一下剑上提到的这个wiki页面(https://minecraft.gamepedia.com/Sword#Data_values)。但是这里面没有关于可使用标签的信息。因为NBT结构是在另一个页面上说明的:player.dat格式页面(https://minecraft.gamepedia.com/Player.dat_format),特定的项目结构部分(https://minecraft.gamepedia.com/Player.dat_format#Item_structure)。 

首先我们要给这个项目起一个特定的名字。将鼠标向下滚动搜索,你最终会找到显示属性部分(https://minecraft.gamepedia.com/Player.dat_format#Disp

lay_Properties),这个才是我们需要的:

  NAME:这个项目在显示器上的名称。 

 

  然后我们该怎么用它呢?还记得上面提到的TAG列表吗?当你再次检索该wiki页面并将鼠标停在Name前面的图标上时,你会注意到它提到了TAG_String。如果你还记得前面我说的,你会注意到处理字符时应该使用引号(“”)。这是第一步。 

  如果我们进一步检索,你会看到名称以树状结构显示。它显示为“属性”。将鼠标停在显示器前(图标),你会看到TAG_Compound。我们需要使用{}包含它。这个时候我们就能知道这才是名字的正确写法:

display:{Name:“你想要的名字”}。 

  下一步:附魔。你应该已经注意到了上面的格式在这同样也适用,但要更复杂一些。在前面的例子中,我直接从头跳到尾了,这次我要按照正常的顺序来操作了。如果想要指定某些附魔,我们需要使用ench的代码。当我们再次把鼠标停在图标处,你会看到TAG_List。很简单,这个时候我们需要[]。综上所述,我们需要这样:ench:[]。 

  接下来,你可以指定一个单一的附魔,它的结构是一个复合物。所以你应该使用{}。于是我们现在需要这样:ench:[{}]。 

  最后一步:单一的附魔由两部分组成:id(TAG_Short)和lvl(TAG_Short)。Short算是一种指定数字的方法。它的类型一定要记住,因为具体的数值可以确定最大值的特定属性。比如,Short能规定一个值的范围为-32678到32767.当你指定的值比它高或者低时,你会得到一个错误的值,或者最大值(最小值)。

  还有最后一个问题:Unbreaking的ID值是多少呢?为了找出这个,你可以直接进这个wiki页面(https://minecraft.gamepedia.com/Enchantment)。而Unbreaking的部分在:https://minecraft.gamepedia.com/Enchanting#Unbr

eaking。通过查找我们可以得知:Unbreaking的ID值为 34,最高级别是III。 

  而我们最终要输入的NBT字符应该是这样:

  ench:[{id:34,lvl:3}]。 

  然后我们可以将这两个命令合并成一个命令,可以得到:{display:{Name:“Mobslicer”},ench:[{id:34,lvl:3}]}。很简单吧?

  还有MCEdit怎么操作呢?很简单的...比方说,当我们不知道指令时,或者我们从wiki里也找不到指令时,我们可以从创造模式里获取指令。我们需要用什么来重命名自己的剑呢?答:剑,铁砧和附魔书: 

  MCEdit有一个很不错的地方就是,任何水平的玩家都能操作它。它可以检索方块,它可以检索箱子的内容...还有它也可以访问玩家库存: 

  你看下上图,就会知道为什么当你决定要建造某物时,MCEdit非常好用。换句话说,就是它的属性和数值一目了然。

 

  首先看我的包裹:你看图标这,我们可以看到它是一个列表,它包含了2个TAG_Compounds。我们好像在哪里见过这个名字,对吧?你可以看到我的diamond_sword在复合命令的上方。这个称为display的项目是另一个包含Name的复合命令标签,它的图标显示:它属于字符类型,并且包含Mobslicer。

也就是:display:{Name:“Mobslicer”}。 

  然后我们会再次看到ench,它包含一个列表(还记得 []?),还有1个复合物命令({})。复合命令由id和level组成,它们有一个S图标(TAG_Short),其中id为34,level为3。所以:ench:[{id:34,lvl:3}]。 

  还没结束呢......仔细看一下,你会发现我的包裹本身就是一个列表。我的物品ID是一个字符,叫做:minecraft:diamond_sword。我们还使用了Count(TAG_Byte)和Slot。 

  {id:““Minecraft”:diamond_sword”,Count:1}

  我想这一串代码肯定可以用在某个地方。

  剧透的人会告诉我们:它当然可以。

  /testfor @p {Inventory:[{id:"minecraft:diamond_sword",Count:1b}]}.

  比如这个命令,就可以查找到拥有钻石剑的玩家的包裹。 

  有人可能会想:“这个“b”哪里来的?”。很简单:还记得我提到过MCEdit中的B图标表示TAG_Byte吗?所以“我的世界”是如何确定1实际上是TAG_Byte,而不是TAG_Short?这就是b起作用的地方。

不用wiki,不用互联网,只要有铁砧,剑,书和MCEdit就可以。而且我们现在已经学习了2种指令。

 

步骤3 - 了解指令方块

  指令方块是““我的世界”脚本”的核心(我喜欢这样称呼它)。指令方块有三种类型以及每种类型有两种状态:

  充能:你的基本指令方块。用红石启动时,可以运行单个命令。

  连锁:绿色的变种。连锁指令方块应放置在其他指令方块之后(充能或重复,注意侧面的箭头),并保证其执行(以及顺序)。 

  重复:神秘的紫色变种。重复指令方块的功能正如它们的名字一样:它们一遍又一遍地重复一个指令。 

  一个指令方块可以有两种状态:无条件(默认,见顶部方块)或有条件(见底部方块)。状态基本上决定了一个指令方块的工作内容。状态的基本作用就是确定一个指令方块是否应该运行或执行它的指令。当指令方块是有条件的状态时,它才会执行它的命令。 

  记得之前我展示库存的那一部分吗?如果把这个/ testfor指令设置在一个指令方块上会怎么样?它能测试出我的库存中是否有钻石剑。还有我会在它后面附加一个有条件的连锁指令方块,其中包含:“你有一把剑!” 这样的结果会很有意思: 

  最后:创造模式库存中是没有指令方块的,你需要将/ give @p command_block。设置在方块上,然后打开界面,并操作你所看到的按钮。 

 

步骤4 - 熟悉识别码 

  现在,我要用一种有趣的方式讲解,这样你可能会更容易记住我说的。我要说的是:识别码也被称为目标选择器。如果你往上翻,你会注意到我在指令中使用了@p好几次。简单说就是“最近的玩家”的意思,还有更多的意思,如下面列出的。

@p:target nearest player。(目标是最近的玩家。)

@r:target random player。(目标是随机玩家。) 

· @a:target all player。(目标是所有玩家。) 

@e:target all entities(=mobs and players alike)。(目标是所有实体)(小怪和玩家)。 

@s:target the executing entity。 (目标是执行中的实体。) 

  比如,想给随机玩家一把钻石剑?很简单:/ give @r “Minecraft”:diamond_sword。 

 

步骤5 - 熟悉计分板 

  最后一点:计分板。它可能是这个游戏中最棘手的功能之一,它让大多数玩家感觉无从下手。我现在不打算在这里详细介绍(因为这只是一篇入门级指南)。但我还是会展示给你们看的,为什么计分板对玩家来说那么重要... 

  正如其名,计分板就是“我的世界”中存储大量有关玩家和怪物(“实体”)的信息的地方。你有看过你的minecraft统计数据吗?你肯定不知道这个,进入暂停菜单(点击逃生),然后点击“统计”按钮。你会看到很多特别厉害的东西:例如,你退出游戏多少次,你走了多远,你爬了多远,你坐矿车,船或马走了多久...... 

  “我的世界”怎么会有这些信息?当然是用计分板! 

  最棒的地方是我们也可以使用这个计分板。它可以让你知道一些有关“我的世界”所有实体的具体信息,或者你也可以自己手动添加特定的信息。 

  再举个例子:记得之前说的附魔剑吗?如果我们把它设置好,这样每个加入游戏的玩家就都可以免费获得一把剑了。可以考虑把它做成给新玩家的福利包。所以现在我们需要能够给所有玩家一把剑的指令,这条指令还需要重复一遍,再执行指令一次。 

  现在设置这样一个重复指令方块: 

  /give @a minecraft diamond_sword 1 0 {display:{Name:"Mobslicer"}, ench:[{id:34, lvl:3}]}. 

  如果你也这样做,玩家们会爱死你的,你猜猜接下来会发生什么?我告诉你吧,这会给所有玩家不断的发钻石剑,无穷无尽的钻石剑。但这并不是我们想要的,我们希望给所有的玩家一把钻石剑,但只给一把,对吧。 

  所以这个时候我们需要以某种方式确定玩家是否已经拿到了一把剑。如果没有,他们会得到一把。我们需要标记已经得到剑的玩家。 

  这是计分板可以发挥作用的地方,尤其是命令功能。输入这个指令: 

  / testfor @a [tag =!gotsword] 

  接下来会发生什么呢?我会添加了一个选择器,测试所有玩家(@a):所有没有标签的玩家都会被称为gotsword。如果带有标签的玩家出现,我就会知道他们应该得到一把剑,并且标记他们收到的那把剑。这些识别器和选择器可以用在很多指令中,包括/ give。

  /give @a[tag=!gotsword] minecraft:diamond_sword 1 0 {display:{Name:"Mobslicer"}, ench:[{id:34, lvl:3}]} 

这是我们要在重复指令方块中使用的指令。我要说下,除非我们标记了已经收到剑的玩家,不然这个指令会重复执行,像之前说的那样:它会给玩家发无穷无尽的剑。因此,从一个重复指令方块开始(或者使用一个正常的指令来测试),不要添加别的指令,而是在它后面添加一个连锁指令方块(看箭头!)。设置连锁指令方块为有条件状态,并添加以下指令: 

/scoreboard players tag @a[tag=!gotsword] add gotsword 

所以第一个指令方块会给所有没有gotsword命令的玩家一把剑。第二个指令方块只会在第一个指令执行之后才会执行,并且会用gotsword标记这些玩家。这样所有玩家只会得到一把剑,不会再发第二把。

  在你的创造模式世界里尝试一下吧,你很快就会明白我说的这些了。 

  想验证它是否有效?输入这个指令: /scoreboard players tag @p list.它会列出所有你当前有的命令,如果上面的指令已经执行了,你会看到之前提到的“gotsword”。如果删除这个命令,你就会立即得到一把新的剑:

/scoreboard players tag @p remove gotsword. 

想要了解更多有关计分板的信息,你可以查看它的wiki页面

(https://minecraft.gamepedia.com/Scoreboard)。我还会在以后的博客文章中更详细地介绍它,今天就说到这了。

  由于这是我发布的第一篇文章,我本人也需要先适应一下。想了解更多关于入门““我的世界”脚本”的一些窍门,我会在以后的博客中再具体介绍的。

 

  感谢你的浏览,希望本篇文章对你有所帮助。

创意跑酷 蜘蛛王国 荒野求生 趣味解说
村庄种子 神奇宝贝 电脑版 攻略秘籍
联机教程 MOD安装 OP指令 死亡不掉落

热门游戏

我的世界
我的世界
t21_2-t21_1:1.0
模拟 1.7GB
横屏版本重磅上线
t21_4-t21_3:0.0
电脑版 加速器
极速下载 畅快体验
加速器下载 安卓版下载

玩家评论

(72277条)
加入九游群聊,开黑不愁,礼包全有
下载九游APP
点击下载按钮,或用手机二维码扫描可直接下载对应安装包!
立即下载九游APP

全部评论

  • 咖啡不伴糖 来自于 九游APP 2024-08-13 10:48

    游戏很好,自由度很高,和朋友一起欢乐很多,因为模组和地图的原因基本也不会玩腻,我的游戏时间低是因为我之前基本都在电脑上玩,最近换了手机才在手机上完,加上我有点晕这个游戏不知道为什么,所以基本都是朋友叫才去玩,总之很好就对了

  • 看那什么 来自于 九游APP 2024-07-30 13:55

    首先这个游戏我玩的很早,他主要是一个沙盒类的,自由类的游戏。而且我对这个游戏的感受也非常好。它里面的模组和光影都很好。我最喜欢的就是它里面的学生守卫和家具模组,有时候我不开心的时候就会玩一会儿我的世界。总体来说这个游戏很好。

  • 暮土一米八大帅哥 来自于 九游APP 2024-10-18 21:54

    说实话,越来越不如隔壁的迷你了哈,人家迷你听玩家的意见,会修bug,玩家想要什么会出什么,优化游戏,出皮肤,还便宜。但是网易你更新点乱七八糟毫无用处的东西,卡的要死,华为苹果打开游戏瞬间卡成OPPO A5,意义不明哈

  • 妖精大半神3 来自于 九游APP 2024-11-24 12:20

    那些喷网易的都是什么心理?自己手机配置问题还怪网易,基岩版优化好呵呵,这种人纯属跟风跟s了,自己在网易加个顶级光影,只有几帧,说:“哎呀,我是在讽刺网易的优化。"在基岩版什么模组都没加,说:“基岩版优化真好。”这种人我都懒得喷。还有皮肤那个问题,有人说网易天天出皮肤,对自己的游戏不管不顾,我想说,你钱包里少一分钱了吗?你你就在这喷。网易他不需要赚钱吗?而且你不喜欢,你可以不买,人家强迫你买了吗?我不明白为什么网易高价买回来我的世界,却因为一些小问题,就要被你们喷。你可以去官方账号上反馈问题呀,真的很不理解。

  • 北辰宜赵云3 来自于 九游APP 2024-11-23 12:49

    冈易快点重开吧,搞的一堆什么东西,不好好改点有用的,天天研究一堆烂皮肤,跟隔壁蛋仔烂一个s样,真的懒得喷了

  • 峻哥ACE 来自于 九游APP 2024-11-23 18:52

    调开发者收益,几个大型工作室,包括创意,全都走了,全都离开了,网易你想干什么?说白了钻石售价越多,开发者收益的钱越少,是吗?

  • 流星雨还寒冰19 来自于 九游APP 2024-11-24 18:50

    但凡能支持三指pvp高低给你拉到九分 还有这更新设定太拉跨了,要重新安装,早知道不用渠道服下载了,游戏内的更新渠道是浏览器,也就是官服,可是我是用渠道服下载的啊,新下载的官服要用我自己手机的账号,这个东西都不能兼容,果是九游的问题赶快改进,如果是游戏的问题同理

  • 豌豆w030b7 来自于 九游APP 2024-12-08 17:09

    我们热爱着这个游戏,基本的人权都不给了?玩家呼吁你是挑三拣四的,有人反映问题你是五迷三道充耳不闻的,为什么呢?那这次整出来的那点事还不够让你清醒吗?一如既往还不放过我们吗?真不知道你们为了这个游戏到底是出了什么XO的问题啊,土豆服务器不会爱上劣质皮肤?玩这套? 那 我 们 不 会 再 纵 容 你 了 我在这给你们摆上所有的问题 1圈钱圈疯魔了 已经不顾玩家了 2创作者收益事件那点就看出来已经完全不把玩家当一回事了 3浪费情怀,顶级IP整成sXXt的行为冈易也不是一次两次了 4一直在呼吁的服务器优化 呵呵呵呵呵我看你们是不要想了

  • 梧桐左地精2 来自于 九游APP 2024-11-08 15:56

    纯纯乐子游戏,以前还行,现在皮肤满天飞,优化个蛋,画质比以前还糊,跟个马赛克一样,我建议冈易直接重开吧

  • 掛紅濹 来自于 九游APP 2024-12-07 09:53

    ?疑似圈錢你要麼遊戲做好點 要麼畫質做好一點 要麼遊戲玩法做好點 要麼你就別圈錢 別優化的跟9+1一樣哈

t26_2-t26_1:15.0

其他玩家还在玩

  • 相关阅读

  • 最新文章

我的世界

我的世界
类型:模拟
安卓:公测
订阅
夏日炎炎,1.19&1.20双版本惊喜更新,带来全新的冒险体验!大型多 [详情]

夏日炎炎,1.19&1.20双版本惊喜更新,带来全新的冒险体验!大型多人玩法方块乐园欢乐来袭,趣味玩法、互动彩蛋,无限可能性等你探索!远古封印解除,幽匿再度崛起!化身暗域守望,体验监守者之力!深暗之域的威胁迫在眉睫,奏响冒险之歌,保卫樱花村庄!还有远道而来的哆啦A梦和他的伙伴,与你一同开启梦幻音乐会!这个暑假,快来方块世界,开启属于你的冒险之旅!

开发者:上海网之易吾世界网络科技有限公司

tgamedetail_ff_2-tgamedetail_ff_1:30.0

tgamedetail_ff_3-tgamedetail_ff_2:1.0

tgamedetail_ff_4-tgamedetail_ff_3:3.0

tgamedetail_ff_5-tgamedetail_ff_4:3.0

tgamedetail_ff_6-tgamedetail_ff_5:4.0

tgamedetail_ff_6-tgamedetail_ff_1:41.0

游戏专题

Android版
  • 11-29 10:00

    新资料片《天下》我的世界联动

t10_2-t10_1:3.0

t10_3-t10_2:2.0

t10_4-t10_3:14.0

t10_5-t10_4:4.0

t10_6-t10_5:2.0

t10_6-t10_1:25.0

t40_2-t40_1:3.0

相关专题

最新专题

预约游戏
扫描二维码下载九游app预约游戏
第一时间接受活动,礼包,开测下载提醒
扫码领取福利

下载九游APP,可获取更多礼包和攻略视频

九游云游戏
电脑也能玩手游 · 无需下载 · 不占空间 · 点击即玩
在线玩

t2627_2_2627_1:3.0

t1-t0:27.0

t2-t1:4.0

t3-t2:1.0

t4-t3:1.0

t5-t4:12.0

t6-t5:10.0

t7-t6:2.0

t8-t7:0.0

t9-t8:9.0

t10-t9:0.0

t11-t10:33.0

t12-t11:0.0

t13-t12:0.0

t14-t13:0.0

t15-t14:0.0

t16-t15:11.0

t17-t16:0.0

t18-t17:36.0

t19-t18:2.0

t20-t19:5.0

t21-t20:0.0

t22-t21:1.0

t23-t22:4.0

t24-t23:0.0

t25-t24:7.0

t26-t25:0.0

t27-t26:15.0

t28-t27:4.0

t29-t28:0.0

t30-t29:19.0

t31-t30:0.0

t32-t31:2.0

t33-t32:1.0

t34-t33:0.0

t35-t34:0.0

t36-t35:0.0

t37-t36:46.0

t38-t37:25.0

t39-t38:0.0

t40-t39:0.0

t41-t40:3.0

t42-t41:27.0

t43-t42:0.0

t44-t43:173.0

t45-t44:16.0

t46-t45:0.0

t47-t46:0.0

t48-t47:2.0

t49-t48:0.0

t50-t49:2.0

t51-t50:2.0

t52-t51:0.0

t52-t0:502.0