命令系统
Monoceros 不只是提供 /mono 这一套内建命令。它本身还带了一套 YAML 驱动的命令系统,让你可以把命令树、参数、限制器和路由逻辑都写进配置文件里。
这套系统适合做:
- 管理类命令入口
- 玩法触发命令
- 把命令路由到脚本或动作工作流
- 统一做参数限制和补全
当前能力概览
| 能力 | 说明 |
|---|---|
| YAML 定义 | 命令结构、参数和权限都能写在 YAML 里 |
| 命令树 | 支持字面量节点和参数节点组合 |
| 路由模型 | 可路由到脚本、动作工作流或强类型处理器 |
| 参数类型 | 内建字符串、数字、布尔、玩家、世界、材质、脚本 ID 等 |
| 参数限制 | 支持范围、正则、枚举、权限、发送者限制 |
| 参数补全 | 支持 8 个内建补全器,也可扩展 |
| 热重载 | command/ 目录变更后可增量重载 |
命令资源放在哪里
命令定义文件放在插件目录下的 command/ 里。
你可以按模块拆文件,例如:
command/admin.ymlcommand/debug.ymlcommand/game/start.yml
Monoceros 会根据文件路径生成稳定的文件 ID,并在热重载时按文件粒度增量更新。
推荐阅读顺序
- 先看
./definition.md,了解命令 YAML 的整体结构 - 再看
./routes.md,理解命中命令后会执行什么 - 然后看
./arguments.md、./restrictions.md、./suggestions.md
这样你就能从“定义命令长什么样”一路看到“命令最终怎么执行”。