Minecraft/命令
- 欢迎正在阅读这个条目的您协助编辑本条目,请尽量用萌百化的语言编辑且以中文Minecraft Wiki作为主要参考资料来源!
新闻
- 2023年4月18日
- Minecraft Legends发布。
- 2022年11月29日
- Minecraft: Castle Redstone发布。
- 2022年11月1日
- Minecraft: Mob Squad: Don't Fear the Creeper发布。
- 2022年10月15日
- Minecraft Live 2022举行。
- 2022年6月13日
- Mojang Studios宣布了一款Minecraft主题的动作策略游戏Minecraft Legends。
最近更新
- 2023年6月7日
- Java版1.20和基岩版1.20.0发布。
- 2023年5月17日
- 基岩版1.19.83发布。
- 2023年4月27-28日
- 基岩版1.19.81发布。
- 2023年4月26日
- 基岩版1.19.80发布。
- 2023年3月29-30日
- 基岩版1.19.73发布。
另请编辑者注意:请不要在人物历程等相关内容中悬挂此模板。具体使用方法详见模板说明文档。
命令(Command)是通过输入特定文本字符串而激活的高级滥权功能。
其可以用于改变世界参数,达成修改天气、时间、游戏模式、游戏规则等各种在未开启作弊时无法达成的事情。
它和红石电路一样,本身也是Minecraft有别于其它沙盒游戏中最优秀与突出的元素之一。但跟红石电路不同的是,它只有打开作弊选项才可任意使用,红石电路则在任何模式都可以运行。
使用命令的方法
第一种
直接输入法:在打开作弊模式的前提下按“T”或“/”调出对话栏以输入命令,同时会出现提示大不了你按照提示一个一个试在命令未输完整的情况下按TAB键可以循环补全命令,也可以补全参数,和输入准星指向方块的坐标,在Java版输入实体参数时,如果准星指向某个实体,则可以直接输入其UUID。
在多人伺服器的软件后台也有可以输入命令的终端。在这里输入命令时不能输入“/”。
第二种
命令方块法:在打开作弊模式的前提下输入/give @p minecraft:command_block
来获取一个命令方块(值得注意的是命令方块只有在创造模式且拥有管理员权限才能输入命令)。对着已放置的命令方块按下使用键以打开命令方块GUI然后可以在命令输入区输入命令(在其中输入命令时可以省略斜杠“/”)。然后保存你的更改,在命令方块的模式为红石控制时用红石激活等方式激活它,命令执行的反馈会在gui内的“上一个执行”处显示,执行成功的情况下,会使指,向该方块(箭头背向该方块)的模式为的“条件约束”的“保持开启”得循环或链命令方块被激活,输入端指向该方块的比较器按执行情况输出相应的红石信号(如在有13个玩家的多人游戏中用命令方块执行指令list,比较器输出的红石信号为13)。在普通游戏中需要开启“enablecommandblock”开启。在伺服器中,还需要配修改配置文件将命令方块启用[仅Java版]或将游戏规则“enablecommandblock”打开[仅基岩版]
第三
文件脚本法[仅Java版、基岩版]:Minecraft游戏原生提供了一种被称为函数的命令脚本功能,可以以文件形式批量储存和自动化运行命令。这一功能的出现使得MC又多了一个编程游戏的名号。函数需要以扩展名为.mcfunction
的文本文件储存。文件中的每一行文本都是一条命令。空行或者以“#”符号开头的注释不会被解析。
在通过数据包[仅Java版]或行为包[仅基岩版]的形式将函数文件导入游戏后,你可以通过/function 函数名
命令来调用函数
第四种
远程执行法:与直接输入法类似,不同的是这是通过rcon或websocket[仅基岩版、教育版]来实现的。实现这种办法需要你有一个rcon客户端或websocket服务端,不同点:rcon只能在服务端上启用,且需要密码,因此如果服务端开启了rcon且密码泄露或密码十分简单,将会十分危险,websocket只能在基岩版上使用,并且连接需要开游戏客户端主动连接到websocket伺服器,相对安全。rcon执行指令时执行者显示的是[RCON],而websocket显示为[外部]。通过这两种方式可以在纯原版的情况下做到通过记分板将外部标准时间同步到游戏中同步群内消息,显示新闻等纯原版不可能做到的事情。这些程序一般需要自己编写真就编程游戏了。
绝对坐标、相对坐标和局部坐标
Minecraft中实行三种坐标参考系。世界坐标被视为绝对坐标,在游戏中默认按下F3键调出调试界面(Debug screen),在左上角即可查看绝对坐标,顺序为X、Y、Z。例如56 37 -28
表示你在这个世界的绝对坐标。(腿部位置)
相对坐标使用波浪号(~)表示。其以绝对坐标为偏移量。表示方法为在~后面跟一个数字,此数字称为偏移量。例如~7 ~ ~-5
表示在当前绝对坐标处,x轴方向上增加7,z轴方向上减少5,y轴方向上不变,~为~0的省略形式。
局部坐标使用插入符(^)表示。其以命令执行者头部为基准,并在包括头部的倾斜角度下分别指向左、上、前方为坐标轴的正方向。表现方法同相对坐标。
一般来说,绝对坐标可以和相对坐标混用,例如37 ~10 -89
。但局部坐标只能独立使用,不可以和另外两种坐标混用。
目标选择器
目标选择器在命令中用于选择目标实体。
目标选择器变量
共有7种,其中有2种为教育版特有。
@p
:
选择最近玩家,基准点为~ ~ ~
。
@r
:
选择随机玩家。在基岩版中,可以使用type
参数来选择非玩家实体。但在Java版中,type
参数不适用于@r
;要选择随机的实体,请使用@e[sort=random,limit=1]
代替。
@a
:
选择所有玩家,包括处于死亡状态的。
@e
:
选择所有实体,包括玩家。
@s
:
选择此命令的执行者。若执行命令的是命令方块,则不会选中任何实体。
@c
[仅教育版]:
选择自己的智能体。
@v
[仅教育版]:
选择所有智能体。
目标选择器参数
格式为目标选择器变量后紧跟着一对方括号,方括号中间输入目标选择器参数,后接等于号,等于号后面接参数,可以在等于号后加感叹号来表示不等于。
例子:@e[type=!player]
以下为目标选择器参数汇总:
有关坐标
x
、y
、z
:坐标。可以加在@p后面以确定新的基准点。
dx
、dy
、dz
:体积尺寸。用以选择范围。
distance
[仅Java版];r
、rm
[仅基岩版]:距离。用以选择范围。
有关计分板参数
scores
:该实体在某一记分板的分数列表,以大括号包裹,列表内每项满足<记分项>=<最小值>[..[<最大值>]]
的格式,表示分数是否等于某值,或处于某左开右闭/左闭右开/闭区间内(即包括最大/最小值)。等于号后可加感叹号!
表示以整数集为全集的对应集合的补集。例如@e[scores={mark=5,death=1..,xp=..10,kills=!3..6}]
会选择同时满足mark
分数等于5、death
分数大于等于1、xp
分数小于等于10、kills
分数小于3或大于6的所有实体。
team
[仅Java版]:队伍。
其他
limit
[仅Java版]:数量。limit=5
表示5个。
sort
[仅Java版]:决定limit
的排序方式,分为nearest
按距离升序,furthest
按距离降序,arbitrary
按生成时间由早到晚排序,random
随机排序。
c
[仅基岩版]:上面两条的结合版,c=1
表示最近一个,c=-3
表示最远三个。
level
[仅Java版];l
、lm
:经验等级。
gamemode
[仅Java版];m
[仅基岩版]:游戏模式。
type
:实体类型。
nbt
[仅Java版]:实体数据标签。
name
:实体名称。
advancement
[仅Java版]:进度。
x_rotation
、y_rotation
[仅Java版];rx
、rxm
、ry
、rym
[仅基岩版]:水平、垂直旋转角度。
数据标签
数据标签是一种树状数据结构,可以被用花括号包含的键值对描述。数据标签用于Java版的命令中,用于指定玩家、实体和一些方块的较为复杂的数据。
数据标签由零个或多个用逗号分隔的键值对组成,且本身用大括号括住。每个键值对包含键名和键值,用冒号分开。但是,有些键值可以继续包含键值对,因此数据标签可以用来描述层次结构。
例: {name1:123,name2:"sometext",name3:{subname1:456,subname2:789}}
这些数据标签所采用的数据结构与Minecraft世界存档相同。这种数据结构在其他条目中有详细描述。命令使用的数据标签中键名有严格的限定(区分大小写):
数据结构规范链接
对象 | 例子 |
---|---|
方块 | 箱子、熔炉、命令方块、刷怪蛋、告示牌等 |
物品 | 物品栏中的物品 (包括附魔、自定义名称等) |
物品实体 | 在地上的物品 |
生物 | 苦力怕、牛、村民等 |
弹射物 | 弓箭、火球、喷溅药水等 |
交通工具 | 船、矿车等 |
动态方块 | 引燃的TNT、正在掉落的沙子、沙砾、铁砧 |
其他实体 | 烟花火箭、画和物品展示框 |
指定键名的键值也必须符合数据类型要求。
数据标签键值数据类型 这部分内容超纲了!如果你是萌新的话,根本不需要了解辣么多!
类型 | 说明 |
---|---|
字节(byte) | 介于-128和127之间(包含)的整数。 |
短整型(short) | 介于-32768和32767之间(包含)的整数。 |
整型(int) | 介于-2147483648和2147483647之间(包含)的整数。 |
长整型(long) | 介于-9,223,372,036,854,775,808和9,223,372,036,854,775,807之间(包含)的整数。 |
单精度浮点型(float) 双精度浮点型(double) |
Float: 32位单精度浮点数,介于-3.4E+38和+3.4E+38之间。 例: Double: 64位双精度浮点数,介于-1.7E+308和+1.7E+308之间。 例: |
字符串(string) | 一串字符,如果内容包含不在 a-z A-Z 0-9 _ .(不包括空格)的字符则需要在整个字符串前后加上双引号。\可以将后面的字符转义(支持像json那样\u00a7这样的转义)。转义方式为,在"及\号前加上\。
例: |
列表(list) | 值的序列,用逗号分隔并用方括号包含。所有值的数据类型必须统一——数据类型标准由列表的第一个元素决定。
例: |
复合标签(compound) | 键值对的序列,用逗号分隔并用花括号包含。
例: 复合标签里面可以包含任何标签。 |
字节数组(byte-array) | 介于-128和127(包含)之间的整数序列,用逗号分隔内容并用方括号包含,首个元素前方需要加入类型标识B;。
例: |
整型数组(int-array) | 介于-2,147,483,648和2,147,483,647(包含)之间的整数序列,用逗号分隔内容并用方括号包含,首个元素前方需要加入类型标识I;。
例: |
长整型数组(int-array) | 介于-9,223,372,036,854,775,808和9,223,372,036,854,775,807(包含)之间的整数序列,用逗号分隔内容并用方括号包含,首个元素前方需要加入类型标识L;。
例: |
布尔型(boolean) | 一种数据类型,只有“true”和“false”两种取值。由于程序通常使用 字节存储布尔值,布尔型只会在JSON格式中出现。在NBT中,true和false相当于1和0。
例: |
某些命令要求明确指明某些数值的数据类型,这可以通过在数值后附加限定字符(B、S、L、F、D)来实现。举例来说,3s
表示短整型,3.2f
表示单精度浮点,等等。(字符I不能限定整型。)限定字符不区分大小写。在不加限定字符,且Minecraft无法根据上下文来确定数据类型或需要比对数据标签时,会将数据类型假定为双精度浮点型(数值有小数部分时)、整型(数值没有小数点,且在整型取值范围内)或字符串(若前述情况均不符合)。被方括号包含的集合中,被逗号分隔的元素若全为整型,则会将数据类型假定为整型数组(如[I;1,2,3]
是一个整型数组,[L;1L,2L,3L]
是一个长整型数组);否则会假定为列表。但有以下特例:[]
是一个空列表,而[,]
是一个空整型数组。
如果用/testfor
、/testforblock
、/clear
等命令来查找数据标签,这些命令只会检查目标实体/方块/物品是否存在此标签。这意味着一个符合条件的实体/方块/物品可能同时还拥有其他标签。这对列表和数组同样成立:只要列表或数组中包含待查找的所有元素,就会成功匹配,既不考虑元素的排列顺序,也不考虑是否有多余的元素存在。
数据标签的数据结构是JSON的lenient形式。
比较常用的命令
/gamemode creative
、/gamemode survival
、/gamemode adventure
、/gamemode spectator(或/gamemode sp)
三者按照顺序分别是将游戏模式设为创造、生存、冒险或旁观者模式(此为1.13以上,1.13以下分别为/gamemode 1
、/gamemode 0
、/gamemode 2
、/gamemode 3
在1.8版本(不含1.8)以下是不存在旁观者模式的)。
/weather clear
或/weather rain
或/weather thunder
三者按照顺序分别是将游戏天气设为晴朗,下雨,雷雨。
/kill @a
和/kill @e
以及/kill
这三个命令的效果分别是杀死所有玩家,杀死/清除所有实体,自杀。
/locate <结构名称>
命令效果为获得离自己最近的指定建筑[1]的坐标。<结构名称>
处填写你想要找的指定建筑。例如村庄为village
,丛林神殿(或沙漠神殿、女巫小屋、雪屋)为temple
。基岩版对着提示一个一个试就行了,反正特殊建筑也没有几种(笑)
/tp @s <坐标>
为将自己传送到指定坐标处。搭配/locate
食用。locate的坐标是不带y坐标的,自己填一个就好。填大了:史蒂夫落地过猛;填小了:史蒂夫掉出了这个世界或卡在方块里窒息。建议填65左右。
命令列表及用法
以下列出Minecraft原版所带有的命令 (Minecraft Wiki正在向你招手)
单人游戏
说明:下面的表格中,"WS"指该指令只能在WebSocket伺服器的控制台中执行。
命令 | 功能 | Java版 | 基岩版 | 教育版 |
---|---|---|---|---|
/help(/?) | 提供命令使用帮助。 | 是 | 是 | 是 |
/ability | 赋予或剥夺玩家的能力。 | 已移除 | 否 | 是 |
/advancement | 给予或移除玩家的进度。 | 是 | 否 | 否 |
/agent | 创建一个智能体。 | 否 | WS | WS |
/bossbar | 添加/查询/设置/移除一个Boss栏或列出所有已创建的Boss栏。 | 是 | 否 | 否 |
/classroommode | 编辑受限制方块的能力。 | 否 | 否 | 是 |
/clear | 从玩家物品栏中删除指定物品,不带选择器默认清空所有格子。 | 是 | 是 | 是 |
/clone | 将特定区域的方块复制到另一处。 | 是 | 是 | 是 |
/closechat | 关闭本地玩家打开状态下的聊天窗口。 | 否 | WS | WS |
/closewebsocket | 断开已连接的WebSocket伺服器。 | 否 | WS | WS |
/connect | /wsserver的替代命令,连接至WebSocket伺服器。 | 否 | 是 | 是 |
/data | 允许玩家获取、合并或是移除实体或方块的数据标签。 | 是 | 否 | 否 |
/datapack | 控制加载的数据包。 | 是 | 否 | 否 |
/debug | 开始或结束调试会话。 | 是 | 否 | 否 |
/defaultgamemode | 更改默认的游戏模式。 | 是 | 否 | 否 |
/difficulty | 设置难度等级。 | 是 | 是 | 是 |
/effect | 添加或移除状态效果。 | 是 | 是 | 是 |
/enableencryption | 为当前WebSocket连接启用加密。 | 否 | WS | WS |
/enchant | 附魔玩家手持的物品,受限于铁砧机制。 | 是 | 是 | 是 |
/execute | 执行另一命令。 | 是 | 是 | 是 |
/experience | 给予玩家经验。 | 是 | 是 | 是 |
/fill | 将某个区域填满特定方块。 | 是 | 是 | 是 |
/forceload | 强制不断加载区块。 | 是 | 否 | 否 |
/function | 运行一个函数。 | 是 | 是 | 否 |
/gamemode | 更改玩家的游戏模式。 | 是 | 是 | 是 |
/gamerule | 更改或查询游戏规则的值。 | 是 | 是 | 是 |
/give | 给予玩家物品。 | 是 | 是 | 是 |
/immutableworld | 设置世界的不可变状态。 | 否 | 是 | 否 |
/item | 替换,复制,或修改实体或容器内的物品。 | 是 | 否 | 否 |
/kill | 杀死实体(玩家、生物、掉落物等)。 | 是 | 是 | 是 |
/list | 列出伺服器中的玩家。 | 是 | 是 | 是 |
/listd | 以JSON形式列出伺服器中的玩家。 | 否 | 是 | 是 |
/locate | 显示最近给定结构的坐标。 | 是 | 是 | 是 |
/locatebiome | 显示最近给定生物群系的坐标。 | 是 | 是 | 是 |
/loot | 从一个物品栏中掉落物品到地面上。 | 是 | 否 | 否 |
/me | 显示一条关于自己的信息。 | 是 | 是 | 是 |
/mixer | Mixer交互性控制。 | 否 | 是 | 否 |
/mobevent | 控制或查询允许运行的生物事件。 | 否 | 是 | 否 |
/msg | /tell的替代命令,向另一玩家发送私信。 | 是 | 是 | 是 |
/particle | 创建粒子效果。 | 是 | 是 | 否 |
/playsound | 播放音效。 | 是 | 是 | 是 |
/querytarget | 检测某实体所在坐标、y旋转角度、所在维度及专用ID。 | 否 | WS | WS |
/recipe | 给予或剥夺合成配方。 | 是 | 否 | 否 |
/reload | 从硬盘中重新加载战利品表、进度[仅Java版]和函数[仅基岩版]。 | 是 | 是 | 否 |
/remove | 移除智能体。 | 否 | 否 | 是 |
/replaceitem | 替换物品栏中的物品。 | 已移除 | 是 | 是 |
/resupply | 村民重新补给。 | 否 | 已移除 | 否 |
/say | 向多个玩家发送消息。 | 是 | 是 | 是 |
/schedule | 安排函数或标签在特定的游戏刻后运行。 | 否 | 是 | 否 |
/scoreboard | 管理记分板目标、玩家、队伍[仅Java版]与标签。 | 是 | 是 | 否 |
/seed | 查看世界种子。 | 是 | 否 | 否 |
/setblock | 设置某一位置的方块。 | 是 | 是 | 是 |
/setworldspawn | 设置世界出生点。 | 是 | 是 | 是 |
/spawnpoint | 设置玩家的重生点。 | 是 | 是 | 是 |
/spreadplayers | 将实体传送至随机位置。 | 是 | 是 | 是 |
/stopsound | 停止当前声音。 | 是 | 是 | 是 |
/summon | 生成实体。 | 是 | 是 | 是 |
/tag | 修改玩家或实体的标签。 | 是 | 是 | 否 |
/team | 修改队伍。 | 是 | 否 | 否 |
/teleport | 同/tp。 | 是 | 是 | 是 |
/teammsg | 指定要发送给队伍的消息。 | 是 | 否 | 否 |
/tell | 给另一玩家发送私信。 | 是 | 是 | 是 |
/tellraw | 向玩家显示JSON消息。 | 是 | 是 | 否 |
/testfor | 统计符合给定条件的实体。 | 已移除 | 是 | 是 |
/testforblock | 检测特定位置的方块是否是某方块 | 已移除 | 是 | 是 |
/testforblocks | 检测两个区域的方块是否完全一致。 | 已移除 | 是 | 是 |
/tickingarea | 管理常加载区域。 | 否 | 是 | 是 |
/time | 设置游戏时间。 | 是 | 是 | 是 |
/title | 向玩家显示标题。 | 是 | 是 | 是 |
/toggledownfall | 切换天气 | 已移除 | 是 | 是 |
/tp | 传送玩家和实体。 | 是 | 是 | 是 |
/trigger | 设置触发器。 | 是 | 否 | 否 |
/w | 同/tell | 是 | 是 | 是 |
/weather | 更改天气。 | 是 | 是 | 是 |
/worldborder | 管理世界边界。 | 是 | 否 | 否 |
/worldbuilder | 编辑受限制方块的能力。 | 否 | 是 | 是 |
/wsserver | 连接至WebSocket伺服器。 | 否 | 是 | 是 |
/xp | 增加或减少经验。 | 是 | 是 | 是 |
多人游戏
说明:该列表下的命令仅允许打开了局域网开放或多人游戏可用。且通常不能在命令方块中执行。带有WS标志的命令为仅WebSocket伺服器可用。
命令 | 功能 | Java版 | 基岩版 | 教育版 |
---|---|---|---|---|
/ban | 在伺服器或多人游戏中封禁玩家。尽管玩家的名字可以不存在或未上线。(启用了正版验证的伺服器将封禁玩家的UUID,未启用正版验证的伺服器仅封禁玩家名称) | 是 | 否 | 否 |
/pardon | 取消封禁玩家。 | 是 | 否 | 否 |
/ban-ip | 封禁玩家的网络ip。 | 是 | 否 | 否 |
/pardon-ip | 取消封禁玩家的网络ip。 | 是 | 否 | 否 |
/kick | 踢出伺服器中在线的玩家。 | 是 | 是 | 否 |
/op | 给予玩家管理员权限。 | 是 | 是 | 是 |
/deop | 撤销玩家管理员权限。 | 是 | 是 | 是 |
|