自动执行 RCON 命令
约 444 字大约 1 分钟 阅读量
2025-02-14
可通过配置实现在以下场景自动执行RCON命令:服务器启动时、客户端连接时、客户端断开连接时。
注
在 Docker Compose 文件的环境变量中声明多个命令时,建议使用 YAML 的 |-
块样式指示符进行多行书写。
服务器启动时执行:
RCON_CMDS_STARTUP: |-
gamerule doFireTick false
pregen start 200
客户端连接时执行:
RCON_CMDS_ON_CONNECT: |-
team join New @a[team=]
注
客户端连接时,系统仅能感知连接事件,无法识别具体连接者身份。需通过RCON命令自行实现玩家识别。
客户端断开链接时:
RCON_CMDS_ON_DISCONNECT: |-
gamerule doFireTick true
首个客户端链接时执行
RCON_CMDS_FIRST_CONNECT: |-
pregen stop
最后一个客户端断开链接时执行
RCON_CMDS_LAST_DISCONNECT: |-
kill @e[type=minecraft:boat]
pregen start 200
新手玩家规则配置示例
通过"NEW"和"OLD"队伍机制追踪服务器玩家状态:将无队伍玩家加入NEW队伍→执行命令→转移至OLD队伍。 实现原理参考
RCON_CMDS_STARTUP: |-
/pregen start 200
/gamerule doFireTick false
/team add New
/team add Old
RCON_CMDS_ON_CONNECT: |-
/team join New @a[team=]
/give @a[team=New] birch_boat
/team join Old @a[team=New]
RCON_CMDS_FIRST_CONNECT: |-
/pregen stop
RCON_CMDS_LAST_DISCONNECT: |-
/kill @e[type=minecraft:boat]
/pregen start 200