项目说明
项目目标、当前能力、指令、架构目标和构建要求。
2.3.13 末影人召唤雨水保护
修复低血量末影人在召唤初始化期间被雨水或入水伤害杀死的问题,成功注册后解除保护,无需新增配置。更新说明。
2.3.12 · 26.3 适配
完成 Paper / Folia 26.3 独立服加载检查,详见 26.3 兼容说明。
2.3.11 闪光捕捉提示与发光药水
闪光捕捉成功增加专属聊天和标题提示,闪光宠物召唤后添加发光药水;均可配置开关。更新说明。
2.3.10 仓库独立宠物图标
支持按宠物类型配置原版或 CE 图标,未配置时沿用默认,保留现有仓库操作。配置说明。
2.3.9 菜单详情与成长分离
修复两个管理按钮打开相同页面,保留原 CE 成长配置,新增独立详情页。更新说明。
2.3.8 原生属性培养
新增带档案版本校验的属性分配 API,防止重复加点与空属性扣点,配套 LiUI 0.9.0-dev8。详见 2.3.8 更新说明。
2.3.7 Paper 26.3 适配
新增 Paper 26.3 的明确验证支持,保留 Java 21 编译下限和已有配置;运行 Paper 26.3 使用 Java 25。模型骑乘、MM 技能、和平世界以及原版宠物存档回归通过。Folia 保持原兼容范围,本次不升级。详见 2.3.7 更新说明。
2.3.6 和平宠物世界
在 config.yml 的 peaceful-worlds 中填写世界名,即可让指定世界内的宠物免伤、停止攻击和技能,同时保留跟随与骑乘。默认空列表,修改后 /lipet reload 生效。详见 2.3.6 更新说明。
2.3.5 低座位下马净空
修复 model-seat.y: 0.5 等低座位下马后脚部进入方块的问题。保留座位高度,按方块真实碰撞形状寻找下马净空,同时处理 Folia 已排队的座位更新与首次移动取消回退。无需覆盖配置或更新资源包。详见 2.3.5 更新说明。
2.3.4 模型下马位置同步
修复 ModelEngine 虚拟座位下马后残留上马前移动事件起点的问题:正常下马同步当前位置,首个移动包提前到达时校正事件起点,避免移动被取消后玩家退回上马位置。取消下马、立即重新骑乘及外部传送保留原有语义,不覆盖配置或模型文件。详见 2.3.4 更新说明。
2.3.3 无驾驶骨模型运行时座位
没有原生驾驶骨的 ModelEngine 宠物会补充运行时虚拟驾驶座,避免隐藏原版载体时的乘客绑定缺口;已有驾驶骨保持原样。支持全局 riding.model-seat 和单宠 behavior.model-seat 配置真实模型、父骨与局部坐标,修改后重载并重新召唤。
保留原模型文件、可见性、存档与已有自定义配置。座位挂载结构的修复不等于任意模型坐姿都已完成客户端验收;具体模型仍需实测调整。详见 2.3.3 更新说明。
2.3.2 主动攻击名称统一
宠物设置的玩家可见名称统一为“主动攻击”,默认按钮名称、说明和操作提示同步更新。启动或重载时只迁移完全匹配旧官方默认的文案;按钮说明必须整份列表匹配,自定义文字、颜色或说明行均保留。
每只宠物已保存的开关和战斗行为保持原样,auto-attack 配置、动作及变量标识继续兼容,不改数据库结构。替换 Jar 后正常重启,无需更新资源包。详见 2.3.2 更新说明。
2.3.1 模型骑乘主驾驶与换乘冲突修复
模型宠物按 ModelEngine 的主驾驶关系上马,避免多个模型时误选副座位;旧模型座位拒绝下马时停止换乘,MM 直接上马也检查旧挂载关系。模型完全没有驾驶骨时继续使用原版骑乘,保留 2.3.0 的全部功能与既有配置。
ModelEngine 虚拟座位没有 Bukkit getVehicle() 属于正常情况。修复范围、升级方式与运行验证进度见 2.3.1 更新说明;录像中的不同步表现仍需使用实际客户端与模型包复测。
2.3.0 MythicMobs 双向集成
MM 技能现在可用 @LipetOwner 选择施法宠物的主人,以 lipetExperience{amount=25} @self 给宠物提交经验奖励,并通过 <lipet.level>、<lipet.damage>、<lipet.max_health>、四维属性与品质 ID 读取 LiPet 档案。未安装 MCPets 时同时提供 @PetOwner 和 petExperience{exp=25} 兼容名称。
现有 mythic-skills 的等级解锁、trigger 和 power 保持原行为;MM 使用 <skill.power> 获取传入值。MM damage 默认还会自动乘一次 power,显式引用它时需设 poweraffectsdamage=false 避免重复。伤害数值不等于 <pet.damagemodifier> 倍率,其他 MCPets 专属机制仍需按包核对。详见 双向集成指南 和 2.3.0 更新说明。
2.2.5 GUI 标题支持 PlaceholderAPI 变量
宠物主菜单、商城、仓库、信息、管理、放生确认及独立背包的标题,统一支持 PlaceholderAPI 的 %变量% 与原有 LiPet <变量>。例如管理菜单标题可写成 <gold><pet_name></gold> · %player_name%;PAPI 按打开菜单的玩家解析,查看他人宠物时也是查看者上下文。
保留原有 MiniMessage 颜色、<font:命名空间:字体> 与 Unicode 字符;未安装 PAPI、变量未知或解析异常时保留原文并继续打开菜单。现有标题配置不被覆盖,修改配置后执行 /lipet reload 并重新打开菜单;升级 Jar 仍需正常重启。
详见 2.2.5 GUI 标题变量说明。
每只宠物的主动攻击开关(2.2.4 起提供)
潜行空手右键自己的宠物,在管理菜单点击“主动攻击”即可切换。每只宠物分别保存,默认开启;关闭后清除当前战斗目标,停止自动索敌、援助反击及自动战斗技能,宠物继续跟随。召回、重进和正常重启后保留选择。
玩家开启后仍遵守管理员的物种行为配置、主人保护与区域限制。手动技能继续使用原有冷却和合法目标检查。详见 2.2.4 更新说明。
2.2.3 捕捉品质提示
捕捉成功主消息直接显示实际保存的宠物品质,例如 【稀有】 小狼,并继续发送原有特性详细行。只迁移完全匹配旧官方默认的提示,服主自定义文本保留;自定义消息可加入 <quality>。不改变抽取概率或捕捉规则,也不新增全服广播。
详见 2.2.3 更新说明。CE 贴图包继续为独立的 1.0.0,品质提示不要求更新贴图。
2.2.2 持久化全链路审计
继续处理连接池之外的丢档与错误退款路径:数据库连接设置变更改为正常重启生效,关闭时明确结束尚未执行的数据库任务;背包增加单宠编辑互斥、原子条件保存与恢复快照;技能书和购买结果未确认时保留核对凭据。旧会话、死亡保存和创建确认也增加保护。
本次不改数据库表结构。出现背包冲突或交易未确认提示时,应保留恢复文件并核对数据库和交易记录。详见 2.2.2 审计与升级说明。
2.2.1 MySQL 持久化修复
修复 MySQL 模式下使用被动技能书后,连接残留手动提交状态,导致后续新宠物显示保存成功、实际未提交并在断线或重启后消失的问题。归还连接时先回滚遗留事务,再恢复自动提交、只读状态和事务隔离级别;恢复失败直接丢弃连接,并修复连接池关闭时的归还竞争。
本次不改数据库表结构或管理员配置,原有 112 项主动技能继续保留。详见 2.2.1 更新说明,含真实 MySQL 复现与重启验证。
2.2.0 已有 ModelEngine 动画技能
新增 12 项使用已有 ModelEngine 动画的技能,目录共 112 项:100 项物种技能与 12 项模型技能。9 项通过缩小的 LiSeasons 场景蓝图表现,3 项直接播放现有 Parro 的攻击、跳跃和奔跑动画。原有 88 种生物的三槽分配保留;long_1、long_2 只在缺少类型覆盖时补入 Parro 三槽,已有管理员列表保留。所有技能继续提供粒子和音效。
详见 2.2.0 更新说明、112 技能目录 和 模型动画配置。
2.1.0 原版生物特性技能
100 项默认技能按原版生物特性重新设计与分配:史莱姆的“滑溜溜”可概率闪避一次攻击,硬壳、毒刺、火焰和灵巧等特性对应真实防御、控制或伤害效果。每宠仍默认三个技能,自动与手动共用冷却,全部自带粒子和音效。
详见 2.1.0 更新说明 和 技能目录与物种配装。
2.0.1 CE 配方原物品捕捉
CE 配方合成的原始物品现在按完整物品 ID 识别为捕捉球,无需先由 LiPet 指令发放。取消或失败退款保留原物品的名称、Lore、模型与组件;普通同底材物品不能替代。附可选合成示例,不覆盖服务器已有设置。
详见 CE 配方捕捉球 和 2.0.1 更新说明。
2.0.0 百种宠物技能
内置 100 个主动技能,每只宠物默认 3 槽,战斗自动释放+/lipet skills cast <1|2|3> 手动释放,自动与手动共用独立 CD。每个技能默认都有彩色粒子、动态轨迹和音效,无需模型插件;可选 CE 物品模型或 ModelEngine 模型动画。旧宠物和被动技能书继续兼容。
详见 2.0 更新说明、100 技能目录 和 模型特效配置。
0.30.1 AI 深度优化
寻路采用单次搜索地形缓存和采样上限,移动目标重算限频;执行缓存路点前重新校验障碍、落脚与危险方块,跨世界旧路线安全失效。主动索敌按距离筛选后再查权限和视线,减少重复停路与蓄力表现开销。详见 优化说明与验证记录。本次无需修改配置。
0.30.0 全物种 AI 与攻击分型
按物种区分近战和受控投射物,统一处理视线、蓄力、冷却与碰撞箱判距;优化 Brain、飞行、水生及特殊生物的跟随绕障,补充宠物地形保护。公共与独立 YML 支持 behavior.attack 覆盖。详见 更新说明 和 逐物种测试。
0.29.16 宠物信息食物展示优化
食物开关改为语义更明确的 show-in-pet-info,只控制宠物信息界面的 <foods> 列表;旧 show-in-info 继续兼容并自动迁移。全部食物隐藏时默认直接移除“食物偏好/可食用”整行,gui.yml -> info.foods-display 还能自定义单项格式、分隔符、空内容文字和空列表行为。
详见 0.29.16 更新说明。
0.29.15 宠物食物信息显示开关
宠物信息界面的食物介绍现在支持两级控制:gui.yml -> info.foods-display.enabled 可隐藏整行,每条食物的 show-in-pet-info 可只隐藏指定食物。隐藏仅影响界面文字,不影响物品识别、扣除、喂养、经验、治疗、属性点或等级限制;旧配置会补全为 true,现有值和注释不被覆盖。
详见 0.29.15 更新说明。
0.29.14 监守者动作跟随与凋灵受控 AI
监守者近战改用实体专属攻击状态,客户端可播放原版攻击动作;关闭 Brain 后即使 Paper 拒绝寻路,也会在落地时先按碰撞物理主动追随,持续受阻再安全召回。凋灵的原版感知、普通目标和三个头部独立目标全部交由 LiPet 接管,不再自行随机发射凋灵之首;跟随与战斗改用受控飞行速度。
本次不新增或覆盖配置。详见 0.29.14 更新说明。
0.29.13 完整宠物 PAPI 与宠物币变量
补齐并集中整理活动宠物、品质性格、成长属性、宠物数量、服务器、CraftEngine 捕捉球和内置宠物币变量。新增宠物币余额、名称、格式化余额及常用别名;余额在登录时异步预热,PAPI 读取不会阻塞服务器线程。
详见 完整 PlaceholderAPI 变量表 和 0.29.13 更新说明。
0.29.12 CraftEngine 捕捉球 PAPI 变量
新增捕捉开关、球列表及按球 ID 查询 CE 物品 ID、名称、命名空间、类型和三档捕捉概率的 PlaceholderAPI 变量;同时提供配置原值与显示百分比。不新增配置节点,也不覆盖已有捕捉球设置。
详见 0.29.12 更新说明。
0.29.11 监守者跟随与召唤名牌
修复监守者受控移动推进间隔、宽体寻路边角及跳跃中断问题,保留原版 Brain 关闭和主人保护。召唤成功注册后才显示名牌,召回及失败后的延迟刷新不再重新创建名牌。不覆盖配置或修改跟随阈值。
详见 0.29.11 更新说明。
0.29.10 停服保存与残留攻击保护
停服保存不再等待下一实体 tick;带标记但无活动会话的宠物禁止造成伤害,间接攻击保留来源,嘎枝正确清除主人仇恨。不修改存档主人。
详见 0.29.10 更新说明。
0.29.9 重启残留与归属提示
修正缺失活动会话被误报为“不是主人”的情况;实体加载后延迟核对,右键补清理重启残留,并保护尚未完成的召唤。不改数据库归属,不按点击者认领宠物。
详见 0.29.9 更新说明。
0.29.8 · 鱼类水中跟随与骑乘
修复鱼类水中跟随水平推进不足,以及骑乘持续下沉、不能上浮。原版鱼 AUTO 模式在水中使用游泳控制:空格上浮、低头前进下潜、松键停止升降;新增 SWIMMING 模式,离水不飞行。保留外部模型驾驶控制。
详见 鱼类跟随与游泳骑乘。
0.29.7 · 原生宠物体型缩放
内置原生 SCALE 缩放,无需 LiAnimalScale;支持公共、单宠类型和等级倍率,模型与碰撞箱由 Minecraft 同步。默认关闭,仅作用于 LiPet 宠物;外部 ModelEngine/CraftEngine 模型跳过。重载、重召与等级变化同步,关闭时安全恢复。
详见 原生宠物体型缩放。
0.29.6 · info 界面行数修复
属性界面支持 1-6 行,不再强制改为 5 行或把仓库返回按钮改到 40。保留管理员布局、动作及注释;缩小时须将属性卡片、属性按钮和两个返回按钮移入有效范围。旧版已写回的值需手动重新设置。
详见 info 界面行数修复。
0.29.5 · 监守者宠物主人保护
监守者宠物改用 LiPet 受控移动与近战,不再由原版 Brain 追打主人或释放黑暗、声波。跟随、主动索敌、坐下及 WG 规则保留;不屏蔽野生监守者的黑暗,不清除玩家其他来源的药水效果。需正常重启并重新召唤旧宠物。
详见 监守者宠物主人保护。
0.29.4 · WorldGuard 与召唤跟随
新增 lipet-spawn、lipet-attack 区域开关,控制召唤与攻击。收回坐下宠物后再次召唤恢复跟随。MM 在禁刷怪区域仍需 WG mobs.block-plugin-spawning: false(影响该世界所有插件生成,普通自然刷怪仍受区域限制);未配置时明确提示并回滚,不再空指针。原版宠物无需这一额外设置。完整重启注册旗标,勿用热卸载代替。
详见 WorldGuard 与召唤跟随。
0.29.3 · 主人保护
禁止宠物把主人设为原版仇恨目标,并周期清理绕过事件直接写入的主人目标。伤害前后两次检查宠物本体、投射物及可追溯的间接来源,对主人取消并归零伤害。普通怪物仍能正常伤害玩家,不改已有配置。必须完整重启并确认启动版本为 0.29.3-SNAPSHOT。
0.29.2 · 追击与绕障
保留主动索敌,修复近距离隔墙停步及追击被空闲跟随距离打断;原地卡住约 4 秒会放弃目标,主动扫描短暂跳过它。主人远离后仍优先返回。更新 Jar 必须正常重启服务端并核对启动版本,配置重载不能替换正在运行的代码。
0.29.1 · 主动索敌
空闲宠物现在可主动攻击附近可见敌对怪物,默认扫描范围 8 格;排除玩家、宠物、驯服生物及部分中立生物。坐下、骑乘、牵引、返回主人时不索敌,主人走远仍优先跟随。公共及独立宠物配置支持 behavior.auto-attack.enabled/radius,配置重载可生效。
0.29.0 · 品质、性格与闪光
新捕捉宠物可获得五档品质、可配置性格和稀有闪光。成长倍率与名称随档案保存, 召回、重载和重新读取存档不重抽,旧宠物保持原数值。仓库、详情、名牌与 PAPI 均可显示。 新增 traits.yml;材料进化、探索派遣留待后续批次。 详见本次品质、性格与闪光更新文档。
0.28.0 · 骑乘、命名与多行名牌
原版骑乘新增自动迈步和 LOOK/MOVEMENT 朝向;ModelEngine 保留独立驾驶控制。 新增 naming.yml 命名规则与 nameplate.lines 多行排版,兼容已有配置和名字。 0.28.0 为扩展开发第一批;品质/性格/闪光已在 0.29.0 补充,材料进化与探索派遣仍待后续。 配置说明见本次更新文档。
0.27.29 · 跟随与模型骑乘稳定性
地面宠物在主人附近停靠,减少贴身重叠;脱战返回不再反复重置路径。 模型虚拟座位跨 Folia 区域时保留骑乘判断,暂停不安全的读取;减少骑乘时名牌重复刷新。 不新增必填配置,具体行为及验证范围见本次更新说明。
0.27.28 · 单宠名牌与战斗跟随
单宠物 nameplate 支持覆盖及热重载;主人走远时宠物脱战返回,返回途中不重新接战。 补充模型驾驶座 Bukkit 输入同步与骑乘期间技能控制。两份龙配置的缩进问题与模型测试边界见本次更新说明。
0.27.27-SNAPSHOT 修复 MM 模型回收、名牌跟随和模型驾驶座联动,新增按宠物类型配置的骑乘解锁等级。默认 1 级保持旧版行为,配置见 MM 模型与骑乘等级。
0.27.26-SNAPSHOT 新增可选的独立背包贴图标题,按真实 1-6 行选择背景,默认关闭并保留普通标题。容量与物品存取逻辑保持原样,配置见 背包贴图标题。
LiPet 是一个面向群组服的 Bukkit 宠物插件框架,兼容 Paper/Folia 1.21.11、Paper/Folia 26.1.2 与 Paper/Folia 26.2。
0.27.25-SNAPSHOT 修复受伤宠物重载/成长刷新意外回血,以及死亡保存失败被收回成活宠的路径;退出保存失败补充日志。两套 API 各 383 项测试通过,Folia 隔离服定向验证。背包并发、重载原子性、崩溃恢复等仍列为待处理项,详见 逐项排查报告。
0.27.23-SNAPSHOT 完成一轮 Folia 专项排查,修复任务退休回调、跨区战斗/技能、捕捉回调、GUI 点击事务及跟随边界。两套 API 各 366 项测试通过,Folia 26.2 隔离服完成定向验证;同宠物背包并发编辑、重载快照和捕捉崩溃一致性等残余风险单独列出,未宣称全面兼容。详见 Folia 专项排查报告。
0.27.22-SNAPSHOT 修复只读 GUI 可通过拖拽交互改动顶部菜单槽位、导致菜单展示物品被带走或玩家物品写入菜单的问题。所有 LiPet 主菜单、宠物商城、道具商城、仓库、详情、管理和放生确认页现在同时拦截点击与触及顶部槽位的拖拽;拖拽只发生在玩家背包时仍允许整理物品,宠物独立背包也继续作为正常储物空间使用。说明见 2026-09-06 GUI 物品保护修复。
0.27.21-SNAPSHOT 修复 Folia 召唤实体在首个 tick 尚未标记为 valid 时被误判为“保护插件拦截”、随后回滚为召唤失败的问题。生成初始化完成后会等待宠物自己的下一次实体区域任务确认,任务被 Folia 接纳即可继续,只在实体死亡或实体调度被拒绝时回滚;已有外观的捕捉宠物与首次生成宠物都走同一安全链路。Folia 26.2 实测完成带外观狼的正常召唤、跨 1024 格区域移动、清空主人后的重进恢复和跨区域收回。说明见 2026-09-06 Folia 认主与召唤时序修复。
0.27.20-SNAPSHOT 修复玩家未手动收回宠物就退出、重进后原版驯服关系丢失而看起来“不认主”的问题。玩家重进和宠物区块重新载入时都会按持久化主人 UUID 恢复狼、猫等原版驯服实体;鹦鹉继续不绑定原版主人,避免再次进入肩部数据。新增全局喂食冷却 config.yml -> feeding.cooldown-seconds,默认 1.0 秒、范围 0-60,支持小数和 /lipet reload;只在有效且会产生效果的喂食上生效,冷却中不扣物品,数据库失败会撤销占位。旧配置只补新增节点和中文注释。说明见 2026-09-06 重进认主与喂食冷却。
0.27.19-SNAPSHOT 修复属性加点偶发失败和四维属性职责混乱。力量不再增加暴击率,只负责攻击、暴击伤害与少量吸血;暴击率统一由敏捷增加。活动宠物和仓库宠物遇到短暂 revision 冲突时会重新读取权威档案并最多重试两次,不再一次冲突就直接失败。旧版或手改 gui.yml 中小写属性键可继续使用,错误 UUID、缺少参数或未知属性会显示可配置中文提示而不会抛出点击事件异常;属性点耗尽也有单独提示。升级只补全缺少的消息节点,不覆盖已有 GUI、属性值或管理员配置。默认兼容 API 与 Paper 26.2 Build 111 API 清理构建各通过 353 项测试,最终 Jar 在 Paper 26.2 完成启动、状态、重载和安全停止检查。说明见 2026-09-05 属性加点与属性归属修复。
0.27.18-SNAPSHOT 修复 Residence 领地设置 sun=true 后,世界本质仍在下雨而导致 LiPet 烈焰人持续受到淋雨伤害的问题。插件通过可选运行时反射读取当前位置的 Residence 天气标志,只取消“世界有风暴、LiPet 烈焰人未在水或气泡柱中、sun=true 且 rain 未启用”的原版水敏感伤害;普通烈焰人、未设晴天的领地和真实泡水伤害保持原样。同时修复连续属性加点后界面异步回查到较早档案、显示属性回退或像未生效的问题,保存成功后直接使用本次权威档案刷新。无需新增配置,也不覆盖领地 Flag 或 GUI 自定义。两套 API 全量构建各 349 项测试通过,并在 Paper 26.2 Build 111 完成局部晴天事件与真实泡水边界验证。说明见 2026-09-05 Residence 天气与属性加点修复。
0.27.17-SNAPSHOT 修复用风弹喂旋风人时同时发射风弹、额外消耗物品的问题。喂食入口在异步结算前登记本次交互,独立监听器拒绝紧随其后的原版物品使用,并保护副手回退;只对该宠物配置中认可的食物生效。成功喂食仍只消耗一份,创造模式不扣除;普通投掷、非食物、技能书和信号棒保持原有入口。无需修改配置或改用其他食物。默认兼容构建和 Paper 26.2 API 全量构建各 343 项测试通过。说明见 2026-09-05 风弹喂食冲突修复。
0.27.16-SNAPSHOT 修复捕捉幼体后自然长大、随后看起来不再认主的问题。Paper 26.2 实测确认狼、猫和马跨越成年边界时不会更换实体 UUID,也不会丢失 PDC、驯服状态或主人 UUID;实际缺口是 LiPet 已把幼体状态保存为捕捉外观,却没有锁定年龄,活动实体会逐渐偏离数据库记录。现在捕捉到的幼体会保持幼体并锁定自然年龄,区块重新载入时也按档案恢复;成年宠物保持成年且不会冻结原版年龄计时。无需新增配置,不覆盖宠物数据或管理员设置。默认构建与 Paper 26.2 Profile 各 333 项测试通过。说明见 2026-09-04 捕捉幼体认主修复。
0.27.15-SNAPSHOT 修复快乐恶魂(乐魂)跟随、追敌和骑乘移动异常。Paper 26.2 的成年快乐恶魂使用恶魂飞行控制器,但通用路径接口可能接受一条它无法稳定执行的地面路径,旧逻辑因此不会启用速度兜底;现在快乐恶魂会清除旧路径并由飞行速度直接接管。跟随和召回目标按 4 格成年体型从固定 1.5 格提高到 3 格,骑乘时额外同步身体朝向。无需新增配置,已有速度、距离、骑乘和模型设置不变。默认构建与 Paper 26.2 Profile 各 330 项测试通过;Paper 26.2 Build 111 真实成年快乐恶魂完成跟随抬升、连续视角骑乘和多层座位回归后安全关闭。说明见 2026-09-04 快乐恶魂移动修复。
0.27.14-SNAPSHOT 逐项复核全部默认可捕捉原版宠物的专属食物,并优先对齐 Paper 26.2 服务端自带的原版食物标签。枯骆驼改用兔子脚,猪灵与猪灵蛮兵改用熟猪排,硫磺魔方改用黏液球,狼的模板移除骨头并使用肉类,猫的模板改用原版接受的生鳕鱼与生鲑鱼,僵尸马改用红色蘑菇,僵尸鹦鹉螺改用河豚。Paper 26.2 的 87 种默认原版宠物仍全部有独立食物;没有原生食物规则的敌对生物继续使用与生态、掉落物或修复方式相符的主题物品。旧服已有 growth.foods 不会被覆盖,需要按更新日志列出的节点手动调整。两套 327 项测试通过,隔离服实读生成文件验证新映射后安全关闭。说明见 2026-09-04 原版宠物专属食物校准。
0.27.13-SNAPSHOT 将所有官方默认食物的单次经验统一调整为 4,低于默认战斗配置下最弱目标的约 6 点击杀经验;20 点最大生命的常见目标仍提供 15 点经验。公共食物、狼/猫模板、原版商城模板、新生成的全部可捕捉原版宠物和缺失食物补全使用同一默认值。附魔金苹果仍保留治疗与属性点效果,但不再靠高额经验替代战斗升级。升级不会覆盖管理员已有 growth.foods,旧服要应用新平衡值时请把对应 experience 手动改为 4。默认构建与 Paper 26.2 Profile 各 325 项测试通过;最终 Jar 在 Paper 26.2 Build 111 全新生成 89 个宠物文件,并完成启动、重载和安全关闭。说明见 2026-09-04 默认喂食经验平衡。
0.27.12-SNAPSHOT 修复 Folia/Shiroha 中宠物跨区域移动时,名牌刷新容错分支再次读取 getPassengers() 并抛出 owning-region 异常的问题。名牌刷新现在先确认宠物实体线程,迁区临界点延后一 tick 交给实体调度器重试;第二次仍失败时保留当前显示状态并限频记录,不再执行不安全回退。骑乘事件和行为循环会把同一区域内已经确认的骑乘状态交给名牌服务,避免刷新时重复扫描乘客树。无需新增配置,已有 nameplate.hide-while-ridden 和自定义名牌样式保持不变。默认构建与 Paper 26.2 Profile 各 324 项测试通过;最终 Jar 已在 Paper 26.2 Build 111 两次完成 LiPet、SQLite 与 PlayerPoints 启用及安全关闭。说明见 2026-09-04 Folia 名牌跨区修复。
0.27.11-SNAPSHOT 为全部默认可捕捉原版生物生成合适的独立食物,例如烈焰人使用烈焰粉;旧官方原版宠物文件缺少 growth.foods 时自动补全,已经写过食物规则的文件和自定义宠物不会覆盖。战斗经验改为按宠物合并积压写入并保持玩家操作顺序,降低两名玩家同时刷级时 SQLite 写队列拥堵;数据库版本冲突会读取最新记录后重试,关服保存会等待经验批次完成。真实 SQLite 重开测试确认等级、经验、状态和 revision 均保持。默认构建与 Paper 26.2 Profile 各 321 项测试通过,同一最终 Jar 已在 Paper 26.1.2 Build 70 与 Paper 26.2 Build 111 完成启动、重载和安全关闭。说明见 2026-09-04 原版食物与成长持久化修复。
0.27.10-SNAPSHOT 修复技能书连点、异步失败及 MySQL 并发升级不稳定,并修复敏捷速度看起来始终为 0.3。技能书现在先写入持久预扣台账,再扣除物品并按玩家串行升级;失败、满级、掉线或中途重启会退还。成长属性刷新、宠物跟随、战斗追击、GUI 与 PlaceholderAPI 统一使用“基础速度 + 敏捷 + 速度技能”的最终值,速度文本最多显示三位小数,例如 0.255。说明见 2026-09-03 技能书与敏捷速度修复。
0.27.9-SNAPSHOT 修复道具商城余额不足错称“无法购买宠物”、飞行宠物及骑乘加速遗漏,以及回收偶发无反馈。道具发放任务受理后退休会结束交易并退款;宠物速度同步 MOVEMENT_SPEED 与实体支持的 FLYING_SPEED;骑乘按住疾跑键按新增 behavior.riding-sprint-multiplier 加速;命令、GUI、信号棒统一回收反馈,超过 100 tick 会提示正在保存。旧配置只补缺失节点与中文注释。说明见 2026-09-02 商城、飞行加速与回收更新。
0.27.8-SNAPSHOT 修复召唤宠物偶发无反应、执行重载后仍无法召唤的问题:实体任务已被调度器受理,但玩家或实体在执行前被移除时,旧 Future 可能一直不结束,导致同一玩家后续操作持续排队。现在执行、拒绝、退休和异常都会结束任务,召唤失败按已保存的最新版本号回滚,同步依赖错误与查询失败也会释放对应占位。命令和仓库共用召唤反馈,未完成超过 100 tick 才提示一次;messages.yml 的 pet-call-pending 设为空字符串可关闭等待提示。升级必须换 Jar 后重启,不要删除宠物数据或靠连续重载清队列。说明见 2026-09-01 召唤无响应修复。
0.27.7-SNAPSHOT 修复骑乘时旁观者仍能看到宠物名牌,以及按住前进键后转动视角却不转向的问题。开启 pet-types.yml -> nameplate.hide-while-ridden 时,骑手和其他玩家都会隐藏双行名牌与载体原版名称,保留同一个 TextDisplay 并在下马后恢复;设为 false 可保持显示。骑乘上马即启动连续控制,每 tick 使用骑手当前视角与按键,原地和持续前进时都能跟随视角转向。完整说明见 2026-09-01 骑乘名牌与视角转向更新。
0.27.6-SNAPSHOT 新增 Vault / PlayerPoints 货币名称配置,并修复改名后重载不生效的问题。三个名称统一在 config.yml -> currency.<internal|vault|playerpoints>.display-name 设置,默认依次为“宠物币 / 金币 / 点券”。首次换用新 Jar 后重启一次;以后修改名称并成功执行 /lipet reload,关闭再打开宠物商城或道具商城即可看到新名称。重载失败或并发请求不会发布本次候选名称,货币 ID、价格及扣款规则保持不变。完整示例见 2026-08-31 货币名称与重载更新日志。
0.27.5-SNAPSHOT 新增 MEG 等级模型、原版捕捉随机属性和捕捉球商店。宠物可配置 1 级模型 a、2 级模型 b,升级后按等级门槛切换;原版捕捉成功时独立生成力量、体质、防御、敏捷并持久保存,默认各 0–5。道具商店使用 item.capture-ball 引用真实捕捉球,默认上架普通捕捉球案例。配置教程见 等级模型、随机属性与捕捉球商店。
0.27.4-SNAPSHOT 为 CraftEngine 捕捉球与宠物食物加入可直接修改的默认案例。capture.yml -> balls.craftengine_example 和 pet-types.yml -> defaults.growth.foods.craftengine_example 均带完整中文注释、namespace:item_id 写法和 enabled: false 安全开关;修改成自己的 CE ID 并启用即可使用。关闭的案例不会进入捕捉球指令补全、物品识别、扣除或宠物食物列表;旧服只补缺失节点,不覆盖现有材料、食物数值与管理员注释。默认构建与 Paper 26.2 Profile 各 165 项测试通过,并在 Paper 26.2 Build 111 + CraftEngine 26.8 验证 109 个 CE 物品索引及同一 CE 物品同时作为食物和捕捉球的配置链路。
0.27.3-SNAPSHOT 重构宠物配置为“公共默认值 + 单宠差异”:所有相同属性统一写在 pet-types.yml 的 defaults,每只宠物只在中文 宠物/ 目录保存独立 YML 和不同项。首次启动会为默认捕捉规则允许的全部原版生物生成 原版宠物/<中文名>.yml,已有文件和自定义值不会覆盖;旧官方 宠物类型/ 目录会在没有同名新目录时安全迁移。MCPets 单宠物文件可原样放入中文子目录,LiPet 会读取 Id、MythicMob、骑乘类型和距离等核心字段,并通过 MythicMobs 生成对应 Mob;同时提供 自定义宠物/正义工作室/龙骑/龙骑-普通.yml 中文示例。
0.27.2-SNAPSHOT 恢复老版本宠物类型兼容:数据库中的 bat、fox 或 minecraft:bat 等旧原版 ID 会自动解析到当前 vanilla_<实体名> 类型,召唤、同类型持有限制与管理员按类型操作使用同一兼容规则,不修改或删除旧宠物数据。插件会为商城现有 10 种宠物补齐一宠物一 YML;升级只创建缺失文件,已有类型、文件、数值和注释均不覆盖。默认构建与 Paper 26.2 Profile 各 151 项测试通过,并在 Paper 26.2 Build 111 验证旧配置补全、旧 ID 解析、热重载与安全关闭。
0.27.1-SNAPSHOT 对 MythicMobs 等级技能做稳定性和热路径优化:冷却中的技能不再重复抽取概率,PASSIVE 与 INTERVAL 合并为一次技能表扫描,冷却清理降为每分钟一次;MM 返回 false 时会保留配置冷却,零冷却错误技能至少退避 1 秒,错误日志按技能名分别限频,避免错误配置每 tick 重试或刷屏。反射挂钩同时兼容静态 getAPIHelper() 和 double power API 变体。/lipet status 新增已启用技能类型数与规则数,旧官方状态文本会安全迁移而不覆盖服主自定义语言。
0.27.0-SNAPSHOT 新增每种宠物独立的 MythicMobs 等级技能配置。服主可在任意 宠物类型/*.yml 中配置 MM 技能名、触发方式、解锁等级、概率、冷却、基础 power 与每级成长;低于解锁等级时完全不会施放,达到等级后自动生效。支持主人攻击/受击、宠物攻击/受击、交互及定时触发,并用预占冷却阻止 MM 伤害递归触发。MythicMobs 是可选软依赖,不安装时 LiPet 仍可正常运行;旧宠物类型文件只会补入带完整中文注释且默认关闭的示例,不覆盖服主配置。
0.26.26-SNAPSHOT 修复从宠物管理界面进入“完整属性”或“成长与加点”后无法返回原管理界面的问题。属性面板现在会保存打开来源:从仓库进入时返回宠物仓库,从管理界面进入时返回同一只宠物的管理页;完成属性加点并刷新界面后也会继续保留返回来源。旧服会在不覆盖自定义按钮的前提下,自动向 gui.yml 补充可完全自定义的 info.navigation.manage 返回按钮。默认构建与 Paper 26.2 Profile 各 137 项测试通过,并在 Paper 26.2 Build 111 + PlayerPoints 3.3.5 完成真实 0.26.25 配置迁移、热重载、状态检查和安全关闭验证。
0.26.25-SNAPSHOT 按玩家界面重新整理宠物仓库介绍:潜行左键与潜行右键统一使用绿色操作色,永久放生警告前增加空行,并改为醒目的红色“⚠放生会永久删除全部数据”。升级只迁移历次官方默认 Lore,服主自定义介绍保持不变。默认构建与 Paper 26.2 Profile 各 132 项测试通过,并在 Paper 26.2 Build 111 + PlayerPoints 3.3.5 完成 0.26.24 默认 Lore 迁移、热重载、状态检查和安全关闭验证。
0.26.24-SNAPSHOT 将宠物仓库图标操作拆成四条准确提示:左键召唤、右键查看属性与管理、潜行左键收回、潜行右键放生;潜行左键已改为真正的 store 动作,升级仅迁移官方旧 Lore、注释和旧默认动作。宠物类型改为默认读取可中文命名的 宠物类型/ 目录,支持多个 .yml / .yaml 和中文子目录;旧 pet-types.yml 的 types 会在目标目录不存在时原样拆成一类型一文件,已有目录和服主自定义内容不会被覆盖。131 项测试通过;Paper 26.2 Build 111 + PlayerPoints 3.3.5 已完成旧服拆分迁移、新服中文文件生成、热重载和安全关闭验证。
0.26.23-SNAPSHOT 调整主菜单宠物入口:按钮标题由“宠物仓库”改为“我的宠物”,最后一行由“点击打开宠物仓库”改为“点击打开宠物列表”。实际列表页面仍叫“宠物仓库”;升级仅迁移官方旧按钮名称和 Lore,服主自定义文本保持不变。Paper 26.2 Profile 共 121 项测试通过,并在 Paper 26.2 Build 111 + PlayerPoints 3.3.5 上完成真实 0.26.22 gui.yml 迁移、状态检查和安全关闭验证。
0.26.22-SNAPSHOT 将“已有一只宠物正在跟随时再次召唤”的结果改为独立召唤上限提示:已达最大召唤数量,请将已召唤的休息后再召唤!。指令与仓库 GUI 均继续通过 pet-already-active 语言节点显示,不再使用通用召唤失败文案;插件会自动迁移历次官方默认文本及 Bukkit 自动折行后的旧值,但保留服主自定义语言。Paper 26.2 Profile 共 119 项测试通过,并在 Paper 26.2 Build 111 + PlayerPoints 3.3.5 完成真实旧配置迁移、状态检查和安全关闭验证。
0.26.21-SNAPSHOT 修复鹦鹉等飞行宠物安全回传后双行 TextDisplay 名牌停留在旧位置的问题。宠物传送前会主动清理乘客名牌,异步传送无论成功或失败都会在宠物当前实体区域立即恢复名牌,避免宠物和“名称 / 主人”文本分离;新增传送生命周期顺序及失败恢复测试。Paper 26.2 Profile 共 119 项测试通过,并在 Paper 26.2 Build 111 + PlayerPoints 3.3.5 完成启动、挂钩和安全关闭验证。
0.26.20-SNAPSHOT 修复宠物商城和宠物道具商城把配置用货币 ID INTERNAL 直接显示给玩家的问题;两个商城的 <currency> 现在统一读取 config.yml 中的 currency.internal.display-name,默认显示“宠物币”,服主自定义名称同样生效。未知或未挂钩的提供器仍显示原始 ID,便于排查配置。Paper 26.2 Profile 共 117 项测试通过,并在 Paper 26.2 Build 111 + PlayerPoints 3.3.5 完成启动、挂钩和安全关闭验证。
0.26.19-SNAPSHOT 新增默认自动授予的 lipet.player 普通玩家权限组,并让 lipet.admin 显式继承;新增 /lipet top coin|level [页码] 宠物币与宠物等级排行榜,SQLite/MySQL 均使用异步分页排序查询;宠物商城和道具商城新增 PLAYERPOINTS 货币提供器,运行时反射挂钩 PlayerPoints 3.x,不把第三方依赖打入 Jar。116 项自动测试通过,并在 Paper 26.2 Build 111 + PlayerPoints 3.3.5 完成真实挂钩、两种排行榜与安全关闭验证。
0.26.18-SNAPSHOT 为宠物仓库增加四种独立快捷操作:左键和蹲下左键召回伙伴、右键查看属性与管理、蹲下右键进入放生二次确认;仓库 Lore 会明确提示放生会永久删除且无法恢复,旧默认 Lore 和缺失动作节点会安全迁移,自定义内容保持不变。仓库召回不再把“已有活动宠物、死亡冷却、跨服占用”错误显示为统一召唤失败,而是使用对应中文语言节点。宠物币在原 /lipet coin give|take|look 基础上新增 /lipet givecoin、takecoin、lookcoin 快捷入口。默认构建与 Paper 26.2 Profile 各 111 项测试通过,并在 Paper 26.2 Build 111 完成旧 GUI 配置迁移和两种宠物币指令实测。
0.26.17-SNAPSHOT 新增 /lipet coin give|take|look <玩家> [数量] 管理员宠物币指令,可查询、发放和安全扣除在线/离线 UUID 账户,余额不足时拒绝产生负数;Tab 玩家参数仍只显示在线玩家。骑乘隐藏改为仅对骑手隐藏现有 TextDisplay,不再删除重建名牌,修复名字掉到实体下方的问题。末影龙会固定为 HOVER 阶段,身体部件继续解析回龙本体,并支持按视角俯仰飞行骑乘。默认构建与 Paper 26.2 Profile 各 106 项测试通过,成品已在 Paper 26.2 Build 111 完成真实 SQLite 币变动和安全关闭验证。
0.26.16-SNAPSHOT 新增独立骑乘可见性监听:玩家骑上宠物时立即隐藏双行名牌,Boss 宠物还会按 riding.hide-boss-bar-while-ridden 隐藏血条,下坐骑后自动恢复原状态;末影龙身体部件会统一解析回龙本体,因此空手右键骑乘、潜行右键管理和信号棒交互均可正常命中。管理员玩家参数的 Tab 补全只显示在线玩家,离线名称与 UUID 仍可手工执行;召唤冲突提示会同时显示当前宠物和目标宠物,并新增 /lipet delete [宠物名称] 永久删除入口。
0.26.14-SNAPSHOT 完成 CraftEngine 物品全链路挂钩:喂食、捕捉球、技能书、信号棒、宠物商城图标、道具商城商品与图标、全部 GUI 按钮及填充物都可直接填写 CE 完整物品 ID。插件会使用 CE 官方稳定 API 生成并反向识别物品,保留模型与组件数据;CE 重载后自动刷新物品索引,生成失败时显示中文提示或自动退款,不会伪装成同底材原版物品。默认构建与 Paper 26.2 Profile 各 102 项自动测试均通过,并已搭配 CraftEngine 26.8.1 在 Paper 26.1.2 Build 70 与 Paper 26.2 Build 111 加载 109 个 CE 物品,完成全链路和热重载实测。
0.26.13-SNAPSHOT 将点击反馈覆盖到主菜单、商城、仓库、属性、管理、放生确认及宠物背包;gui.yml 的全部内置按钮、自定义按钮、属性按钮、导航按钮和信息卡片新增 slots 多槽位配置,非空时覆盖旧版 slot,空列表则继续使用原位置,升级不会覆盖服主布局。默认构建与 Paper 26.2 Profile 各 99 项自动测试均通过,同一成品已在 Paper 26.1.2 Build 70 与 Paper 26.2 Build 111 完成配置迁移、热重载和安全关闭验证。
0.26.12-SNAPSHOT 新增 /lipet give <玩家|-all> <宠物类型> [名称] 与 /lipet take <玩家|-all> <宠物名称|UUID|类型|-all>,支持向服务器已知的在线/离线玩家或全服玩家发放、收走宠物,并提供完整 Tab 补全与顺序数据库批处理;召唤实体会在生成事件前写入 LiPet 专属标记,并以高优先级仅放行自己的宠物,使 Residence 等领地保护开启生物生成限制时仍可召唤,同时阻止生成失败后留下孤立名牌。默认构建与 Paper 26.2 Profile 各 91 项自动测试均通过,同一成品已在 Paper 26.1.2 Build 70 与 Paper 26.2 Build 111 完成启动、指令和安全关闭验证。
当前版本包含配置、持久化、宠物创建与召唤、属性成长、衍生战斗属性、喂养升级、骑乘、捕捉仪式、信息 GUI、跟随、坐下控制、放生、协助战斗、死亡冷却、按等级解锁的 MythicMobs 技能和扩展点。
0.5.0-SNAPSHOT 已加入有界 JDBC 连接池、版本化数据库迁移、Redis 消息消费与去重、跨服 revision 防旧消息机制及安全关闭保存。
0.6.0-SNAPSHOT 已挂钩 Vault 与 PlaceholderAPI。两者均为可选前置,不会打入 LiPet Jar。
0.7.0-SNAPSHOT 新增 SQLite 单服存储、ModelEngine 模型 Provider 基础实现,以及能力、多货币、商城、GUI、宠物箱、交易和备份的模块边界。
0.8.0-SNAPSHOT 新增配置化宠物商城、宠物仓库 GUI、内置货币账户、SQLite/MySQL 货币持久化和购买失败自动退款。
0.11.0-SNAPSHOT 自动注册全部可生成原版生物,新增捕捉黑名单、技能书、技能等级和 SQLite/MySQL 技能持久化。
0.12.0-SNAPSHOT 新增宠物食物、经验升级、属性成长、骑乘、装备持久化和宠物详细信息界面。
0.12.1-SNAPSHOT 增加旧配置自动补全写回,升级后可直接编辑新增成长和界面节点。
0.13.0-SNAPSHOT 重做成长系统:战斗经验、食物等级限制、属性点、力量/体质/防御/敏捷、减伤、恢复和增强信息 GUI。
0.18.0-SNAPSHOT 移除宠物装备系统,新增暴击、暴击伤害、闪避、击退抗性、吸血等衍生属性,并为捕捉加入可配置的提示、音效与粒子仪式。
0.19.0-SNAPSHOT 默认启用 SQLite 持久化并迁移旧 MEMORY 配置,修复重启状态恢复;扩充宠物商城、限制每种宠物只能拥有一只,并加入聊天框交互改名。
0.20.0-SNAPSHOT 修复疣猪兽和猪灵跨维度僵尸化、宠物日照燃烧,并为缺少原版攻击 AI 的宠物增加统一追击与近战攻击兜底。
0.21.0-SNAPSHOT 新增 /lipet sit 坐下/跟随切换、/lipet release 放生指令、管理菜单坐下按钮、完整权限、补全与中文消息。
0.22.0-SNAPSHOT 新增 /lipet mount 指令入口,并建立 docs/PET_FEATURE_MATRIX.md 跟踪宠物功能进度。
0.23.0-SNAPSHOT 新增每只宠物独立背包:/lipet inventory [宠物名称]、管理菜单背包入口、SQLite/MySQL 持久化和旧 GUI 配置自动补全。
0.24.0-SNAPSHOT 新增宠物信号棒:/lipet signalstick [数量] [玩家] 发放,右键执行当前模式,潜行右键切换坐下/收回/骑乘/背包。
0.25.0-SNAPSHOT 曾新增安全自动更新能力。
0.25.1-SNAPSHOT 自查修复:宠物实体交互不再把信号棒/技能书误当食物消耗,信号棒支持右键宠物实体触发。
0.25.5-SNAPSHOT 按维护策略移除自动更新系统:删除 updater 配置、启动定时检查和 /lipet update 命令,避免插件自行联网下载 Jar。
0.25.6-SNAPSHOT 强化宠物生命周期一致性:同一玩家的召回、收回、成长、改名和放生改为串行执行;收回改为保存成功后再移除实体;关服会等待数据库写入队列排空,并自动清理崩溃后遗留的未绑定宠物实体。
0.25.7-SNAPSHOT 将 Paper 26.2 兼容基线升级到正式稳定构建 Build 111,完成 Adventure 5 API 移除项审计;捕捉音效和粒子改用 Bukkit Registry 解析,宠物背包改用新版 Bukkit 字节格式并兼容读取旧数据,同时保留 Paper 26.1.2 向后兼容交付。
0.25.8-SNAPSHOT 清理旧品牌字样,统一移除界面、道具和宠物名称斜体,并修复飞行宠物召唤后感知被关闭的问题;非坐下宠物会自动恢复原版 AI、感知与站立状态。
0.25.9-SNAPSHOT 重做战斗接近逻辑:具备攻击寻路的生物完全使用原版 AI,不再被自定义速度覆盖;被动生物使用高频平滑辅助移动,并同步身体朝向,修复攻击时被拖拽和倒着移动。
0.26.0-SNAPSHOT 重做跟随与追击导航:加入开始、停止、回传三段距离和回传冷却,主人飞行或滑翔时等待安全落地;全部地面宠物由高优先级受控 Goal 配合服务端原生 Pathfinder 绕障,原版闲逛、逃跑和仇恨不会再反向覆盖路径,新路径不可达时会停止旧路径而不会直线拖拽;消息、悬浮文本、GUI、道具和宠物名称在写入前统一强制非斜体。
0.26.1-SNAPSHOT 修复 SQLite 完成回调越过线程边界读取区块实体导致的喂养、属性加点、召回和收回连锁失败;活动宠物改用加载实体索引并随区块装卸维护,连续寻路失败会安全回传;全部菜单新增可配置打开、点击、关闭音效,宠物背包默认与最小容量调整为 54 格。
0.26.2-SNAPSHOT 修复可驯服生物收回残留:移除实体前解除原版主人、驯服与坐下状态,鹦鹉不再进入原版肩部数据;收回会同时检查左右肩,数据库保存失败时自动恢复肩部实体。主菜单、管理菜单和放生确认默认扩展为 5 行并仅绘制边框;GUI 的尺寸、槽位、填充模式、图标高级属性、按钮启停、普通/左右键动作及自定义指令均可在 gui.yml 配置。
0.26.3-SNAPSHOT 为 /lipet reload 加入 SQLite / MySQL 数据库热切换:候选驱动、连接与表结构先在后台验证,活动宠物保存完成后宠物数据与内置货币请求原子转向新库;切换窗口内的新请求自动排队,失败时继续使用旧库。MySQL 新增连接与读写超时配置,/lipet status 会显示当前实际数据库目标。此处为历史版本说明;2.2.2 起数据库变更改为正常重启生效。
0.26.4-SNAPSHOT 为活动宠物增加双行头顶名牌:第一行显示宠物名称,第二行显示主人玩家名;文字、颜色、偏移、背景、透明度与可视范围可在 pet-types.yml 调整。名牌会随重命名和热重载刷新,并在区块恢复、传送、死亡、收回和孤儿清理流程中自动修复或删除。
0.26.5-SNAPSHOT 修复属性加点提示显示 STRENGTH 等英文枚举的问题;四项属性与五种宠物状态改为 messages.yml 可配置中文名称。属性成功/失败消息和全部宠物 GUI 补齐玩家、宠物、成长、衍生属性及原始键变量,PlaceholderAPI 对外目录同步扩展并保证无活动宠物时返回稳定默认值。
0.26.6-SNAPSHOT 新增 /lipet daily、主菜单每日领取入口及宠物战斗/升级/捕捉奖励;新增 rewards.yml 完整配置和 lipet_currency_reward 防重表。奖励额度与余额在同一事务内更新。历史版本采用数据库热切换屏障,2.2.2 起数据库目标在运行期间固定。
0.26.7-SNAPSHOT 美化全部内置 GUI 与商城商品 Lore,增加清晰分区、渐变色操作引导和更完整的用途提示;旧默认值自动升级,自定义 Lore 不覆盖。
0.26.8-SNAPSHOT 修复 ModelEngine/MEG 模型与原版载体重叠,加入幂等模型恢复、热重载刷新及可配置的载体隐藏与碰撞箱覆盖。
0.26.9-SNAPSHOT 新增 CraftEngine 物品喂食支持,按完整命名空间 ID 精确识别与扣除,并保留全部旧版 Bukkit Material 食物配置。
0.26.10-SNAPSHOT 取消 /lp 指令别名,仅保留 /lipet,避免与 LuckPerms 等权限插件的常用主指令冲突。
0.26.11-SNAPSHOT 新增跨玩家单宠管理界面与 lipet.admin.manage 权限;管理员的属性、背包、改名、坐下、收回和放生操作始终绑定宠物真实主人及指定宠物 ID。商城增加 enabled 总开关并覆盖指令、GUI 和购买入口。
0.26.12-SNAPSHOT 新增管理员宠物 give / take 指令、离线玩家与双层 -all 支持;仅对带 LiPet 标记的宠物撤销领地插件生成拦截,并在实体确实生成成功后才创建名牌。
0.26.13-SNAPSHOT 为全部 LiPet UI 与宠物背包补齐点击反馈;所有可配置按钮支持 slots 多槽位复制和旧版 slot 安全回退。
0.26.14-SNAPSHOT 将 CraftEngine 扩展为完整物品提供器:统一负责自定义物品识别、生成、索引、Tab 补全和 CE 重载同步,并覆盖喂食、捕捉球、技能书、信号棒、商城及 GUI。
0.26.15-SNAPSHOT 骑乘时临时隐藏双行宠物名牌,避免第一人称视角被 TextDisplay 遮挡。
0.26.16-SNAPSHOT 使用实体挂载监听同步名牌与 Boss 血条,修复凋零骑乘遮挡和末影龙部件交互;玩家 Tab 只提示在线目标,新增删除指令并修正重复召唤提示。
0.26.17-SNAPSHOT 新增管理员宠物币查询/发放/扣除;名牌骑乘隐藏不再删除重建;末影龙固定悬停阶段并支持飞行骑乘。
0.26.18-SNAPSHOT 新增仓库蹲下左键召回与蹲下右键放生确认,修复仓库召回语言分流,并增加 givecoin/takecoin/lookcoin 宠物币快捷指令。
0.26.19-SNAPSHOT 修复普通玩家权限组不会自动继承的问题,新增宠物币/宠物等级排行榜,并让两个商城支持 PlayerPoints。
0.26.20-SNAPSHOT 修复两个商城直接显示 INTERNAL,改为显示可配置的内置货币名称。
0.26.21-SNAPSHOT 修复飞行宠物安全回传后 TextDisplay 名牌停在旧位置的问题。
0.26.22-SNAPSHOT 为已有活动宠物时再次召唤增加明确的最大召唤数量提示,并安全迁移官方旧语言。
0.26.23-SNAPSHOT 将主菜单入口改为“我的宠物”,点击说明改为“打开宠物列表”。
0.26.24-SNAPSHOT 将仓库提示与四种点击动作一一对应,并把宠物类型配置拆分为支持中文目录和多 YML 的文件结构。
0.26.25-SNAPSHOT 统一仓库潜行操作的绿色提示,并将永久放生警告独立成红色段落。
0.26.26-SNAPSHOT 让管理页打开的属性与成长面板返回同一只宠物的管理页,并在加点刷新后保留返回来源。
0.27.4-SNAPSHOT 为捕捉球和宠物食物增加默认关闭、可直接修改的 CraftEngine 完整配置案例。
0.27.3-SNAPSHOT 增加全体可捕捉原版宠物独立 YML、公共默认值继承、中文目录迁移和 MCPets 单文件兼容。
0.27.2-SNAPSHOT 兼容旧原版宠物类型 ID,并为商城 10 种宠物安全补齐独立 YML。
0.27.1-SNAPSHOT 优化 MM 技能冷却与定时扫描,增加失败退避、逐技能日志限频、API 变体兼容和状态规则统计。
0.27.0-SNAPSHOT 为每个宠物类型增加独立 MythicMobs 技能列表,支持等级解锁、七种触发器、概率、冷却和 power 等级成长。
0.25.4-SNAPSHOT 增加 Paper 26.2 兼容声明与 Maven 兼容编译 profile:-Ppaper-26.2。
0.25.3-SNAPSHOT 修复捕捉仪式音效兼容问题:无效 Bukkit Sound/Particle 会自动回退并写回安全默认值,不再导致插件启动失败。
0.25.2-SNAPSHOT 修复启动兼容检查过严导致插件被误禁用的问题,并放宽 server.id/server.group 命名,启动失败时额外输出完整堆栈。
宠物交互:
- 空手右键自己的已召唤宠物:骑乘,可用方向键驾驶并按跳跃键起跳。
- 潜行并空手右键自己的已召唤宠物:打开属性与管理界面。
- 在管理界面点击“修改宠物名字”后,直接在聊天框输入新名字;输入“取消”可退出。
- 手持“宠物”目录或旧
pet-types.yml中配置的原版或 CraftEngine 食物右键自己的宠物:回血并获得经验。 - 仓库左键宠物:召唤伙伴;右键宠物:查看属性与管理;潜行左键:收回当前宠物;潜行右键:进入永久放生二次确认。
- 管理员使用
/lipet manage <在线玩家> <宠物名称>:管理该玩家的指定宠物。 - 管理员使用
/lipet give <玩家|-all> <宠物类型> [名称]:向单个在线/离线玩家或全服玩家发放宠物。 - 管理员使用
/lipet take <玩家|-all> <宠物名称|UUID|类型|-all>:按选择器收走宠物,第二个-all表示目标名下全部宠物。 - 管理员使用
/lipet coin give|take|look <玩家> [数量]:查询、发放或扣除目标玩家的内置宠物币。 - 管理员也可使用
/lipet givecoin、/lipet takecoin、/lipet lookcoin三条等价快捷指令。
PlaceholderAPI 变量:
%lipet_active_exists%
%lipet_has_active_pet%
%lipet_active_name%
%lipet_active_id%
%lipet_active_owner_id%
%lipet_active_owner_name%
%lipet_active_type%
%lipet_active_type_id%
%lipet_active_state%
%lipet_active_state_key%
%lipet_active_level%
%lipet_active_max_level%
%lipet_active_experience%
%lipet_active_required_experience%
%lipet_active_experience_percent%
%lipet_active_attribute_points%
%lipet_active_critical_chance%
%lipet_active_critical_damage%
%lipet_active_dodge%
%lipet_active_knockback_resistance%
%lipet_active_life_steal%
%lipet_active_strength%
%lipet_active_vitality%
%lipet_active_defense%
%lipet_active_agility%
%lipet_active_health%
%lipet_active_max_health%
%lipet_active_health_percent%
%lipet_active_damage%
%lipet_active_speed%
%lipet_active_riding_speed%
%lipet_active_resistance%
%lipet_active_regeneration%
%lipet_active_quality%
%lipet_active_quality_id%
%lipet_active_nature%
%lipet_active_nature_id%
%lipet_active_shiny%
%lipet_active_growth_multiplier%
%lipet_attribute_strength_name%
%lipet_attribute_vitality_name%
%lipet_attribute_defense_name%
%lipet_attribute_agility_name%
%lipet_pet_count%
%lipet_server_id%
%lipet_pet_coin_balance%
%lipet_pet_coin_name%
%lipet_pet_coin_formatted%
%lipet_coin_balance%
%lipet_coin_name%
%lipet_coin_formatted%
%lipet_coin%
%lipet_coins%
%lipet_balance%
%lipet_capture_enabled%
%lipet_capture_ball_count%
%lipet_capture_ball_ids%
%lipet_capture_ball_<id>_enabled%
%lipet_capture_ball_<id>_name%
%lipet_capture_ball_<id>_plain_name%
%lipet_capture_ball_<id>_item_id%
%lipet_capture_ball_<id>_item_namespace%
%lipet_capture_ball_<id>_item_path%
%lipet_capture_ball_<id>_is_craftengine%
%lipet_capture_ball_<id>_base_chance%
%lipet_capture_ball_<id>_base_chance_percent%
%lipet_capture_ball_<id>_low_health_bonus%
%lipet_capture_ball_<id>_low_health_bonus_percent%
%lipet_capture_ball_<id>_maximum_chance%
%lipet_capture_ball_<id>_maximum_chance_percent%
%lipet_active_state% 返回可配置中文状态,需读取数据库原始状态键时使用 %lipet_active_state_key%。玩家没有召唤宠物时,数值变量返回 0 或 0.0,文本变量返回空文本。
%lipet_pet_coin_balance% 返回两位小数的内置宠物币余额,%lipet_pet_coin_name% 返回 config.yml -> currency.internal.display-name,%lipet_pet_coin_formatted% 返回“余额 + 名称”。coin_balance、coin、coins、balance 是余额别名。玩家登录时会异步预热余额,PAPI 本身不会在服务器线程等待数据库。
捕捉球变量中的 <id> 要替换成 capture.yml -> balls 下已启用的球 ID,例如 %lipet_capture_ball_craftengine_example_item_id%。item_id 会原样返回 namespace:item_id,可直接读取 CraftEngine 物品 ID;is_craftengine 返回 true / false。不带 _percent 的概率与配置相同,范围为 0-1;带 _percent 的变量返回 0.0-100.0 显示数值,不附带百分号。球不存在时,enabled 返回 false,其他球属性返回空文本。
全部宠物、宠物币与捕捉球变量见 完整 PlaceholderAPI 变量表;CE 配置案例见 CraftEngine 捕捉球 PAPI 变量。
Vault 通过 LiPetApi#economy() 暴露统一经济接口,供后续购买、复活和技能升级使用。仅安装 Vault 而未安装经济插件时,LiPet 会关闭经济挂钩但继续运行。
Paper 26.2 使用 PlaceholderAPI 时建议安装 2.12.3+;LiPet 只调用稳定的 PlaceholderExpansion 接口,PlaceholderAPI 仍是可选软依赖。
完整功能实施顺序见 docs/FEATURE_ROADMAP.md。
服主与玩家使用 Wiki 见 docs/WIKI.md。
0.27.4 的 CE 捕捉球与食物默认案例见 2026-08-29 CraftEngine 案例更新日志。0.27.3 的全量原版宠物配置与 MCPets 兼容见 2026-08-29 配置重构更新日志。0.27.2 的老宠物类型兼容与独立 YML 生成见 2026-08-29 老宠物兼容更新日志。0.27.1 的技能稳定性优化见 2026-08-29 MythicMobs 技能优化日志。0.27.0 的 MythicMobs 等级技能见 2026-08-29 MythicMobs 等级技能更新日志。0.26.26 的管理二级菜单返回修复见 2026-08-29 管理菜单返回更新日志。0.26.25 的仓库介绍排版见 2026-08-29 仓库介绍样式更新日志。0.26.24 的仓库四键提示与宠物类型多文件目录见 2026-08-29 仓库四键与宠物类型目录更新日志。0.26.23 的“我的宠物”入口调整见 2026-08-29 我的宠物入口更新日志。0.26.22 的召唤上限语言修复见 2026-08-29 召唤上限提示更新日志。0.26.21 的鹦鹉名牌跟随修复见 2026-08-29 鹦鹉名牌更新日志。0.26.20 的商城货币显示修复见 2026-08-29 商城货币显示更新日志。0.26.19 的权限组、排行榜与 PlayerPoints 支持见 2026-08-29 权限排行榜更新日志。0.26.18 的仓库快捷操作、语言与宠物币快捷指令见 2026-08-29 仓库快捷操作更新日志。0.26.17 的宠物币管理、名牌修复与末影龙飞行骑乘见 2026-08-29 更新日志。0.26.16 的骑乘显示、末影龙交互、在线 Tab、召唤语言和删除指令见 2026-08-28 骑乘与交互更新日志。0.26.14 的 CraftEngine 完整物品挂钩见 2026-08-28 CE 更新日志。0.26.13 的全 UI 点击音效与多槽位按钮见 2026-08-28 UI 更新日志。0.26.12 的宠物发放/收走、离线全服批处理和领地兼容见 2026-08-28 更新日志。
架构目标
- 本地服务器只维护在线宠物会话,权威数据放在共享存储。
- MySQL 保存宠物持久状态,Redis 负责事件广播、短租约和缓存失效。
- 宠物实体、技能、存储、同步、第三方插件 Hook 均通过接口隔离。
- 主类只负责组装,配置、指令、监听器、管理器和 API 分层独立。
- 外部公共依赖不打入插件 Jar,统一下载到插件数据目录的
lib/。 pet-types.yml的defaults保存全部宠物共用属性;宠物/中每只宠物一个 YML,只写身份和差异项,目录名、子目录和文件名均可使用中文。- 从 2.2.2 起,修改当前生效的
storage.type、storage.sqlite.file或storage.mysql.*后必须正常重启;/lipet reload检测到数据库变更会拒绝本次重载并保留运行配置。server与cluster身份/通道变更同样需要重启。 - 更换数据库不会自动复制历史数据;请先停服备份,再把完整数据导入目标库,启动后用
/lipet status核对实际目标。
当前指令
/lipet create <类型> <名称>
/lipet list
/lipet info <名称>
/lipet call <名称>
/lipet store
/lipet sit
/lipet mount
/lipet inventory [宠物名称]
/lipet release [宠物名称]
/lipet delete [宠物名称]
/lipet rename [宠物名称]
/lipet shop
/lipet itemshop
/lipet warehouse
/lipet balance
/lipet top <coin|level> [页码]
/lipet coin <give|take|look> <玩家> [数量]
/lipet givecoin <玩家> <数量>
/lipet takecoin <玩家> <数量>
/lipet lookcoin <玩家>
/lipet daily
/lipet give <玩家|-all> <宠物类型> [宠物名称]
/lipet take <玩家|-all> <宠物名称|UUID|宠物类型|-all>
/lipet captureball <类型> [数量] [玩家]
/lipet skillbook <技能> [数量] [玩家]
/lipet signalstick [数量] [玩家]
/lipet help [页码]
/lipet status
/lipet reload
/lipet manage <玩家> <宠物名称>
详细设计见 docs/LIPET_DESIGN.md。
构建要求
- JDK 21+(Paper 26.1.2 / 26.2 运行端推荐 Java 25)
- Maven 3.9+
mvn clean package
输出:target/LiPet-2.3.8.jar
每次迭代必须同步更新 pom.xml 版本。plugin.yml 会从 Maven 版本自动生成。