配置说明
LyAlchemy 的主配置位于 plugins/LyAlchemy/config.yml。丹方、丹药和四个 GUI 使用独立目录保存。执行 /lyld reload 会重新读取这些配置;mysql.enable 只在插件启动时决定存储模式,修改后必须重启服务器。
文件位置
| 路径 | 说明 |
|---|---|
config.yml | 物品解析、奖励投递、玩家数据、属性、探索、权限倍率、GUI 文本、消息和音效 |
recipe/*.yml | 丹方配置,最外层节点为丹方 ID |
item/*.yml | 丹药配置,最外层节点为丹药 ID |
gui/丹方界面.yml | 已学丹方列表界面 |
gui/丹药界面.yml | 已服用丹药列表界面 |
gui/炼制界面.yml | 丹方炼制、材料展示和奖励领取界面 |
gui/探索界面.yml | 未知丹方探索界面 |
playerdata/<玩家UUID>.yml | YAML 存储模式下的玩家数据,同时保留 .bak 备份 |
LyAlchemy_player_data | MySQL 存储模式下的玩家数据表 |
主配置 config.yml
物品库与奖励投递
yaml
item-provider: ''
delivery-order:
- 'LyLootsWarehouse'
- 'LyWarehouse'
- 'SpaceRingPlus'
- 'StarStorage'
- 'inventory'| 配置项 | 说明 |
|---|---|
item-provider | 丹方材料和丹药产物未填写物品库前缀时使用的默认物品库。留空时默认使用 MythicMobs |
delivery-order | 炼制奖励的投递顺序,从上到下依次尝试 |
材料和丹药产物可以使用 物品库@物品ID 明确指定来源,也可以省略前缀并使用 item-provider。支持的物品库包括:
MythicMobs、LyItemSave、AzureFlow、NeonFlash、SX-Item、NeigeItems、OriginAttribute。
MythicMobs 与 LyItemSave 同时启用时:
MythicMobs@物品ID优先查询 MythicMobs,找不到时回退 LyItemSave。LyItemSave@物品ID优先查询 LyItemSave,找不到时回退 MythicMobs。- 只启用其中一个物品库时,两个前缀都可以访问已启用的物品库。
delivery-order 只支持以下目标:
| 目标 | 说明 |
|---|---|
inventory | 玩家背包 |
LyLootsWarehouse | LyLootsWarehouse 仓库 |
LyWarehouse | LyWarehouse 仓库 |
SpaceRingPlus | SpaceRingPlus 仓库 |
StarStorage | StarStorage 仓库 |
未安装或未启用的仓库会自动跳过。列表为空或过滤后没有有效目标时,默认使用 inventory。所有目标处理后仍有剩余奖励时,物品会掉落在玩家位置。
GUI 槽位、丹方图标和丹药图标只使用原版物品 ID,例如 262:0、PAPER:0 和 APPLE:0,不使用物品库,也不支持 Vanilla@。物品库规则只适用于丹方材料和丹药实际产物。
玩家数据与存储模式
yaml
loop-save-thread-time: 6000
mysql:
enable: false
databasename: mc2
username: mc2
password: mc1234
port: 3306
ip: 127.0.0.1| 配置项 | 说明 |
|---|---|
loop-save-thread-time | YAML 自动保存间隔,单位为秒。设置为 0 或负数时关闭自动保存 |
mysql.enable | false 使用 YAML,true 使用 MySQL。只在启动时读取,修改后必须重启服务器 |
mysql.databasename | MySQL 数据库名 |
mysql.username | MySQL 用户名 |
mysql.password | MySQL 密码,正式环境应修改默认值 |
mysql.port | MySQL 端口 |
mysql.ip | MySQL 地址 |
启用 MySQL 存储时,必须安装并启用 LyMySQLCore,并且数据库连接和表初始化成功后玩家数据读写才会生效。连接或初始化失败时插件会卸载,不会自动回退到 YAML。
YAML 数据位于 playerdata/<玩家UUID>.yml。保存时使用临时文件、.bak 备份和原子替换;主文件损坏时会尝试从备份恢复。
MySQL 模式使用 LyAlchemy_player_data 表,玩家名称作为主键,data 字段保存与 YAML 文件相同的完整数据文本。玩家改名后会产生新的数据行,不会自动迁移旧名称的数据。
两种模式都会保存以下数据:
| 数据节点 | 说明 |
|---|---|
learned-recipes | 玩家已学会的丹方 ID |
recipe-progress | 各丹方独立的熟练度等级和经验 |
medicine-counts | 各丹药累计服用次数 |
exploration-cooldown-until | 探索冷却截止时间,单位为 Unix 毫秒时间戳 |
crafting-task | 当前唯一炼制任务 |
crafting-task.status 支持 CRAFTING、READY 和 CLAIMING:
CRAFTING:炼制等待中。READY:炼制完成,等待玩家领取。CLAIMING:奖励正在领取或领取已加锁。
CLAIMING 状态会在服务器重启后保持锁定,不会自动再次领取。需要先核对奖励投递结果,再处理该任务。循环开关只存在当前在线会话,不写入存档;关闭炼制界面或退出后不会恢复循环。
属性与探索时间
yaml
attribute-plugin: 'AttributePlus'
exploration-cooldown: 60
permission-time:
- permission: 'lyalchemy.time.vip1'
multiplier: 0.90
- permission: 'lyalchemy.time.vip2'
multiplier: 0.70| 配置项 | 说明 |
|---|---|
attribute-plugin | 属性适配器,可填写 AttributePlus、AttributeSystem 或 SX-Attribute |
exploration-cooldown | 每次非空探索尝试使用的固定冷却时间,单位为秒 |
permission-time[].permission | 应用时间倍率所需的权限 |
permission-time[].multiplier | 时间保留比例。0.90 表示保留 90% 的时间,即缩短 10% |
玩家同时拥有多个配置权限时只取最小 multiplier,不叠加。倍率会同时影响炼制时间和探索冷却,并且应用后可以低于丹方的 need-time.minimum-time。空探索不会启动冷却。
属性显示模板
yaml
attribute-template:
'攻击力': '&7攻击力 &6+{value}'
'生命力': '&7生命力 &6+{value}'
'攻击力%': '&7攻击力 &6+{value}(%)'
'生命力%': '&7生命力 &6+{value}(%)'| 配置项 | 说明 |
|---|---|
attribute-template | 将丹药属性键转换为 GUI 显示文本 |
attribute-template.<属性名> | 显示模板,使用 {value} 插入属性值 |
丹药必须至少存在一组有效 attribute 范围,才允许服用并显示在丹药界面。无属性或空属性范围的丹药会被运行时跳过。
成品几率与数量显示
yaml
product-chances-format: ' &7{name}: &a{chance} &f数量: &e{amount}'product-chances-format 同时用于 {product_chances} 和 {next_product_chances},每个产物生成一行文本。
| 占位符 | 说明 |
|---|---|
{name} | 丹药显示名称 |
{chance} | 当前等级下的百分比几率 |
{amount} | 发放数量文本 |
{min} | 数量范围下限 |
{max} | 数量范围上限 |
GUI 通用文本
yaml
gui-format:
status:
NONE: '&a可开始炼制'
CRAFTING: '&e炼制中(剩余 {remaining} 秒)'
READY: '&a可领取'
CLAIMING: '&e领取锁定,请联系管理员核对'
loop_status:
ON: '&a已开启'
OFF: '&c未开启'
enough:
TRUE: '&a✔'
FALSE: '&c✘'| 节点 | 可用键 | 用途 |
|---|---|---|
gui-format.status | NONE、CRAFTING、READY、CLAIMING | 炼制按钮的 {status} 文本 |
gui-format.loop_status | ON、OFF | 循环炼制的 {loop_status} 文本 |
gui-format.enough | TRUE、FALSE | 材料是否足够的 {enough} 文本 |
CRAFTING 状态支持 {remaining},表示当前任务剩余秒数。
音效
yaml
sound:
craft-finish: 'ENTITY_PLAYER_LEVELUP'
exploration-success: 'ENTITY_PLAYER_LEVELUP'
exploration-failure: 'BLOCK_ANVIL_DESTROY'
page-turn: 'UI_BUTTON_CLICK'| 配置项 | 默认音效 | 用途 |
|---|---|---|
sound.craft-finish | ENTITY_PLAYER_LEVELUP | 炼制完成并进入可领取状态时播放 |
sound.exploration-success | ENTITY_PLAYER_LEVELUP | 探索成功时播放 |
sound.exploration-failure | BLOCK_ANVIL_DESTROY | 探索失败时播放 |
sound.page-turn | UI_BUTTON_CLICK | 列表实际翻页时播放 |
项目配置注释提供旧版名称对应关系:LEVEL_UP、ANVIL_BREAK 和 CLICK。请根据实际服务端版本填写可识别的音效名称。
消息
消息键位于主配置的 message 节点,支持 & 颜色码。重载输出中的丹方和丹药名称会将 & 颜色码转换为 §。
| 配置键 | 用途和占位符 |
|---|---|
CRAFT_SUCCESS | 炼制奖励成功,支持 {item} |
CRAFT_FAILURE | 炼制失败 |
CRAFT_READY | 炼制完成,提示手动领取 |
MATERIALS_INSUFFICIENT | 材料不足 |
RECIPE_NOT_FOUND | 丹方不存在 |
RECIPE_NOT_LEARNED | 玩家尚未学会丹方 |
CRAFTING | 当前已有炼制任务 |
CRAFT_COOLDOWN | 当前炼制尚未完成 |
CRAFT_CLAIMING | 当前奖励正在领取或已锁定 |
CRAFT_OTHER_RECIPE | 其他丹方任务占用中,支持 {recipe}、{recipe_name} |
CRAFT_NO_ACTIVE_RECIPE | 当前没有可打开的炼制任务 |
CRAFT_LOOP_ENABLED | 开启循环炼制,支持 {recipe}、{recipe_name} |
CRAFT_LOOP_DISABLED | 关闭循环炼制 |
CRAFT_LOOP_INTERRUPTED | 关闭炼制界面后中断循环 |
RECIPE_MAX_LEVEL | 丹方达到最高可实现等级时的提示 |
MAX_LEVEL | GUI 下一等级信息中的满级文本 |
LEVEL_UP | 熟练度升级提示,支持 {recipe}、{level} |
EXPERIENCE_GAIN | 熟练度经验提示,支持 {recipe}、{level}、{exp}、{total_exp}、{next_exp} |
NO_AVAILABLE_RESULT | 当前等级没有可产出的丹药 |
EXPLORATION_SUCCESS | 探索成功,支持 {recipe} |
EXPLORATION_FAILURE | 探索失败 |
EXPLORATION_COOLDOWN | 探索仍在冷却中 |
EXPLORATION_MATERIALS_INSUFFICIENT | 探索材料不足 |
MEDICINE_CONSUMED | 服用成功,支持 {medicine}、{count}、{max_count} |
MEDICINE_MAX_COUNT | 达到服用上限,支持 {medicine}、{count}、{max_count} |
MEDICINE_CONSUME_FAILURE | 服用失败 |
ATTRIBUTE_PROVIDER_UNAVAILABLE | 属性插件不可用 |
DATA_LOADING | 玩家数据尚未加载完成 |
当丹药没有有限的最大服用次数时,{max_count} 显示为 无限。
PlaceholderAPI 变量
安装并启用 PlaceholderAPI 后,插件注册 lyld 标识符。完整格式为 %lyld_变量名%。动态丹方 ID 和丹药 ID 放在变量末尾,ID 中的下划线会保留。
| 变量 | 返回内容 |
|---|---|
%lyld_recipe_learned_<丹方ID>% | 玩家是否可以使用该丹方。公开丹方或已探索丹方返回 true |
%lyld_recipe_level_<丹方ID>% | 当前熟练度等级,不存在或未解锁时返回 0 |
%lyld_recipe_experience_<丹方ID>% | 当前等级经验,不存在或未解锁时返回 0 |
%lyld_recipe_next_level_<丹方ID>% | 下一熟练度等级,满级时返回当前等级 |
%lyld_recipe_next_experience_<丹方ID>% | 升级所需经验,满级时返回 0 |
%lyld_recipe_max_level_<丹方ID>% | 丹方可实现的最高熟练度等级 |
%lyld_recipe_time_<丹方ID>% | 当前等级且应用权限倍率后的炼制时间,单位为秒 |
%lyld_recipe_next_time_<丹方ID>% | 下一等级且应用权限倍率后的炼制时间,单位为秒;满级时返回 0 |
%lyld_medicine_count_<丹药ID>% | 当前丹药累计服用次数 |
%lyld_known_recipe_count% | 公开或已学会的丹方数量 |
%lyld_consumed_medicine_count% | 有服用记录的丹药种类数量 |
%lyld_exploration_cooldown% | 探索冷却剩余时间,单位为秒 |
%lyld_crafting_status% | 是否存在炼制任务,返回 true 或 false |
%lyld_crafting_recipe% | 当前任务丹方 ID,无任务时为空文本 |
%lyld_crafting_level% | 当前任务开始时的熟练度等级,无任务时返回 0 |
%lyld_crafting_remaining% | 当前任务剩余时间,单位为秒;可领取或无任务时返回 0 |
%lyld_crafting_time% | 当前任务总炼制时间,单位为秒,无任务时返回 0 |
%lyld_crafting_finish_time% | 任务完成时间的 Unix 毫秒时间戳,无任务时返回 0 |
%lyld_crafting_claim_status% | NONE、CRAFTING、READY 或 CLAIMING |
%lyld_crafting_product% | 已确定的丹药配置 ID,尚未确定或无任务时为空文本 |
%lyld_crafting_loop% | 当前在线会话是否开启循环炼制,无任务时返回 false |
除 recipe_learned 外,丹方变量在玩家未解锁或目标不存在时返回 0。未知变量不会影响其他 PlaceholderAPI 变量。
丹方文件 recipe/*.yml
丹方文件的最外层节点是丹方 ID。默认资源为 recipe/示例丹方.yml,根节点 ID 为 示例丹方。
| 配置项 | 说明 |
|---|---|
icon | 丹方列表和炼制界面使用的原版 GUI 图标,例如 PAPER:0 |
name | 丹方显示名称 |
lore | 丹方显示 Lore |
public | true 表示公开丹方;false 表示只能通过探索收录 |
need-item | 丹方材料列表,格式为 物品库@物品ID 数量 |
need-time.formula | 炼制时间公式,{level} 表示当前丹方熟练度等级,结果单位为秒 |
need-time.minimum-time | 炼制时间最低值,单位为秒 |
experience-gain | 每次完成炼制获得的随机经验范围,格式为 最小值-最大值 |
level-up.experience | 升级经验,可按单等级或等级范围配置固定值或 {level} 公式 |
level-up.commands | 升级时执行的指令列表 |
level-bonus | 不同熟练度等级下的丹药权重和发放数量 |
yaml
示例丹方:
icon: 'PAPER:0'
name: '示例_筑基丹方'
lore:
- ''
- '&7一张神秘的筑基丹方'
public: true
need-item:
- 'MythicMobs@筑基灵液 1'
- 'MythicMobs@玄黄草 3'
need-time:
formula: '66-{level}*3'
minimum-time: 30
experience-gain: '1-3'
level-up:
experience:
1-5: '50 + {level}*50'
6-10: '100 + {level}*50'
commands: []
level-bonus:
1-9:
示例_残破筑基丹:
weight: '480 - {level}*48'
amount: '1'
示例_中品筑基丹:
weight: '136 + {level}*8'
amount: '1-2'
10-max:
示例_中品筑基丹:
weight: '20'
amount: '1-2'
示例_天道筑基丹:
weight: '2'
amount: '1'材料配置
need-item 中的材料和数量必须与玩家物品匹配。匹配时优先比较物品库实际物品的真实 displayName;任一方没有真实显示名称时回退 ItemStack.isSimilar。GUI 图标、配置显示名称和 Lore 不参与材料识别。
探索材料同样遵循该匹配规则,并要求材料种类和总数量完全一致,忽略输入槽位顺序。只有 public: false 且玩家尚未学会的丹方会进入探索候选。
有效的非空探索尝试会扣除材料并立即启动冷却,无论匹配成功或失败;多个匹配丹方时随机收录一个。
炼制时间与熟练度
need-time.formula的结果先应用minimum-time,再应用玩家的权限倍率。experience-gain使用包含首尾的随机整数范围。level-up.experience的键可以是单个等级或连续等级范围。- 不需要填写
max升级经验范围。 - 丹方最高等级由
level-bonus可实现的最终档位决定。10-max表示从 10 级开始使用最后一档,当前示例的最高可实现等级为 10 级。 level-up.commands支持[console]控制台执行、[op]临时 OP 执行和无前缀玩家身份执行。
权重与数量
每个产物必须使用以下结构:
yaml
示例_中品筑基丹:
weight: '20 + {level}*8'
amount: '1-2'weight 是抽取权重,不是直接填写的百分比。系统会将当前等级所有大于 0 的权重相加,再用单项权重除以总权重计算实际几率。负权重按 0 处理,权重为 0 的产物不会被抽中。
amount 支持固定正整数或首尾包含的正整数范围。领取时会在范围内随机发放数量。非法、非正规整数、范围倒置或小于 1 的值按 1 个发放。
丹方重载会校验公式、时间、等级范围覆盖和重叠、升级经验范围以及每个可实现等级是否存在正权重。level-bonus 中引用的每个产物 ID 必须对应 item/*.yml 中的丹药配置。
丹药文件 item/*.yml
丹药文件的最外层节点是丹药 ID。
| 配置项 | 说明 |
|---|---|
item | 丹药实际物品,使用物品库 ID 或 物品库@物品ID |
icon | 丹药 GUI 图标,只使用原版物品 ID |
name | 丹药显示名称 |
lore | 丹药显示 Lore |
attribute | 按服用次数配置的属性增量,可使用单次数或次数范围 |
yaml
示例_中品筑基丹:
item: 'MythicMobs@示例_中品筑基丹'
icon: 'APPLE:0'
name: '&b中品筑基丹'
lore:
- '&7一枚中品筑基丹'
attribute:
1:
攻击力: 100
生命力: 100
2-9:
攻击力: 10
生命力: 10
10:
攻击力: 120
生命力: 120attribute 的每个值必须是有限数字,次数范围不能重叠,起始次数应为有效正整数。
丹药必须至少存在一组有效属性范围,才会被识别为可服用丹药,也才会进入丹药列表。已存在但没有有效属性的服用记录同样不会显示。
丹药服用识别优先比较物品库实际物品和玩家物品的真实 displayName;任一方没有显示名称时回退 ItemStack.isSimilar。多个不同丹药使用相同真实显示名称时,会按配置加载顺序命中第一个,应避免名称重复。
GUI 文件
四个 GUI 都使用 54 个槽位,每行 9 个槽位。GUI 槽位物品只填写原版物品 ID,例如 262:0、145:2 和 160:15。
所有原版背包点击和拖拽都会被取消,按钮和探索材料投入只处理插件定义的普通左键、右键业务。非法 GUI 材质会导致对应 GUI 配置加载失败,不会静默替换为石头。
gui/丹方界面.yml
| 配置项 | 默认值或说明 |
|---|---|
title | &6已学会的丹方 |
layout | 前 45 个槽位使用 R 动态列表,底栏为 P##123##N |
button.recipes | R,丹方列表 |
button.previous-page | P,上一页 |
button.next-page | N,下一页 |
button.open-medicines | 1,丹药界面 |
button.open-craft | 2,炼制界面 |
button.open-exploration | 3,探索界面 |
slot.R | 使用丹方的 icon、name 和 lore,并追加熟练度、经验、当前/下一等级时间和成品几率 |
slot.P、slot.N | 翻页按钮物品和文本 |
slot.1、slot.2、slot.3 | 三个界面跳转按钮 |
slot.# | 底栏填充物品 |
布局位置为:45 号槽上一页,48 至 50 号槽为三个界面跳转,46、47、51、52 号槽为填充,53 号槽下一页。
slot.R.template 支持 {level}、{total_exp}、{next_exp}、{time}、{product_chances}、{next_level}、{next_time} 和 {next_product_chances}。
gui/丹药界面.yml
| 配置项 | 默认值或说明 |
|---|---|
title | &6已服用的丹药 |
layout | 前 45 个槽位使用 D 动态列表,底栏为 P##123##N |
button.medicines | D,丹药列表 |
button.previous-page | P,上一页 |
button.next-page | N,下一页 |
button.open-recipes | 1,丹方界面 |
button.open-craft | 2,炼制界面 |
button.open-exploration | 3,探索界面 |
slot.D | 使用丹药的 icon、name 和 lore,并追加服用次数和累计属性 |
slot.P、slot.N | 翻页按钮物品和文本 |
slot.1、slot.2、slot.3 | 三个界面跳转按钮 |
slot.# | 底栏填充物品 |
slot.D.template 支持 {now_count}、{max_count} 和 {attribute}。没有有限服用上限时,{max_count} 显示为 无限。
gui/炼制界面.yml
yaml
layout:
- '#########'
- '####R####'
- '#MMMMMMM#'
- '####B####'
- '####L####'
- '###123##X'| 配置项 | 默认值或说明 |
|---|---|
title | &6炼制丹药 |
button.recipe | R,当前丹方信息 |
button.materials | M,丹方材料展示槽 |
button.button | B,开始炼制或领取奖励 |
button.loop | L,循环炼制开关,位于 40 号槽 |
button.close | X,关闭界面,位于 53 号槽 |
button.open-recipes | 1,丹方界面 |
button.open-medicines | 2,丹药界面 |
button.open-exploration | 3,探索界面 |
slot.R | 使用当前丹方图标和名称,追加熟练度、经验、当前/下一等级时间和成品几率 |
slot.M | 运行时显示材料实际物品、需求数量、当前数量和是否足够;只读 |
slot.B | 显示当前/下一等级时间、成品几率和 {status} |
slot.L | 显示 {loop_status},切换循环炼制 |
slot.1、slot.2、slot.3 | 三个界面跳转按钮 |
slot.X | 关闭界面按钮 |
炼制界面中的占位符包括:
| 占位符 | 说明 |
|---|---|
{recipe_name} | 当前丹方显示名称 |
{need} | 材料需求数量 |
{current} | 玩家当前拥有数量 |
{enough} | 从 gui-format.enough.TRUE/FALSE 读取 |
{time} | 当前等级炼制时间 |
{product_chances} | 当前等级成品几率和数量 |
{next_level} | 下一熟练度等级 |
{next_time} | 下一等级炼制时间 |
{next_product_chances} | 下一等级成品几率和数量 |
{status} | 从 gui-format.status 读取 |
{loop_status} | 从 gui-format.loop_status 读取 |
玩家同时只能存在一个炼制任务。关闭界面不会取消当前这一炉,但会关闭循环炼制;循环开关只保存于当前在线会话。
打开炼制界面前会校验当前丹方的全部材料,以及所有等级档位中的成品丹药。物品库缺失、成品配置缺失或物品标识为空时不会打开界面,并会在控制台输出具体丹方和物品标识。
gui/探索界面.yml
yaml
layout:
- '#########'
- '#MMMMMMM#'
- '####I####'
- '#########'
- '####B####'
- '###123##X'| 配置项 | 默认值或说明 |
|---|---|
title | &6丹方探索 |
button.materials | M,探索材料目标槽 |
button.info | I,未知丹方说明 |
button.button | B,尝试探索 |
button.close | X,关闭界面 |
button.open-recipes | 1,丹方界面 |
button.open-medicines | 2,丹药界面 |
button.open-craft | 3,炼制界面 |
slot.M.item | 必须保留为空文本,表示材料输入目标槽 |
slot.I | 未知丹方说明物品 |
slot.B | 显示探索状态、总冷却和剩余冷却 |
slot.X | 关闭界面按钮 |
探索材料不能通过原版拖拽投入。点击玩家底部背包中的物品时,插件会扣除 1 个并放入第一个空的 M 槽;点击已有 M 槽或关闭界面时返还材料。
探索按钮支持以下占位符:
| 占位符 | 说明 |
|---|---|
{cooldown} | 应用权限倍率后的本次探索总冷却,单位为秒 |
{cooldown_remaining} | 当前剩余探索冷却,单位为秒 |
{status} | 当前探索状态文本 |
探索前不会显示目标丹方名称、炼制时间和成品几率。有效的非空尝试会扣除材料并立即启动冷却,无论匹配成功或失败;多个匹配丹方时随机收录一个。
重载与配置校验
执行 /lyld reload 时会读取主配置、权限时间规则、丹方、丹药和四个 GUI。应用新配置前会保存旧运行时状态;任一阶段失败时恢复旧配置,不会让部分新配置进入运行状态。
重载阶段会校验以下内容:
- 主配置结构和权限倍率格式。
- 丹方公式、炼制时间、经验范围、等级范围覆盖和重叠。
- 每个可实现等级是否存在正权重。
- 丹方产物 ID 是否对应丹药配置。
- 丹方材料和丹药实际物品标识。
- 丹药属性范围、属性值和服用次数范围。
- 丹方图标、丹药图标和 GUI 原版物品。
- GUI 按钮与布局字符的对应关系。
默认配置资源只在目标文件不存在时释放,不会覆盖已有的 config.yml、丹方、丹药和 GUI 文件。每次执行重载都会强制覆盖插件数据目录根目录中的 简易使用说明.txt。
配置读取失败时应根据控制台输出修正对应文件、配置键或物品标识;确认配置无误后再重新执行 /lyld reload。