搜索

2.3.6 和平宠物世界

世界名单可重载,宠物免伤并停止战斗和技能,保留跟随与骑乘。

配置方法

正常停服备份后,移出旧 Jar,只保留 LiPet-2.3.6.jar。已有配置会补齐缺失项和中文注释,不覆盖原有名单、数据库和管理员设置。

在 plugins/LiPet/config.yml 填写世界文件夹名称:

# 精确匹配世界名,区分大小写;不支持通配符。
# 改为 [] 即关闭此功能,默认不限制任何世界。
peaceful-worlds:
  - world_spawn
  - lobby

保存后执行 /lipet reload。列表不得包含空名称、数字或首尾空格;格式错误会拒绝候选配置,保留此前运行中的名单。

世界内的行为

  • 宠物免疫玩家、其他生物和环境造成的伤害。
  • 禁止宠物普通攻击、主动索敌,以及可识别归属的箭矢、药水、点燃和爆炸伤害。
  • LiPet 自动、手动和交互技能均停止,手动施法不会消耗冷却。
  • 拦截 MM 原生事件触发、元技能调用与直接写在怪物定义里的 ~onTimer 机制;普通 MM 怪物不受名单影响。
  • 进入限制世界或名单重载后,后续攻击立即受保护检查限制,行为循环清理战斗目标并终止记录中的 MM 延迟技能链。
  • 跟随和骑乘继续工作。离开限制世界或移除名单后恢复原有规则,不改玩家的主动攻击开关。

ModelEngine / MythicMobs 适配范围

第三方模型包经常在 MM SPAWN / LOAD 中创建模型与座位,因此这两类初始化保留执行;请勿把战斗技能写在模型初始化中。定时和交互等后续技能在限制世界中不会执行,包括同时承担装饰效果的定时技能。

MM 定时机制不经过通用触发事件,本版为其增加按当前施法宠物判断的条件。仅在安装 MM 后加载此适配,不修改服务器的 MM 配置文件;MM 重载时重新接入。已验证 MM 5.13.0-SNAPSHOT 与 ModelEngine R4.1.0。其他插件直接改生命值、执行独立指令,或无法识别宠物来源的第三方实体,不属于 Bukkit 伤害事件和已接入技能链的拦截范围。

验证与交付

899 项单元测试通过;Paper 26.2 与 Folia 26.2 共 68 项隔离运行检查通过,覆盖免伤、输出伤害、原生定时机制、MM 元技能、冷却前拦截、名单热更新、错误配置保留和 ModelEngine 实际座位绑定。实际客户端跟随与骑乘观感仍需在客户服复测。

交付包仅含插件、默认配置、原有 CE 与模型配套;客户提供的问题模型仅用于测试,不进入交付包或公开页面。文件暂存到 F:\26.2\待更新,未替换运行中的正式服 Jar。无需重新分发资源包。

Jar SHA-256:afbee93fd9c9ea2c04b94e58413044ed6261cf3b7f2155e1715bea2ab5e1519c。