搜索

常见问题

排查属性加点失败、力量与暴击归属、Residence 天气和 Folia 调度问题。

本页从 LiPet 0.27.19-SNAPSHOT 完整 Wiki 同步整理;需要连续查阅全部功能时,请返回 LiPet 完整 Wiki。

0.27.19 属性加点问题

有属性点却偶尔提示提升失败怎么办?

升级到 0.27.19-SNAPSHOT 并完整重启。新版在短暂 revision 冲突时会重新读取活动或仓库宠物的权威档案并最多重试两次;没有属性点时会明确提示,而不再和数据库失败混为一条消息。

为什么加力量会增加暴击率?

这是旧版衍生属性公式的职责重叠。0.27.19 起力量只增加攻击、暴击伤害与少量吸血;暴击率由敏捷增加。已有四维原始点数不迁移,升级后按新公式实时计算。

0.27.18 Residence 晴天与属性加点

Residence 领地显示晴天,为什么 LiPet 烈焰人仍因下雨受伤?

Residence 的 sun=true 只改变玩家天气,世界底层仍可能处于风暴。升级到 0.27.18-SNAPSHOT 并完整重启;LiPet 会按烈焰人当前位置读取 Residence 的有效天气 Flag。只有 sun=true 且 rain 未启用、实体未处于水或气泡柱时才取消淋雨伤害。普通烈焰人、真实泡水和查询失败均保持原版。

连续点击属性加点后显示旧点数,是否真的没保存?

旧版成功保存后又查询一次全部宠物,连续点击可能复用较早查询并把旧档案重绘到界面。0.27.18 保存成功后直接用本次返回的权威档案刷新。请停服换 Jar;/lipet reload 不能修复旧代码。

0.27.17 风弹喂食冲突

给旋风人喂风弹为什么还会发射

旧版只取消右键宠物事件,没有阻止随后独立的使用物品事件,导致风弹发射和喂食各扣一颗。升级到 0.27.17-SNAPSHOT 并完整启动即可,无需换食物。新版对配置内合法食物拦截紧随其后的物品使用,普通朝空处发射保持正常。

若换 Jar 后仍出现,请先确认启动日志的实际版本、插件目录内没有旧 LiPet Jar,再提供服务端版本、其他交互插件和复现步骤。真人客户端视觉预测及 Folia/Shiroha 实服仍需验收。

0.27.16 捕捉幼体问题

捕捉的幼体长大后为什么不认主

升级到 0.27.16-SNAPSHOT 并完整重启。旧版保存了幼体外观,却没有锁定原版年龄,活动实体会自然长大并偏离数据库记录。新版捕捉幼体会保持幼体并锁龄,区块恢复时再次校正;成年宠物仍保持成年。旧宠物无需删除,换 Jar 后重新召唤即可。

Paper 26.2 Build 111 实测狼、猫、马自然成年会保留 UUID、PDC、驯服状态和主人 UUID;同一实体应用新版捕捉外观后均恢复幼体、锁龄且主人不变。/lipet reload 不能替换旧 Jar 中的年龄代码。

0.27.15 快乐恶魂问题

快乐恶魂为什么不跟随、贴地或骑乘方向不对

升级到 0.27.15-SNAPSHOT 并完整重启服务器。旧版可能把快乐恶魂交给已返回成功但实际不稳定的地面路径,且所有飞行宠物只抬高 1.5 格。新版由飞行速度直接接管,成年实体按 4 格体型把跟随和召回目标提高到 3 格,并同步骑乘身体朝向。该修复不新增配置,/lipet reload 不能替换旧 Jar 中的移动代码。

21. 常见问题

为什么枯骆驼、僵尸马、狼或猫的食物不符合原版

升级到 0.27.14-SNAPSHOT。新安装已按原版食物标签修正枯骆驼、猪灵类、硫磺魔方、狼、猫、僵尸马和僵尸鹦鹉螺。旧服不会覆盖已有 growth.foods,请按 0.27.14 更新日志 手动替换旧节点后执行 /lipet reload。

玩家只喂食、不让宠物打怪升级怎么办

0.27.13 将全部官方默认食物改为每次 4 点经验;默认最弱目标约提供 6 点战斗经验,20 点生命目标提供 15 点。旧服食物配置不会自动覆盖,请在对应宠物文件的 growth.foods 下把各食物 experience 改为 4,然后执行 /lipet reload。

Folia/Shiroha 出现 Thread failed main thread check: Accessing entity state off owning region's thread

若堆栈同时包含 PetNameplateVisibility.hasPlayerPassenger 和 getPassengers,请先确认实际加载版本。用户提供的这条堆栈来自 0.27.9-SNAPSHOT;升级到 0.27.12-SNAPSHOT 并完整重启服务端,不能只执行 /lipet reload。新版会在宠物区域线程刷新名牌,迁区临界点下一 tick 重试,最终失败也不会从异常分支继续触碰实体。目标 Shiroha 服仍应实际测试宠物跨区、上马、下马和持续移动。

烈焰人等部分原版宠物没有合适食物

使用 0.27.14-SNAPSHOT 并完整启动。Paper 26.2 的 87 种默认可捕捉原版宠物都有独立食物,烈焰人使用 BLAZE_POWDER;枯骆驼、僵尸马、硫磺魔方等新旧生物也已按原版标签复核。如果文件已经存在 growth.foods,LiPet 会视为管理员自定义并保留,需要手动采用新映射或先备份后删除该节点再重启生成。

两个人同时刷级时只有宠物币,经验过一会才一起增加

旧版宠物币和经验走两条独立异步链,而战斗经验每次击杀都保存整份宠物记录;SQLite 写队列繁忙时,币消息可能先出现,经验操作随后集中完成。0.27.11 会把同一只宠物积压的经验合并保存,并保留操作顺序。保存失败时会显示 pet-combat-experience-save-failed,同时在控制台记录宠物 ID。

重启服务器后宠物等级回退

使用 0.27.11,确认 storage.type 为 SQLITE 或 MYSQL,正常执行 stop,并检查控制台出现“LiPet 已安全关闭”。新版回收与关服保存会等待已排队的经验批次,revision 冲突会读取数据库最新记录重试。若仍回退,请保留出问题时间前后的日志和数据库备份,不要删除 lipet.db。

连点技能书时偶尔少升级或技能书不稳定

升级到 0.27.10 并完整重启。新版会先持久记录预扣,再扣一本并按玩家顺序执行;失败、满级、掉线或中途重启后退款。旧 Jar 的并发升级代码无法通过 /lipet reload 替换。不要手动编辑 pending-skillbook-refunds.yml。

加敏捷后速度为什么仍显示 0.3

旧版界面只保留一位小数,0.25 与 0.255 都会显示为 0.3,成长刷新还可能覆盖迅捷技能。0.27.10 统一最终速度并最多显示三位小数;默认基础速度下,敏捷 0 显示 0.25,敏捷 1 显示 0.255。换 Jar 后必须完整重启,再重新打开界面。

召唤偶发完全无反应,重载也没用

0.27.8 修复了已受理的实体任务在玩家退出或实体移除时没有结束 Future 的问题。旧版同一玩家后续召唤、收回等操作会继续等候未完成的前序任务;/lipet reload 只重载配置,不会替换玩家操作队列,因此不能清除这类卡住状态。请停服备份后换用新 Jar 并重启,不要删除宠物数据库或反复点击召唤。

新版未完成超过 100 tick 时仅提示一次“正在召唤”,不会为显示提示而取消原操作或提前解除状态锁。失败会有对应反馈;如果提示本身解析或发送异常,后台会记录玩家 UUID、请求宠物与原因。看到“召唤结果提示异常”应先检查实际宠物状态,不能据此认定召唤没有成功。

可在 plugins/LiPet/messages.yml 自定义提示;将下面字段合并到已有根节点,不覆盖整份消息文件:

# 未完成超过 100 tick(正常 TPS 下约 5 秒)时只提示一次;空字符串 "" 关闭此提示。
# 不会中断召唤、释放状态锁或重新创建宠物。
pet-call-pending: "<yellow>正在召唤宠物,请稍候,无需重复操作。</yellow>"
# 表示召唤业务失败,保留原消息节点,支持自定义 MiniMessage 文本。
pet-call-failed: "<red>宠物召唤失败,请稍后重试。"
# 表示结果提示处理异常,宠物可能已经生成;先查看实际状态及后台日志。
pet-call-feedback-failed: "<yellow>召唤结果提示异常,请先检查宠物状态,并联系管理员查看后台日志。</yellow>"

旧配置只补缺失节点和注释,已有文本及空值保留。完成换 Jar 和重启后,修改提示文本可执行 /lipet reload。持续等待时请收集实际加载版本、宠物类型、玩家 UUID、操作时间及相邻日志;详见 召唤无响应修复。

骑上宠物后,旁观者或准星仍能看到名称

升级到 0.27.7 后检查 pet-types.yml 顶层 nameplate.hide-while-ridden。true 会对所有玩家隐藏名牌,并临时清空原版载体名称;下马恢复。false 表示保留显示,升级不会覆盖管理员已有的 false。修改开关后执行 /lipet reload。双行名牌关闭或刷新失败的单行回退也遵守这个开关。

一直按前进键时,转头却仍沿旧方向骑行

这是旧逻辑只在按键变化时记录视角造成的。0.27.7 上马即启动每 tick 控制,持续使用骑手当前视角和按键;不需要松开再按前进键,原地只转头也会更新朝向。首次升级必须换 Jar 后重启,不能只对旧版执行重载;若仍异常,记录宠物类型、服务端版本、是否使用外部模型,以及原地/持续前进两种情况下的表现。完整说明见 骑乘名牌与视角转向更新。

重启后宠物不见了

检查 storage.type。当前推荐:

storage:
  type: "SQLITE"

旧版 MEMORY 配置会自动迁移为 SQLite。生产服请备份 plugins/LiPet/lipet.db 或 MySQL 数据库。

插件显示 plugin is disabled

不要只看 /lipet 命令报错。需要查看服务器启动时最早的 LiPet 错误堆栈。

常见原因:

  • 配置格式错误。
  • 材质或实体类型拼错。
  • 数据库连接失败。
  • 运行时依赖无法下载。

No sound found with the name UI_TOAST_CHALLENGE

这是旧配置里的无效音效名。0.25.3+ 已修复:插件会自动回退为 ENTITY_PLAYER_LEVELUP,不再因此禁用。

CraftEngine 图标显示屏障或商品无法发放

执行 /lipet status <CE物品ID>。若没有显示“全链路自检通过”,请确认 CraftEngine 已完成重载、配置使用完整 namespace:item_id 且该 ID 存在。GUI 会显示中文屏障占位,商城会自动退款,不会错误发放同底材原版物品。

Thread LiPet-SQLite failed main thread check

这是 0.26.0 的数据库回调错误。升级到 0.26.1+ 后,属性加点、喂养、召回和收回不再从 SQLite 线程查询区块实体。若升级后仍看到该堆栈,请先确认服务器实际加载的 Jar 版本不是旧版。

提示已收回,但可驯服宠物仍在

这是旧版本把狼、猫、鹦鹉等实体同时交给原版驯服系统管理造成的生命周期冲突。升级到 0.26.2+ 后,收回会先清理原版驯服/坐下状态,并额外处理左右肩实体。升级后首次召回旧鹦鹉时会自动解除原版肩部行为。

宠物背包没有保存

背包在关闭界面时保存。如果服务器崩溃,最后一次打开中的背包可能来不及保存。生产服建议定期备份数据库。

信号棒没有反应

确认:

  • 物品由 /lipet signalstick 发放。
  • 玩家当前有已召唤宠物。
  • 没有其他插件取消右键交互事件。

商城购买失败

检查:

  • 玩家余额是否足够。
  • shop.yml 中的 pet-type 是否存在且启用。
  • 玩家是否已经拥有该类型宠物。
  • Vault 模式下是否安装了 Vault 和经济插件。

商城还显示“100.00 PlayerPoints”,修改名称没有效果

旧版 PlayerPoints 名称由代码固定,且内置货币名称在启动时被缓存。先停服换入 LiPet-0.27.6-SNAPSHOT.jar,重启一次并确认实际加载的版本,再修改 plugins/LiPet/config.yml:

# 合并到 config.yml 已有 currency 节点,不要覆盖整份配置。
# 这里只改显示名称,shop.yml 的支付 ID 和商品价格保持不变。
currency:
  # shop.yml 使用 currency: INTERNAL 的商品。
  internal:
    # 非空单行文本,支持 MiniMessage;默认“宠物币”。
    display-name: "宠物币"
  # shop.yml 使用 currency: VAULT 的商品,需安装 Vault 与经济插件。
  vault:
    # 非空单行文本,支持 MiniMessage;默认“金币”。
    display-name: "金币"
  # shop.yml 使用 currency: PLAYERPOINTS 的商品,需安装 PlayerPoints。
  playerpoints:
    # 非空单行文本,支持 MiniMessage;默认“点券”,可按需修改。
    display-name: "点券"

执行 /lipet reload 并等待成功,关闭原商城后重新执行 /lipet shop 或 /lipet itemshop。已有菜单不会自动重绘;重载失败或并发重载被拒绝时保留原名称,修正控制台提示的问题后再重载。

检查商品 Lore 是否使用 <price> <currency>。如果服主自定义 Lore 直接写了 PlayerPoints,需要改成 <currency> 才能跟随名称配置。shop.yml 中的货币 ID 仍填写 INTERNAL、VAULT 或 PLAYERPOINTS,不能填写“点券”。价格 100.0 仍显示为 100.00,默认完整文字变成 100.00 点券,扣款金额和 PlayerPoints 整数要求都不变。

如果显示的是大写 PLAYERPOINTS 或 VAULT,请先用 /lipet status 检查对应前置插件挂钩。不可用或未知提供器仍显示原 ID 供排查,不能仅靠修改名称恢复支付。

升级只补缺失名称和注释,已有自定义值会保留。名称热更也不会改变 server.id、群组 server.group 或内置初始余额 currency.internal.initial-balance,这些仍按启动时读取。

宠物币只能消费,无法获取

升级到 0.26.6+ 后检查:

  • rewards.yml 顶层 enabled 以及对应玩法的 enabled 是否为 true。
  • 玩家是否拥有 lipet.command.daily 权限。
  • 战斗必须由当前召唤的宠物完成最后一击;玩家自己击杀不会获得宠物战斗奖励。
  • 对应玩法是否已经达到 daily-limit;每日额度按 reset-time-zone 的零点重置。
  • 数据库异常时查看控制台中的 LiPet-Rewards 错误,并确认当前 Jar 确实为新版本。