SpectrumMatch  -  匹配插件

原创 娱乐 SpectrumMatch - 匹配插件 1.0.1

完成注册/登录后下载
版权类型
原创
插件中文名称
光谱匹配
插件英文名称
SpectrumMatch
原帖地址
#
支持的核心(服务端)
  1. Spigot
  2. Paper
语言支持
多语言
前置组件
SpectrumParty(https://www.minebbs.com/resources/spectrumparty.15171/)
适配版本(Java)
  1. 1.21
  2. 1.20
  3. 1.19
  4. 1.18
  5. 1.17
  6. 1.16
  7. 1.15
  8. 1.14
  9. 1.13
  10. 1.12
[MD] # SpectrumMatch SpectrumMatch 是基于 Kotlin + TabooLib 的统一匹配插件,负责将队伍按 modeId 排队、撮合并调用 SpectrumParty 的 GameAdapter 自动开局。插件本身不存储队伍数据,只依赖 SpectrumParty API。 ## 默认配置 - `config.yml` - `match.tickSeconds`: 撮合检测间隔(秒) - `queue.maxLengthPerMode`: 每个模式最大队列长度 - `queue.leaderOnly`: 是否仅允许队长入队/出队 - `match-modes.yml` - 规则配置文件,按 `modeId` 定义队伍人数、队伍数量、准备要求等 - 默认包含 `dummy_2v2`(使用 SpectrumParty DummyAdapter 的演示模式) ## 模式适配器注册(配置驱动) SpectrumMatch 会根据 `match-modes.yml` 自动注册一个 `GameAdapter`(adapterId = `spectrummatch-config`),让 SpectrumParty 可以直接读取模式列表,无需在 SpectrumParty 内维护模式配置。 模式委托规则: - 若 `options.adapterId` 指定了目标适配器,则使用该适配器处理 `validateStart/startSession`。 - 若未指定且没有找到现成适配器,则自动使用 SpectrumMatch 内置 `local` 适配器(直接生成 SessionRef)。 - 若找到同名 modeId 的适配器(如 DummyAdapter),则继续走该适配器逻辑。 可选参数(写在 `options` 下): - `adapterId`: 目标适配器的 adapterId,写 `local` 表示使用 SpectrumMatch 内置直启适配器 - `displayName`: 模式展示名称 - `supportsDirectStart`: 是否支持直启(`true/false`) - `supportsMatchmaking`: 是否支持匹配(`true/false`) 注意:上述 4 个参数仅用于模式注册,不会透传给 StartRequest,其余 `options` 会原样传递给适配器。 ## 命令 - `/sm help` 查看帮助 - `/sm modes` 查看所有匹配模式 - `/sm queue <modeId>` 队长入队 - `/sm dequeue` 队长出队 - `/sm status` 查看队伍排队状态 - `/sm list <modeId>` 查看指定队列(管理员) - `/sm reload` 重载配置与语言(管理员) - `/sm admin force-match <modeId>` 强制撮合(管理员) - `/sm admin clear <modeId>` 清空队列(管理员) 权限: - `spectrummatch.use` 基础命令 - `spectrummatch.admin` 管理命令 ## 常见问题 - 未注册模式:确认 SpectrumParty 内已注册对应 `modeId` 的 GameAdapter,或在 `options.adapterId` 指定适配器。 - 队伍人数不符:队伍人数必须满足 `teamSize`(默认不允许部分队伍)。 [/MD]
作者
ewsk
下载
8
查看
171
首次发布
最后更新

评分

0.00 星 0 次评分
后退
顶部 底部