命令与权限
EmakiCoreLib 的主命令是 /emakicorelib,别名为 /corelib、/emakicore。这些命令主要面向服务器管理员,用于重载 CoreLib、执行配置预检、管理 JavaScript 扩展、查看或执行已注册 Action,以及排查循环 Action 任务。
命令列表
| 命令 | 说明 | 权限 |
|---|---|---|
/corelib reload | 重载 CoreLib 配置、Action 系统与脚本系统;预检失败时取消本次重载并保留旧配置。 | emakicorelib.reload 或 emakicorelib.admin |
/corelib check [module|report|--fix] | 执行配置预检、检查指定模块或查看最近一次报告;当前版本的 --fix 为只读提示,不执行自动修复。 | emakicorelib.admin |
/corelib script list | 列出全局 JavaScript 脚本与当前注册的脚本扩展数量。 | emakicorelib.admin |
/corelib script inspect <script> | 查看指定 JavaScript 脚本注册了哪些扩展入口。 | emakicorelib.admin |
/corelib script reload | 重新加载 Action / JavaScript 相关系统。 | emakicorelib.admin |
/corelib action list | 列出当前已注册 Action 的 id、category、source、owner、execution mode 与参数名。 | emakicorelib.admin |
/corelib action run <actionId> key=value ... | 直接执行一条当前已注册的 Action;也支持 /corelib action <actionId> key=value ... 简写。 | emakicorelib.admin |
/corelib debug all [on|off|status] | 运行时切换全局 Debug 开关;不带参数等同 status。重载后恢复为 debug.global_all 的配置值。 | emakicorelib.admin |
/corelib debug loops [list|player|key|cancel|cancel-player] | 查看活动循环 Action 任务,并按 key 或玩家取消循环任务。 | emakicorelib.admin |
/corelib help | 显示子命令帮助;不带参数或输入未知子命令时也会显示。 | 无 |
action 子命令可写作 actions,两者等价。
权限节点
| 权限 | 默认 | 说明 |
|---|---|---|
emakicorelib.reload | op | 允许重载 CoreLib。 |
emakicorelib.admin | op | CoreLib 管理员总权限,包含 emakicorelib.reload。 |
常用操作
重载 CoreLib
text
/corelib reload适合修改 CoreLib 主配置、语言文件、Action 或脚本后使用。重载会先执行配置预检;预检失败时不会替换当前正在生效的配置。
执行配置预检
text
/corelib check
/corelib check report
/corelib check corelibcheck 会检查配置引用、Action 模板、物品源与 CoreLib 相关配置。report 查看最近一次预检结果;传入模块 ID 时只检查指定模块。
查看 JavaScript 扩展
text
/corelib script list
/corelib script inspect examples/hello.js
/corelib script reload用于确认全局脚本、脚本注册入口和重载后的注册状态。完整脚本能力见 JavaScript 脚本。
查看和执行已注册 Action
text
/corelib action list
/corelib action run sendmessage text="hello"action list 用来确认当前注册表里有哪些 Action。action run 会把 <actionId> key=value ... 按普通 Action 行解析,因此参数、引号、@if、@chance、@delay 等规则与配置文件中的 Action 行一致。控制台执行时没有玩家上下文,依赖玩家的 Action 会按既有 Action 校验失败。
排查循环 Action
text
/corelib debug loops list
/corelib debug loops player Steve
/corelib debug loops key some-loop-key
/corelib debug loops cancel some-loop-key
/corelib debug loops cancel-player Steve这些命令只用于排查或清理循环 Action。生产服上不建议长期保留大量循环任务调试输出。
切换全局 Debug
text
/corelib debug all status
/corelib debug all on
/corelib debug all off作用等同于临时改写 config.yml 的 debug.global_all,会影响所有使用 CoreLib DebugLogger 的 Emaki 模块。该切换不写回配置文件,/corelib reload 后重新采用配置值。