Skip to content

属性、成长、战斗与技能

本页介绍宠物属性、品质加成、潜能点、资源、基础攻击、PVP、技能、倒地和复活。

主要文件:

text
plugins/GTCore/modules/GTPet/attributes.yml
plugins/GTCore/modules/GTPet/skills.yml
plugins/GTCore/modules/GTPet/systems.yml
plugins/GTCore/modules/GTPet/coefficients.yml

选择基础攻击计算方式

systems.yml

yaml
combat:
  damage-calculator: ATTRIBUTE_PLUS

可用值:

用法
ATTRIBUTE_PLUS使用 AttributePlus/AP 计算基础攻击
CRANE_ATTRIBUTE使用 CraneAttribute/CA 计算基础攻击
GTPET使用 GTPet 自带伤害公式

不要填写 AUTO。选择 AP 或 CA 时,对应插件必须已安装。没有属性插件时改为:

yaml
combat:
  damage-calculator: GTPET

保存后执行:

text
/gtpet reload

再收回并重新召唤宠物。

配置 PVP

yaml
combat:
  pvp:
    enabled: false
    friendly-fire: false
  protection:
    reject-unknown: true
字段说明
pvp.enabled是否允许宠物攻击玩家
pvp.friendly-fire是否允许攻击友方玩家
protection.reject-unknown无法确认区域是否允许时拒绝攻击

启用 PVP 后应在测试服检查队伍、区域保护和友军规则。管理员绕过权限为 gtpet.pvp.bypass

配置属性成长

attributes.yml 中每个属性都可以设置每级成长、每点成长和数值范围:

yaml
schema: 3

attributes:
  attack:
    role: ATTACK
    per-level: 0.35
    per-point: 1.0
    min: 0.0
    max: 1000000.0
    provider-sources:
      ATTRIBUTE_PLUS: '物理伤害'
      CRANE_ATTRIBUTE: '物理攻击力'
    equipment:
      names:
        - '攻击'
        - '物理攻击'
        - '物理伤害'
        - '物理攻击力'
      aggregation: SUM
      scale: 1.0
      include-in-total: true
字段说明
role属性用途
per-level每升一级增加多少
per-point每投入一点潜能增加多少
min / max最终值范围
provider-sourcesAP/CA 中使用的精确属性名
equipment.names从装备读取时匹配的属性名
aggregation多件装备的合并方式
scale读取后乘以多少

常用 role

text
ATTACK
DEFENSE
MAX_HEALTH
MAX_MANA
MAX_ENERGY
MAX_RAGE
CRITICAL_CHANCE
DODGE_CHANCE
MOVE_SPEED
GATHER_SPEED
CUSTOM

百分比属性

如果属性插件显示“暴击率 5”,并且 5 表示 5%,配置:

yaml
critical-chance:
  role: CRITICAL_CHANCE
  min: 0.0
  max: 1.0
  equipment:
    names:
      - '暴击率'
    scale: 0.01

读取到 5 后会变为 0.05

配置品质加成

yaml
qualities:
  COMMON:
    attribute-multiplier: 1.0
    level-growth-multiplier: 1.0
    point-multiplier: 1.0
  RARE:
    attribute-multiplier: 1.12
    level-growth-multiplier: 1.10
    point-multiplier: 1.05
    flat:
      attack: 1.0
  LEGENDARY:
    attribute-multiplier: 1.35
    level-growth-multiplier: 1.30
    point-multiplier: 1.20
    flat:
      attack: 4.0
      defense: 2.0
      critical-chance: 0.02
  • attribute-multiplier:基础属性倍率。
  • level-growth-multiplier:等级成长倍率。
  • point-multiplier:潜能点加成倍率。
  • flat:最后追加的固定属性。

配置基因、特质和天赋加成

yaml
sources:
  genes:
    attack:
      A:
        attack: 2.0
      a:
        attack: 0.5
  traits:
    loyal:
      max-health: 2.0
    guardian:
      defense: 3.0
      max-health: 8.0
  talents:
    power_training:
      attack: 3.0

模板基因 A/a 会分别读取 Aa 的加成。特质和天赋 ID 必须与宠物实际拥有的 ID 一致。

分配潜能点

命令:

text
/gtpet grow <宠物短ID> attack 1
/gtpet grow <宠物短ID> max-health 10

也可以打开 /gtpet,进入详情页,再进入成长页点击属性条目。

检查结果:

text
/gtpet pets

或使用 PAPI:

text
%gtpet_first__attribute_attack%
%gtpet_first__attribute_attack_points%

重置属性点

text
/gtpet reset <宠物短ID>

systems.yml

yaml
growth:
  reset:
    base-cost-per-point: 0.0
    cooldown-millis: 2000

base-cost-per-point: 0.0 表示免费重置。修改为正数后,最终价格还会乘以 growth.reset.cost-multiplier

资源池

每只宠物可以拥有:

  • 生命 health
  • 法力 mana
  • 能量 energy
  • 怒气 rage

模板初始值:

yaml
resources:
  health: 24.0
  mana: 80.0
  energy: 100.0
  rage: 100.0

技能消耗和恢复速度在 skills.ymlcoefficients.yml 中配置。列出资源系数:

text
gtpet coefficients resource

完整技能示例

skills.yml

yaml
schema: 1

skills:
  flame_claw:
    display-name: '&c烈焰爪'
    provider: NATIVE_DAMAGE
    target: HOSTILE
    triggers:
      - AUTO_ATTACK
      - ACTIVE
    cost:
      mana: 5.0
      energy: 12.0
      rage: 0.0
    cooldown-ticks: 80
    range: 3.0
    power: 6.0
字段说明
display-nameGUI 和提示中的技能名
provider技能效果类型
target技能目标
triggers自动或主动触发方式
cost法力、能量和怒气消耗
cooldown-ticks冷却;20 tick 约为 1 秒
range目标距离
power伤害、治疗或传给效果的强度

技能效果类型

provider用法
NATIVE_DAMAGE对敌对目标造成伤害
NATIVE_HEAL治疗主人或宠物
MYTHIC施放 MythicMobs 技能
ACTIONS执行动作列表
GROOVY执行 Groovy 脚本

技能目标

target目标
SELF宠物自己
OWNER主人
HOSTILE当前敌对目标

技能触发

trigger触发时机
ACTIVE玩家主动施放
AUTO_ATTACK普通攻击时尝试触发
OWNER_LOW_HEALTH主人低生命时
PET_LOW_HEALTH宠物低生命时
ON_KILL击杀目标时

治疗技能示例

yaml
guardian_heal:
  display-name: '&a守护治愈'
  provider: NATIVE_HEAL
  target: OWNER
  triggers:
    - OWNER_LOW_HEALTH
    - ACTIVE
  cost:
    mana: 20.0
    energy: 0.0
    rage: 0.0
  cooldown-ticks: 200
  range: 12.0
  power: 6.0

MythicMobs 技能示例

yaml
mythic_roar:
  display-name: '&6战吼'
  provider: MYTHIC
  target: HOSTILE
  triggers:
    - ACTIVE
  cost:
    mana: 15.0
    energy: 5.0
    rage: 0.0
  cooldown-ticks: 160
  range: 8.0
  power: 1.0
  mythic-skill: GTPet_Roar

mythic-skill 必须与 MythicMobs 中的技能 ID 完全一致。

动作技能示例

yaml
action_blessing:
  display-name: '&b同行祝福'
  provider: ACTIONS
  target: OWNER
  triggers:
    - ACTIVE
  cost:
    mana: 10.0
    energy: 0.0
    rage: 0.0
  cooldown-ticks: 100
  range: 16.0
  power: 1.0
  actions:
    - '[message]&a你的宠物释放了同行祝福。'

给模板添加技能

yaml
pets:
  fire_wolf:
    skills:
      - id: flame_claw
        level: 1
      - id: guardian_heal
        level: 1

保存后执行 /gtpet reload,发放一只新宠物或让已有宠物通过技能学习获得技能。

施放和学习技能

text
/gtpet skill cast <宠物短ID> flame_claw
/gtpet skill learn <宠物短ID> flame_claw 1

主动技能要求宠物已召唤、技能已学习、目标有效、资源足够且冷却结束。

倒地与复活

宠物生命降到 0 后会进入倒地状态。复活命令:

text
/gtpet revive <宠物短ID>

复活成功后宠物回到已收回状态,需要重新召唤。

寿命

systems.yml

yaml
growth:
  lifespan-active-states:
    - SUMMONED
    - WORKING

列表中的状态会消耗寿命。删除 WORKING 后,工作状态不消耗寿命。

完整验收流程

  1. damage-calculator 设为本服实际使用的模式。
  2. 添加 flame_claw 技能并写入模板。
  3. 执行 /gtpet reload
  4. 发放并召唤测试宠物。
  5. 使用 /gtpet grow 投入攻击和生命属性点。
  6. 查看成长页或 PAPI,确认属性增加。
  7. 使用 /gtpet skill cast,确认资源减少和冷却出现。
  8. 让宠物攻击测试怪物一次,记录扣血。
  9. 让宠物倒地,再使用 /gtpet revive
  10. 使用 /gtpet reset,确认已分配属性点退回。

排错

宠物不攻击

  • 检查姿态是否允许战斗。
  • 检查 combat.pvp.enabled 和区域规则。
  • 检查攻击冷却和能量。
  • AP/CA 模式下确认对应属性插件已安装。

技能无法施放

  • 宠物必须已召唤。
  • 模板或宠物必须拥有该技能。
  • 检查法力、能量、怒气和冷却。
  • HOSTILE 技能需要有效敌对目标。
  • Mythic 技能检查 mythic-skill ID。

属性始终为 0

  • 检查模板 attributes 是否包含该属性。
  • 检查 attributes.yml 的属性 ID 是否一致。
  • 检查装备属性名称是否与实际 Lore/属性插件输出一致。
  • 百分比属性检查是否需要 scale: 0.01