Skip to content

GTSkillView 快速开始

GTSkillView 是 GT 系列技能视图与技能释放插件。它负责技能列表、技能学习、技能升级、技能槽绑定、蓝量、技能点、冷却、HUD、客户端 UI 和原版 GUI 释放链路。

技能本体不在 GTSkillView 里写伤害逻辑。主动技能通常交给 MythicMobs 或 SkillAPI 执行,GTSkillView 负责判断等级、蓝量、冷却、条件和绑定槽位,然后调用外部技能。

功能边界

功能说明
技能视图显示玩家可见技能、等级、消耗、冷却、描述
技能学习按条件、权限、技能点、金币、物品判断是否可学习
技能升级按当前等级计算下一等级消耗
技能槽玩家把技能绑定到 1-5 号槽位
技能释放原版鼠标组合、客户端按键、命令、GUI 点击都走同一套释放逻辑
蓝量独立 MP 系统,支持最大值公式、恢复公式、动作栏显示
HUD显示 MP、技能槽、冷却遮罩、倒计时
外部技能支持 MythicMobs、SkillAPI、被动技能占位
UI 路由支持 PaiUI、ArcartX、KongCore、DragonCore、原版 GUI

安装步骤

  1. 安装 GTCore。
  2. 安装 MythicMobs 或 SkillAPI。
  3. 需要变量时安装 PlaceholderAPI。
  4. 使用客户端界面时安装对应 UI 插件,例如 PaiUI、ArcartX、KongCore、DragonCore。
  5. 安装 GTSkillView。
  6. 在 GTCore 中完成授权。
  7. 启动服务器生成 plugins/GTSkillView/
  8. 配置 skills.yml
  9. 执行 /gtsv open 测试界面。

文件位置

text
plugins/GTSkillView/
  config.yml
  skills.yml
  gui.yml
  messages.yml
  client-ui/
    providers.yml
    ax/
      main.yml
      hud.yml
    dragoncore/
      main.yml
    kongcore/
      main.yml
    paiui/
      KeyConfig.yml
      webgui/gtskillview/

config.yml 控制存储、UI 优先级、蓝量、技能点、释放方式、按键和性能。

skills.yml 控制技能分组、技能槽、技能本体、学习条件、升级消耗、释放消耗、冷却、外部技能绑定。

gui.yml 控制原版箱子 GUI。

client-ui/providers.yml 控制 PaiUI、AX、KongCore、DragonCore 的启用、路由、同步和模板路径。

第一次测试

先用默认技能测试整个链路。

  1. 确认 MythicMobs 中存在技能 ThunderSlash
  2. 启动服务器。
  3. 给自己技能点:
text
/gtsv points set 玩家名 10
  1. 打开技能界面:
text
/gtsv open
  1. 学习 雷霆斩
  2. 雷霆斩 绑定到 1 号槽。
  3. 执行:
text
/gtsv cast 1
  1. 确认 MP 扣除、冷却生效、MythicMobs 技能被执行。

客户端 UI 环境下,默认按键是:

槽位默认键
1R
2T
3Z
4X
5C

默认键位只是一套配置。实际按键写在 config.yml -> release.client.bindings 中,不写死在代码里。

最小技能配置

yaml
skills:
  thunder_slash:
    enabled: true
    group: active
    type: active
    name: "&b雷霆斩"
    icon: "DIAMOND_SWORD"
    texture: "textures/gtskillview/thunder_slash.png"
    bind:
      provider: mythicmobs
      id: "ThunderSlash"
      power: "1 + {skill_level} * 0.15"
    max-level: 5
    default-level: 0
    learn:
      conditions:
        - "{level} >= 1"
      costs:
        points: 1
        money: 0
        items: []
    upgrade:
      costs:
        points: "{next_level}"
        money: "{next_level} * 100"
        items: []
    mana: "10 + {skill_level} * 2"
    cooldown: "6 - min({skill_level}, 4) * 0.6"
    conditions:
      - "{skill_level} > 0"

效果:

  • 玩家等级达到 1 级后可以学习。
  • 学习消耗 1 技能点。
  • 每次升级消耗 下一等级 数量的技能点和 下一等级 * 100 金币。
  • 释放时扣除 10 + 技能等级 * 2 MP。
  • 冷却随等级降低。
  • 实际技能调用 MythicMobs 的 ThunderSlash

常用命令

命令说明
/gtsv open打开技能界面
/gtsv hud [玩家]打开 HUD
/gtsv cast <槽位|技能ID>释放技能
/gtsv key <绑定ID> [来源]模拟客户端按键
/gtsv bind <槽位> <技能ID>绑定技能槽
/gtsv unbind <槽位>解绑技能槽
/gtsv upgrade <技能ID>升级技能
/gtsv reset重置技能
/gtsv points <set/add/take> <玩家> <数量>管理技能点
/gtsv mana <set/add> <玩家> <数量>管理 MP
/gtsv reload重载配置

玩家使用流程

  1. 玩家打开技能界面。
  2. 玩家查看可见技能。
  3. 满足条件后学习技能。
  4. 继续投入技能点升级技能。
  5. 将技能绑定到槽位。
  6. 使用客户端按键、原版鼠标组合、GUI 点击或 /gtsv cast 释放技能。
  7. HUD 显示 MP、冷却和槽位状态。

接入外部技能

MythicMobs:

yaml
bind:
  provider: mythicmobs
  id: "ThunderSlash"
  power: "1 + {skill_level} * 0.15"

SkillAPI:

yaml
bind:
  provider: skillapi
  id: "Blink Step"

被动技能:

yaml
type: passive
bind:
  provider: passive
  id: ""

被动技能不会主动调用 MythicMobs 或 SkillAPI。它适合给属性插件、条件、登录动作和后续 GTCore 能力预留使用。

图标路径

原版 GUI 使用 icon

yaml
icon: "DIAMOND_SWORD"
icon: "DIAMOND_SWORD#10001"
icon: "gtitem:thunder_sword"

客户端图片使用 texture

yaml
texture: "textures/gtskillview/thunder_slash.png"

texture 是客户端资源路径。图片文件放在对应客户端资源包里。

验证顺序

按以下顺序排查最快:

  1. /gtsv reload 是否成功。
  2. /gtsv open 是否能打开界面。
  3. 技能是否在界面中可见。
  4. 技能点是否足够。
  5. 学习条件是否满足。
  6. 绑定槽位后 /gtsv cast 槽位 是否成功。
  7. MythicMobs 或 SkillAPI 的技能 ID 是否真实存在。
  8. 客户端 UI 按键是否已经同步到对应插件目录。