功能矩阵
逐项核对宠物能力的实现范围、入口和当前状态。
本文件用于跟踪 LiPet 已实现能力与后续计划,所有功能都以 Bukkit/Paper 26.1.2 和 Paper 26.2 的稳定兼容为边界。
已覆盖
| 宠物能力 | LiPet 当前状态 | 说明 |
|---|---|---|
| 宠物菜单 | 已覆盖 | /lipet menu、仓库、商城、管理菜单;从管理页进入完整属性或成长加点后可返回同一只宠物的管理页。 |
| GUI 点击反馈与多槽位按钮 | 已覆盖 | 所有 LiPet 菜单与宠物背包共用可配置点击音效;内置和自定义按钮支持 slots 多槽位复制并兼容旧 slot。 |
| 仓库快捷召回与放生 | 已覆盖 | 左键召唤、右键管理、潜行左键收回、潜行右键进入永久放生二次确认;潜行操作使用绿色提示,红色永久删除警告独立分段;仅迁移官方旧 Lore 与旧默认动作。 |
| 管理员单宠管理 | 已覆盖 | /lipet manage <玩家> <宠物名称>,真实主人和宠物 UUID 全链路绑定并重复校验权限。 |
| 管理员宠物发放与收走 | 已覆盖 | /lipet give/take 支持已知离线玩家、UUID、全服去重批处理、按名称/UUID/类型/全部收走和 Tab 补全。 |
| 管理员宠物币管理 | 已覆盖 | /lipet coin give/take/look 与 givecoin/takecoin/lookcoin 支持玩家名或 UUID、原子增减、余额不足保护及仅在线玩家 Tab 补全。 |
| 商城总开关 | 已覆盖 | shop.yml 的 enabled 同时控制宠物商城、道具商城、GUI 导航和购买操作,支持热重载。 |
| 召唤与收回 | 已覆盖 | /lipet call、/lipet store,支持持久化、跨服租约、同玩家操作串行化和崩溃遗留实体对账。 |
| 领地保护内召唤 | 已覆盖 | 生成事件前写入 LiPet PDC 标记,在 HIGHEST 仅放行自己的宠物;真实生成失败时不创建孤立名牌。 |
| 宠物改名 | 已覆盖 | /lipet rename 和 GUI 入口,支持去色长度、白名单、禁用词。 |
| 宠物主人名牌 | 已覆盖 | 头顶可自定义 1–8 行名牌,兼容旧双行宠物名与主人名,支持 MiniMessage 配置、热刷新和完整实体生命周期清理。 |
| 宠物属性与成长 | 已覆盖 | 等级、经验、属性点、衍生战斗属性、可配置中文属性名和完整消息变量;敏捷和速度技能统一作用于实体、跟随、战斗、GUI 与 PAPI,速度最多显示三位小数。 |
| 技能书升级 | 已覆盖 | 技能书先持久预扣、按玩家串行结算;失败、满级、掉线或重启后自动退款,MySQL 使用事务行锁避免群组服并发丢级。 |
| 品质、性格与闪光 | 0.29.0 已覆盖 | 新捕捉一次抽取,独立保存成长快照;旧宠物中性兼容,GUI/名牌/PAPI 展示。 |
| 原版捕捉随机属性 | 已覆盖 | 捕捉成功时独立随机四属性,范围可配置;一次入库,重召唤与重启不重抽,不影响已有宠物。 |
| 捕捉球道具商品 | 已覆盖 | item.capture-ball 发放带真实标记的普通/CE 球,默认 45 宠物币购买 3 个普通球;无效球拒绝扣款,生成失败退款。 |
| MythicMobs 等级技能 | 已覆盖 | 每种宠物独立配置 MM 技能;支持等级解锁、七种触发器、概率、独立冷却、失败退避、逐技能日志限频、基础 power 与每级成长,状态指令显示规则统计,未安装 MM 时安全停用。 |
| 战斗接近与朝向 | 已覆盖 | 原版攻击寻路优先;被动宠物使用平滑辅助移动并实时面向目标。 |
| 宠物食物 | 已覆盖 | pet-types.yml 可配置原版 Material 与 CraftEngine 完整物品 ID、经验、治疗和属性点;内置默认关闭的 CE 完整案例。 |
| CraftEngine 物品挂钩 | 已覆盖 | 统一支持 CE 物品识别、生成、索引与重载同步;捕捉球和食物提供 enabled 安全开关与可直接修改的默认案例。 |
| 骑乘宠物 | 已覆盖 | 右键骑乘,/lipet mount 指令入口,WASD 驾驶。 |
| 每只宠物独立背包 | 已覆盖基础版 | /lipet inventory [宠物名称]、管理菜单入口,SQLite/MySQL 按宠物保存物品。 |
| 捕捉野生生物 | 已覆盖基础版 | 捕捉球、成功率、仪式音效、粒子、提示和唯一拥有规则。 |
| 每种宠物拥有上限 | 已覆盖 | 当前默认同类型只能拥有一只。 |
| MySQL 支持 | 已覆盖 | MySQL Repository 与版本化迁移。 |
| PlaceholderAPI | 已覆盖 | 已提供完整活动宠物、成长、衍生属性、中文名称及原始键变量目录。 |
| Vault | 已覆盖 | 经济网关和商城扣款退款。 |
| ModelEngine / MEG 模型 | 已覆盖 | 可选 Provider,支持等级门槛切换、隐藏载体、模型碰撞箱、失败恢复和热重载;切换事件被取消时检查实际状态,不作为硬依赖打入 Jar。 |
| 指令命名空间 | 已覆盖 | 只注册 /lipet,不提供 /lp 与 /lipet:lp,避免和 LuckPerms 冲突。 |
| 坐下与跟随控制 | 已覆盖 | /lipet sit 和管理菜单按钮。 |
| 宠物信号棒 | 已覆盖基础版 | /lipet signalstick 发放;右键执行,潜行右键切换坐下、收回、骑乘和背包模式。 |
后续计划
| 计划能力 | 实现方向 | 兼容策略 |
|---|---|---|
| 宠物分类菜单 | 新增 categories.yml 和 /lipet category |
分类只影响展示和权限,不破坏现有仓库与商城。 |
| 背包随等级扩容 | 扩展宠物类型成长配置 | 只允许增加容量,避免配置错误吞物品。 |
| 宠物皮肤 | 新增宠物外观皮肤配置 | 支持原版外观、外部模型和权限解锁。 |
| 宠物进化 | 新增进化配置与延迟仪式 | 等级达标后切换宠物类型、模型或权限。 |
| 游戏内编辑器 | 分阶段实现 GUI 编辑器 | 优先编辑分类、商品、宠物类型、食物和信号棒。 |
| 调试指令 | 新增 /lipet debug |
输出当前宠物、实体、AI、存储、Hook、租约和世界限制。 |
| 道具注册表 | 新增道具注册配置与指令 | 保存菜单图标、信号棒和食物样例。 |
| 清理统计 | 新增统计清理指令 | 清理经验、等级、属性点和食物、捕捉统计。 |
| 宠物食物样品 | 新增 /lipet petfood |
发放配置中的宠物食物样品。 |
| WorldGuard 区域限制 | 可选 Hook | 未安装时不报错,安装后才启用区域规则。 |
| 旧变量迁移 | 新增可配置别名解析 | 为服主现有计分板和菜单提供平滑迁移。 |
| Velocity 同步 | 完善 Redis 与代理兼容文档 | 保留现有 Redis 租约方案,按需增加代理端组件。 |
硬性兼容边界
- 不把 MythicMobs、ModelEngine、CraftEngine、WorldGuard、Vault、PlaceholderAPI 等依赖打入 LiPet Jar。
- 外部能力必须作为软依赖或运行时 Hook 存在,缺失时提供中文提示。
- Bukkit 原生可实现的能力优先使用原生接口;Paper/Folia 专用能力必须经过兼容封装。
- 配置升级必须保留服主已有值,只补缺失节点或迁移明确的旧默认文本。