基本信息
我的世界Java版本
26.1.2
1.21.11
1.21.3
1.21–1.21.1
1.20.1–1.20.2
1.19.2
1.18.2
平台
Fabric
运行环境
搬运团队
搬运资源声明
对于可进行 JAR 文件搬运的许可证,我们提供站内下载服务;其他资源会跳转到原帖下载。资源更新可能不及时,建议前往资源内提供的原帖链接下载最新版本。
详情信息
许可证 MIT
发布于 2025-01-03
更新于 2026-06-15
更新日志
Easy NPC:核心版(1.21.11)更新日志
说明
本更新日志汇总了主要变更内容。
完整更新日志请参阅 [GitHub 历史记录][history]。
注意:升级至新版本前,请务必备份您的世界存档及NPC数据!
更多详情请查阅 [升级指南][upgrade_guide]。
6.15.1
- 通过继承正确的基类修复了 #735 问题。
- 通过手动生成测试,修复了若干 26.1.2 版本特有问题。
6.15.0(交易系统、玩家头颅、史诗战斗整合与体验优化)
- 若客户端物种列表为空,则通过重新同步物种数据修复 #731 问题。
- 通过增强史诗战斗(Epic Fight)整合并启用实验性功能修复 #730 问题。
- 确保交易使用次数被正确存储,修复 #729 问题。
- 新增对玩家头颅的自定义头颅支持,修复 #728 问题。
- 显示剩余交易次数,并支持手动与自动重置,修复 #689 问题。
- 新增交易配置界面,并强化对自定义交易的支持,修复 #218 和 #132 问题。
- 通过在基础交易模式与常规/高级交易模式之间切换,修复特定交易边缘情况。
- 修复对话按钮文字被截断的问题,悬停时以工具提示显示完整文本。
- 通过将动画状态与 Cobblemon 动画系统同步,修复 Cobblemon 动画异常。
- 新增按交易定制的操作功能,允许用户在完成购买后触发指定操作。
- 新增交易重置按钮,便于一键重置全部交易。
- 在交易配置界面中新增交易使用次数信息。
- 新增实验性功能开关,允许用户手动启用实验性功能。
- 新增示例商人“格里塞尔达·磨石”(Griselda Grindstone),附带可触发操作。
- 清理测试文件。
6.14.0
- 修改值时确保变更同步至客户端,修复 #727 问题。
- 新增特定命令的额外白名单,修复 #726 问题。
- 新增基础 Cobblemon 支持(含 Cobblemon NPC),修复 #686、#389、#304、#211 问题。
- 调整对话精灵图与界面,修复对话错位及导航问题。
- 修正 X 与 Z 轴根部旋转逻辑及枢轴点计算,修复根部旋转异常。
- 新增基础 Cobblemon 支持,含用于测试的自定义NPC类型与模型。
6.13.0(安全与权限更新)
说明:本次更新增强了多人游戏环境下的安全校验与权限管理。
部分服务器命令若被恶意利用,可能存在潜在风险。
本次更新将模型根部数据与逻辑从其余模型部件的数据与逻辑中分离,
可能导致现有NPC的根部旋转与缩放重置为默认值。
- 将模型根部数据与逻辑与其他模型部件数据及逻辑分离,修复 #725 问题。
- 支持
.sbnt文件作为本地预设,修复 #722 问题。 - 新增对话与配置界面背景的专用资源,修复 #675 问题。
- 新增安全校验与权限系统,修复 #605、#532、#529 问题。
- 新增实验性API文档与自定义模型支持示例,修复 #469、#311 问题。
- 移除冗余背景渲染,修复配置界面背景重复绘制问题。
- 调整碰撞箱,修复恶魂(Ghast)与史莱姆(Slime)的碰撞箱及名称标签位置问题。
- ⚠️ 新增安全校验机制,防范潜在漏洞,保障多人游戏环境下的安全使用。
- 以静态对话界面背景替代动态背景,提升性能、自定义能力与兼容性。
- 以静态配置界面背景替代动态背景,提升性能。
- 重构配置UI专用组件,并将其从核心模组中移除。
- 移除重复的精灵图集。
- 为未来可能集成 LuckPerms(如 #712 所述)做好权限系统准备。
- 全面清理与优化配置界面渲染及资源相关代码。
6.12.0
- 针对原版模型,新增自定义模型部件列表校验,修复 #714 问题。
- 将每NPC级别的 INFO 日志降级为 DEBUG,并合并冗余警告信息,降低日志冗余度,修复 #713 问题。
- 缩减启动/配置日志输出体积,修复 #711 问题。
- 优化 NBT 校验防护机制,避免生产环境中不必要的缓冲区分配。
- 在 EasyNPCModelManager 中添加模型部件名称常量,确保混入(mixin)代码中的一致使用。
- 增强 RenderEntityTypeSupportConfig 的过滤逻辑并优化数据结构,提升性能与可维护性。
- 移除大量转储复杂数据结构的冗长调试日志。
6.11.1
- 改进可恢复交易数据的向后兼容解析,修复 #710 问题。
6.11.0
- 修复新自定义图层系统与手部渲染导致的 #703 渲染问题。
- 新增额外保护机制与日志记录,防范无效交易报价,修复 #701 问题。
- 修复智能动画在头部位置被修改后无法正常工作的问题。
- 将玩家检测逻辑移回服务端执行,修复头部追踪问题。
- 改进 CustomLookAtPlayerGoal,更好处理边界情况并减少抖动。
- 修复多普勒NPC(Doppler NPCs)持续持有手部物品的问题。
- 优化 PoseManager 日志消息。
- 更新Logo为全新设计。
6.10.0
- 对第三方实体创建添加 try-catch 包裹,修复 #698 问题。
- 切换至
DEFAULT原版姿势时,清除模型部件的旋转/位置,修复 #695 问题。 - 仅当NPC处于空闲状态时,才应用锁定旋转与姿势动画,修复 #695 问题。
- 修正根部旋转枢轴点计算,改用实际包围盒高度而非固定值 0.5f,修复 #695 问题。
- 修复多个目标注册问题,包括
isTargetedPlayer检查逻辑颠倒、离开处理器中UUID错误、加入/离开时缺少面向玩家的刷新、离线目标重试失败等。 - 目标注销后不再保留目标引用。
- 移除加载姿势时自动锁定 ROOT 旋转;现由用户自主控制根部锁定。
- 在高级与自定义姿势配置界面中新增“锁定旋转”复选框。
- 在
ConfigurationMenuHandler中为默认姿势界面新增按模型筛选姿势键的功能。 - 为
CustomPosition、CustomRotation、CustomScale、ModelPose、ModelAnimationBehavior及ModelAnimationData新增单元测试。 - 新增
NPCDataIsolationTestHelper及 Fabric 与 Forge 平台的游戏测试。 - 将最大头部偏航角范围由 60° 提升至 65°。
6.9.0
- 为防止NPC实体数据更新被重复触发,新增缓存与防护机制,修复 #692、#666 问题。
- 为所有支持的NPC类型新增基础自定义姿势,修复 #651、#617 问题。
- 新增多种逃亡目标(Flee goals),支持逃离玩家、村民、怪物等,修复 #597 问题。
- 优化姿势加载流程,直接从模组资源读取,不再复制文件至磁盘。
- 实体加入时先检查是否已存在于注册表中,避免重复调用
saveNPC,修复重复保存问题。 - 新增
despawn与spawn命令,支持通过UUID移除或重新生成NPC,并可配置移除原因。 - 新增
ModelPoseAPI与EasyNPCEntityHandler公共API类,供外部模组以编程方式控制NPC姿势与管理NPC。 - 为所有支持的NPC类型新增姿势数据文件。
- 在基础姿势配置界面中新增“锁定旋转”复选框。
- 新增
MoveToPositionGoal,可在执行回调动作前将NPC移动至指定位置。 - 新增
EasyNPCLookControl与EasyNPCBodyRotationControl,尊重已锁定的根部旋转。 - 在NPC实体数据索引中同步所有者变更与维度变更。
- 将
EasyNPCItemAttachmentLayer注入各类实体渲染器。 - 新增专属“逃亡目标”配置页,支持针对苦力怕、怪物、生物、玩家、村民及太阳设置逃亡目标。
- 在跟随目标页中新增
FOLLOW_ITEM目标,使NPC依据资源位置(如minecraft:apple)跟随物品实体。 - 新增
LookAtEntityByUUIDGoal,并在“注视目标”界面中启用“按UUID注视实体”与“注视所有者”目标。 - 为
SynchedDataIndex新增persistent标志,使瞬态索引(如弩箭充能、模型动画)不再触发脏标记(dirty-save marking)。 - 为
SlimeBase新增可配置的customParticlesEnabled标志,供API使用者调用。 - 新增
SoundType.PET,并将CAT_PURR映射至猫型NPC,丰富驯服后的环境音效。 - 将周期性NPC保存操作的日志等级由 INFO 降为 DEBUG,降低日志冗余度。
6.8.3
- 升级网络协议版本以强制版本不匹配报错,修复 #680 问题。
- 重置名称标签的位置、旋转与尺寸,修复 #679 问题。
- 新增根部旋转的多状态滑动支持,修复 #665 问题。
- 新增禁用鼠标光标跟随选项,便于更精准地调整姿势,修复 #664 问题。
- 加强X轴与Z轴根部旋转支持,修复 #663 问题。
- 新增NPC魔杖配合潜行快捷旋转功能:潜行状态下使用魔杖,使NPC根部朝向玩家,修复 #661 问题。
- 在交互处理器中增加移动工具检测,防止其错误触发交互,修复移动工具误触问题。
- 在交互处理器中增加预设物品检测,防止其错误触发交互,修复预设物品误触问题。
- 调整碰撞箱与眼高计算,修复史莱姆与恶魂的碰撞箱及名称标签位置问题。
- 调整偏移值,修复史莱姆与恶魂的GUI位置问题。
6.8.2
- 扩展
SafeMerchantData并添加notifyTrade方法,避免崩溃,修复 #677 问题。 - 新增基于玩家互动与行为的NPC升级进度数据支持。
- 新增全局NPC追踪系统,便于跨世界统一管理与调试NPC。
- 新增
OriginalModelConfig.withVariantTexture()选项,支持在原版模型上使用额外的动物纹理(Variant Animal Textures)。
6.8.1
- 复用现有预设辅助方法,而非自定义实现,修复 #676 问题。
6.8.0(新增API支持)
- 新增无效网络数据包的警告提示与额外校验,修复 #667 问题。
- 修复马生成蛋模型。
- 新增悦灵(Allay)、鸡(Chicken)、苦力怕(Creeper)、狐狸(Fox)、恶魂(Ghast)、马(Horse)、卫道士(Illager)、铁傀儡(Iron Golem)、史莱姆(Slime)与恼鬼(Vex)的姿势支持。
- 新增NPC基础类,以提供更完善的API支持。
- 新增NPC原始类(raw classes),以支持高级API功能。
- 新增史莱姆(Slim)与恶魂(Ghast)NPC类型。
- 新增自定义模型API,便于与其他模组及自定义模型集成。
- 重构内部数据处理与注册逻辑,提升可维护性与未来扩展能力。
6.7.1
- 针对原版Bug,在客户端新增额外校验,修复 #657 与 #656 问题。
6.7.0
- 在
setupAnim方法中实现狼腿部动画,修复 #650 问题。 - 修复
canBeHitByProjectiles的翻译问题,修复 #648 问题。 - 新增
allowBypassInvulnerability配置项,允许/禁止NPC绕过无敌状态,修复 #645 问题。 - 修复小宽度下删除按钮仍显示标签的问题。
- 修复上下按钮在某些情况下定位不正确的问题。
- 修复对话与配置UI界面中意外显示名称标签的问题。
- 修复距离触发动作中多个动作未被正确触发的问题。
- 修复NPC预设相关问题。
- 修复猫型NPC与狼型NPC的所有者数据未正确同步的问题。
- 新增预设浏览器,便于快速选择常用NPC预设。
- 新增预设
.snbt(纯文本)导出与导入功能,便于分享NPC预设。 - 将现有NPC预设重构为新的
.snbt格式。 - 重构刷怪笼系统,采用新预设格式,提升可维护性与未来扩展能力。
6.6.2
- 重构缩放系统,修复 #643 问题。
- 修复重启/重载后缩放未能正确更新碰撞箱与名称标签位置的问题。
- 新增 MID 与 MOUSE_OVER 名称标签可见性模式,实现更精细的NPC名称显示控制。
- 新增基于原版队伍(Team)的名称标签可见性支持。
6.6.1
- 重构显示属性相关的内部数据处理逻辑,修复 #638 问题。
6.6.0
- 实现异步纹理加载,并配备专用线程池,修复 #634 问题。
- 修复纹理加载阻塞渲染线程导致游戏卡顿的问题。
- 使用原子操作修复纹理重载防护中的竞态条件。
- 修复远程纹理下载过程中HTTP连接的资源泄漏问题。
- 修复URL校验泛滥问题,避免同一纹理被多次并发下载。
- 修复远程图像校验异常处理缺陷,防止因无效URL导致崩溃。
- 修复NPC加载期间频繁出现的
defineId called for:警告信息。 - 重构纹理加载架构,引入多层防御与速率限制机制。
- 重构实体数据注册逻辑,提升可维护性。
- 将数据类转换为现代Java记录(records),增强不可变性与线程安全性。
- 新增基于 ConcurrentHashMap 的线程安全会话服务器防刷机制。
- 新增全面的错误恢复机制,失败时自动重置冷却时间。
- 优化纹理加载:采用双线程池与500毫秒速率限制。
- 改进异常处理:针对 IIOException 与 FileNotFoundException 分别设置捕获块。
6.5.2
- 修复村民职业与工作皮肤显示问题。
- 优化GitHub工作流,为Gradle依赖添加缓存。
- 优化Gradle构建耗时与清理任务。
6.5.1
- 实现 ON_KILL 动作类型与事件,修复 #632 问题。
- 优化纹理处理性能、缓存策略与内存占用,修复 #629 问题。
- 修复NPC无法响应kill命令的问题。
- 修复纹理重载防护机制导致缓存驱逐后无法重新加载的问题。
- 修复远程图像校验器中WebP验证的缺失返回语句Bug。
- 重构纹理处理逻辑,提升可维护性与未来扩展能力。
- 新增基于时间的重载防护(60秒),替代永久性屏蔽机制。
- 为鸡、猪与狼新增缺失的额外动物纹理(Variant Animal Textures)。
- 新增纹理处理相关单元测试。
- 优化Gradle构建任务。
6.5.0
- ⚠️ 移除jar-in-jar打包方式,以提升模组兼容性与API能力。
- 修复 #627 的裁剪(scissor)实现,提升与其他模组的兼容性。
- 修复使用旋转或移动的模型部件时,生动动画(lively animation)异常问题。
- 修复使用缩放模型部件时,默认动画被意外取消的问题。
- 新增更优的姿势动画控制选项:“智能”、“默认”与“无”。
6.4.1
- 改进不同NPC UUID间的界面切换逻辑,感谢
Spawnblade提供详尽调查与修复建议,修复 #626 问题。
6.4.0
- 加强对话数据校验与错误处理,修复 #626 问题。
- 重构渲染数据与渲染处理逻辑,修复 #623 问题。
- 确保自定义数据被正确保存与加载,修复 #622 问题。
- 修复打开对话动作类型,使其支持从其他NPC触发对话。
- 为 ConditionDataSet 与 ActionDataSet 补全缺失的 equals 与 hashCode 方法,修复哈希问题。
- 新增 #622 自定义数据测试物品,便于更便捷地测试自定义数据。
- 优化记录类(records)并修复潜在的数据缺失问题。
6.3.0
- 重构配置UI专用组件,并将其从核心模组中移除。
- 发送至客户端前先过滤对话数据,修复对话数据问题。
- 修复对话编辑器布局问题,提升可用性。
- 为部分对话数据字段补全缺失的默认值。
- 新增对话优先级支持,用于控制对话执行顺序。
- 新增对话与记分板动作的条件支持。
- 新增对话频率支持,限制对话显示频次。
- 新增支持记分板与条件功能的NPC预设。
- 优化对话按钮数据格式,移除冗余字段。
6.2.0
- 修复旧版自定义名称解析问题。
- 修复对话中的字符串注入漏洞。
- 补全动作类型缺失的翻译。
- 新增记分板动作类型,支持增减、设定记分板数值。
- 新增
@score(...)NPC宏,用于在对话中显示记分板数值。 - 新增额外单元测试。
- 优化旋转按钮,添加指示器并提升易用性。
6.1.2
- 修复容器与菜单同步问题(缺失关闭容器数据包)。
- 修复部分情况下关闭按钮失效的问题。
- 修复界面切换时鼠标光标异常跳动的问题。
- 修复翻译文件,移除重复与已弃用条目。
- 将 Easy NPC 魔杖移至现有核心物品栏,而非新建独立栏位。
- 新增猫型NPC姿势支持(尾部除外)。
- 优化 EasyNPCWand 发光效果性能,仅在必要时启用。
- 优化自定义实体检测,排除非生物实体(如展示框、标记实体、投掷物、刷怪笼等)。
- 优化猫型NPC变体处理。
6.1.1
- 检查物品是否装备于任一手部,修复 #615 问题。
- 重新校验实体类型,修复 #612 问题。
- 强制同步特定模型的帽子与头部图层,修复 #610 问题。
- 修复兽人(Orc)纹理。
- 适配 1.21.5 版本,修复猫型NPC变体处理。
- 调整渲染状态
skin字段,修复玩家渲染问题。 - 调整渲染状态
texture字段,修复猫型NPC渲染器。 - 修复位置、缩放与旋转预览。
- 修复妖精(Fairy)模型。
- 优化自定义模型支持与性能,将相关逻辑迁移至客户端执行。
- 优化玩家UUID映射缓存,加速玩家皮肤加载。
- 将更换模型的命令与逻辑限定为多普勒NPC(Doppler NPCs)专用。
- 新增
renderEntityRaw方法,支持以原始状态渲染NPC。
6.1.0 ✨
这是一次重大版本更新。升级前请务必备份您的世界存档与NPC数据。
本版本包含大量改进、优化与内部重构,与早期版本不完全兼容。
⚠️ 破坏性变更
- 6.1.0 版本之前创建的NPC及其配置数据,可能无法正确加载,或需手动调整。
- 内部数据格式与部分行为已重构,以支持新用例。
🧩 新模块化结构
... [内容过长已截断]



