ZaKoStrengthen

ZaKoStrengthen

Equipments can be enhanced through a custom GUI interface, allowing additional attribute boosts to be applied to weapons, armor, and shields.

31 downloads 0 followers

ZaKoStrengthen (Equipment Enhancement Plugin)

A Paper 1.21.10 plugin: Enhance equipment via a custom GUI, adding extra attribute bonuses to weapons/armor/shields. Supports 3-tier failure penalties, protection scrolls, mineral/mystery potions to boost success rate, and chest/fishing item acquisition.

I. Gameplay Overview

Phase Description
Obtain Enhancement Core Chest loot (5%) or admin /sh core
Open Enhancement Interface Right-click while holding Enhancement Core to open 45-slot GUI
Insert Materials Enhancement Template in left slot, equipment to enhance in right slot
Execute Enhancement Click green concrete to execute; success/failure based on level probability
Failure Penalty Levels 1-10: no penalty / Levels 11-20: level down / Levels 21+: destroy (protection scroll auto-activates)
Boost Success Rate Consume Mineral Potion (crafting table) or Mystery Potion for stacking bonuses

II. Core Mechanics

1. Enhancement Stages & Failure Penalties

Stage Level Range Failure Penalty Protection
Safe Zone 1 ~ 10 None Not needed
Level Down Zone 11 ~ 20 Enhancement level -1 Level Protection Scroll (auto-consumed from inventory)
Destroy Zone 21 ~ 100 Equipment destroyed Destroy Protection Scroll (auto-consumed from inventory)
  • Each enhancement consumes 1 Enhancement Template.
  • Success rate is read from level-success-rate config, using the largest configured value <= current level.
  • Mineral Potion and Mystery Potion bonuses are directly added as percentages to the base success rate (stackable).

2. Attribute Bonus System (Stacking)

Enhancement appends additional Minecraft attribute modifiers to equipment, without overwriting original attributes (vanilla default attributes + existing custom attributes + enhancement attributes merged together).

Each equipment type can have multiple attributes configured, each with an independent base-value (per-level bonus) and slot (active slot).

Final Bonus Formula: Bonus = base-value × Enhancement Level

Example: Diamond Sword enhanced to +20, config generic.attack_damage base-value=0.5:

Bonus = 0.5 × 20 = +10 Attack Damage

3. Enhancement GUI Layout (45 Slots)

Row 0: [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass]
Row 1: [Gray Glass] [Template Label] [Template Slot] [Gray Glass] [Gray Glass] [Equipment Label] [Equipment Slot] [Gray Glass] [Gray Glass]
Row 2: [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass]
Row 3: [Gray Glass] [Gray Glass] [Confirm] [Gray Glass] [Status Indicator] [Gray Glass] [Cancel/Close] [Gray Glass] [Gray Glass]
Row 4: [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass] [Gray Glass]
  • Clicking non-interactive slots will be cancelled. Player inventory (>=45 slots) is unrestricted and items can be freely taken.

4. Potion System

Mineral Potions (Crafting Table):

Potion Material Bonus
Iron Ore Potion Raw Iron + Awkward Potion + Gunpowder +3%
Gold Ore Potion Raw Gold + Awkward Potion + Gunpowder +5%
Copper Ore Potion Raw Copper + Awkward Potion + Gunpowder +2%
Diamond Potion Diamond + Awkward Potion + Gunpowder +15%
Netherite Potion Netherite Ingot + Awkward Potion + Gunpowder +20%
Emerald Potion Emerald + Awkward Potion + Gunpowder +10%
Lapis Potion Lapis Lazuli + Awkward Potion + Gunpowder +3%
Redstone Potion Redstone + Awkward Potion + Gunpowder +2%
Coal Potion Coal + Awkward Potion + Gunpowder +1%
Amethyst Potion Amethyst Shard + Awkward Potion + Gunpowder +6%

Crafting Layout (3x3 Crafting Table):

[Empty] [Mineral] [Empty]
[Empty] [Awkward Potion] [Empty]
[Empty] [Gunpowder] [Empty]

Mystery Potion: +25%, stackable with Mineral Potions, cannot stack with itself.

5. Chest Loot

When opening normal chests/trapped chests/barrels/shulker boxes, items are automatically inserted based on probability:

Item Probability
Enhancement Core 5%
Level Protection Scroll 4%
Destroy Protection Scroll 3%

Each chest block is evaluated only once; all items are independently evaluated (a single chest can yield multiple items).

6. Fishing Acquisition

Fishing has an 8% chance to replace the caught item with an Enhancement Template.

III. Items

Item Acquisition Purpose
Enhancement Core Chest (5%) / /sh core Right-click while holding to open enhancement interface
Enhancement Template Fishing (8%) / /sh template Enhancement consumable, 1 consumed per enhancement
Level Protection Scroll Chest (4%) / /sh scroll level Auto-consumed on failure at levels 11-20, prevents level down
Destroy Protection Scroll Chest (3%) / /sh scroll destroy Auto-consumed on failure at levels 21+, prevents destruction
Mystery Potion /sh potion Drinking grants +25% success rate for 30 seconds
Mineral Potion Crafting Table (see table above) Drinking grants corresponding mineral success rate bonus for 30 seconds

IV. Commands

Command Permission Description
/sh core zakostrengthen.give Give Enhancement Core
/sh template zakostrengthen.give Give Enhancement Template
/sh scroll level [amount] zakostrengthen.give Give Level Protection Scroll
/sh scroll destroy [amount] zakostrengthen.give Give Destroy Protection Scroll
/sh potion zakostrengthen.give Give Mystery Potion
/sh give <player> <core|template|level scroll|destroy scroll|potion> [amount] zakostrengthen.give Give item to specified player
/sh setlevel <level> zakostrengthen.admin Set enhancement level of held equipment
/sh info zakostrengthen.admin View enhancement info of held equipment
/sh reload zakostrengthen.admin Reload configuration file
/strengthenreload zakostrengthen.admin Reload configuration file (alias)

V. Configuration File Parameters (config.yml)

Message Text

messages:
  prefix: "&8[&6Strengthen System&8] &r"
  success: "&aEnhancement successful! Current level: &e%level%"
  fail-safe: "&cEnhancement failed, but your equipment was not affected."
  fail-level-down: "&cEnhancement failed! Equipment level dropped to &e%level%"
  fail-destroy: "&cEnhancement failed! Equipment has been destroyed!"
  protect-level: "&eLevel Protection Scroll activated, equipment level preserved."
  protect-destroy: "&eDestroy Protection Scroll activated, equipment preserved. Scroll consumed."
  potion-active: "&aMystery Potion effect activated, success rate +%bonus%%"
  invalid-slot: "&cThis equipment cannot be enhanced!"
  max-level: "&cThis equipment has reached the maximum enhancement level!"
  give-received: "&aYou received %item%"
  set-level-success: "&aSet %item% enhancement level to &e%level%"
  reload-success: "&aConfiguration reloaded!"
  no-permission: "&cYou do not have permission to perform this action."

Placeholders: %level% = Enhancement Level / %item% = Item Name / %bonus% = Bonus Percentage

Success Rate & Stages

level-success-rate:
  1: 100.0    # Level 1 success rate 100%
  10: 91.0    # Level 10 success rate 91%
  20: 70.0    # Level 20 success rate 70%
  25: 55.0    # Level 25 success rate 55%
  50: 11.0    # Level 50 success rate 11%
  100: 0.3    # Level 100 success rate 0.3%
  # Format: level: percentage, uses largest configured value <= current level

max-level: 100

stages:
  stage1-max: 10   # Levels 1-10: no failure penalty
  stage2-max: 20   # Levels 11-20: failure causes level down
  stage3-max: 100  # Levels 21+: failure causes destruction

Enhanceable Equipment Types

Three config sections (equipment-types / intensify-attributes / slot-config) must use identical type names. Default provides 3 types, extendable as needed.

Default Type Names:

Type Name Purpose Default Slot Example Items
weapon Weapons HAND Sword, Axe, Hoe, Bow, Crossbow, Trident, Mace
armor Armor ANY Helmet, Chestplate, Leggings, Boots, Elytra
shield Shields OFF_HAND Shield

Custom Type Example (e.g., distinguishing bows from melee weapons):

equipment-types:
  weapon:
    - "minecraft:netherite_sword"
    - "minecraft:diamond_sword"
  bow:
    - "minecraft:bow"
    - "minecraft:crossbow"
  tool:
    - "minecraft:netherite_pickaxe"
    - "minecraft:diamond_pickaxe"

intensify-attributes:
  weapon:
    - attribute: "generic.attack_damage"
      base-value: 0.5
      slot: "HAND"
  bow:
    - attribute: "generic.attack_damage"
      base-value: 0.3
      slot: "HAND"
  tool:
    - attribute: "generic.mining_efficiency"
      base-value: 0.5
      slot: "HAND"

slot-config:
  weapon: "HAND"
  bow: "HAND"
  tool: "HAND"

The type names across all three sections must be identical, otherwise that type's attribute bonuses and slot config will not take effect.

Custom Attribute Bonuses (Core Config)

intensify-attributes:
  weapon:
    - attribute: "generic.attack_damage"  # Attribute ID
      base-value: 0.5                     # Per-level bonus value
      slot: "HAND"                        # Active slot
    - attribute: "generic.attack_speed"
      base-value: 0.1
      slot: "HAND"
  armor:
    - attribute: "generic.armor"
      base-value: 0.3
      slot: "ANY"  # Applies to helmet/chestplate/leggings/boots
    - attribute: "generic.armor_toughness"
      base-value: 0.15
      slot: "ANY"
  shield:
    - attribute: "generic.max_health"
      base-value: 0.2
      slot: "OFF_HAND"
    - attribute: "player.reach"
      base-value: 0.05
      slot: "OFF_HAND"

Field Descriptions:

Field Description
attribute Minecraft Attribute ID (see table below)
base-value Value added per enhancement level (Final Bonus = base-value × level)
slot Which equipment slot this attribute applies to (see table below, optional; falls back to slot-config if omitted)

Common Attribute IDs:

Attribute ID Description Applicable Types
generic.attack_damage Attack Damage weapon
generic.attack_speed Attack Speed weapon
generic.attack_knockback Attack Knockback weapon
generic.armor Armor armor
generic.armor_toughness Armor Toughness armor
generic.max_health Max Health shield/armor
generic.max_absorption Max Absorption Health armor
generic.knockback_resistance Knockback Resistance armor
generic.explosion_knockback_resistance Explosion Knockback Resistance armor
generic.movement_speed Movement Speed armor
generic.movement_efficiency Movement Efficiency armor
generic.flying_speed Flying Speed armor
generic.follow_range Follow Range weapon
generic.luck Luck armor
generic.scale Entity Scale armor
generic.step_height Step Height armor
generic.fall_damage_multiplier Fall Damage Multiplier armor
generic.safe_fall_distance Safe Fall Distance armor
generic.burning_time Burning Time Multiplier armor
generic.camera_distance Camera Distance armor
generic.block_break_speed Block Break Speed weapon
generic.block_interaction_range Block Interaction Range weapon
generic.entity_interaction_range Entity Interaction Range weapon/shield
generic.mining_efficiency Mining Efficiency weapon
generic.sneaking_speed Sneaking Speed armor
generic.submerged_mining_speed Submerged Mining Speed weapon
generic.sweeping_damage_ratio Sweeping Damage Ratio weapon
generic.spawn_reinforcements Spawn Reinforcements Chance armor
generic.oxygen_bonus Oxygen Bonus armor
generic.water_movement_efficiency Water Movement Efficiency armor
generic.tempt_range Tempt Range armor
generic.jump_strength Jump Strength weapon
generic.waypoint_transmit_range Waypoint Transmit Range armor
generic.waypoint_receive_range Waypoint Receive Range armor
player.reach Reach (= entity_interaction_range) weapon/shield

Slot Options:

Slot Description
HAND Main Hand
OFF_HAND Off Hand
HEAD Helmet
CHEST Chestplate
LEGS Leggings
FEET Boots
ANY All Equipment Slots (helmet/chestplate/leggings/boots/main hand/off hand)

When the slot field is omitted in attribute config, it automatically falls back to the default slot in slot-config for that type. For armor types, set slot: "ANY" to make bonuses apply across all armor pieces.

Potions & Loot

mineral-potion-bonus:
  iron: 3.0        # Success rate bonus for each mineral potion
  diamond: 15.0
  netherite: 20.0
  # ...

mineral-potion:
  duration: 30     # Mineral potion duration in seconds

mystery-potion:
  bonus-rate: 25.0 # Mystery potion bonus

template-drop:
  fishing-chance: 0.08  # Chance to obtain Enhancement Template from fishing

chest-loot:
  enabled: true
  strengthen-core: 0.05
  level-protect-scroll: 0.04
  destroy-protect-scroll: 0.03

Custom Item Appearance

custom-items:
  strengthen-core:
    material: "nether_star"       # Item material
    name: "&6Enhancement Core"    # Display name (supports & color codes)
    lore:                         # Item description
      - "&7Right-click to open enhancement interface"
    custom-model-data: 10000      # Custom model data (for resource pack)
  # ...other items follow the same format

Item identification relies on internal PDC tags; material/name/lore can be freely modified without affecting functionality.

Mineral Potion Crafting Recipes

mineral-potion-recipes:
  iron:
    mineral: "RAW_IRON"          # Crafting material (material ID)
    name: "&7Iron Ore Potion"
    lore:
      - "&7Drink to gain"
      - "&7enhancement success rate &a+3%"
    bonus-rate: 3.0              # Must match mineral-potion-bonus
    custom-model-data: 10010
  # ...other minerals follow the same format

config.yml is only auto-generated on plugin first run. After modification, use /sh reload for hot-reload; if the server already has an older config version, manually add new parameters or delete the file to regenerate.

VI. Technical Notes (Admin Reference)

  • Supports Paper 1.21.10 only (API 1.21), Java 21.
  • Attribute merging implemented via NMS: reads DataComponents.ATTRIBUTE_MODIFIERS (MC 1.21.10 stores default attribute values in this component), merges vanilla default attributes + player custom attributes + enhancement attributes, then writes back to ItemMeta.
  • Enhancement modifiers use deterministic NamespacedKeys (zakostrengthen:strengthen_<attribute>_<slot>), ensuring no identification loss during NMS round-trips.
  • All custom items identified via PDC (PersistentDataContainer) tags, not dependent on item name or lore comparison.
  • Potion effects use PDC tags to prevent same-type stacking; effects auto-remove upon expiration.
  • Chest loot uses TileState PDC tags to prevent duplicate evaluation; each chest block triggers only once.

ZaKoStrengthen (装备强化插件)

一款 Paper 1.21.10 插件:通过自定义 GUI 界面强化装备,为武器/盔甲/盾牌添加额外属性加成。支持 3 阶段失败惩罚、保护卷轴、矿物药水/神秘药水提升成功率,以及宝箱/钓鱼获取道具。

一、玩法总览

阶段 说明
获取强化核心 宝箱战利品(5%)或管理员 /sh core 发放
打开强化界面 手持强化核心右键打开 45 格 GUI
放入材料 左侧放强化模板,右侧放要强化的装备
执行强化 点击绿色混凝土执行,根据等级按概率成功/失败
失败惩罚 1-10 级无惩罚 / 11-20 级掉级 / 21 级+销毁(保护卷自动生效)
提升成功率 饮用矿物药水(工作台合成)或神秘药水叠加加成

二、核心机制说明

1. 强化阶段与失败惩罚

阶段 等级范围 失败惩罚 保护方式
安全区 1 ~ 10 无 不需要
掉级区 11 ~ 20 强化等级 -1 掉级保护卷(背包中自动消耗)
销毁区 21 ~ 100 装备直接销毁 强化保护卷(背包中自动消耗)
  • 每次强化消耗 1 个强化模板。
  • 成功率从 level-success-rate 配置读取,取 <= 当前等级的最大已配置值。
  • 矿物药水和神秘药水的加成在基础成功率上直接加百分比(可叠加)。

2. 属性加成系统(叠加式)

强化为装备追加额外的 Minecraft 属性修饰符,不会覆盖装备原有属性(原版默认属性 + 已有自定义属性 + 强化属性三层合并)。

每个装备类型可配置多个属性,每个属性有独立的 base-value(每级加成)和 slot(生效槽位)。

最终加成公式:加成值 = base-value × 强化等级

示例:钻石剑强化到 +20,配置 generic.attack_damage base-value=0.5:

加成 = 0.5 × 20 = +10 攻击伤害

3. 强化 GUI 布局(45 格)

第0行: [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃]
第1行: [灰玻璃] [强化模板标签] [模板槽位] [灰玻璃] [灰玻璃] [装备标签] [装备槽位] [灰玻璃] [灰玻璃]
第2行: [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃]
第3行: [灰玻璃] [灰玻璃] [确认执行] [灰玻璃] [状态指示] [灰玻璃] [取消关闭] [灰玻璃] [灰玻璃]
第4行: [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃] [灰玻璃]
  • 点击非交互槽位会被取消,玩家背包(>=45 格)不受限制,可自由拿取物品。

4. 药水系统

矿物药水(工作台合成):

药水 材料 加成
铁矿药水 粗铁 + 粗制药水 + 火药 +3%
金矿药水 粗金 + 粗制药水 + 火药 +5%
铜矿药水 粗铜 + 粗制药水 + 火药 +2%
钻石药水 钻石 + 粗制药水 + 火药 +15%
下界合金药水 下界合金锭 + 粗制药水 + 火药 +20%
绿宝石药水 绿宝石 + 粗制药水 + 火药 +10%
青金石药水 青金石 + 粗制药水 + 火药 +3%
红石药水 红石 + 粗制药水 + 火药 +2%
煤炭药水 煤炭 + 粗制药水 + 火药 +1%
紫水晶药水 紫水晶碎片 + 粗制药水 + 火药 +6%

合成摆放(工作台 3x3):

[空] [矿物] [空]
[空] [粗制药水] [空]
[空] [火药] [空]

神秘药水:+25%,可与矿物药水叠加,不可与自身叠加。

5. 宝箱战利品

打开普通箱子/陷阱箱/木桶/潜影盒时,按概率自动放入物品:

物品 概率
强化核心 5%
掉级保护卷 4%
强化保护卷 3%

每个箱子方块只判定一次,所有物品独立判定(一个箱子可同时开出多个)。

6. 钓鱼获取

钓鱼时有 8% 概率将钓到的物品替换为强化模板。

三、物品道具

物品 获取方式 用途
强化核心 宝箱 (5%) / /sh core 手持右键打开强化界面
强化模板 钓鱼 (8%) / /sh template 强化消耗品,每次强化消耗 1 个
掉级保护卷 宝箱 (4%) / /sh scroll level 11-20 级失败时自动消耗,保护不掉级
强化保护卷 宝箱 (3%) / /sh scroll destroy 21 级+失败时自动消耗,保护不销毁
神秘药水 /sh potion 饮用后成功率 +25%,持续 30 秒
矿物药水 工作台合成(见上表) 饮用后对应矿物的成功率加成,持续 30 秒

四、命令

命令 权限 说明
/sh core zakostrengthen.give 获得强化核心
/sh template zakostrengthen.give 获得强化模板
/sh scroll level [数量] zakostrengthen.give 获得掉级保护卷
/sh scroll destroy [数量] zakostrengthen.give 获得强化保护卷
/sh potion zakostrengthen.give 获得神秘药水
/sh give <玩家> <核心|模板|掉级卷|销毁卷|药水> [数量] zakostrengthen.give 给予指定玩家物品
/sh setlevel <等级> zakostrengthen.admin 设置手持装备的强化等级
/sh info zakostrengthen.admin 查看手持装备的强化信息
/sh reload zakostrengthen.admin 重载配置文件
/strengthenreload zakostrengthen.admin 重载配置文件(别名)

五、配置文件参数(config.yml)

消息文本

messages:
  prefix: "&8[&6强化系统&8] &r"       # 消息前缀
  success: "&a强化成功!当前强化等级: &e%level%"
  fail-safe: "&c强化失败,但你的装备没有受到任何影响。"
  fail-level-down: "&c强化失败!装备强化等级下降至 &e%level%"
  fail-destroy: "&c强化失败!装备已被销毁!"
  protect-level: "&e掉级保护卷生效,装备未掉级。"
  protect-destroy: "&e强化保护卷生效,装备未被销毁,保护卷已消耗。"
  potion-active: "&a神秘药水效果已激活,成功率 +%bonus%%"
  invalid-slot: "&c该装备无法进行强化!"
  max-level: "&c该装备已达到最大强化等级!"
  give-received: "&a你获得了 %item%"
  set-level-success: "&a已将 %item% 强化等级设置为 &e%level%"
  reload-success: "&a配置已重载!"
  no-permission: "&c你没有权限执行此操作。"

占位符:%level% = 强化等级 / %item% = 物品名 / %bonus% = 加成百分比

成功率与阶段

level-success-rate:
  1: 100.0    # 1级成功率 100%
  10: 91.0    # 10级成功率 91%
  20: 70.0    # 20级成功率 70%
  25: 55.0    # 25级成功率 55%
  50: 11.0    # 50级成功率 11%
  100: 0.3    # 100级成功率 0.3%
  # 格式: 等级: 百分比,取 <= 当前等级的最大已配置值

max-level: 100

stages:
  stage1-max: 10   # 1-10级 失败无惩罚
  stage2-max: 20   # 11-20级 失败掉级
  stage3-max: 100  # 21级+ 失败销毁

可强化装备类型

三个配置节(equipment-types / intensify-attributes / slot-config)必须使用相同的类型名。默认提供 3 种类型,可自行扩展。

默认类型名:

类型名 用途 默认槽位 示例物品
weapon 武器 HAND 剑、斧、锄、弓、弩、三叉戟、锤
armor 护甲 ANY 头盔、胸甲、护腿、靴子、鞘翅
shield 盾牌 OFF_HAND 盾牌

自定义类型示例(如需区分弓和近战武器):

equipment-types:
  weapon:
    - "minecraft:netherite_sword"
    - "minecraft:diamond_sword"
  bow:
    - "minecraft:bow"
    - "minecraft:crossbow"
  tool:
    - "minecraft:netherite_pickaxe"
    - "minecraft:diamond_pickaxe"

intensify-attributes:
  weapon:
    - attribute: "generic.attack_damage"
      base-value: 0.5
      slot: "HAND"
  bow:
    - attribute: "generic.attack_damage"
      base-value: 0.3
      slot: "HAND"
  tool:
    - attribute: "generic.mining_efficiency"
      base-value: 0.5
      slot: "HAND"

slot-config:
  weapon: "HAND"
  bow: "HAND"
  tool: "HAND"

三个节的类型名必须完全一致,否则该类型的属性加成和槽位配置不会生效。

自定义属性加成(核心配置)

intensify-attributes:
  weapon:
    - attribute: "generic.attack_damage"  # 属性ID
      base-value: 0.5                     # 每级加成值
      slot: "HAND"                        # 生效槽位
    - attribute: "generic.attack_speed"
      base-value: 0.1
      slot: "HAND"
  armor:
    - attribute: "generic.armor"
      base-value: 0.3
      slot: "ANY"  # 头盔/胸甲/护腿/靴子都生效
    - attribute: "generic.armor_toughness"
      base-value: 0.15
      slot: "ANY"
  shield:
    - attribute: "generic.max_health"
      base-value: 0.2
      slot: "OFF_HAND"
    - attribute: "player.reach"
      base-value: 0.05
      slot: "OFF_HAND"

字段说明:

字段 含义
attribute Minecraft 属性 ID(见下表)
base-value 每强化 1 级增加的数值(最终加成 = base-value × 等级)
slot 该属性在哪个装备槽生效(见下表,可选,省略时回退到 slot-config)

常用属性 ID:

属性 ID 说明 适用类型
generic.attack_damage 攻击伤害 weapon
generic.attack_speed 攻击速度 weapon
generic.attack_knockback 攻击击退 weapon
generic.armor 护甲值 armor
generic.armor_toughness 盔甲韧性 armor
generic.max_health 最大生命值 shield/armor
generic.max_absorption 最大吸收生命 armor
generic.knockback_resistance 击退抗性 armor
generic.explosion_knockback_resistance 爆炸击退抗性 armor
generic.movement_speed 移动速度 armor
generic.movement_efficiency 移动效率 armor
generic.flying_speed 飞行速度 armor
generic.follow_range 追踪距离 weapon
generic.luck 幸运值 armor
generic.scale 实体缩放 armor
generic.step_height 跨台阶高度 armor
generic.fall_damage_multiplier 摔落伤害倍率 armor
generic.safe_fall_distance 安全摔落距离 armor
generic.burning_time 燃烧时间倍率 armor
generic.camera_distance 相机距离 armor
generic.block_break_speed 方块破坏速度 weapon
generic.block_interaction_range 方块交互距离 weapon
generic.entity_interaction_range 实体交互距离 weapon/shield
generic.mining_efficiency 挖掘效率 weapon
generic.sneaking_speed 潜行速度 armor
generic.submerged_mining_speed 水下挖掘速度 weapon
generic.sweeping_damage_ratio 横扫伤害比例 weapon
generic.spawn_reinforcements 刷新增援概率 armor
generic.oxygen_bonus 氧气加成 armor
generic.water_movement_efficiency 水中移动效率 armor
generic.tempt_range 诱惑距离 armor
generic.jump_strength 跳跃强度 weapon
generic.waypoint_transmit_range 路标传输距离 armor
generic.waypoint_receive_range 路标接收距离 armor
player.reach 触达距离(= entity_interaction_range) weapon/shield

槽位可选值:

槽位 说明
HAND 主手
OFF_HAND 副手
HEAD 头盔
CHEST 胸甲
LEGS 护腿
FEET 靴子
ANY 所有装备槽位(头盔/胸甲/护腿/靴子/主手/副手都生效)

属性配置中省略 slot 字段时,自动回退到 slot-config 中该类型的默认槽位。盔甲类建议设为 slot: "ANY" 使加成覆盖所有护甲部位。

药水与战利品

mineral-potion-bonus:
  iron: 3.0        # 各矿物药水的成功率加成
  diamond: 15.0
  netherite: 20.0
  # ...

mineral-potion:
  duration: 30     # 矿物药水持续秒数

mystery-potion:
  bonus-rate: 25.0 # 神秘药水加成

template-drop:
  fishing-chance: 0.08  # 钓鱼获得强化模板概率

chest-loot:
  enabled: true
  strengthen-core: 0.05
  level-protect-scroll: 0.04
  destroy-protect-scroll: 0.03

自定义物品外观

custom-items:
  strengthen-core:
    material: "nether_star"       # 物品材质
    name: "&6强化核心"            # 显示名称(支持 & 颜色)
    lore:                         # 物品描述
      - "&7右键打开强化界面"
    custom-model-data: 10000      # 自定义模型数据(配合资源包)
  # ...其他物品同理

物品识别靠内部 PDC 标记,material/name/lore 可自由修改不影响功能。

矿物药水合成配方

mineral-potion-recipes:
  iron:
    mineral: "RAW_IRON"          # 合成材料(材质ID)
    name: "&7铁矿药水"
    lore:
      - "&7饮用后30秒内"
      - "&7强化成功率 &a+3%"
    bonus-rate: 3.0              # 需与 mineral-potion-bonus 一致
    custom-model-data: 10010
  # ...其他矿物同理

config.yml 仅在插件首次运行时自动生成。修改后用 /sh reload 热重载;若服务端已存在旧版配置,需手动添加新参数或删除该文件重新生成。

六、技术说明(管理员参考)

  • 仅支持 Paper 1.21.10(API 1.21),Java 21。
  • 属性合并通过 NMS 实现:读取 DataComponents.ATTRIBUTE_MODIFIERS(MC 1.21.10 属性默认值存储在该组件中),合并原版默认属性 + 玩家自定义属性 + 强化属性,再写回 ItemMeta。
  • 强化修饰符使用确定性 NamespacedKey(zakostrengthen:strengthen_<属性>_<槽位>),确保 NMS 往返不丢失识别。
  • 所有自定义物品通过 PDC(PersistentDataContainer)标记识别,不依赖物品名称或 lore 比对。
  • 药水效果通过 PDC 标记防止同类叠加,过期自动移除。
  • 宝箱战利品通过 TileState PDC 标记防止重复判定,每个箱子方块只触发一次。
Version Minecraft Loader Download

ZaKoStrengthen 4.0.2

4.0.2

1.21.10
paper
Download