Skip to content

GTGather 快速开始

GTGather 用来创建采集点。矿石、草药、树木、副本资源、任务采集点、职业采集点,都可以通过“模板 + 生成点”实现。

核心概念

名称说明
模板一类采集点的规则,例如铜矿、寒松木、任务草药
生成点世界中的具体位置,绑定某个模板
展示实体玩家看到的采集点外观,可以是盔甲架、TextDisplay 等
触发条件手持物品、权限、等级、PAPI 条件
采集读条采集需要的时间、进度条、是否可移动
奖励物品、命令、经验、金币等
冷却采集后多久恢复
限制每名玩家或全服在周期内最多采集多少次

安装步骤

  1. 安装 GTCore。
  2. 安装需要的物品库,例如 NeigeItems、MythicMobs Items。
  3. 安装 PlaceholderAPI,方便写等级、权限、职业等条件。
  4. 放入 GTGather。
  5. 在 GTCore 中填写 GTGather 激活码。
  6. 启动服务器生成配置。
  7. 创建模板。
  8. 使用采集工具在游戏里创建生成点。

文件位置

text
plugins/GTGather/
  config.yml
  templates.yml
  spawns.yml

如果版本支持模板目录,也可以把模板拆成多个文件:

text
plugins/GTGather/templates/
  ores.yml
  woods.yml
  dungeon/ice.yml

第一个采集模板

目标:创建一个“点击采集”,右键后给玩家 1 个钻石。

打开:

text
plugins/GTGather/templates.yml

写入:

yaml
templates:
  diamond_test:
    display: "§b§l测试钻石"
    entity-type: TEXT_DISPLAY
    description:
      - "§7右键采集"
      - "§7奖励:钻石 ×1"
    cast:
      enabled: true
      duration: "0"
      cooldown: "10s"
    rewards:
      r1:
        id: DIAMOND
        amount: "1"
        mode: INVENTORY

效果:

  • 世界中显示一个文字采集点。
  • 玩家右键立即完成采集。
  • 奖励直接进入背包。
  • 采集后冷却 10 秒。

使用工具创建生成点

重载:

text
/gtgather reload

获取工具:

text
/gtgather wand

操作流程:

  1. 手持采集点创建工具。
  2. 左键空气,选择 diamond_test 模板。
  3. 对准地面右键,创建生成点。
  4. 右键采集点,确认获得钻石。

默认工具操作:

操作效果
左键空气快速选择模板
右键地面创建生成点
Shift + 右键打开配置面板

手持物品条件

例如:只有手持铁镐才能采集铁矿。

yaml
templates:
  iron_ore:
    display: "§f§l铁矿"
    entity-type: ARMOR_STAND
    display-item: IRON_ORE
    description:
      - "§7需要铁镐采集"
    triggers:
      t1:
        pattern: "*iron_pickaxe*"
    rewards:
      r1:
        id: RAW_IRON
        amount: "1"
        mode: INVENTORY

pattern 支持:

text
diamond
*iron_pickaxe*
*sword*

会匹配物品显示名、Material 名称和通配符。

物品库条件

需要手持 NeigeItems 物品:

yaml
triggers:
  t1:
    id: "ni:warrior_pickaxe"

需要手持 MythicMobs 物品:

yaml
triggers:
  t1:
    id: "mm:GOLD_PICKAXE_TIER_5"

PAPI 条件

例如:30 级以上才能采集。

yaml
triggers:
  t1:
    expression: "%player_level% >= 30"

职业条件:

yaml
triggers:
  t1:
    expression: "%player_class% == WARRIOR"

多个 trigger 是 AND 关系,全部满足才能采集:

yaml
triggers:
  t1:
    id: "ni:warrior_pickaxe"
  t2:
    expression: "%player_level% >= 30"

采集读条

yaml
cast:
  enabled: true
  duration: "3.0"
  progress-bar: BOSS_BAR
  cooldown: "30s"

效果:

  • 采集需要 3 秒。
  • 使用 BossBar 显示进度。
  • 采集后冷却 30 秒。

等级越高采集越快:

yaml
cast:
  enabled: true
  duration: "5 - %player_level% / 20"
  progress-bar: ACTION_BAR
  cooldown: "30s"

表达式会自动求值。结果小于等于 0 时,采集会立即完成。

冷却显示

yaml
cast:
  enabled: true
  duration: "3.0"
  cooldown: "30s"
  cooldown-display:
    name: "§7§l冷却中 {cooldown}"
    display-item: GRAY_STAINED_GLASS_PANE
    cooldown-lines:
      - "§7距刷新还剩 §f{cooldown}"
      - "§8纯数字:{cooldown_seconds} 秒"
    cooldown-format: "mm:ss"

效果:

  • 采集点冷却时换成灰色玻璃。
  • 名称显示剩余时间。
  • 描述行显示冷却倒计时。

奖励写法

原版物品:

yaml
rewards:
  r1:
    id: DIAMOND
    amount: "1"
    mode: INVENTORY

NeigeItems:

yaml
rewards:
  r1:
    id: "ni:ruby"
    amount: "1"
    mode: INVENTORY

MythicMobs:

yaml
rewards:
  r1:
    id: "mm:LEGEND_SWORD"
    amount: "1"
    mode: DROP

命令奖励:

yaml
rewards:
  r1:
    command:
      - "console:eco give %player% 100"
      - "console:xp give %player% 5"
      - "player:me 完成了一次采集"

命令身份:

text
console:  控制台执行
op:       玩家临时 OP 执行
player:   玩家自己执行

数量公式

yaml
rewards:
  r1:
    id: DIAMOND
    amount: "1 + %player_level% / 10"
    mode: INVENTORY

效果:

  • 玩家等级越高,奖励数量越多。
  • 适合职业采集、等级采集、会员加成。

玩家和全服限制

yaml
limit:
  player:
    enabled: true
    count: 5
    period: "1h"
  server:
    enabled: true
    count: 200
    period: "1d"

效果:

  • 每名玩家每小时最多采 5 次。
  • 全服每天最多采 200 次。

完整示例:副本神器矿

yaml
templates:
  mm_legend:
    display: "§c§l神器矿"
    entity-type: ARMOR_STAND
    display-item: "mm:LEGEND_SWORD"
    display-y-offset: -0.5
    description:
      - "§c采集后获得神话装备"
      - "§7需要 30 级和五阶金镐"
    glowing: true
    triggers:
      t1:
        id: "mm:GOLD_PICKAXE_TIER_5"
      t2:
        expression: "%player_level% >= 30"
    cast:
      enabled: true
      duration: "3.0"
      cooldown: "30s"
      cooldown-display:
        name: "§8§l神器矿冷却中"
        display-item: BEDROCK
        display-scale: 0.8
        y-offset: -1.0
    rewards:
      r1:
        id: "mm:LEGEND_SWORD"
        amount: "1"
        mode: DROP
      r2:
        command:
          - "console:say %player% 拿到了神器矿"
          - "op:give %player% diamond 3"
    limit:
      player:
        enabled: true
        count: 1
        period: "12h"

效果:

  • 玩家必须 30 级。
  • 玩家必须手持 mm:GOLD_PICKAXE_TIER_5
  • 采集 3 秒。
  • 冷却 30 秒时展示变成基岩。
  • 奖励掉落一把 MM 神器剑,并额外给 3 个钻石。
  • 每名玩家 12 小时只能采 1 次。

生成点 ID

config.yml 中:

yaml
wand:
  id-format: "spawn_{player}_{counter}_{random4}"

可以改成带模板 ID:

yaml
wand:
  id-format: "{template_id}_{player}_{counter}_{random4}"

支持变量:

text
{player}
{player_uuid}
{template}
{template_id}
{counter}
{date}
{time}
{random4}
{random8}
{uuid4}

也支持 PAPI:

text
%player_name%
%player_world%

ID 支持中文,空格会自动转成下划线。

排查流程

采集点不能采集:

  1. /gtgather reload
  2. 开启 debug.log-trigger
  3. 检查手持物品条件是否通过。
  4. 检查 PAPI 条件是否能解析。
  5. 检查采集点是否在触发范围内。

采集了不给奖励:

  1. 开启 debug.log-reward
  2. 原版物品先测试 DIAMOND
  3. 物品库物品检查 ni:mm: 前缀和真实 ID。
  4. 命令奖励检查命令身份和命令格式。

生成点找不到:

  1. 检查 spawns.yml 是否有对应 ID。
  2. 检查世界名是否正确。
  3. 检查模板 ID 是否存在。
  4. 重启后仍丢失时检查保存权限。