MegaBlock Survivors 指令
MegaBlock Survivors 注册了一个单一的根指令:
/mbs
/megablocksurvivors
在安装过程中使用的 Nightbreak 令牌指令是独立的,由 MagmaCore 提供:
/nightbreaklogin <token>
安装与内容管理
| 指令 | 发送者 | 权限 | 当前用途 |
|---|---|---|---|
/mbs | 任意 | megablocksurvivors.* | 打印快速入门帮助(start、setup、reload) |
/mbs setup | 玩家 | megablocksurvivors.setup | 打开 Nightbreak 内容浏览菜单(Free / Premium / Resources 筛选) |
/mbs recommendedplugins | 任意 | megablocksurvivors.setup | 显示推荐的配套插件目录(对玩家打开菜单,对控制台打印列表) |
/mbs downloadpluginupdate | 任意 | megablocksurvivors.* | 从 Nightbreak 下载最新的 MegaBlock Survivors 插件 jar(需要已关联账号) |
/mbs downloadall | 任意 | megablocksurvivors.* | 下载插件更新。(MBS 默认 hasContentPackages=false,因此该指令不会拉取内容包——在这里它实际上是插件更新的别名。) |
/mbs applypluginupdate | 任意 | megablocksurvivors.* | 无需重启即可应用已下载到服务器更新文件夹中的插件更新。MegaBlock Survivors 会重新加载,从而结束活动对局。没有等待中的更新且有效的新版本,或有其他作者的插件依赖 MegaBlock Survivors 时,该指令会被拒绝 |
/mbs reload | 任意 | megablocksurvivors.* | 完整停用、加载并重新启用 MegaBlock Survivors,结束活动对局,重载配置、翻译、内容、世界、NPC 和显示。如果导入了模型,且 FreeMinecraftModels 已启用,共享导入器也会重载 FMM 的内容 |
/mbs version | 任意 | 无 | 显示当前插件版本 |
setup、recommendedplugins、downloadpluginupdate、downloadall 和 applypluginupdate 由打包进插件的 MagmaCore 的 NightbreakPluginBootstrap.registerStandardCommands 注册,而非由 MegaBlock Survivors 自己的指令类注册。共享的更新设置请参阅自动更新。
版本说明
MagmaCore 还会为共享的更新日志收件箱注册一个独立的顶层指令:
/mbschangelog
/mbschangelog dismiss
/mbschangelog disable
它可以打开未读的 MegaBlock Survivors 版本说明、将其标记为已读,或为你关闭加入时的提醒。该指令仅限玩家使用,需要 OP 或 megablocksurvivors.*、megablocksurvivors.setup、megablocksurvivors.initialize 之一。参见 Nightbreak 更新日志通知。
玩法指令
| 指令 | 发送者 | 当前用途 |
|---|---|---|
/mbs start | 玩家 | 开始一场新的对局。如果你已经在对局中或仍在设置对局,或者你已身处其他使用 MagmaCore 共享对局系统的插件的对局中,指令会被拒绝。 |
/mbs quit | 玩家 | 结束当前对局,或取消仍在设置中的对局。已在对局中的玩家会被送到 mbs_spawn 大厅;大厅未加载时,则送回其执行 /mbs start 时所在的位置 |
/mbs stats | 玩家 | 打开当前对局的装备与属性面板 |
/mbs summary | 玩家 | 在聊天栏打印当前或最近一场对局的总结(时长、最高波次、伤害明细、装备、击杀数) |
/mbs dump | 玩家 | 清空共享的 stats-dump.log,再将执行者当前或最近一场对局的总结写成一行 JSON(如果存在)。即使没有总结,旧日志也会被清除 |
/mbs sacrifice | 玩家 | 触发最近的鲜血祭坛当前阶段(25% / 50% / 75% HP) |
/mbs meta | 玩家 | 打开元进度(灵魂回响圣坛)商店对话框 |
/mbs meta upgrade <track> | 玩家 | 为指定的元进度路线购买一级。可用路线:hp、luck、speed、weaponslots、passiveslots、extralives、bantokens、rerolltokens。 |
内部指令
以下指令由游戏内对话框按钮触发。请使用按钮:处理器并非都会检查预期的界面或对局阶段,手动执行禁用或重摇指令可能在没有打开奖励界面时消耗代币。
| 指令 | 发送者 | 当前用途 |
|---|---|---|
/mbs selectgamemode <challenge|endless> | 玩家 | 在第一个赛前界面选择游戏模式 |
/mbs selectdifficulty <easy|medium|hard> | 玩家 | 在第二个赛前界面选择难度 |
/mbs selectweapon <weaponType> | 玩家 | 在职业选择界面选择初始武器 |
/mbs reward <number> | 玩家 | 在升级奖励界面选择一个奖励 |
/mbs reward-ban <type> | 玩家 | 消耗一枚禁用代币,从后续抽取中过滤某种装备类型;奖励池耗尽时的备用抽取可能恢复禁用类型 |
/mbs reward-reroll | 玩家 | 重新摇取当前奖励选项(消耗一枚重摇代币) |
/mbs hourglass-reward <number> | 玩家 | 在沙漏奖励界面选择一个奖励 |
/mbs chest-reward <number> | 玩家 | 在宝箱奖励界面选择一个奖励 |
/mbs resume | 玩家 | 在奖励选择后恢复游戏 |
/mbs skip | 玩家 | 由奖励选择动画的跳过按钮发送。结束动画并显示最终的奖励选项。在对局之外不执行任何操作 |
奖励选择动画已禁用,因此奖励选项会立即显示,/mbs skip 目前没有任何效果。它不需要权限。
调试与管理员指令
| 指令 | 发送者 | 当前用途 |
|---|---|---|
/mbs cheat | 玩家 | 移除所有被追踪的敌人(不产生掉落,也不计击杀),填满传送门献祭要求,并让玩家在本局剩余时间内无视对局伤害。定时幽灵大军的接触击杀仍然有效 |
/mbs beam | 玩家 | 向以玩家为中心、各轴向两侧延伸 20 格的立方体内的 Target 方块绘制调试光束,持续 10 秒 |
/mbs skipworld | 玩家 | 跳到当前对局的下一个世界 |
这三个调试指令当前都不要求权限。/mbs cheat 会将对局标记为作弊,但 /mbs skipworld 只推进世界,不设置该标记。排行榜的作弊过滤不能防止调试指令跳过世界。
权限
| 权限 | 声明位置 | 授予 |
|---|---|---|
megablocksurvivors.* | NightbreakPluginSpec | 管理员指令:/mbs、/mbs reload、/mbs downloadpluginupdate、/mbs downloadall、/mbs applypluginupdate,以及首次设置提醒 |
megablocksurvivors.setup | NightbreakPluginSpec | /mbs setup 和 /mbs recommendedplugins |
megablocksurvivors.initialize | NightbreakPluginSpec | 仅 /mbschangelog。并未注册 /mbs initialize 指令 |
megablocksurvivors.match.bypass | plugin.yml(默认:op) | 传送进正在进行的对局世界,而不会被拒绝或被送回。持有者仍会在已结束对局的世界被删除前被移出 |
说明
- MegaBlock Survivors 的
plugin.yml声明了/mbs根指令及其/megablocksurvivors别名,以及megablocksurvivors.match.bypass权限。所有子指令都是在运行时通过 MagmaCore 的CommandManager注册的。 - 未显式设置权限的指令没有权限要求。
/mbs setup与/mbs recommendedplugins由megablocksurvivors.setup控制;/mbs reload、/mbs downloadpluginupdate、/mbs downloadall和/mbs applypluginupdate由megablocksurvivors.*控制。两个权限都在插件的NightbreakPluginSpec中声明,因此运维方可以将「仅安装」角色与完整管理员角色分别授予。- MegaBlock Survivors 调用的是简化的共享引导重载方法,不会注册
/mbs initialize。由于hasContentPackages=false,按包下载或更新的指令也会被省略,/mbs downloadall只下载插件 jar。请通过/mbs setup管理其MBSPackage内容。 - 许多游戏文本使用
plugins/MegaBlockSurvivors/translations.yml。部分共享指令描述、内容菜单消息和排行榜文本仍在代码中固定为英文。