Skip to content

联动与排错

GTCommission 的原版任务不需要安装额外插件。对应插件存在时,扩展任务会自动接入;没有安装的插件只会显示为未连接,不影响其他功能。

MythicMobs

任务类型:

yaml
type: KILL_MYTHIC
targets: [SkeletalKnight, AngrySludge]

targets 填 MythicMobs 怪物内部 ID,大小写不敏感。不要填显示名称、颜色代码或掉落表名称。

GTMobDrops

任务类型:

yaml
type: GTMOBDROPS_OBTAIN
targets: [example_drop]

玩家通过 GTMobDrops 正常获得物品时增加进度。targets 填 GTMobDrops 物品或掉落配置中的内部 ID。

GTGather

任务类型:

yaml
type: GTGATHER
targets: [herb]

玩家完成采集后增加进度。targets 填 GTGather 采集模板 ID。

副本通关

统一任务类型:

yaml
type: DUNGEON
amount: 3
targets: [castle]

已直接支持:

副本插件计入时机可用目标
DungeonPlus副本以 COMPLETE 正常结束副本名称、DungeonPlus:名称
MythicDungeons玩家触发通关事件世界 ID、显示名、MythicDungeons:ID
QueDP副本触发完成事件模板 ID、模板名称、QueDP:ID
BTDungeons副本以 NORMAL 原因结束副本名称、BTDungeons:名称

插件会同时识别副本 ID、显示名称和带插件名前缀的写法。不同副本插件里有同名副本时,建议加前缀:

yaml
targets:
  - "DungeonPlus:castle"

同一场副本结束事件在短时间内重复触发时会自动去重,不会给同一名玩家重复增加通关次数。

其他副本或脚本

让副本结束动作执行:

text
gtcommission progress {player} DUNGEON dungeon_id 1

实际玩家变量按对应插件的写法替换。也可以通过 GT 系列动作提交:

text
commission-progress:DUNGEON:dungeon_id:1

自定义活动任务:

yaml
type: CUSTOM
targets: [summer_event]
amount: 10

再由活动插件执行:

text
gtcommission progress 玩家 CUSTOM summer_event 1

物品库

提交任务和 GUI 图标可使用 GTCore 已接入的物品库。常见写法:

yaml
objective:
  item: "mm:QuestCrystal"
yaml
icon: "mm:QuestCrystal"

前缀和物品 ID 必须与服务器当前物品库一致。提交物品时会按实际物品数据匹配,不能只靠改名伪造。

查看联动状态

输入:

text
/gtcom debug

输出中会列出:

  • 当前存储方式和跨服状态。
  • 每种经济是否可用。
  • MythicMobs 是否已连接。
  • GTMobDrops、GTGather 和各副本插件是 ACTIVE 还是 NOT_INSTALLED

插件已经安装但仍显示 NOT_INSTALLED 时,先确认插件本身是否成功启用,再确认版本是否提供对应的完成事件。

任务没有进度

按以下顺序检查:

  1. 玩家当前面板是否真的抽到了该任务。
  2. 任务、任务池和面板的 conditions 是否全部满足。
  3. type 是否与实际行为一致。
  4. targets 是否填写内部 ID,而不是中文显示名。
  5. /gtcommission progress 玩家 类型 目标 1 手动提交一次。
  6. /gtcom debug 查看联动状态。
  7. 打开 debug: true 后重载,再查看控制台记录。

手动命令能增加进度,说明任务和面板配置没有问题,应继续检查对应插件是否触发了预期事件以及目标 ID 是否一致。

GUI 打不开

  1. 确认玩家数据已经加载,刚进服时稍等一秒再打开。
  2. 确认面板的 gui ID 在 guis/commission/ 中存在。
  3. 检查矩阵是否每行 9 个字符、行数是否和 size 一致。
  4. 1.12 服务端使用新材质时填写 legacy-material
  5. 执行 /gtcom reload,根据控制台报出的文件和节点修正。

经济不可用

输入 /gtcom debug 查看对应经济 ID:

  • Vault:确认 Vault 和经济插件都已正常启用。
  • PlayerPoints、DreamPoints:确认插件已安装且版本可用。
  • 自定义经济:确认 PlaceholderAPI 已安装,余额变量能返回纯数字,增减命令能由控制台执行。

一条悬赏只能选择当前可用且被模板 economies 允许的经济。不可用经济不会出现在发布选择中。

跨服不同步

  1. 所有子服必须选择相同的 mysqlredis 后端。
  2. 所有子服必须连接同一个数据库或 Redis 库。
  3. storage.key-prefix 必须一致。
  4. storage.cross-server.enabled 必须开启。
  5. 每个子服的 server-id 必须不同,或保持 auto
  6. /gtcom debug 确认没有回退到本地存储。

连接失败时插件会优先保证服务器正常启动,并回退到本地数据。控制台会明确打印连接失败原因,此时不要继续让多个子服各自写本地数据,先修复远程存储连接。