Skip to content

附魔上限

所属:服主指南 · 相关:物品定义

QI 可以限制单件物品的附魔总等级(所有附魔等级之和),在铁砧 / 附魔台时强制执行。配置文件:plugins/QinhItems/enchant_limits.yml


1. 概念

附魔总等级 = 一件物品上所有附魔等级相加。 例:锋利 V(5) + 耐久 III(3) + 火焰附加 II(2) = 10

优先级:物品显式 enchant_max_total_level > 按类型 / 品质自动计算。

自动计算公式

有效上限 = min(type_defaults[物品类型], tier_defaults[物品品质])

2. enchant_limits.yml 结构

yaml
type_defaults:
  # 各类型上限
  weapon: 50
  armor: 40
  helmet: 40
  chestplate: 40
  leggings: 40
  boots: 40
  shield: 30
  bow: 40
  crossbow: 40
  trident: 40
  fishing_rod: 25
  tool: 40
  shears: 15
  flint_and_steel: 10
  elytra: 30
  horse_armor: 30
  ring: 25
  necklace: 25
  bracelet: 25
  accessory: 25
  gem: 0              # 不可附魔
  material: 0
  consumable: 0
  food: 0
  scroll: 0
  misc: 20

tier_defaults:
  # 各品质上限(与类型上限取较小值)
  TRASH: 5
  COMMON: 10
  UNCOMMON: 18
  RARE: 25
  VERY_RARE: 30
  LEGENDARY: 40
  EPIC: 45
  MYTHICAL: 50
  MAGICAL: 35
  UNIQUE: 55

3. 计算示例

物品类型上限品质上限有效上限
LEGENDARY 武器weapon=50LEGENDARY=40min=40
RARE 戒指ring=25RARE=2525
MYTHICAL 胸甲chestplate=40MYTHICAL=50min=40

未映射的类型 / 品质默认回退 30。


4. 物品级覆盖

在物品定义里写 enchant_max_total_level 直接指定,覆盖自动计算:

yaml
my_sword:
  enchantments:
    sharpness: 5
  enchant_max_total_level: 12      # 这把剑最多 12 级附魔总和

5. 执行机制

EnchantLimitAnvilListener 在玩家用铁砧 / 附魔台给物品加附魔时,检查是否超过有效上限,超了则阻止。EnchantmentLimitsConfig 在启动时从 enchant_limits.yml 加载,/qi reload 时重载。


下一步