基本信息
我的世界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-08-22
更新日志
Easy NPC(1.20.1)更新日志
说明
本更新日志汇总了主要变更内容。
完整更新日志请参阅 [GitHub 历史记录][history]。
注意:更新至新版本前,请务必备份您的世界及NPC数据!
更多详情请查阅 [升级指南][upgrade_guide]。
6.22.0
- 通过向命令执行传递完整的服务器玩家上下文,修复 #766 问题,从而提升与依赖特定玩家数据的第三方模组及插件的兼容性。
- 通过新增实体生命值、NPC生命值条件,并以示例NPC预设“格鲁克——陪练桩”演示这些条件的用法,修复 #764 问题。
- 修复 #763 问题:确保对话按钮执行次数限制现已正确记录。
- 通过提供名为“一愿随行者”的示例NPC预设,修复 #758 问题。
- 修复因第三方村民AI读取Easy NPC村民未注册的大脑记忆(如PoiCompetitorScan / job_site)所导致的崩溃问题(#756)。
- 为 #760 和 #644 做准备,修复对话按钮在服务端数据下未被锁定的问题。
- 通过增加条件化对话开启支持/命令,实现对对话向玩家展示时机的更精细控制,修复 #628 问题。
- 为猪灵与猪灵蛮兵NPC添加大脑AI,并注册全部原版大脑记忆集合。
- 为枪械标签(gun tag)新增若干枪械,以支持 #757。
- 新增“条件化开启对话”动作:仅当满足指定条件时才开启命名对话;原有“开启对话”动作为无条件开启。
- 新增用于动作、对话及对话按钮的实体生命值与NPC生命值条件。
- 为猪灵、猪灵蛮兵与僵尸猪灵NPC添加无敌属性,以与其他NPC保持一致。
- 新增“击退免疫”战斗属性:使NPC免受近战或投射物攻击造成的击退效果。
- 新增“爆炸免疫”战斗属性:使NPC免疫爆炸伤害及位移(例如TNT、苦力怕、末地水晶)。
- 将“投射物碰撞”属性移至战斗属性界面,使其主题归属更为合理(此前位于能力界面)。
6.21.0
- 修复交叉手臂姿势下卫道士的手持物品附件问题。
- 修复卫道士十字弓攻击目标逻辑损坏问题。
- 修复因第三方物品无法作为手持物品渲染所引发的崩溃问题(#756)。
- 修复因第三方Mixin尝试访问不存在的模型部件所引发的崩溃问题(#756)。
- 通过降低日志详细程度并为自定义模型部件增加额外校验,减少log.info信息刷屏。
- 提升EasyNPCModelManager性能。
- 重构NPC渲染器,移除默认手持物品图层。
6.20.0
- 修复因第三方模组尝试访问不存在的NPC目标所引发的崩溃问题。
6.19.0
注意:本次更新将对话背景图片尺寸调整为每边增加10×6像素,若您使用自定义对话背景,可能需要相应调整。
- 通过为对话按钮增加条件支持以实现按钮禁用功能,修复 #752、#130。
- 通过为对话文本增加打字机效果支持,修复 #683、#215。
- 通过为对话、对话按钮及交互动作增加条件支持,修复 #690、#309。
- 修复对话界面布局与背景相关的若干UI小问题。
- 将对话背景图片每边重构为增加10×6像素。
- 重构对话界面布局,以适配新的背景尺寸并提升视觉效果。
- 新增对话文本打字机效果及客户端配置选项。
- 新增条件符号,用于直观指示对话、按钮及交互的条件状态。
- 为物品条件新增数量字段,支持检查物品的具体持有数量。
- 新增示例NPC预设“阈值守卫者”,包含多种条件与动作组合。
- 新增若干与对话条件及按钮状态相关的小型Bug修复与优化。
6.18.0
注意:本次更新更改了条件与动作的内部数据格式,可能导致旧版中无存储ID的执行限制条目被重置或清除。
- 通过为动作增加条件支持,实现更复杂、更动态的行为逻辑,修复 #745。
- 通过为对话按钮增加工具提示以显示长文本,修复 #652。
- 通过为命令值增加工具提示以显示完整数值,修复 #687。
- 新增经验等级条件。
- 新增游戏模式条件。
- 新增“物品栏内有某物品”条件。
- 新增“手中持有某物品”条件(支持主手与副手)。
- 新增玩家生命值条件。
- 新增玩家标签条件。
- 新增玩家队伍条件。
- 新增示例NPC预设“金宝石矿石”,含多种条件与动作组合。
- 新增否定条件支持,可对条件进行取反,以构建更复杂的逻辑。
- 移除
ActionDataEntry参数伪ID,改用随机UUID替代。 - 重构条件系统,支持更多类型的条件。
6.17.0
- 通过为“以玩家身份执行”功能增加额外工具提示,修复 #738。
- 通过减少启动及游戏运行期间的log.info消息,优化详细日志输出。
- 新增单元测试与游戏测试。
6.16.0
- 通过提供禁用ESC键与对话关闭按钮的选项,修复 #732。
- 通过避免在交易界面等特定场景下自动关闭对话,修复 #723。
- 新增通用对话配置选项,便于用户自定义对话行为。
- 新增对话头像缩放与位置偏移选项。
- 补充缺失的翻译键。
6.15.0(交易、玩家头颅、史诗战斗及品质改进)
- 通过在客户端物种列表为空时重新同步物种数据,修复 #731。
- 通过改进史诗战斗集成并启用实验性功能,修复 #730。
- 通过确保交易使用次数被正确记录,修复 #729。
- 通过增加对玩家头颅的自定义头颅支持,修复 #728。
- 通过显示剩余交易次数并支持手动与自动重置,修复 #689。
- 通过新增交易配置界面并增强对自定义交易的支持,修复 #218 与 #132。
- 通过在基础交易模式与普通/高级交易模式之间切换,修复特定交易边缘情况。
- 修复对话按钮文字被截断问题,并通过工具提示显示完整文本。
- 通过同步动画状态至Cobblemon动画系统,修复Cobblemon动画异常问题。
- 新增按交易定制的动作:允许用户在购买后触发特定动作。
- 新增交易重置按钮,便于一键重置全部交易。
- 新增交易使用信息至交易配置界面。
- 新增实验性功能开关,允许用户手动启用实验性功能。
- 新增示例商人“格里塞尔达·磨石”,含关联动作。
- 清理测试文件。
6.14.0(Cobblemon支持与对话改进)
- 通过确保值变更时同步至客户端,修复 #727。
- 通过为特定命令增加额外白名单,修复 #726。
- 通过为Cobblemon NPC增加基础支持,修复 #686、#389、#304、#211。
- 通过调整对话精灵图与界面,修复对话错位与导航问题。
- 通过修正旋转逻辑与枢轴点计算,修复X轴与Z轴根部旋转问题。
- 新增基础Cobblemon支持:含自定义NPC类型与测试用模型。
6.13.0(安全与权限更新)
说明:本次更新增强了多人游戏环境下的安全检查与权限管理。
部分服务器命令若被恶意利用,可能存在潜在风险。
本次更新将模型根部数据与逻辑从其余模型部件的数据与逻辑中分离,因此现有NPC的根部旋转与缩放值可能被重置为默认值。
- 通过将模型根部数据与逻辑从其余模型部件中分离,修复 #725。
- 通过支持本地
.sbnt文件作为预设,修复 #722。 - 通过为对话与配置界面背景新增专用资源,修复 #675。
- 通过新增安全检查与权限系统,修复 #605、#532、#529。
- 通过新增实验性API文档与自定义模型支持示例,修复 #469、#311。
- 通过移除冗余背景渲染,修复配置界面背景重复渲染问题。
- 通过调整包围盒,修复恶魂碰撞箱与名称标签位置问题。
- ⚠️ 新增安全检查机制,防止潜在漏洞利用,保障多人环境下的安全使用。
- 将动态对话界面背景替换为静态背景,以提升性能、自定义性与兼容性。
- 将动态配置界面背景替换为静态背景,以提升性能。
- 重构配置界面专用组件,并将其从核心模组中移除。
- 移除重复的精灵图集。
- 为未来可能集成Luck Perms(如 #712)做好权限系统准备。
- 对配置界面渲染与资源相关代码进行常规清理与优化。
6.12.0
- 通过基于原版模型对自定义模型部件列表增加额外校验,修复 #714。
- 通过将每个NPC的INFO级别日志降级为DEBUG级别,并整合冗余警告信息,降低日志冗余度,修复 #713。
- 通过减少启动/配置阶段过大的日志输出,修复 #711。
- 修复NBT校验防护机制,防止生产环境中不必要的缓冲区分配。
- 在EasyNPCModelManager中新增模型部件名称常量,确保Mixin中的一致使用。
- 通过增强过滤逻辑并优化数据结构,提升RenderEntityTypeSupportConfig的性能与可维护性。
- 移除会转储大型数据结构的冗长调试日志。
6.11.0
- 修复新自定义图层系统与手持渲染导致的#703渲染问题。
- 通过为无效交易报价增加额外防护与日志记录,修复 #701。
- 修复智能动画在头部位置被修改时无法正常工作的问题。
- 通过将玩家检测移回服务端独占逻辑,修复头部追踪问题。
- 修复CustomLookAtPlayerGoal,使其更好处理边界情况并减少抖动。
- 修复多普勒NPC持续保留手持物品库存的问题。
- 优化PoseManager日志消息。
- 更新Logo为全新设计。
6.10.0
- 通过在切换至
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。
- 通过为逃离玩家、村民、怪物等新增额外逃离目标,修复 #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标志,使瞬态索引(如十字弓充能、模型动画)不再触发脏数据保存标记。 - 在
SlimeBase中新增可配置的customParticlesEnabled标志,供API使用者调用。 - 新增
SoundType.PET,并将CAT_PURR映射至猫形NPC,以丰富驯服后的环境音效。 - 将周期性NPC保存操作的日志级别由INFO降为DEBUG,以降低日志冗余度。
6.8.3
- 通过升级网络协议版本强制版本不匹配检查,修复 #680。
- 通过重置名称标签的位置、旋转与尺寸,修复 #679。
- 通过为根部旋转新增多状态滑动支持,修复 #665。
- 通过新增禁用鼠标跟随选项以简化摆姿操作,修复 #664。
- 通过增强对X轴与Z轴根部旋转的支持,修复 #663。
- 通过新增NPC魔杖配合潜行快捷旋转功能(使根部朝向玩家),修复 #661。
- 通过在交互处理器中增加移动工具检测,修复移动工具误触发交互的问题。
- 通过在交互处理器中增加预设物品检测,修复预设物品误触发交互的问题。
- 通过调整包围盒与眼睛高度计算,修复史莱姆与恶魂的碰撞箱及名称标签位置问题。
- 通过调整偏移值,修复史莱姆与恶魂GUI位置问题。
6.8.2
- 通过扩展
SafeMerchantData并添加notifyTrade方法避免崩溃,修复 #677。 - 新增进度数据支持:可根据玩家交互与动作为NPC升级。
- 新增全局NPC追踪系统,便于跨世界管理与调试NPC。
- 新增
OriginalModelConfig.withVariantTexture()选项,支持在原始模型上使用变体纹理。
6.8.1
- 通过复用现有预设辅助方法而非自定义方法,修复 #676。
6.8.0(新增API支持)
- 通过为无效网络数据包增加警告信息与额外校验,修复 #667。
- 修复马匹生成蛋模型。
- 修复悦灵、鸡、苦力怕、狐狸、恶魂、马、卫道士、铁傀儡、史莱姆与恼鬼的姿势支持。
- 新增NPC基类,以强化API支持。
- 新增NPC原始类,以支持高级API使用。
- 新增史莱姆与恶魂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名称显示。
- 新增基于队伍的名称标签可见性支持,尊重原版队伍设置。
6.6.1
- 通过重构显示属性的内部数据处理,修复 #638。
6.6.0
- 通过实现异步纹理加载并配备专用线程池,修复 #634。
- 修复纹理加载阻塞渲染线程导致游戏卡顿的问题。
- 通过原子操作修复纹理重载防护中的竞态条件。
- 修复远程纹理下载过程中HTTP连接的资源泄漏问题。
- 修复URL验证刷屏问题,避免同一纹理被多次同时下载。
- 修复远程图像验证异常处理缺陷,防止因无效URL导致崩溃。
- 修复NPC加载过程中出现的
defineId called for:警告信息。 - 重构纹理加载架构,引入多层级防护与速率限制。
- 重构实体数据注册逻辑,以提升可维护性。
- 将数据类转换为现代Java记录(record),以增强不可变性与线程安全性。
- 新增线程安全的会话服务器刷屏防护(使用ConcurrentHashMap)。
- 新增全面的错误恢复机制,并在失败时自动重置冷却时间。
- 通过双线程池与500毫秒速率限制,提升纹理加载性能。
- 通过为IIOException与FileNotFoundException添加专门捕获块,优化异常处理。
6.5.2
- 修复村民职业与工作皮肤问题。
- 通过为Gradle依赖增加缓存,优化GitHub工作流。
- 优化Gradle构建时间与清理任务。
6.5.1
- 通过实现ON_KILL动作类型与事件,修复 #632。
- 通过优化纹理处理性能、缓存及内存占用,修复 #629。
- 修复击杀命令对NPC无效的问题。
- 修复纹理重载防护机制阻止缓存驱逐后重载的问题。
- 修复远程图像验证器中的WebP验证Bug(缺失return语句)。
- 重构纹理处理逻辑,以提升可维护性与未来拓展性。
- 新增基于时间的重载防护(60秒),取代永久阻断机制。
- 新增纹理处理相关单元测试。
- 优化Gradle构建任务。
6.5.0
- ⚠️ 移除jar-in-jar打包方式,以提升模组兼容性与API能力。
- 通过改进剪刀(scissor)实现,修复 #627,增强与其他模组的兼容性。
- 通过修复旋转或移动模型部件时的生动动画问题,修复 #625。
- 修复使用缩放模型部件时默认动画被取消的问题。
- 新增更优的姿势动画控制:提供智能、默认与无动画三种选项。
6.4.1
- 通过改进不同NPC UUID间的界面切换逻辑,修复 #626(感谢
Spawnblade提供的详尽调查与修复建议)。
6.4.0
- 通过改进对话数据校验与错误处理,修复 #626。
- 通过重构渲染数据与渲染处理逻辑,修复 #623。
- 通过确
... [内容过长已截断]



