0.27.9 商城、飞行加速与回收
道具商城独立余额提示与安全退款、飞行属性和骑乘疾跑加速,以及命令、GUI、信号棒的统一回收反馈。
更新日期:2026-09-02;对应插件版本:0.27.9-SNAPSHOT。
本版修复道具商城余额不足提示错称“无法购买宠物”、飞行宠物与飞行骑乘无法正确获得加速,以及回收操作偶发没有反馈的问题。升级只补新增配置节点与中文注释,已有价格、货币 ID、宠物数值和管理员自定义文本不会覆盖。
道具商城
- 道具余额不足改用独立的
item-shop-insufficient-funds,默认显示“余额不足,无法购买该道具”,宠物商城继续使用原来的shop-insufficient-funds。 - 扣款后的物品发放改为可观察的实体任务。玩家实体在任务已受理、尚未执行时退出或退休,购买 Future 也会结束并执行全额退款,不再永久等待或只扣款不发货。
- 捕捉球重载期间失效、CraftEngine 物品生成失败、调度拒绝与调度异常仍走原有退款保护。
messages.yml 新增:
# 宠物道具商城余额不足;与宠物商城分开,避免误称无法购买宠物。
item-shop-insufficient-funds: "<red>余额不足,无法购买该道具。</red>"
飞行速度与骑乘疾跑
- 宠物基础速度、敏捷成长和技能速度加成现在同时写入实体支持的
MOVEMENT_SPEED与FLYING_SPEED。鹦鹉等拥有独立飞行速度属性的实体不再漏掉加速;不支持FLYING_SPEED的实体会安全跳过。 - 骑乘控制每 tick 同时读取疾跑键。按住疾跑时,地面和飞行骑乘均按
riding-sprint-multiplier放大水平速度;飞行俯仰产生的升降速度使用同一倍率,避免只横向加速。 pet-types.yml -> defaults.behavior.riding-sprint-multiplier默认1.5,允许范围1.0-3.0。单宠物文件可在自己的behavior下覆盖,例如:
behavior:
riding-speed: 0.40
# 按住疾跑键后速度为 0.40 × 1.75。
riding-sprint-multiplier: 1.75
旧宠物配置缺少该项时自动继承并补全默认值;已有 riding-speed、跳跃、AI、模型与骑乘类型保持不变。
宠物回收
/lipet store、管理 GUI 与信号棒回收共用同一个反馈服务,不再分别使用无法确认执行结果的消息调度。- 回收超过 100 tick(正常 TPS 下约 5 秒)会提示一次“正在保存并回收”,不会取消数据库写入、提前释放操作锁或重复移除实体。将
pet-store-pending设为空字符串可关闭等待提示。 - 结果消息的调度拒绝、受理后退休、空结果和文本解析异常都会记录接收者 UUID,并使用独立反馈异常文本;提示异常不再被误判为数据库保存失败。
- 回收仍保持原有安全边界:必须先确认 STORED 写入成功,再移除实体和活动会话;保存失败时保留召唤状态。
新增消息:
pet-store-pending: "<yellow>正在保存并回收宠物,请稍候,无需重复操作。</yellow>"
pet-store-feedback-failed: "<yellow>宠物回收结果提示异常,请重新打开仓库确认状态,并联系管理员查看后台日志。</yellow>"
升级步骤
- 停服,备份
plugins/LiPet/和 SQLite/MySQL 数据。 - 替换为
LiPet-0.27.9-SNAPSHOT.jar,确保插件目录只保留一个 LiPet Jar,然后启动服务器。 - 首次启动会补全上述消息和疾跑倍率;已有管理员值与注释保留。
- 使用道具商城制造余额不足,确认提示为“道具”;骑乘飞行宠物按住疾跑键,确认速度提升;连续执行命令、GUI 与信号棒回收。
验证结果
默认兼容构建(Paper 1.21.11 API、Java 21 字节码)与 Paper 26.2 Profile 各通过 312 项自动测试,失败、错误和跳过均为 0。新增测试覆盖道具发放任务受理后退休并全额退款、回收等待/完成/异常反馈、反馈任务退休与飞行疾跑倍率。
最终成品:LiPet-0.27.9-SNAPSHOT.jar;大小:858889 字节;SHA-256:C73889FC79185C8FE7B05AD9DB21ABF590652A485BFCB8A81B327358C74CDE95。Jar 只包含 LiPet 业务代码,主类为 Java 21 class 版本 65,外部依赖未打入成品。
同一最终 Jar 在 Paper 26.1.2 Build 70 与 Paper 26.2 Build 111 上使用真实 SQLite 通过运行探针:
- 旧
messages.yml自动补齐三个新增消息,旧pet-types.yml自动补齐riding-sprint-multiplier: 1.5。 - 鹦鹉
FLYING_SPEED成功写入0.47;飞行骑乘基础速度0.4在1.5倍疾跑下得到水平0.6,俯仰升降同步加速。 - 每台服务端连续 8 轮创建 ACTIVE 宠物并执行真实回收,均返回 STORED、移除原版实体、清除活动会话,随后安全停服。
当前环境没有真人网络客户端和 Folia 实服,因此键位手感、客户端画面与 Folia 多区域运行仍需在目标服最终验收;服务端输入计算、实体属性、SQLite 状态链和 Paper 兼容性已经验证。