Skip to content

GTGem 快速开始

GTGem 是宝石镶嵌系统。它负责识别宝石、识别装备槽位、判断条件、扣除消耗、执行成功率、写入属性和拆卸宝石。

GTGem 不负责“生成宝石物品”。宝石和装备通常由 NeigeItems、MythicMobs 等物品库创建,然后在物品 NBT 中写入 gtgem 数据。

安装步骤

  1. 安装 GTCore。
  2. 安装 Vault 和经济插件,例如 XConomy、CMI Economy。
  3. 安装物品库,推荐 NeigeItems,也可以使用 MythicMobs Items。
  4. 安装属性插件,例如 CraneAttribute、AttributePlus 或 SX-Attribute。
  5. 将 GTGem 放入 plugins
  6. 在 GTCore 配置中填写 GTGem 激活码。
  7. 启动服务器生成配置。
  8. 准备一颗宝石和一件带槽位的装备。
  9. 执行 /gtgem open 测试镶嵌。

最小可用链路

GTGem 正常使用至少需要两件物品:

物品必须包含
宝石gtgem.type: gem、宝石名称、槽位类型、成功率或默认规则
装备gtgem.sockets 槽位列表

测试时建议先做:

  • 一颗 100% 成功率宝石。
  • 一件只有 1 个槽位的装备。
  • 镶嵌消耗为 0。

这样可以先确认识别、GUI、写入属性都正常。

NeigeItems 最小宝石

放入 NeigeItems 物品配置中,文件名按服务器实际 NI 目录决定。

yaml
红宝石:
  material: NETHER_STAR
  amount: 1
  Name: "&6&l红宝石"
  Lore:
    - "§宝§石"
    - "&7一颗用于测试的红宝石"
    - "&7成功率: &e100%"
    - "&7生命值: &a+500"
  nbt:
    gtgem:
      type: "gem"
      name: "&6&l红宝石"
      socket: "&6&l红宝石"
      rules:
        chance: 1.0
        cost:
          money: 0
          exp: 0
      attributes:
        生命值: 500.0

效果:

  • 这是一颗 GTGem 宝石。
  • 只能镶嵌到 &6&l红宝石 槽位。
  • 成功率 100%。
  • 成功后给装备写入 生命值: 500.0

如果要一次做红宝石、蓝宝石、生命宝石、暴击宝石等大量宝石,推荐使用 NeigeItems 的 sectionsweightinherit。公共的 gtgem 结构只写一份,每颗宝石只改名称、槽位、成功率和属性值。完整示例见 使用 NeigeItems 模板批量创建宝石

NeigeItems 最小装备

yaml
红宝石剑:
  material: DIAMOND_SWORD
  Name: "&c&l红宝石之剑"
  Lore:
    - "&7一把带红宝石槽位的剑"
    - "§孔§位 &7[ &c空槽位 &7<&6&l红宝石&7> ]"
  nbt:
    gtgem:
      sockets:
        "0":
          type: "&6&l红宝石"

效果:

  • 这件装备有 1 个红宝石槽位。
  • 上面的红宝石可以镶嵌进去。

MythicMobs 最小宝石

MythicMobs 物品使用扁平 NBT 写法:

yaml
RubyGem:
  Id: NETHER_STAR
  Display: "&6&l红宝石"
  Lore:
    - "§宝§石"
    - "&7成功率: &e100%"
    - "&7生命值: &a+500"
  Options:
    NBT:
      gtgem.type: "gem"
      gtgem.name: "&6&l红宝石"
      gtgem.socket: "&6&l红宝石"
      gtgem.rules.chance: 1.0
      gtgem.rules.cost.money: 0
      gtgem.rules.cost.exp: 0
      gtgem.attributes.生命值: 500.0

MythicMobs 的扁平 NBT 适合基础宝石。复杂规则、列表槽位、动作和拆卸规则更推荐使用 NeigeItems。

MythicMobs 最小装备

yaml
RubySword:
  Id: DIAMOND_SWORD
  Display: "&c&l红宝石之剑"
  Lore:
    - "&7一把带红宝石槽位的剑"
    - "§孔§位 &7[ &c空槽位 &7<&6&l红宝石&7> ]"
  Options:
    NBT:
      gtgem.sockets.0.type: "&6&l红宝石"

玩家使用流程

  1. 玩家获得宝石。
  2. 玩家获得带槽位装备。
  3. 玩家输入:
text
/gtgem open
  1. 在 GUI 中放入装备。
  2. 放入宝石。
  3. 选择槽位。
  4. 点击确认镶嵌。
  5. 成功后装备 Lore 和 NBT 会更新。

镶嵌成功后,装备上的槽位行会变成“已镶嵌”显示。拆卸宝石后,原来的槽位 Lore 会恢复。显示样式可在 config.ymllore-template.socket-filled 中调整,示例见 镶嵌后的 Lore 显示

管理命令

命令用途
/gtgem open打开宝石镶嵌界面
/gtgem open <玩家>为指定玩家打开界面
/gtgem remove打开宝石拆卸界面
/gtgem info打开宝石信息查询界面
/gtgem reload重载配置
/gtgem debug on开启调试
/gtgem debug off关闭调试
/gtgem debug item查看手持物品 NBT

第一次测试

  1. 用上面的 NI 或 MM 示例创建宝石和装备。
  2. 给玩家宝石和装备。
  3. 执行 /gtgem debug item 分别检查手持宝石和装备。
  4. 执行 /gtgem open
  5. 镶嵌宝石。
  6. 再次执行 /gtgem debug item 查看装备是否出现槽位和属性数据。
  7. 如果接入 CraneAttribute,把 GTGemAttr 加入 CA 的 NBT 读取配置。

常见问题

宝石放不进去

检查:

  1. Lore 是否有 §宝§石
  2. NBT 是否有 gtgem.type: gem
  3. /gtgem debug item 是否能看到 gtgem 数据。

装备不识别

检查:

  1. Lore 是否有 §孔§位
  2. NBT 是否有 gtgem.sockets
  3. 槽位中是否有 type

宝石和装备不兼容

宝石的 socket 必须和装备槽位的 type 一致。

宝石:

yaml
socket: "&6&l红宝石"

装备:

yaml
sockets:
  "0":
    type: "&6&l红宝石"

镶嵌成功但属性没生效

检查:

  1. config.ymlattribute.write-to-nbt: true
  2. attribute.tag: "GTGemAttr"
  3. 属性插件是否读取 GTGemAttr
  4. 装备 NBT 中是否已经写入 GTGemAttr