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。