用法
如何运行程序:
使用命令行参数:
Windows
只需运行 MinecraftClient.exe
提示
在 Windows 上,最好使用 Windows Terminal 获取最佳体验和外观。 部分功能例如 /chunk
命令中的表情符号等在 CMD 或 Powershell 5 中无法正常显示
Linux, macOS
运行MCC需要您在终端输入以下命令:
./MinecraftClient
如果您想要在后台运行它,您可以使用screen
(仅限Linux)
示例:
# 启动屏幕
screen -S mcc
# 运行
./MinecraftClient
# 按 CTRL + A + D 脱离屏幕
# 如果你想再次访问,请重新附加
screen -r mcc
了解更多关于如何使用屏幕命令的信息: YouTube
Docker
参考 使用 Docker 运行
命令行用法
Minecraft Console Client 有大量实用命令行参数,您可以在这里了解它们。
对于不熟悉命令行的人
对于不熟悉命令行程序的人(终端),在这里,我们将解释每个步骤,如果您熟悉相关内容,您可以选择跳过。
在命令行(终端)中,您可以使用程序名称+启动参数的方式运行程序,通常程序有额外的启动参数,用不同的启动参数启动程序是通过命令行实现的。
启动参数是在程序名称之后写的,用空格分隔,可以有几种不同的方式,例如:
someparameter
-some-parameter
--some-other-parameter
--some-setting="some value"
-a=5
单个破折号的参数(-
)通常表示单个参数(简写),双破折号的参数(--
)通常用于一个较长/全名的参数。
当您阅读例子时,您常常会看到这样的<something here>
,这意味着这是一个参数,应该使用一定的值。输入的参数不应含有<``>
例如,<username>
您需要修改为您喜欢的用户名,例如:notch
(<
和 >
不应该包括在内)
[
和]
代表这个是可选参数。
它们还可以具有某些值,用MCC举个例子:
MinecraftClient.exe --debugmessages=false
当一个参数内含有空格时,您需要使用英文的双引号("
),例如:--some-parameter="一些参数具有空格"
下面是使用--help
参数的例子,它会使MCC显示如何使用MCC的界面。
MinecraftClient.exe --help
通过示例快速使用 MCC
提示
在 Linux 和 macOS 上,您需要输入:./MinecraftClient
而不是 MinecraftClient.exe
MinecraftClient.exe --help
MinecraftClient.exe <username> <password> <server>
MinecraftClient.exe --setting=value [--other settings]
MinecraftClient.exe --section.setting=value [--other settings]
MinecraftClient.exe <settings-file.ini> [--other settings]
示例:
#登陆一个账户:notch,密码是:password123 要进入的服务器IP: mc.someserver.com:25565
MinecraftClient.exe notch password123 mc.someserver.com:25565
#使用命令行参数覆盖来自MinecraftClient.ini的设置
MinecraftClient.exe --debugmessages=false
#使用其他ini并覆盖语言为中文
MinecraftClient.exe CustomSettingsFile.ini --language=zh
使用命令行参数的规则:
您可以使用以下规则混合参数:
- 第一个参数可以是登陆参数或者是设置文件.
- 其他位置参数按顺序读取:用户名、 密码、 服务器、 命令.
- 以
--
开头的参数可以放在任何顺序和位置。
例子和解释:
MinecraftClient.exe <login> <password> <server>
- 将会自动连接到您选定的服务器。
- 您可以不写密码或者服务器,例如只写用户名。
- 如果服务器装了登陆插件的话,请使用
""
包裹住登陆指令这一栏 - 如果要使用离线模式登入,请在使用
-
作为密码。
MinecraftClient.exe <login> <password> <server> "/mycommand"
- 将会自动发送
/mycommand
到服务器并自动关闭。 - 如果要发送多个命令并保持连接状态,请使用 ScriptScheduler Bot
MinecraftClient.exe <myconfig.ini>
- 这将会加载指定的配置文件。
- 如果文件包含用户名/密码/服务器IP,它将会自动连接到服务器。
MinecraftClient.exe --setting=value [--other settings]
- 在命令行指定MCC的设置,请到配置文件查看对应的值。
- 使用
--section.setting=value
用于设置[Main]
以外的设置。 - 例如:
-antiafk.enabled=true
将会启用反挂机检测
功能。
MinecraftClient.exe <myconfig.ini> <login> <password> <server> [--other settings]
- 加载指定的配置文件并覆盖配置文件中的一些设置。
内置命令
这些命令可以从聊天、脚本或远程控制中执行。
从聊天中执行的命令前默认必须加/,例如 /quit
在脚本和远程控制充,执行命令不需要加/,例如 quit
提示
一些命令可能尚未被记录或在ChatBots的描述中定义, 使用 "/help" 列出所有命令,或您可以为此页面做出贡献。
animation
描述:
切换主手(mainhand)/副手(offhand)。
使用方法:
/animation <mainhand|offhand>
bed
描述:
让您的机器人睡觉,所有与睡觉有关的都在这个命令。
使用方法:
基本用法:
bed leave|sleep <x> <y> <z>|sleep <radius>
示例:
离开床:
/bed leave
在坐标为124 84 76 的床上睡觉:
/bed sleep 124 84 76
使用相对坐标睡在床上:
/bed sleep ~ ~ ~-2
在50个方块半径内自动寻找一张床并睡在上面:
/bed sleep 50
方块信息
提示
您需要启用 地形和移动处理 才能使用这个命令。
描述:
显示指定位置的方块类型。
如果使用
-s
,它将会显示目标方块周围的方块类型。使用方法:
基本用法:
/blockinfo <x> <y> <z> [-s]
bots
描述:
允许您列出和卸载指定机器人或所有机器人。
在调试和开发脚本时非常有用。
使用方法:
/bots <list|unload <bot name|all>>
示例:
卸载名为 CustomScript 的机器人
/bots unload CustomScript
卸载所有机器人
/bots unload all
changeslot
描述:
更改当前选择的快捷栏
提示
你需要启用 物品栏处理 才能使这个机器人工作.
使用方法:
/changeslot <1-9>
chunk
描述:
用一种很好的方式显示区块的加载状态。
警告
要使用此功能,您需要启用 地形处理和移动处理
提示
** 您需要一个支持emoji表情的终端,例如 Powershell 7,Windows Terminal或者Alacritty,如果您的终端不支持emoji表情或者是使用cmd或Powershell 5,禁用表情符号
enableemoji
**使用方法:
/chunk status [chunkX chunkZ|locationX locationY locationZ]
它的外观
dig
描述:
在指定坐标上挖掘一个方块。
使用方法:
/dig <x> <y> <z>
示例
/dig 127 63 12
使用相对坐标:
/dig ~ ~-1 ~2
dropitem
描述:
从背包丢弃所有指定物品。
提示
你需要启用 物品栏处理 才能使这个机器人工作.
使用方法:
/dropitem <itemtype>
提示
所有物品可以在here找到。
示例:
/dropitem diamond
附魔
提示
你需要启用 物品栏处理 才能使这个机器人工作.
描述:
允许使用附魔台附魔物品。
您需要先打开一个附魔台,然后在附魔台中放置您想要附魔的物品和青金石。然后您可以执行命令。
可以通过
useblock
命令来打开附魔台。使用方法:
基本用法:
/enchant <top|middle|bottom>
entity
描述:
攻击一个实体,使用一个实体或者获取您周围的实体类型。
使用方法:
基本用法:
/entity <id|entitytype> <attack|use>
获取周围的实体类型:
/entity
提示
您可以在这里找到所有的实体名称:[here]https://mccteam.github.io/r/entity/#L15).
示例:
攻击一个僵尸:
/entity Zombie attack
execif
描述:
在满足指定条件时执行指定命令。
条件是一个C#表达式,可以使用
set
,setrnd
或配置文件设置的本地变量。状态总是以布尔值形式返回,仅可以进行比较,如果需要,请将表达式结果强制转换为 bool。
MCC 的实例也可以与
MCC 一起使用。
提示
在应用程序中,所有局部变量都被视为字符串,在比较其值时,你可以使用
<variable> == "<value>"
,或者使用.Equals
方法使用方法:
基本用法:
/execif <condition (C# expression)> <command>
示例:
设置变量并使用它:
/set test=Something #设置一个内容为Something的名为test的变量 /execif 'test == "Something"' "send Success!" #如果test == Something,即符合上述变量,则执行之后双引号中的"send Success!"
``` /set test2=1 /execif 'test2 == "1"' "send Success 2!" ```提示
如果你的表达式已经含有双引号(
"
),那么你可以使用单引号('
)将其包括。在双引号前添加反斜杠(
\
)能够使其正常工作,如(/execif "test == \"Something\"" "send Success!"
)基本 C# 表达式:
/execif "1 + 2 + 3 == 6" "send Success!"
Using MCC class:
/execif "MCC.GetHealth() == 20.0" "send Success!"
与
execmulti
结合使用:/execif "1 == 1" "execmulti send 1 -> send 2 -> send 3"
execmulti
描述:
允许您单行中了连续执行多个命令,推荐用于调试或者
execif
。命令被
->
分隔使用方法:
基本用法:
execmulti <command 1> -> <command 2> -> <command 3> ->...
示例:
/execmulti send 1 -> send 2 -> send 3 -> sneak
quit
别名:
exit
描述:
断开与服务器的连接并关闭MCC
reco
描述:
断开并重新连接服务器
使用方法:
/reco [account]
提示
[account]是指设置文件中账户列表中定义的账户别名,查看关于accountlist的用法
reload
描述:
重新加载MinecraftClient和 ChatBots的设置。
提示
**一些设置不会被重新加载,因为它们是在客户端初始化之前使用的。 而且,这将会覆盖命令行参数的设置。 由于技术限制,此操作不会重新加载ReplayBot。
使用方法:
/reload
connect
描述:
连接到指定的服务器并重启脚本。
使用方法:
/connect <server> [account]
提示
<server>
在配置文件中的服务器列表[serverlist]中定义了服务器的IP及别名,查看关于serverlist的相关信息提示
[account]是指设置文件中账户列表中定义的账户别名,查看关于accountlist的用法
script
描述:
运行一个包含命令的脚本(文本文档)。
使用方法:
/script <script name>
send
描述:
发送一个聊天消息或者命令到服务器。
使用方法:
/send <text>
respawn
描述:
如果您死了,请使用它来重生(相当于点击游戏中的重生)。
使用方法:
/respawn
log
描述:
在控制台显示一些日志(对于脚本有用)
使用方法:
/log <text>
示例:
/log this is some text
list
描述:
显示服务器的玩家列表(相当于在服务器中按下Tab的查看玩家列表)
使用方法:
/list
set
描述:
设置一个值
%variable%
(类似变量名),可以用在后面的命令中。使用方法:
/set <variable>=<value>
示例:
/set abc=123
setrnd
描述:
设置
%variable%
为A-B的随机值。使用方法:
/setrnd <variable> string1 "\"string2\" string3"
示例:
/setrnd <variable> -7 to 10
(设置一个从-7到10的数字变量
%variable%
)
sneak
描述:
切换到潜行。
使用方法:
/Sneak
tps
描述:
获取服务器 TPS (每秒Tick数)
使用方法:
/tps
useitem
描述:
使用手中的物品,可以用来右键点击打开服务器的菜单。
提示
你需要启用 Inventory Handling 才能使用这个功能.
警告
Inventory Handling 目前不支持
1.4.6 -- 1.9
使用方法:
/useitem
useblock
描述:
在特定位置放置方块或者打开容器。
- 箱子/陷阱箱
- 熔炉
- 酿造台
- 发射器/投掷器
- 漏斗
- 潜影盒
- 织布机
提示
您需要启用Inventory Handling和Terrain and Movements,才能使用这个功能
提示
并非每一个容器都有一个ASCII格式的GUI。
警告
Inventory Handling不支持
1.4.6 - 1.9
.使用方法:
/useblock <x> <y> <z>
示例:
/useblock 43 72 7
follow
描述:
使机器人跟随指定玩家。
提示
这个命令只有在 Follow Player启用时才能使用。
提示
您需要启用Inventory Handling 才能使这个机器人工作.
提示
您需要启用Enity Handling 才能使用这个功能
使用方法:
/follow <player name|stop>
示例:
/follow milutinke
wait
描述:
等待X个ticks(10ticks ≈1秒 仅限脚本中使用)
使用方法:
固定时间:
/wait <time>
随机时间:
/wait <最短时间> to <最长时间>
提示
你可以使用
-
代替to
示例:
/wait 20
/wait 20 to 100
/wait 20-35
move
描述:
在启用地形和移动功能后进行简单的移动。
提示
您需要启用[Terrain and Movements]](configuration.md#terrainandmovements)才能使其工作
警告
“1.4.6-1.6”中当前不支持[Terrain and Movements](configuration.md#terrainandmovements)
使用方法:
/move <on|off|get|up|down|east|west|north|south|center|x y z|gravity [on|off]> [-f]: walk or start walking. "-f":强制不安全的动作,例如摔落或触碰火焰。
示例:
启用重力
/move gravity on
移动到坐标:
/move 125 72 34
移动到方块中央;
/move center
命名事物
描述:
此命令允许您在打开铁砧物品栏和第一个插槽(插槽号0)中的项目时命名项目,(插槽的概念见下方库存管理)
将物品放入砧座的第一个槽后,使用此命令,然后单击槽2以从砧座中获取物品,然后单击物品栏中的空槽。
使用方法:
/nameitem <name of the item>
示例:
/nameitem My super duper sword 2000
带铁砧的完整示例:
#打开一个铁砧
/useblock 12 74 321
#点击插槽12中的斧头 /inventory container click 12
#把斧头放在铁砧的0号槽上 /inventory container click 0
#设置一个新名称(重命名) /nameitem My fancy axe
#点击铁砧的2号槽 /inventory container click 2物品栏
#把斧头放回12号槽的库存中 /inventory container click 12
#关闭铁砧 /inventory container close ```
look
描述:
启用地形和移动后可指定视野方向
使用方法:
/look <x y z|yaw pitch|up|down|east|west|north|south>
示例:
/look up
/look east
inventory
描述:
用于物品栏管理。
提示
你需要启用 物品栏处理 才能使这个机器人工作.
警告
Inventory Handling不支持
1.4.6 - 1.9
.MCC将物品栏定义为内部容器,所以玩家的物品栏、箱子、投掷器、发射器、漏斗、箱子矿车,木桶、熔炉等等,都被视为容器,每个容器都有它自己的ID,“容器”和“物品栏”两个词可以互换使用。
物品栏内的每一个物品框都有对应的ID
提示
这个命令并不会去打开一个容器 (例如箱子),你需要先使用
useblock
去打开容器。一个用有ASCII码表示的物品框ID和物品列表的玩家背包:
使用方法:
基本用法:
/inventory <player|container|<id>> <action> [action parameters] | /inventory <inventories/i> | /inventory <search/s> <item type> [amount]
提示
** player 和 container 可以相应地用p和c简化**
动作:
click
drop
显示/预览物品栏中的项目:
/inventory <player|id>
左键单击/shift+左键单击物品栏中的一个物品:
/inventory <player|container|<id>> <click> <slot id> [left|right|middle|Shift|ShiftRight]
提示
如果不指明,默认左键单击
关闭当前容器
/inventory <player|container|<id>> close
从容器/背包中丢出物品
/inventory <player|id> drop <slot id> <number of items|all>
提示
要从指定物品框中丢出所有物品,可以使用:
all
从创造玩家的背包中拿出指定物品
/inventory creativegive <slot id> <item type> <amount>
提示
所有物品id可以在here找到。
在创造模式下的玩家的背包中删除物品:
/inventory creativedelete <slot id>
显示所有的物品栏:
/inventory inventories
在物品栏中搜索指定类型的物品:
/inventory search <item type>
示例:
显示玩家的物品栏:
/inventory player
使用id显示/预览项目:
/inventory 3
单击玩家背包内物品栏id为
36
的物品:/inventory player click 36
右键单击 /id
2
在物品栏中 /id4
的物品/inventory 2 click 4 right
关闭一个id为
2
的物品栏:/inventory 2 close
掉落玩家的物品栏中编号是 /id
36
的物品:/inventory player drop 36 1
掉落玩家的物品栏中的全部编号是 /id
37
的物品:/inventory player drop 37 all
从创造玩家的背包中拿出指定物品
/inventory creativegive 36 diamondblock 64
提示
所有物品id可以在here找到。
在创造模式下删除玩家的物品栏中编号 /id
36
的物品/inventory creativedelete 36
在可用的物品栏中搜索10个史莱姆方块:
/inventory s SlimeBlock 10
debug
描述:
切换调试消息,这对chat bot的开发人员很有用。
help
描述:
显示命令帮助。
提示
使用"/send /help" 获取服务器帮助