minecraft吧 关注:2,482,963贴子:30,874,654

Minecraft命令教程(从零开始)

取消只看楼主收藏回复


  真的是爱Minecraft的命令部分,带给了我编程的兴趣,这里非常感谢Notch大大和Mojang工作室。目前国外很多学校也把Minecraft作为兴趣课,只可惜国内好像没有。
  我的这个教程完全可以面向新手,因为真的是从零开始的。主要就是想要勾起基本上不玩的玩家的回忆、展现新版Minecraft的高端技术、为感兴趣的玩家(潜力玩家)指引一个全新的方向,现在的小学生真的被网易我的世界带的有点……emm,有点难以言表,不过我是真的不喜欢看到这样一个全方面发展的游戏在小学生的眼中只有pvp或者pve,所以写这个教程完全出于真心,前面很简单的内容会的可以跳过。


  由于我有以下几个特点:
   贴吧新人;
   学生党;
   渣机玩家;
因此,可能会:
   写的不好,或者经常吞楼;
   经常性断更;
所以,希望大家稍微宽容一点,不要喷的太凶啊!


回复
1楼2019-08-23 13:05
    最近快要开学了,我才想起发发贴。虽然我说经常断更,但是这几天我是会天天更的。


    回复
    2楼2019-08-23 13:11
      以下是废话内容:
        如果说要造一张Minecraft的地图,我觉得学习的有个方面的内容:
         策划(包括主题等在内);
         建筑;
         命令;
         一点点红石的内容(真的只需要一点点,就是会布置红石线,会使用中继器延时就可以了);
        为什么不强调红石内容(相信很多大佬又要打我了),因为红石能做到的,命令都可以做到,但是命令能做到的,红石不一定都能做到。并且红石装置体积过于庞大,命令装置的体积明显要小一些,更便于隐藏在地图中。
        虽然wiki上也有全部的命令内容,但是没有怎么接触过的人会觉得云里雾里的,以下的命令教学会以理论和实践以及我平常遇到的一些问题来集中起来讲,虽然废话可能多一些,但是我以我玩了“七年”Minecraft的人格担保,绝对听得懂!
      下面,为我最爱的Minecraft放上几张最近很火的图(作为镇楼图)










      收起回复
      3楼2019-08-23 13:29


        收起回复
        4楼2019-08-23 13:49

          一、什么是命令?
          命令是通过输入特定文本字符串而激活的高级功能。
          (说白了就是用一种方法让你在游戏里当爸爸)



          二、如何输入命令?
          输入命令的方法有两种:
           1、聊天栏命令
            这种命令输入方式可以随时走到哪里随时打开输入,输入非常方便,但是输入长度有限制,无法制作“原版命令方块模组”;
            打开聊天栏输入命令可以*在英文输入法下*输入“T”,或者输入“/”。我更建议使用“/”打开,因为*聊天栏中的命令必须使用“/”才能起作用*!



           2、命令方块命令
            这种命令输入方式可以输入无限长度的命令,但是需要生成一个命令方块;
            生成命令方块的方式可以使用(在聊天栏中输入后回车执行):
             /give @p minecraft:command_block 1 0 (手持方块)
             /setblock ~1 ~ ~ minecraft:command_block (已放置方块)
            在命令方块中输入的指令“/”可要可不要。
            (以上两个命令后面会讲)


          三、便捷输入
           1、当输入几个字母后使用“Tab”键(就是程序员常用的那个缩进键),可以补全当前输入的内容;


           2、使用“↑”“↓”键选择之前输入过的命令。



          *注意:
           由于命令输入需要全英文,建议游戏时使用*美式键盘*,这样输入法就不会有太多的干扰。



          收起回复
          6楼2019-08-23 15:25

            一、玩家
             玩家包含于队伍,可以相对于队伍看作单个整体。这种概念在单机游戏中很难体现,但是在局域网游戏或者是服务器游戏中就很容易区分。建立这种观念非常重要,理解此概念对于下一部分的内容讲解很有帮助。
             Minecraft中的玩家可以:
              加入队伍;
              离开队伍。


            二、队伍
             队伍包含有玩家,可以相对于玩家看作一个整体。这个功能在Minecraft服务器中被广泛应用。
             Minecraft中的队伍可以:
              添加队员;
              删除队员;
              消除怪物敌对性;
              设置名称;
              设置颜色;
              看到隐身同队玩家;
              设置成员名称牌的可见性;
              设置队内伤害;
              消除玩家之间碰撞体积(1.9引入);
              显示玩家死亡信息。


            三、统计
             用于计算玩家完成特定目标的次数,分为“通用”、“方块”、“物品”和“生物”四栏。
              1、通用


               大量玩家行为信息都记录在这里。
              2、方块

               我们平时使用何种方块的用途及数量都记录在这里。
              3、物品


               我们平时使用何种工具的用途及数量都记录在这里。
              4、生物
               我们平时对生物都干过什么,或者被生物怎么样了(,邪魅一笑)都记录在这里

            这些信息看似没有用处,但这是你制作地图过程中脱离红石(如计时,比较等)的金钥匙!
            (是时候向落后的红石说拜拜,科技大门向你打开
            *注意:“统计”相对应的*英文id*在下方回复中给出下载链接!


            收起回复
            8楼2019-08-23 17:24
              感觉今天肝不出来了,只有明天再讲了,重头戏!


              回复
              17楼2019-08-23 23:19


                这可以说是Minecraft中的一大神器,学习它是为了给下一部分的“目标选择器”打下基础。如果这两者都学好了,那么你就可以向红石说拜拜了。
                它涉及到了方面的内容:



                计分板(scoreboard)
                通过命令操纵的复杂游戏机制(确实很复杂),可用多种形式追踪、设置并列出玩家及实体的分数。


                *注意:计分板并不是特指显示在游戏右侧显示板(如上图),而是后台的一种记录内容。右侧显示板*只是其中的一种表现形式*。


                一、执行对象类型:
                 1、目标(objectives):建立的计分板的主体部分,控制了计分板统计类型,可对“可编辑的”计分板进行相应的控制;
                 2、个体玩家(players):控制个体玩家达成目的,具有针对性;
                 3、团队(teams):控制整个团队的玩家共同达成目的,具有整体性。
                 *注意:游戏中的玩家既可以单个控制,也可以加入团队后控制团队,如下图:



                二、准则:
                 决定了此计分板的行为,包括能否修改、何时修改或者增加分数。
                 准则分为了“标准准则”和“复合准则”两大板块,“标准准则”较为基础,而“复合准则”主要是“统计”和“团队”方面的,两者之中会有重复内容。“标准准则”相较于“复合准则”更加简短便捷,但是针对性方面会差一些,因此在两者重复的方面,选择“基础准则”好一些,但是在针对性较强的方面,选择“复合准则”才能达成目的。使用方法后面会讲。
                 1、重复内容(“——”以前为“标准准则”,以后为“复合准则”):
                  死亡次数:“deathCount”——“stat.deaths”;
                  杀人数量:“playerKillCount”——“stat.playerKills”;
                  杀怪数量:“totalKillCount”——“stat.mobKills”。
                 2、“复合准则的针对性体现在哪里?
                  因为“复合准则”中含有“统计”内容,因此可以具体到如“合成了钻石斧的次数”或是“杀死苦力怕的次数”等,这样细致的统计可以使得检测玩家行为变得更加方便。
                 3、有关“dummy”和“trigger”的疑点:
                  这两个准则本质上的目的是相同的,就是在除他们以外的准则无法进行正常判断时使用,如计算玩家答对题目得分等。相对于“dummy”来说,“trigger”的功能更加强大,具体如下:
                  “dummy”:不允许作弊情况下只能被管理员使用,只能通过“计分板”命令修改分数;
                  “trigger”:不允许作弊情况下任何人都可以使用,除了通过“计分板”命令修改分数以外,还可以通过“/trigger”命令来进行修改,其最主要的功能是作为一次性触发器(后面会讲)。
                *注意:“计分板准则”对应的*英文id*在下方回复中给出下载链接!


                收起回复
                22楼2019-08-24 14:29

                  补充讲一下“/trigger”这个命令。
                  它的功能非常简单,就是修改一个*准则为“trigger”*的记分板目标,如果准则不是“trigger”就不能使用。


                  一、命令
                   ●/trigger objective的*内部名称* add|set 具体数值

                    add:输入的数值会累加到原来的数值上。(比如原来玩家的数值是10,使用命令“/trigger objective的*内部名称* add 20”后玩家的数值就变成了30)
                    set:原来的数值上将被设置为输入的数值。(比如原来玩家的数值是10,使用命令“/trigger objective的*内部名称* set 20”后玩家的数值就变成了20)
                   (*注意:具体数值可以不填,默认为1)


                  二、激活trigger
                   在我们直接使用trigger时,可能会出现提示“触发器的名称‘objective的*内部名称*’无效”或者“触发型的‘objective的*内部名称*’没有启用”,那是因为我们还没有激活trigger,也没有指定生物,激活的指令是:
                   ●/scoreboard players enable 生物名称 objective的*内部名称*
                   (*注意:激活了以后,我们就可以使用“/trigger”命令进行修改,但是只能修改一次,修改第二次需要再次激活。)


                  三、修改trigger准则类型objective中生物数值的方法
                   1、●/scoreboard players add|remove|set|reset 生物名称 objective的*内部名称* 具体数值
                    这样可以直接修改玩家数值,不需要激活,需要管理员权限;
                   2、●/scoreboard players enable 生物名称 objective的*内部名称*
                     ●/trigger objective的*内部名称* add|set 具体数值
                    这样属于间接使用“/trigger”命令修改玩家数值,需要激活,激活需要管理员权限,“/trigger”命令不需要管理员权限。


                  提示:“/trigger”可以和“/tellraw”一起食用,效果更佳!(后面会讲,我怎么感觉我给自己挖了好多坑


                  收起回复
                  25楼2019-08-25 21:48
                    哈哈,今天我被可亲可敬的老师召唤到学校去了,
                    所以emmm


                    哈哈,我怎么可能会咕呢



                    今天时间非常少,就给大家带来一个我自我思考,自我摸索出来的实例吧


                    见帖子:https://tieba.baidu.com/p/6236637059?pid=127262625808&cid=0&red_tag=0750168446#127262625808


                    回复
                    28楼2019-08-25 22:26


                      “tag”顾名思义就是给一个东西打上一个标签,让它能够与众不同。


                      一、命令
                       ●/scoreboard players tag 目标选择器 add 自定义tag名称 数据标签(NBT)
                       ●/scoreboard players tag 目标选择器 list|remove 自定义tag名称
                       *注意:这里的数据标签并不能更改原生物的数据标签,只能进行检测,如
                       输入“/scoreboard players tag @e[type=pig] add 1 {NoAI:1b}”命令,游戏首先会检测是否存在“猪”这种生物。如果不存在,就会显示“选择器@e[type=pig]什么都没有找到”;如果存在,就会检测所有的“猪”中哪些是没有AI的(数据标签中存在“NoAI:1b”)。有该数据标签的,就会被打上名称为“1”的tag;如果没有,就会显示“数据标签与‘该生物的UUID’不匹配”。


                      二、作用
                       可以在进行目标选择的时候使用“[tag=自定义tag名称]”(下一部分会讲到)。


                      三、如下命令中的“tag”与计分板中的“tag”是否是同一个东西?
                       ●/summon minecraft:armor_stand ~ ~1 ~ {HandItems:[{id:"minecraft:dragon_egg",tag:{display:{Name:"龙之蛋"}}}],ShowArms:1b}
                       我没有找到非常官方的答案,但是我个人理解并不完全相同。
                       计分板中的“tag”是用于检测拥有此标签的生物,可以理解为将此生物所以数据(包括生物类型和NBT)看成一个整体。
                       而上述命令中的“tag”本身就属于该生物NBT的一部分,是由于在生物携带有方块(比如僵尸手持武器等)且该方块也含有NBT所造成的。由于此方块的NBT属于该生物的NBT,才不得不打上一个tag将此方块的NBT作为一个整体。
                       这里画张图来解释一下:


                       这是我的个人理解,如果不对,还请大佬赶紧纠正,不要带给大家错误的信息。
                      下一部分终于要到“目标选择器”了,感觉好激动


                      收起回复
                      33楼2019-08-26 11:04
                        将一个非常非常简单的东西,基本上是大家第一个接触的命令:


                        一、类型
                         1、生存模式:survival,不必多说;
                         2、极限模式:实质上属于生存模式,只是“level.dat”中的“hardcore”的布尔值设置为了“true”,只能外部修改;
                         3、创造模式:creative,不必多说;
                         4、冒险模式:实质上属于生存模式,但是无法挖掘与放置方块,只能攻击生物、操纵红石机关和合成;
                         5、旁观者模式:spectator,1.8新加入的游戏模式,只能飞行(可以穿墙,进入虚空仍然会受到伤害),可以附着在基本上所有实体上(包括画、物品展示框、盔甲架、掉落中的方块,除了扔出去的物品、钓竿的钩子、药水效果云),可以打开容器(工作台除外)的界面(但是不能进行物品交换),还挺好玩的,看图:

                        苦力怕视角

                        蜘蛛(或者洞穴蜘蛛)视角

                        黑长直视角

                        画(或者物品展示框、盔甲架和其它生物)视角

                        可以打开容器


                        可以打开箱子、末影箱、潜影箱(没有开箱动画,上图可以清除看到箱子没有打开)
                         *注意:如果传送到没有刷新的区块是无法打开奖励品箱的(就是地牢里面的奖励箱)。


                        二、命令
                         ●/gamemode 0|1|2|3
                         ●/gamemode survival|creative|adventure|spectator
                         (因为1.13+版本都不支持数字ID,建议大家早些养成输入英文的习惯)


                        三、冒险模式什么都不能做,是不是很没用啊?
                         其实不然,冒险模式是制作PVP地图或者RPG地图的最好选择,使用相关命令可以使物品能够破坏相关方块或者放置相关方块(后面会讲)。
                         


                        收起回复
                        35楼2019-08-26 19:32
                          还是来了!


                          这是个啥子东西嘞?
                          啷个说吧,学会了它你就可以明白哲学三问:我是谁?我在哪儿?我在干什么?
                          所以说,这个真的是非常非常非常(重要的东西说三遍)重要的东西!!!
                          那就开始吧:


                          一、目标选择器
                           1、玩家名称:可直接在“目标选择器”的位置输入玩家名称(可按“Tab”键补全)来指定玩家;
                           2、@p:选择最近的玩家。在服务器控制台中输入时,默认基准点为(0, 0, 0)。如果有多个最近的玩家,他们与基准点距离完全相同,那么会选择其中最晚进入服务器的玩家;
                           3、@a:选择所有玩家,包括已死亡玩家;
                           4、@r:选择随机玩家;
                           5、@e:选择所有实体;
                           6、@s:只选择唯一一个实体:该命令的执行者,包括已死亡玩家。
                           *注意:若命令执行者不是一个实体,比如是命令方块或服务器控制台执行命令,则此选择器不会选中任何东西。
                          *注意:只有@a和@s可以选中死亡的玩家!
                          二、目标选择参数
                          目标选择器可以使用目标选择参数来进一步限定选择的实体。
                          格式为:目标选择器 [目标选择参数]
                          具体的目标选择参数英文ID会在下方的回复区给出。
                          *注意:1.12.2的“目标选择器参数”与1.13+的内容有明显区别,请严格参照此对照表,*不要按照Wiki上的输入*!


                          三、@p和@s有什么区别?
                           首先,执行对象范围不同。@p指定的是距离命令执行点最近的*玩家*,@s指的是实体:
                           其次,@s基本相当于@p[c=1,r=1],@p可以在命令方块中使用,但是@s不能;并且@s想要起效果必须要实体本身执行命令,意思就是说普通情况下*只有玩家可以对自己使用*,其它生物都不行(因为他们无法自己输入命令)。
                           那是不是@s就很没用呢?当然不是。命令中“@s”和“execute”更配哟(后面会讲)!当使用“execute”命令后就可以实现“当实体踩上某一种方块后被隐身”的效果。


                          四、我“目标选择器参数”的旋转部分没有搞懂,能不能再讲详细一点
                           当然可以!
                           1、“rx”代表所需范围的上限值,“rxm”代表所需范围的下限值。当两个限定条件同时出现时,选取中间部分(下限一定要小于等于上限,且输入时“rxm”应放在“rx”之前(比如“[rx=90,rxm=80]”这样的写法就是错误的)


                            当只出现“rx”时,默认0为下限值,按照0~90、-90~0的顺序,选取0~“rx“之间的部分,如图:

                            当只出现”rym“时,默认0为上限值,按照0~90、-90~0的顺序,选取“rx“~0之间的部分,如图:

                           2、“ry”代表所需范围的上限值,“rym”代表所需范围的下限值。当两个限定条件同时出现时,选取中间部分(下限一定要小于等于上限,且输入时“rym”应放在“ry”之前(比如“[ry=90,rym=80]”这样的写法就是错误的),如图:


                            当只出现“ry”时,默认0为下限值,按照0~180、-180~0的顺序,选取0~“rx“之间的部分,如图:

                            当只出现”rym“时,默认0为上限值,按照0~180、-180~0的顺序,选取“rx“~0之间的部分,如图:

                           这是我自己总结的规律,可能有错误(我也不知道bugjump怎么想的,感觉怪怪的),希望大家积极指出不足。
                          这一部分内容就是这些了,学好关键的这一部分对后面的学习非常有帮助!!!


                          收起回复
                          36楼2019-08-26 23:12
                            明天楼主要去“重庆智博会”
                            所以这边的知识点不会再更新了,补充贴会补充两个与“目标选择器参数”有关的两个小装置的制作方法,希望届时大家关注一些,谢谢了🙏


                            回复
                            37楼2019-08-26 23:16


                              真的是非常非常地抱歉,我在讲“目标选择器”这一块的内容时,发的文件中有一个错误,可能导致大家在输入命令的时候出错。我真的非常非常抱歉!!!


                              一、关于坐标
                               在使用“目标选择器参数”中的坐标时,*不可以单独使用*!!!
                               坐标*只是指定了命令执行点*的坐标,没有范围!!!如果单独使用,*基本相当于无效*,就只会检测之前的“目标选择器”(比如我输入“@a[x=0,y=0,z=0]”,那么不管我在地图的哪里都可以检测到) ;
                               坐标的x、y、z的值缺一不可,如果缺少一项也*基本相当于无效*!!!


                              二、关于范围
                               如果想要真正使用坐标检测,必须规定范围(即使范围为一个点,比如我需要玩家在(1,2,3)处被检测到,就需要输入“@a[x=1,y=2,z=3,dx=0,dy=0,dz=0]”或者“@a[x=1,y=2,z=3,r=0]”)
                               同样dx、dy、dz的值缺一不可,如果缺少一项也*基本相当于无效*!!!


                              三、x、y、z值的位置使用“~”来代替可以吗?
                               很抱歉,答案是*不可以*!!!


                              *注意:不要听那些小白或是QQ群里面的手机玩家乱说什么可以单独使用,都是*错的*!!!一定以今天订正的内容为准,因为这是我亲自在1.12.2中测试过的。
                              对于此部分订正内容,今天下午会在补充帖更一个实例。另外文档内容也经过更新了,下载链接回复中呈现。


                              回复
                              40楼2019-08-28 01:13