Skip to content

常见问题

装备无法放入强化界面

普通强化不会让玩家手动选择方案。插件会根据装备显示名称,自动检查 strengthen 目录中的全部强化方案。

请依次检查:

检查项说明
equipment-names装备显示名称必须包含其中任意一项,支持 & 颜色符
coefficient至少应有一个被方案引用的 Lore 模板能够在装备上匹配
lore-templates.<模板ID>.match固定文字、颜色、空格和符号必须与装备 Lore 一致
数值位置{数值ID} 对应的内容只能包含数字和小数点
方案冲突如果装备同时符合多个强化方案,插件会拒绝放入并列出冲突方案

coefficient 中引用的模板不是全部必需。插件只处理装备实际拥有并成功匹配的模板 Lore,缺少的模板会跳过。

如果名称符合,但装备上没有任何可用的模板 Lore,则无法生成有效的强化属性预览。

装备提示匹配到多个强化方案

一件装备同时符合多个 strengthen 方案时,插件会拒绝绑定,避免将强化数据写入错误的方案。

检查冲突方案中的以下内容:

  • equipment-names 是否使用了范围过大的名称片段。
  • 不同方案是否引用了相同的 Lore 模板。
  • 不同装备类型是否使用了相同的名称和属性 Lore。
  • 极简方案与普通方案的名称匹配内容是否存在包含关系。

应让每类装备只能符合一个强化方案。可以调整名称匹配内容,或为不同方案使用能够区分装备的 Lore 模板。

装备名称符合要求,为什么仍然无法强化

equipment-names 只是方案识别条件之一。装备还需要拥有至少一条能够被方案 coefficient 引用模板匹配的 Lore。

例如方案同时配置了“攻击属性”“生命属性”和“暴击属性”,装备可以只拥有其中一项或两项。缺少的属性会跳过,成功匹配的属性会正常保存和计算。

如果三种模板都无法匹配,则无法生成有效的强化属性。

装备缺少部分属性 Lore,可以强化吗

可以。强化方案会按装备实际拥有的模板 Lore 处理属性,不要求装备拥有 coefficient 中的全部模板。

例如方案配置:

yaml
coefficient:
  攻击属性: '1.0'
  生命属性: '1.0'
  暴击属性: '1.0'

只有攻击 Lore 的装备只会强化攻击属性;没有匹配到的生命和暴击模板会被跳过。

同一强化方案的各个 level-rules 等级段仍应填写相同的模板名称,避免装备升到不同等级段后出现属性处理不一致。

Lore 看起来相同,为什么仍然无法匹配

Lore 匹配会区分固定文字、颜色、空格和符号。请重点检查:

  • 配置使用的 & 颜色符是否与物品实际颜色一致。
  • 冒号前后、数值两侧是否存在额外空格。
  • 百分号、连字符和其他符号是否一致。
  • {数值ID} 所在位置是否混入了非数字内容。
  • match 是否错误包含了强化后才会生成的额外文字。

match 用于识别并保存装备的原始数值,render 用于生成强化后的显示内容,两者可以使用不同的固定文字、颜色和符号。

例如:

yaml
match: '&7生命值: &f{生命值}'
render: '&7生命值: &f{base:生命值}&7(&b+{加成}&7)'

同一个 Lore 模板匹配到多条 Lore,会怎样处理

插件会为每条成功匹配的 Lore 分别保存和计算数值。同一个模板命中的多条 Lore 不会共用同一份原始值。

公式中的 {base:数值ID} 只能读取当前模板、当前 Lore 序列保存的原始值,不能读取其他模板或其他 Lore 序列的数据。

修改 Lore 模板 ID 后,旧装备无法正常使用

lore-templates 下的模板 ID 会参与强化数据标记和数值保存。模板投入使用后不应随意更名。

修改模板 ID 可能导致已经强化过的装备无法继续读取原有数据。需要调整显示内容时,优先修改模板内部的 matchrendervalues 或公式,不要直接重命名正在使用的模板 ID。

模板 ID 和数值 ID 都不能包含英文冒号 :

装备降回 0 级后,属性会怎样处理

插件首次识别装备时,会保存 match 捕获到的原始数值。装备降到 0 级后,会使用保存的原始值恢复对应 Lore。

如果旧装备的强化数据标记、模板 ID 或相关 Lore 已被其他插件修改,可能无法正常恢复或继续强化。

转移方案配置 destroy-source-item: false 时,来源装备会保留并恢复为 0 级,同样会使用已经保存的原始属性值重新生成 Lore。

强化后的装备名称不正确

强化后的名称由 config.yml 中的 strengthen-name-format 控制:

变量内容
{name}装备原名称
{level}当前强化等级

默认格式为:

yaml
strengthen-name-format: '{name} &e+{level}'

如果名称出现重复等级文本,请检查装备原名称中是否已经包含由其他插件添加的强化等级。

强化材料无法识别

材料格式为 物品库@物品ID#数量。如果省略 物品库@,插件会读取 config.ymlitem-provider

例如:

yaml
need-items:
  - 'MythicMobs@示例强化材料#2'

请检查:

检查项说明
物品库名称必须是插件支持的物品来源
物品 ID必须能被对应物品库正常读取
数量写在 # 后,并且应为有效数量
默认物品库未写前缀时检查 item-provider
物品显示名称统计和扣除材料时按显示名称匹配

可配置的默认物品库名称包括:

名称说明
MythicMobsMythicMobs 物品
LyItemSaveMythicMobs 名称互通
AzureFlowAzureFlow 物品
NeonFlashNeonFlash 物品
SX-ItemSX-Item 物品
NeigeItemsNeigeItems 物品
OriginAttributeOriginAttribute 物品

item-provider 留空时默认使用 MythicMobs

材料明明足够,界面却显示不足

普通材料按物品显示名称匹配。请确认玩家持有的物品与物品库生成的目标材料名称一致,包括颜色和其他格式。

插件会按以下顺序查找并扣除材料:

  1. 战利品仓库。
  2. LyWarehouse。
  3. 空间戒指。
  4. 玩家背包。

只有服务器实际安装并正常启用了对应功能来源时,相关位置中的物品才可能被识别。

界面材料槽可使用以下变量排查:

变量内容
{need}需要数量
{current}当前识别数量
{enough}数量是否足够的状态文字

为什么强化时没有扣除金币

只有当前目标等级规则配置了 need-money,并且公式计算结果大于 0 时,才需要扣除 Vault 金币。删除 need-money 时默认不需要金币。

同时检查服务器是否安装并正常启用了 Vault 及可用的经济插件。Vault 属于软依赖,不使用金币消耗时不要求安装。

如果本次使用了有效的通用强化材料,则不会扣除 Vault 金币、额外货币和普通材料。

为什么额外货币没有生效

额外货币配置在强化等级规则或转移关系的 need-currency 中:

标识格式对应来源
pointPlayerPoints
lyshop@货币IDLyShop 货币
cx@变量IDCraftX 变量货币

请确认:

  • 对应插件已经安装并正常启用。
  • 货币 ID 与实际配置一致。
  • 货币数量公式能够正常计算。
  • 计算后的整数数量大于 0
  • 当前操作命中了包含该 need-currency 的等级规则或转移关系。

删除整个 need-currency 时,所有额外货币都按 0 处理。

currency-display.names 只控制界面中的显示昵称,不会修改实际使用的货币标识。昵称匹配忽略大小写,但建议与 need-currency 中的完整标识保持一致。

使用通用材料后,为什么没有扣除其他消耗

这是通用强化材料的正常效果。玩家在强化界面的专用槽位放入有效通用材料后,本次强化不会消耗:

  • Vault 金币。
  • need-currency 配置的额外货币。
  • need-items 配置的普通材料。

每次真正执行强化会消耗一个通用材料。通用材料必须满足物品显示名称完全匹配,并且本次准备到达的目标等级处于其 level-range 范围内。

通用强化材料无法使用

请检查强化方案中的 universal-materials

配置项要求
match必须与物品显示名称完全相同,颜色符使用 &
level-range必须包含本次准备到达的目标等级
放置位置必须放入强化界面的通用材料专用槽位

level-range 可以填写单个等级,也可以填写连续范围:

yaml
universal-materials:
  示例通用材料:
    match: '&d示例通用强化材料'
    level-range: '1-8'

这里的等级指目标等级。例如装备当前是 7 级,准备强化到 8 级时,需要匹配等级 8

权限成功率没有叠加

permission-chance 会检查玩家拥有的全部配置权限,但只采用 chance 数值最高的一项,不会把多个权限数值相加。

默认示例权限为:

权限加成值
lygalaxystrengthen.chance.vip10.10
lygalaxystrengthen.chance.vip20.20

权限加成为乘法提高基础成功率:

text
权限加成后的成功率 = 基础成功率 × (1 + chance)

例如基础成功率为 40%,权限配置的 chance0.10,权限加成后为 44%,即实际增加 4 个百分点。

最终成功率是怎样计算的

成功率按以下顺序处理:

  1. 计算当前目标等级的基础 chance
  2. 应用玩家拥有的最高一项权限成功率加成。
  3. 根据装备的连续失败次数应用失败保底。
  4. 将最终结果限制在 0%100%

强化界面中的以下变量用于分别显示计算结果:

变量内容
{base_chance}基础成功率
{permission_contribution}权限实际增加的百分点
{guarantee_contribution}保底实际增加的百分点
{chance}最终成功率

失败保底为什么没有增加成功率

检查当前目标等级的规则是否配置了 failure-guarantee,以及装备保存的连续失败次数是否命中了对应范围。

范围可以写成:

写法含义
'3'第 3 次连续失败
'1-2'第 1 至第 2 次连续失败
'5-max'从第 5 次连续失败开始

不同范围不能重叠。未匹配到任何范围时,不会增加成功率。

此外,金币、额外货币或普通材料不足时,强化没有真正执行,因此不会增加连续失败次数。

failure-guarantee-mode 的两种模式有什么区别

模式计算方式示例
add直接增加成功率百分点40%8 后为 48%
multiply成功率乘以配置倍率40%1.10 后为 44%

该设置由所有强化方案共用。修改模式后,应同时检查各等级规则中的保底数值是否仍符合预期。

默认示例使用:

yaml
failure-guarantee-mode: 'add'

连续失败次数什么时候增加或清零

  • 强化进入成功率判断并失败后,连续失败次数增加 1
  • 强化成功后,连续失败次数清零。
  • 保护石生效时仍属于强化失败,因此仍会增加失败次数。
  • 金币、额外货币或普通材料不足时,强化尚未真正执行,不增加失败次数。

失败次数保存在装备中,而不是按玩家单独保存。将装备交给其他玩家不会重新计算失败次数。

强化失败后为什么没有降级

强化失败结果由当前等级规则的 failure-results 随机选择。支持的结果包括:

配置值结果
0等级不变
-1降低 1 级
-2降低 2 级
break装备被破坏

# 后的数字是随机权重。权重越大,结果越容易被选中,不要求总和等于 100

例如:

yaml
failure-results:
  - '0#70'
  - '-1#25'
  - 'break#5'

如果玩家放入了当前目标等级允许使用的保护石,强化失败时不会降级或破坏装备。

保护石为什么无法放入或没有生效

保护石必须满足以下条件:

  • 当前目标等级所在规则配置了 protection-item
  • 保护石显示名称与配置内容完全一致。
  • 颜色、空格和符号一致。
  • 保护石放入强化界面的保护石专用槽位。

保护石只在强化失败时防止降级或破坏,不会提高成功率,也不会让强化必定成功。

如果失败结果原本就是等级不变,保护石不会产生额外的等级效果。

保护石什么时候消耗

config.ymlprotection-item-consume 控制:

配置值消耗时机
failure只有强化失败时消耗
always只要真正执行强化,无论成功或失败都消耗

默认示例为:

yaml
protection-item-consume: 'failure'

金币、额外货币或普通材料不足而未真正执行强化时,不会进入正常强化结算。

强化达到最高等级后还能继续强化吗

不能。装备达到所属强化方案的 max-level 后,界面状态会显示已达强化上限,不再生成更高等级的强化预览。

同时检查 level-rules 是否从 1 级连续覆盖到 max-level。等级规则不能漏级,也不能重复覆盖同一个目标等级。

例如 max-level: 10 时,可以使用 1-56-10 两段,但不能遗漏第 6 级或让两个范围同时包含第 5 级。

强化直升券无法识别

直升券通过 strengthen-direct 目录中方案的 match 识别,匹配方式为物品显示名称包含匹配。

请检查:

  • 直升券名称是否包含方案的 match 内容。
  • 颜色符是否一致。
  • 方案 id 是否与其他直升方案重复。
  • target-level 是否没有超过装备强化方案的 max-level
  • 装备是否属于 strengthen-schemes 允许的强化方案。

strengthen-schemes: [] 表示允许所有强化方案使用该直升券。

强化直升无法执行

用于直升的装备必须已经拥有强化数据,并且当前等级低于直升方案的 target-level

即使装备名称和 Lore 能匹配普通强化方案,尚未写入强化数据的全新装备也不能直接使用直升券。

还应检查:

检查项要求
装备方案必须在 strengthen-schemes 允许范围内
当前等级必须低于 target-level
目标等级不能超过装备方案的 max-level
直升券显示名称必须包含方案的 match

直升失败后为什么仍然消耗了直升券

所有前置检查通过后,操作才会进入成功率判断。一旦进入成功率判断,无论最终成功还是失败,都会消耗一张直升券。

如果装备、直升券或方案条件在检查阶段不符合要求,则不会进入有效操作。

强化转移无法执行

强化转移需要同时满足以下条件:

条件要求
来源装备已有强化数据
目标装备已有强化数据
等级关系来源等级高于目标等级
方案关系来源与目标方案存在于 transfer-strengthen-schemes 的允许关系中
等级上限来源等级不能超过目标强化方案的 max-level
操作消耗金币、额外货币和普通材料满足方案要求

如果来源等级不高于目标等级,或来源等级超过目标方案能够接收的最高等级,转移不会执行。

转移后的等级为什么低于来源等级

转移时会根据 level-loss.minlevel-loss.max 随机扣除强化等级,两个边界都包含在随机范围内。

例如:

yaml
level-loss:
  min: 0
  max: 4

可能随机损失 01234 级。转移结果最低为 1 级。

界面中的结果预览显示可能得到的等级范围,实际等级会在点击转移时随机确定。

转移后来源装备为什么消失了

来源装备的处理方式由转移方案的 destroy-source-item 控制:

配置值处理结果
true转移成功后来源装备消失
false来源装备保留,但强化等级恢复为 0 级

修改该配置前,应确认服务器希望采用哪种装备回收规则。

转移材料或货币无法扣除

转移关系可以分别配置 need-moneyneed-itemsneed-currency。请确认当前来源方案与目标方案命中了正确的转移关系。

配置项用途
need-moneyVault 金币
need-items普通材料,格式为 物品库@物品ID#数量
need-currency.pointPlayerPoints 点券
need-currency.lyshop@货币IDLyShop 货币
need-currency.cx@变量IDCraftX 变量货币

转移方案中的 {level} 表示来源装备等级。删除对应配置时,该项默认不消耗。

GUI 中的材料数量或状态文字显示不正确

材料展示使用以下变量:

变量内容
{need}需要数量
{current}当前识别数量
{enough}数量是否足够的状态文字

{enough} 的显示内容由 config.yml 的以下配置控制:

yaml
material-enough-texts:
  enough: '&a√'
  not-enough: '&c×'

两项支持 & 颜色符,留空可以隐藏对应状态文字。

如果 {current} 数量不正确,应优先排查材料物品库、物品显示名称以及物品所在存储位置是否能够被插件识别。

GUI 标题中的 PlaceholderAPI 变量没有替换

强化、直升和转移界面的标题支持 PlaceholderAPI 变量,但 PlaceholderAPI 属于软依赖。

请确认:

  • 服务器已经安装并正常启用 PlaceholderAPI。
  • 对应变量扩展可用。
  • 变量写法正确。
  • 变量所属插件已经正常加载。

未安装 PlaceholderAPI 时,不应依赖其变量完成界面标题显示。

GUI 布局修改后出现空槽或按钮失效

GUI 的 button 节点用于将固定功能映射到 layout 字符,slot 节点用于设置对应字符的显示物品。

请检查:

  • 每行 layout 最多包含 9 个字符。
  • layout 最多包含 6 行。
  • button 右侧填写的字符存在于 layout 中。
  • slot 节点名称与 layout 使用的字符一致。
  • 不要修改 button 左侧的固定按钮名称。
  • 材料槽字符出现几次,界面最多就能展示几种材料。

例如普通强化界面的 equipment: A 表示字符 A 是待强化装备槽,必须同时在 layoutslot.A 中存在。

GUI 的 template 会修改真实物品吗

不会。GUI 配置中的 template 只会临时追加到界面内物品的显示 Lore,不会直接修改玩家放入的真实物品。

普通强化、直升和转移界面都使用这一规则。关闭界面或取回物品后,不应保留仅用于界面提示的 template 内容。

强化脚本没有执行

强化脚本配置在等级规则的 scripts 下。请检查:

检查项说明
type必须与本次强化结果类型一致
condition表达式必须计算为通过;未填写时默认通过
定位 Lore插入、替换或删除操作必须找到第一条精确匹配的可见 Lore
YAML 字符串整条脚本建议使用双引号,函数中的 Lore 使用单引号
PlaceholderAPI脚本中使用相关变量时,需要对应插件和变量可用

可用的触发类型包括:

类型触发时机
attempt完成扣费后的任意强化结果
success强化成功
failure任意概率失败
protected-failure保护石生效
unchanged-failure失败但等级不变
downgrade-failure失败并降级
break-failure失败并破坏装备
cost-insufficient金币、额外货币或普通材料不足,且尚未扣除内容

插件会先完成整次强化结算和全部条件判断,再统一修改 Lore,最后执行指令。

cost-insufficient 脚本为什么没有触发

cost-insufficient 只对应金币、额外货币或普通材料不足的情况,并且此时尚未扣除任何内容。

请确认失败原因确实属于消耗不足,而不是以下情况:

  • 装备没有匹配到强化方案。
  • 装备同时匹配多个方案。
  • 已达到最高等级。
  • 保护石或通用材料不符合配置。
  • GUI 槽位或方案配置加载失败。

Lore 插入、替换或删除脚本没有效果

Lore 定位会忽略插件添加的隐藏标记,并精确匹配第一条符合条件的可见 Lore。没有找到定位 Lore 时,该条脚本会直接跳过。

请检查定位内容的颜色、空格和符号是否与装备上的可见 Lore 完全一致。

脚本动作应使用对应格式:

yaml
action:
  - "添加lore('&a新增内容')"
  - "插入lore前(定位lore('&7原有内容'), '&a插入内容')"
  - "插入lore后(定位lore('&7原有内容'), '&a插入内容')"
  - "替换lore(定位lore('&7原有内容'), '&a新的内容')"
  - "删除lore(定位lore('&7不再需要的内容'))"

替换强化属性 Lore 时会保留强化数据标记。删除强化属性 Lore 可能导致装备缺少方案可处理的属性,后续无法继续正常强化该属性。

强化脚本的条件变量不正确

脚本 condition 可使用以下强化状态变量:

变量内容
{highest_level}本次操作开始前保存的历史最高等级
{before_level}本次操作前的强化等级
{current_level}本次结算后的当前等级
{target_level}本次尝试到达的目标等级
{failure_count}连续失败次数
{level_change}本次结算产生的等级变化

条件支持 &&||><>=<===!= 和四则运算,也可以使用可用的 PlaceholderAPI 变量。

{highest_level} 表示操作开始前已经保存的历史最高等级,不是本次操作完成后的最高等级。

脚本指令没有执行

脚本支持以下指令动作:

动作执行身份
控制台指令('指令内容')控制台
管理员指令('指令内容')玩家临时以管理员身份执行,结束后恢复原状态
玩家指令('指令内容')玩家

请检查:

  • 指令内容是否省略了开头的斜杠。
  • 脚本 typecondition 是否已经通过。
  • 使用的 PlaceholderAPI 变量是否能够正常解析。
  • 指令对应插件是否已加载。
  • 控制台是否记录了指令执行错误。

公式计算结果异常

强化成功率、金币、额外货币数量、强化系数和 Lore 数值均可能使用公式。请检查公式中是否只使用对应位置支持的变量。

常见规则:

  • 强化等级规则支持使用 {level}
  • 转移消耗公式中的 {level} 表示来源装备等级。
  • Lore 数值公式使用 {base:数值ID} 读取当前 Lore 保存的原始值。
  • Lore 数值公式和渲染内容可以使用 {nbt:节点路径} 读取装备 NBT。
  • NBT 节点不存在时按 0 处理。
  • 从 NBT 读取到的字符串必须是可计算内容,才能用于公式。
  • 模板 ID 和数值 ID 不能包含英文冒号 :
  • Lore 公式不能读取其他模板或其他 Lore 序列保存的数值。

强化等级公式支持小数、括号以及 +-*/%^

数值显示精度由对应的 values.<数值ID>.format 控制:

格式效果
%.0f不显示小数
%.1f保留一位小数

NBT 变量一直显示或计算为 0

NBT 变量格式为 {nbt:节点路径},点号表示逐级进入下一层节点,例如:

text
{nbt:节点a.节点b.节点c}

出现 0 时请检查:

  • 节点路径是否正确。
  • 目标节点是否确实存在于当前装备。
  • 节点内容是否为数值或可参与计算的字符串。
  • 节点是否由其他插件在当前操作前写入。

节点不存在时,插件会按 0 显示或计算。

修改配置后没有生效

由管理员执行:

text
/lgs reload

如果重载失败,根据控制台和指令返回的错误修正配置。重载失败时,当前已经成功加载的数据会继续生效,不会替换为错误配置。

重点检查:

  • YAML 缩进是否正确。
  • 强化、直升和转移方案的 id 是否重复。
  • level-rules 是否完整覆盖 1max-level,且没有重叠。
  • 各等级段的 coefficient 模板名称是否一致。
  • coefficient 引用的 Lore 模板是否存在。
  • 公式、等级范围和失败保底范围是否有效。
  • 直升方案的 target-level 是否超过装备方案的 max-level
  • GUI 的 button 字符是否存在于 layout 中。
  • GUI 的 slot 节点是否与布局字符一致。

重载配置后,已打开的界面为什么没有立即变化

重载用于重新读取配置。已经打开的强化、直升或转移界面可能仍保留打开时的显示状态。

关闭当前界面并重新打开,使界面按重载后的配置重新生成。

关闭界面后,放入的装备或材料会丢失吗

界面中的装备、保护石、通用材料和直升券属于玩家实际放入的物品;GUI 配置中的 template 只用于临时显示,不会直接修改真实物品内容。

如果出现物品未返回、数量异常或重复,应立即保留以下信息:

  • 控制台完整报错。
  • 玩家名称和操作时间。
  • 操作前后的装备名称、Lore 和数量。
  • 使用的强化、直升或转移方案。
  • 当时放入的保护石、通用材料、直升券和普通材料。

出现异常后应停止继续操作相关界面,避免物品状态进一步变化。