常见问题
增加经验后没有升级
按以下顺序检查:
- 目标等级节点是否存在。
level-exp-set是否配置了玩家即将达到的等级所需经验。- 当前等级是否触发了
level-up-condition限制。 level-up-condition中的权限、PlaceholderAPI 条件或其他条件是否满足。- 是否已经达到
max-level。 - 是否受到
max-level-can-get-max-exp或every-day-max-exp限制。
当玩家处于被限制的等级且不满足对应条件时,玩家无法通过击杀、指令、经验掉落或其他方式继续获得经验。
level-exp-set 配置后仍然无法升级
level-exp-set 表示升到指定等级所需的经验,不是当前等级可以拥有的经验上限。
请确认:
- 配置的等级键覆盖了玩家即将达到的等级。
- 等级区间写法与实际等级匹配,例如
2-4。 - 使用变量或四则运算时,表达式能够计算出有效数值。
- 最高等级也配置了对应的经验需求。
- 玩家当前经验已经达到目标等级所需经验。
玩家开局默认处于 0 级,等级需求从 level-exp-set 中读取。
玩家获取经验提示达到上限
检查对应等级节点的以下配置:
| 配置项 | 作用 |
|---|---|
every-day-max-exp | 每日可获得的经验上限,每天晚上 0 点刷新;设置为 -1 表示无上限。 |
max-level-can-get-max-exp | 达到最高等级后仍可获得的经验上限;设置为 -1 表示满级后禁止继续获得经验。 |
max-level | 当前等级节点的最高等级。 |
每日经验达到上限后,需要等待每日刷新,或调整对应等级节点配置后再测试。
level-up-condition 为什么会阻止所有方式获得经验
某个等级配置了 level-up-condition 后,玩家当前等级达到该限制等级时,插件会检查该等级下的全部条件。
如果条件不满足,玩家无法通过击杀、指令、经验掉落或其他方式继续获得经验,并会显示该节点配置的 message 内容。
常见条件包括:
| 条件写法 | 作用 |
|---|---|
papi:{表达式} | 使用 PlaceholderAPI 变量计算条件。 |
permission:{权限节点} | 要求玩家拥有指定权限。 |
nopermission:{权限节点} | 要求玩家没有指定权限。 |
多个条件同时存在时,需要按照配置要求满足对应条件。
MythicMobs Drops 里的 lexp 不生效
确认配置文件中的 mythic-drops-exp-enable 已设置为 true,再检查 MythicMobs Drops 写法。
支持以下形式:
yaml
Drops:
- 'lexp 123'
- 'lexp 123-578'
- 'lexp 789 节点ID'| 写法 | 作用 |
|---|---|
lexp 数值 | 为默认等级节点掉落固定经验。 |
lexp 最小值-最大值 | 为默认等级节点掉落随机范围经验。 |
lexp 数值 节点ID | 为指定等级节点掉落经验。 |
如果 mythic-drops-exp-enable 未启用,MythicMobs 的 Drops 不会被插件解析为等级经验。
怪物击杀经验不触发
检查 mobExp/ 目录下配置文件的顶层键名是否与实际怪物 ID 或怪物名称一致。
还要检查以下内容:
condition中的权限条件是否满足。condition中的 PlaceholderAPI 条件是否返回真。exp下是否配置了有效的等级节点和经验值。- 配置文件是否放在
mobExp/目录下并使用正确的 YAML 格式。 - 怪物 ID 与怪物名称是否同时匹配同一个配置键。
如果怪物 ID 和怪物名称相同,可能会触发两次加成。
当 only-check-customnpc-name 设置为 true 时,插件只检测 CustomNPC 怪物名称,普通实体名称可能不会按预期触发。
原版经验条不同步
检查配置项 sync-minecraft-exp-bra:
| 配置值 | 结果 |
|---|---|
已存在的等级节点 ID,例如 default | 将该等级节点同步到原版经验条。 |
| 空值 | 不进行同步。 |
| 不存在的等级节点 ID | 不进行同步。 |
该配置只负责同步指定等级节点,不会自动匹配所有等级节点。
原版附魔扣经验怎么办
建议保持以下配置:
yaml
anti-enchant: true当 anti-enchant 为 true 时,插件会禁止原版附魔系统造成的等级或经验扣除。
如果关闭该配置,原版附魔可能会扣除与同步节点对应的等级或经验。
经验瓶无法生成或使用
经验瓶功能由等级节点中的 exp-item-enable 控制。请确认对应节点已启用:
yaml
exp-item-enable: true同时检查 exp-item 下的物品配置是否完整:
| 配置项 | 作用 |
|---|---|
item | 经验瓶物品类型和数据值。 |
display-name | 经验瓶显示名称。 |
lore | 经验瓶描述。 |
经验瓶功能只兼容 Minecraft 1.7.10 和 1.12.2。
经验瓶受到对应等级节点 every-day-max-exp 每日经验上限影响。经验转换比例支持当前经验的百分比,范围为 1-100。
玩家不能自行操作经验转换,需要由指令对指定玩家执行转换。
经验加成没有生效
检查以下配置:
| 配置项 | 检查内容 |
|---|---|
attribute-plugin | 是否填写了实际使用的属性插件名称。 |
exp-addition-placeholder | 等级节点是否填写了有效的变量;留空时不生效。 |
exp-addition-formula | 玩家加成与全服加成的计算公式是否正确。 |
exp-formula | 最终经验计算公式是否被错误修改。 |
等级节点中的 exp-addition-placeholder 会读取变量数值,并将其转换为每次获取经验时的百分比加成。多个等级节点可以共用同一个经验加成变量。
默认计算公式为:
yaml
exp-addition-formula: '{player_addition}+{server_addition}'
exp-formula: '{exp}* (1+{addition})'不熟悉公式时不要随意修改,错误的表达式可能导致经验计算失败。
属性加成没有生效
等级称号中的 level-tag.attribute 需要对应的属性插件支持。
请检查:
attribute-plugin是否填写了实际使用的属性插件。level-tag是否为玩家当前等级配置了称号和属性。- 属性插件名称是否为插件支持的名称。
- 修改属性插件配置后是否已经重启服务器。
项目配置中列出的可选属性插件包括:
AttributePlusSX-Attribute2SX-Attribute3ItemLoreOriginAttributeCompatibleAPIAttributeSystemSX-Attribute
PlaceholderAPI 变量没有返回内容
插件注册的变量格式如下:
| 变量 | 作用 |
|---|---|
%lgl_节点ID_level% | 当前等级。 |
%lgl_节点ID_now% | 当前拥有经验。 |
%lgl_节点ID_next% | 下一级所需经验。 |
%lgl_节点ID_endtime% | 多倍经验到期时间;没有多倍经验时为空。 |
%lgl_节点ID_today% | 今日已获得经验。 |
%lgl_节点ID_multiple% | 多倍经验倍率;没有多倍经验时为空。 |
%lgl_等级节点ID_tag% | 当前等级称号。 |
请将 节点ID 替换为实际等级节点的 id,并确认该节点 ID 全局唯一。
使用 PlaceholderAPI 变量前,请确认服务器已安装并正常启用 PlaceholderAPI。
获取经验时没有提示消息
检查配置项:
yaml
addexp-command-message-enable: true如果该配置关闭,获取经验时不会显示经验提示消息。等级升级、达到满级以及多倍经验开始或结束消息仍由等级节点中的 message 配置决定。
自动保存是否生效
插件提供以下自动保存配置:
| 配置项 | 说明 |
|---|---|
auto-save | 是否启用加强型自动保存。启用后会检测玩家数据变动并自动保存。 |
auto-save-interval | 自动保存检测间隔,单位为秒。默认配置为 3。 |
修改自动保存相关配置后,应确认配置文件格式正确,并重启服务器使配置重新加载。
MySQL 数据没有保存或读取
使用 MySQL 存储时必须满足以下条件:
- 配置文件中的
mysql.enable已设置为true。 - 已安装
LyMySQLCore。 LyMySQLCore已成功连接数据库。- 数据库地址、端口、数据库名、用户名和密码填写正确。
- 修改数据库开关后已重启服务器。
未安装 LyMySQLCore,或 LyMySQLCore 未成功连接数据库时,MySQL 相关功能不会生效。
数据库配置示例:
yaml
mysql:
enable: true
databasename: mc2
username: mc2
password: mc1234
port: 3306
ip: 127.0.0.1旧数据转换前要注意什么
执行旧数据转换前,先备份旧插件数据和当前插件数据。
支持以下指令:
text
/lgl load-old-data mysql
/lgl load-old-data yaml| 指令 | 作用 |
|---|---|
/lgl load-old-data mysql | 从旧 MySQL 数据转换。 |
/lgl load-old-data yaml | 从旧 YAML 数据转换。 |
这些操作会写入新数据。执行前必须确认备份可用,并确保对应的数据库连接或 YAML 数据文件能够正常读取。
执行 /lgl 指令提示没有权限
插件注册的管理权限为 lgl.admin,默认权限组为服务器管理员。
请确认执行指令的账号拥有该权限,或使用服务器控制台执行管理指令。
插件注册的主指令为 /lgl,管理相关子指令均通过该指令执行。
支持哪些 Minecraft 版本
项目包含以下 NMS 适配模块:
| Minecraft 版本 | NMS 模块 |
|---|---|
1.7.10 | V1_7_R4 |
1.8.8 | V1_8_R3 |
1.11.2 | V1_11_R1 |
1.12.2 | V1_12_R1 |
1.13.2 | V1_13_R2 |
1.14.4 | V1_14_R1 |
1.15.2 | V1_15_R1 |
1.16.5 | V1_16_R3 |
1.17.1 | V1_17_R1 |
1.18.2 | V1_18_R2 |
1.19.2 | V1_19_R1 |
1.19.4 | V1_19_R3 |
1.20.1 | V1_20_R1 |
1.20.2 | V1_20_R2 |
1.20.3 | V1_20_R3 |
经验瓶功能不适用于所有适配版本,仅兼容 1.7.10 和 1.12.2。
修改配置后为什么没有生效
检查以下内容:
- YAML 缩进是否正确。
- 配置键名称是否与插件实际配置一致。
- 修改的配置是否属于主配置文件或等级节点配置文件。
- 需要重启才能生效的配置是否已经重启服务器。
- 等级节点的
id是否全局唯一。 - 表达式、变量和条件写法是否有效。
attribute-plugin 和 mysql.enable 等配置的注释明确要求修改后重启服务器。数据库开关也需要重启服务器后才会重新加载。
怪物经验条件没有生效
mobExp/ 配置中的 condition 用于限制怪物经验是否发放。
常见写法如下:
yaml
condition:
- 'permission:exp.example'
- 'papi:{%player_level% >= 0}'| 条件写法 | 检查内容 |
|---|---|
permission:{权限节点} | 玩家是否拥有指定权限。 |
papi:{表达式} | PlaceholderAPI 表达式是否计算为真。 |
如果任一条件不满足,对应怪物经验不会按该配置发放。
多个等级节点如何区分
每个等级节点必须配置唯一的 id。插件的 PlaceholderAPI 变量、经验加成、经验获取和等级数据都会根据等级节点 ID 区分。
例如:
yaml
id: 'default'不同等级节点不能使用相同的 ID,否则变量和数据定位可能发生冲突。
全服多倍经验时间显示异常
检查等级节点中的多倍经验配置以及主配置中的:
yaml
time-format: 'MM月dd日 HH时mm分ss秒'该配置用于全服倍率的时间显示。变量 %lgl_节点ID_endtime% 在没有多倍经验时为空,%lgl_节点ID_multiple% 在没有多倍经验时也为空。
升级后没有执行指令
升级指令配置位于等级节点的 level-up-command。指令由控制台调用。
检查:
- 是否配置了
every-level。 - 等级区间是否覆盖玩家达到的等级,例如
1-3。 - 指令文本是否使用正确的变量和占位内容。
- 玩家是否实际完成了升级,而不是只获得了经验。
升级指令与等级节点的 message 是两套独立配置。没有升级时,不会执行升级指令。
等级称号没有变化
检查等级节点中的 level-tag:
- 当前等级是否配置了对应的称号。
tag内容是否为空。- PlaceholderAPI 变量是否使用了正确的等级节点 ID。
- 属性插件相关配置是否正确。
当前等级称号变量格式为:
text
%lgl_等级节点ID_tag%level-tag.attribute 只有在 attribute-plugin 填写了对应属性插件时才会生效。