插件变量
LyStrengthen2 会在服务器已安装并启用 PlaceholderAPI 时注册 lyqh 变量扩展。
本页同时整理对外提供的 PlaceholderAPI 变量,以及仅能在插件配置中使用的内部替换符。两类变量的使用位置不同,不能混用。
PlaceholderAPI 变量
槽位强化等级
| 变量 | 返回内容 |
|---|---|
%lyqh_slot_level_插件#槽位% | 返回指定槽位中物品的强化等级 |
变量返回整数:
- 已强化物品返回当前强化等级。
- 空槽位、普通物品或无法识别强化等级的物品返回
0。 - 无法取得玩家对象时返回空字符串。
示例:
text
%lyqh_slot_level_Origin#MainHand%槽位写法
| 槽位来源 | 写法 | 参数说明 |
|---|---|---|
| DragonCore | DragonCore#槽位名 | 槽位名 为 DragonCore 槽位名称 |
| GermPlugin | GermPlugin#槽位名 | 槽位名 为 GermPlugin 槽位标识 |
| APInventory | APInventory#分页id#槽位id | 分页id 为背包分页;槽位id 为 0-53 |
| LyInventory | LyInventory#背包id#类型 | 背包id 为背包标识;类型 为装备类型或槽位类型 |
| LyInventoryReload | LyInventoryReload#背包id#类型 | 用于离渊背包重置版 |
| YeeJewelry | YeeJewelry#背包id#槽位id | 背包id 和 槽位id 由 YeeJewelry 配置决定 |
| PXRPG | PXRPG#类型#背包ID#槽位 | 依次填写装备容器类型、容器 ID 和装备槽位 |
| 原版主手 | Origin#MainHand | 玩家当前主手物品 |
| 原版副手 | Origin#OffHand | 玩家当前副手物品 |
| 原版头盔 | Origin#Helmet | 玩家头盔栏物品 |
| 原版胸甲 | Origin#ChestPlate | 玩家胸甲栏物品 |
| 原版护腿 | Origin#Legging | 玩家护腿栏物品 |
| 原版靴子 | Origin#Boots | 玩家靴子栏物品 |
| 原版背包 | Minecraft#槽位id | 玩家背包槽位,范围为 0-35 |
完整示例
| 目标位置 | 变量示例 |
|---|---|
| DragonCore 指定槽位 | %lyqh_slot_level_DragonCore#武器槽% |
| GermPlugin 指定槽位 | %lyqh_slot_level_GermPlugin#项链% |
| APInventory 饰品分页的第 3 槽 | %lyqh_slot_level_APInventory#饰品#3% |
| LyInventory 饰品背包的项链槽 | %lyqh_slot_level_LyInventory#饰品#项链% |
| LyInventoryReload 饰品背包的项链槽 | %lyqh_slot_level_LyInventoryReload#饰品#项链% |
| YeeJewelry 指定饰品槽 | %lyqh_slot_level_YeeJewelry#饰品#1% |
| PXRPG 指定装备容器槽位 | %lyqh_slot_level_PXRPG#类型#背包ID#槽位% |
| 玩家主手 | %lyqh_slot_level_Origin#MainHand% |
| 玩家副手 | %lyqh_slot_level_Origin#OffHand% |
| 玩家头盔 | %lyqh_slot_level_Origin#Helmet% |
| 玩家胸甲 | %lyqh_slot_level_Origin#ChestPlate% |
| 玩家护腿 | %lyqh_slot_level_Origin#Legging% |
| 玩家靴子 | %lyqh_slot_level_Origin#Boots% |
| 原版背包第 0 槽 | %lyqh_slot_level_Minecraft#0% |
注意
使用 DragonCore、GermPlugin、APInventory、LyInventory、LyInventoryReload、YeeJewelry 或 PXRPG 槽位时,服务器必须存在对应插件及其槽位数据。否则 LyStrengthen2 无法取得目标物品。
变量参数使用下划线 _ 分隔变量结构。自定义槽位名、背包 ID、类型和槽位 ID 中不要包含下划线,否则变量可能无法识别。
强化方案变量
以下内容只能写在强化方案配置中,不是 LyStrengthen2 对外注册的 PlaceholderAPI 变量。
当前强化等级
| 替换符 | 返回内容 | 可用位置 |
|---|---|---|
{level} | 当前正在处理的目标强化等级 | 概率、金币、材料数量、材料条件、强化内容和 NBT 内容 |
例如,玩家正在把装备从 4 级强化至 5 级时,{level} 的值为 5。
yaml
概率: '50+{level}'
消耗金币: '1000*{level}'
材料需求:
- '测试物品#{level}'
强化内容:
- '&c强化等级: {level}'
设置NBT:
属性: '物理攻击+<{level}*10~%.0f>'Lore 取值变量
强化方案的 lore-get-value 可以从物品 Lore 中提取数值,并通过 {v.变量id} 使用该数值。
| 替换符 | 返回内容 |
|---|---|
{v.变量id} | lore-get-value 中对应变量提取到的数值 |
读取不到目标 Lore 或数值时,使用该变量配置的 default-value。
yaml
lore-get-value:
'个体值':
default-value: 1
lore-formula: '&7强化个体值: <value>'
配置:
1:
强化内容:
- '&7最终攻击: <{v.个体值}*{level}~%.2f>'
设置NBT:
物理攻击: '<{v.个体值}*{level}~%.2f>'lore-formula 中的 <value> 表示需要提取的数字所在位置,不是公式计算符。
PlaceholderAPI 变量
强化方案中的以下内容会先解析 PlaceholderAPI 变量,再进行公式计算:
概率消耗金币材料需求中的数量表达式材料需求中的条件表达式强化内容设置NBT的值
服务器未安装 PlaceholderAPI 时,依赖 PlaceholderAPI 的配置内容无法正常解析。
yaml
配置:
1:
概率: '50+%player_level%'
消耗金币: '1000*%player_level%'
材料需求:
- '测试物品#{level}#%player_level% >= 10'公式写法
公式默认写在 < 与 > 之间。左右符号可以通过 config.yml 的 calculate-key-left 和 calculate-key-right 修改。
| 写法 | 说明 |
|---|---|
<公式> | 计算公式并使用默认格式 %.0f 输出 |
<公式~格式> | 计算公式并使用指定数字格式输出 |
<{level}*10~%.0f> | 当前等级乘以 10,不保留小数 |
<{v.个体值}*{level}~%.2f> | Lore 取值乘以当前等级,保留两位小数 |
公式支持项目内计算器能够处理的四则运算。PlaceholderAPI 变量、{level} 和 {v.变量id} 会在计算前完成替换。
VuePress 写法
公式中的尖括号必须放在行内代码或代码块中,例如 <{level}*10~%.0f>,避免被页面解析为 HTML 标签。
材料条件表达式
材料需求可以在第三段填写条件。条件成立时才会显示、检查并扣除该材料。
yaml
材料需求:
- '测试物品#2#{level} >= 10'
- '高级材料#1#%player_level% >= 50 && {level} >= 5'已确认支持的条件运算符:
| 运算符 | 说明 |
|---|---|
> | 大于 |
< | 小于 |
>= | 大于或等于 |
<= | 小于或等于 |
== | 等于 |
!= | 不等于 |
&& | 并且,全部条件成立才通过 |
|| | 或者,任意条件成立即通过 |
相等判断支持数值比较和使用单引号或双引号包裹的字符串比较。
强化按钮替换符
以下替换符用于 config.yml 的 gui.open-button-lore:
| 替换符 | 返回内容 |
|---|---|
%cg | 当前等级的基础强化成功率 |
%qhs | 当前强化石提供的成功率加成 |
%fx | 福星变量计算出的成功率加成 |
%guaranteed | 当前保底提供的成功率加成 |
{guaranteed_now} | 当前强化方案已累计的失败次数 |
{guaranteed_max} | 当前等级触发保底所需的失败次数 |
%vault | 本次强化需要消耗的金币 |
%per | 玩家是否拥有当前等级的强化权限,返回“是”或“否” |
%qh | 插入下一级的 强化内容 预览 |
{fail_result} | 插入本级所有强化失败结果的说明 |
yaml
gui:
open-button-lore:
- '&7是否拥有强化权限: %per'
- '&7基础成功率: %cg'
- '&7强化石加成: %qhs'
- '&7福星加成: %fx'
- '&7保底加成: %guaranteed'
- '&7保底进度: {guaranteed_now}/{guaranteed_max}'
- '&7本次需要金币: %vault'
- ''
- '{fail_result}'
- ''
- '&7下一级属性:'
- '%qh'%qh 和 {fail_result} 会插入多行内容。建议将它们单独配置为一行。
失败结果文本替换符
replace-content 用于生成 {fail_result} 插入的失败结果说明。
| 配置位置 | 替换符 | 返回内容 |
|---|---|---|
replace-content.fail-result-take-level | {chance} | 当前失败结果的触发概率 |
replace-content.fail-result-take-level | {result} | 失败后的等级变化值 |
replace-content.fail-result-no-change | {chance} | 等级不变结果的触发概率 |
replace-content.fail-result-break | {chance} | 物品破碎结果的触发概率 |
yaml
replace-content:
fail-result-head:
- '&7当强化失败时:'
fail-result-take-level:
- '&7有{chance}几率强化等级&6{result}'
fail-result-no-change:
- '&7有{chance}几率强化等级&a不变'
fail-result-break:
- '&7有{chance}几率&c物品破碎'材料展示替换符
材料数量 Lore
用于 gui.need-item-amount-lore:
| 替换符 | 返回内容 |
|---|---|
{need} | 本次强化需要的材料数量 |
{has} | 玩家背包中已有的材料数量 |
yaml
gui:
need-item-amount-lore:
- ''
- '&7需要 {need},你有 {has}'材料名称
用于 gui.need-item-name-replace:
| 替换符 | 返回内容 |
|---|---|
{name} | 材料物品原本的显示名称;无自定义名称时为材料类型名称 |
{amount} | 本次强化需要的材料数量 |
yaml
gui:
need-item-name-replace: '{name}x{amount}'转移界面替换符
用于 gui.zy-button-lore:
| 替换符 | 返回内容 |
|---|---|
%vault | 当前强化转移需要消耗的金币 |
yaml
gui:
zy-button-lore:
- '&7本次转移需要金币: %vault'消息替换符
插件会在部分 msg 消息中替换强化等级。
| 替换符 | 返回内容 | 已确认使用位置 |
|---|---|---|
%lv | 操作后的强化等级或目标等级 | 强化成功、强化失败、装备破碎、转移成功 |
yaml
msg:
强化成功: '强化成功,当前强化等级 %lv'
强化失败: '强化失败,当前强化等级 %lv'
转移成功: '转移成功,当前强化等级 %lv'强化命令替换符
强化方案中的 命令 与 失败命令 支持以下替换符:
| 替换符 | 返回内容 |
|---|---|
%p | 执行强化的玩家名称 |
%item | 强化物品的显示名称 |
%lv | 当前强化等级 |
命令执行身份前缀支持 [player]、[op] 和 [console]。
yaml
命令:
- '[console]bc &d%p &f将 %item 强化至 &6%lv'
失败命令:
- '[console]bc &d%p &f强化 %item 失败,当前等级 &6%lv'福星变量
config.yml 的 福星变量 用于填写一个 PlaceholderAPI 变量。留空时不计算福星加成。
yaml
福星变量: '%自定义变量%'
福星乘法: false每个强化等级通过 福星 配置该等级的福星系数。
福星乘法 | 计算方式 |
|---|---|
false | 福星变量值乘以当前等级的 福星 配置 |
true | 福星变量值乘以 福星 配置,再乘以基础成功率 |
福星变量解析结果必须能够转换为数字,否则无法参与成功率计算。