搜索

2.2.3 捕捉品质提示

捕捉成功显示实际已保存品质、8 个消息占位符、旧默认精确迁移与自定义文本保留。

捕捉成功的主聊天消息现在直接显示这只宠物实际保存的品质,例如:

捕捉成功! 【稀有】 小狼 已进入仓库,成功率 65%。

这里的品质来自捕捉完成后已保存档案的 profile.traits,不会为了显示消息重新抽取一次。原有 capture-traits 详细行继续显示品质、性格、闪光状态与成长倍率。

自定义提示与升级

提示仍由 messages.yml 的 capture-success 控制。升级只替换与旧官方默认文本完全一致的值;管理员已修改的文字、颜色和排版保持原样。若服主使用自定义成功消息,需要自行加入 <quality> 才会在主消息看到品质。

下面是可合并的格式示例,只修改已有 capture-success 一项,不要覆盖整份消息文件:

# 捕捉成功主消息;支持 MiniMessage,品质取自实际已保存宠物。
# 品质使用金色加粗显示,括号与颜色可按服主风格调整;其余支持变量见下表。
capture-success: "<green>捕捉成功!</green> <gold><bold>【<quality>】</bold></gold> <white><pet_name></white> <green>已进入仓库,成功率 <chance>。</green>"

capture-success 支持以下占位符:

占位符 内容
<quality> 已保存品质的显示名称;中性档案使用消息配置中的普通品质名称
<quality_id> 已保存品质的内部 ID
<nature> 已保存性格的显示名称;中性档案使用消息配置中的平衡性格名称
<nature_id> 已保存性格的内部 ID
<shiny> 按消息配置显示闪光或非闪光文字
<growth_multiplier> 已保存档案的成长倍率
<pet_name> 成功捕捉宠物的名称
<chance> 本次捕捉的成功率显示值

成功主消息与原有详细行发送给执行捕捉的玩家,没有新增全服广播。消息变更不影响品质概率、特性数值、捕捉判定、CE 原物品识别或退款规则。

更新方式与资源兼容

备份后正常停服,更换 2.2.3 Jar,再启动确认 Enabling LiPet v2.2.3。/lipet reload 可以重载支持热更新的消息配置,但不能替换旧版已经加载的 Java 代码。

CE 物品贴图包 继续独立使用版本 1.0.0,兼容 LiPet 2.2.2 及后续版本。本次品质聊天提示不依赖更新纹理、重新生成贴图或安装 ModelEngine。

验证结果

本轮 Maven 构建成功,769 项测试全部通过,失败、错误和跳过均为 0。同一最终 Jar 在隔离的 Paper 26.2 Build 111 上通过 37 项集成检查:

  • 触发右键捕捉处理,确认实际扣除一颗球并将宠物初始档案写入 SQLite。
  • 宠物特性保存后、成功确认返回前重载品质池,实际发出的主聊天消息仍显示 【存档品质】,与数据库和详细行一致,不重新随机品质。
  • 关闭特性抽取时保存中性特性,两条消息使用配置的中性品质名称。
  • 旧官方默认成功文案在内存和磁盘中正确迁移,自定义模板、前置注释和行内注释保留。
  • 宠物数量达到上限时只退回一颗球、保留目标、不新增宠物,也不发送成功或成功品质消息。

检查读取了实际发出的系统聊天数据包,使用隔离服务端玩家对象,并非真人客户端截图或视觉验收。运行中没有 LiPet 错误,隔离服已正常停止,未修改生产服务器或数据库。此前版本的运行验证不计作本次重跑。

最终已验 2.2.3 Jar SHA-256:

DAA6D9B8BA1269DBDE5E4EE31300F7A4385B673639C9C46BC2A4E4276AEB2572