MCDR-BotKikai(Bot機械)
一个基于 MCDR 的 Minecraft 假人管理插件,专注于简化 Carpet 假人的管理和操作。
君は道具ではなく、その名が似合う人になろんだ
📝 简介
本插件旨在解决以下问题:
- 记不住每个机器的假人名字?
- 不习惯输入英文指令?
- 想在家里快速开关远处、其他维度的机器?
只需为每个假人设置中文别名,就能通过简单的中文名字来操控它们。比如,对于一个叫 SandBot
的假人,你可以给它起个别名叫"刷沙机",这样 !!bk SandBot spawn
和 !!bk 刷沙机 spawn
的效果是完全一样的!也就是说你不需要记住哪个假人控制哪个机器,只需要确认你想开关哪个机器。
你可以在世界的任意位置输入指令 !!bk 刷沙机 use
即可让假人 SandBot
自动在刷沙机处上线,并右键开关来开启刷沙机(顺便挂机)。
🚀 特性
- 支持假人别名系统(中文、拼音等都可以)
- 方便的假人位置和朝向记录
- 交互式的操作界面
- 支持假人前后缀
- 支持权限管理
- 配置文件热重载
⚙️ 依赖
- MCDReforged >= 2.0.0
- MinecraftDataAPI >= 1.1.0
- Minecraft 服务端需要安装 Carpet 模组
📖 命令说明
基础命令(可于配置文件中自定义):
!!bk
所有可用命令:
命令 | 说明 | 权限等级 |
---|---|---|
!!bk | 显示帮助信息 | 所有人 |
!!bk list [online | offline] | 显示假人列表,可筛选在线或离线 |
!!bk reload | 重载插件配置 | admin |
!!bk add <name> <kikai> | 使用当前玩家位置添加假人 | admin |
!!bk add <name> <kikai> [dim] [pos] [facing] | 使用自定义参数添加假人 | admin |
!!bk del <kikai> | 删除指定假人 | admin |
!!bk <kikai> | 显示假人详细信息和操作界面 | user |
假人操作命令:
命令 | 说明 | 权限等级 |
---|---|---|
!!bk <kikai> spawn | 在对应位置生成假人 | user |
!!bk <kikai> kill | 移除假人 | user |
!!bk <kikai> where | 显示假人位置(会让假人发光2分钟) | user |
!!bk <kikai> use | 假人右键一次 | user |
!!bk <kikai> huse [<interval>] | 假人持续右键,可选间隔时间(gt) | user |
!!bk <kikai> atk | 假人左键一次 | user |
!!bk <kikai> hatk [<interval>] | 假人持续左键,可选间隔时间(gt) | user |
!!bk <kikai> stop | 停止假人的所有动作 | user |
⚡ 快速上手
-
为刷沙机添加一个假人并设置位置:
!!bk add SandBot 刷沙机
玩家站在期望的位置和朝向执行此命令,假人的位置和朝向会被自动记录。
你也可以手动指定位置(不建议,挺麻烦的):
!!bk add SandBot 刷沙机 minecraft:overworld 0 64 0 -154.43 3.90
-
使用假人:
!!bk 刷沙机 # 显示假人信息和操作界面 !!bk 刷沙机 spawn # 召唤假人到记录的位置 !!bk 刷沙机 use # 让假人右键一次 !!bk 刷沙机 hatk 12 # 让假人每 12gt 左键一次 !!bk 刷沙机 stop # 让假人停止动作 !!bk 刷沙机 kill # 让假人下线
⚙️ 配置文件
插件会在 MCDR/config/bot_kikai
目录下创建两个配置文件:
-
config.json
- 插件基础配置:{ "prefix_short": "!!bk", "spawn_max_wait_time": 10.0, "spawn_check_interval": 0.5, "bot_name_prefix": "", "bot_name_suffix": "", "permission": { "bot": 1, "list": 3 } }
配置项说明:
- prefix_short: 命令前缀
- spawn_max_wait_time: 等待假人生成的最大时间(秒)
- spawn_check_interval: 检查假人是否生成的间隔(秒)
- bot_name_prefix: 在 Carpet 中设置的假人前缀
- bot_name_suffix: 在 Carpet 中设置的假人后缀
- permission.bot: 操作假人的最低权限等级
- permission.list: 管理假人的最低权限等级
-
bots.json
- 假人数据:{ "SandBot": { "nicknames": ["SandBot", "刷沙机", "shuashaji"], "dimension": "minecraft:overworld", "position": [-2.44, 7.0, -5.05], "facing": [180.59, 29.55] } }
配置项说明:
- nicknames: 假人的所有别名列表
- dimension: 假人所在维度
- position: 假人的位置坐标 [x, y, z]
- facing: 假人的朝向角度 [水平角, 垂直角]
🔒 权限系统
插件使用 MCDR 的权限系统,默认配置:
- 假人操作权限(spawn、use、kill 等):需要 user 及以上权限
- 假人管理权限(add、remove 等):需要 admin 及以上权限
权限等级对应关系:
- guest = 0
- user = 1
- helper = 2
- admin = 3
- owner = 4
📝 注意事项
- 关于前后缀配置:
- 如果服务器开启了假人前后缀,请务必在本插件配置文件中配置相同的前后缀,以防止预期之外的情况发生;
- 如果服务器没有开启假人前后缀,您依然可以配置本插件的前后缀,这样由本插件创建的假人都会带有配置的前后缀。
- 关于命令点击执行:
- 自 Minecraft 1.19.1-rc1 起,由于游戏安全性更新,点击聊天框中的命令按钮将无法直接执行非
/
开头的命令 - 这影响了 MCDR 插件的交互体验,包括本插件在内的绝大部分插件都改用了
suggest_command
(命令建议)模式 - 点击命令按钮后,命令会被填充到聊天框中,需要玩家手动按回车执行
- 这也带来了一个好处:对于类似
!!bk <kikai> huse [间隔gt]
这样需要自定义参数的命令,玩家可以在发送前修改参数 - 具体详见 MCDReforged #203
- 自 Minecraft 1.19.1-rc1 起,由于游戏安全性更新,点击聊天框中的命令按钮将无法直接执行非
- 对于某些版本的 Carpet 模组,假人可能无法操作拉杆,建议替换成音符盒式开关或其他支持假人右键的方式。
⚠️ 声明
本插件实现的功能只要是装了 Carpet Mod 能召唤假人的服务端都可以实现,即便是这样也仍有可能引发不香草争议。烦请想装本插件的腐竹实装前务必了解下成员们的意愿。
🤝 致谢
- 感谢 Fallen_Breath 开发的 MCDR 框架
- 感谢 Carpet 模组提供的假人功能
- 感谢 AnzhiZhang 的 Bot 插件提供的灵感
📄 开源协议
介绍文本来源:README.md