minecraft吧 关注:2,483,072贴子:30,876,519

回复:Minecraft命令教程(从零开始)

只看楼主收藏回复

起来水贴了,天天水贴,你也可以和我一样的等级


回复
来自Android客户端19楼2019-08-24 08:42
    加油呀


    回复
    来自iPhone客户端20楼2019-08-24 13:20
      5年玩家至今不会命令方块


      回复
      来自iPhone客户端21楼2019-08-24 13:21


        这可以说是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


            收起回复
            26楼2019-08-25 21:50
              讲得我一脸懵逼,什么也听不懂


              回复
              来自手机贴吧27楼2019-08-25 22:02
                哈哈,今天我被可亲可敬的老师召唤到学校去了,
                所以emmm


                哈哈,我怎么可能会咕呢



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


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


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


                  回复
                  来自Android客户端31楼2019-08-26 06:57
                    火钳刘明


                    回复
                    来自Android客户端32楼2019-08-26 08:30


                      “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
                        收藏了


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


                          一、类型
                           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