基本信息
我的世界Java版本
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-03-13
更新日志
Easy NPC:核心版(1.21.1)更新日志
说明
本更新日志汇总了主要变更内容。
完整变更记录请参阅 GitHub 历史记录。
注意:更新至新版本前,请务必备份您的世界存档及NPC数据!
更多升级相关信息,请查阅 升级指南。
6.8.0(新增API支持)
- 通过添加无效网络数据包的警告信息与额外校验,修复了 #667 问题。
- 修复了马刷怪蛋的模型显示。
- 为悦灵、鸡、苦力怕、狐狸、恶魂、马、卫道士、铁傀儡、史莱姆和恼鬼全面修复了姿态支持。
- 新增NPC基础类,以提升API兼容性。
- 新增NPC原始类(Raw Classes),供高级API使用。
- 新增“瘦小”与“恶魂”两种NPC类型。
- 新增自定义模型API,便于与其他模组及自定义模型集成。
- 重构内部数据处理与注册逻辑,提升可维护性,并为未来改进奠定基础。
6.7.1
- 通过在客户端增加对原版漏洞的额外校验,修复了 #657 与 #656 问题。
6.7.0
- 通过在
setupAnim方法中实现狼腿部动画,修复了 #650 问题。 - 通过修正
canBeHitByProjectiles的翻译,修复了 #648 问题。 - 通过新增
allowBypassInvulnerability配置选项(用于启用/禁用NPC无敌状态绕过功能),修复了 #645 问题。 - 修复了删除按钮在宽度较小时仍显示标签的问题。
- 修复了上下按钮在某些情况下定位不正确的问题。
- 修复了对话框与配置界面中命名牌意外显示的问题。
- 修复了距离触发动作中多个动作无法被正确触发的问题。
- 修复了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
- 修复了村民职业与工作皮肤显示异常的问题。
- 通过为Gradle依赖添加缓存,优化了GitHub工作流。
- 提升Gradle构建速度,并优化清理任务。
6.5.1
- 通过实现ON_KILL动作类型与事件,修复了 #632 问题。
- 通过优化纹理处理性能、缓存策略与内存占用,修复了 #629 问题。
- 修复了NPC击杀命令失效的问题。
- 修复了纹理重载保护机制在缓存驱逐后阻止缓存重新加载的问题。
- 修复了远程图像校验器中的WebP验证缺陷(遗漏返回语句)。
- 重构纹理处理逻辑,以提升可维护性并支持未来改进。
- 新增基于时间的重载保护(60秒),替代永久性阻断机制。
- 新增针对纹理处理的额外单元测试。
- 优化Gradle构建任务。
6.5.0
- ⚠️ 移除“Jar-in-Jar”打包方式,以提升模组兼容性与API能力。
- 通过改进剪刀(Scissors)实现,修复了 #627 问题,增强与其他模组的兼容性。
- 修复了 #625 问题:在使用旋转或位移模型部件时,生动动画异常中断。
- 修复了使用缩放模型部件时默认动画被意外取消的问题。
- 新增更完善的姿态动画控制选项:智能(Smart)、默认(Default)与无(None)。
6.4.1
- 通过优化不同NPC UUID间的界面切换逻辑,修复了 #626 问题;感谢
Spawnblade提供详尽的排查分析与修复建议。
6.4.0
- 通过改进对话数据校验与错误处理,修复了 #626 问题。
- 通过重构渲染数据与渲染处理逻辑,修复了 #623 问题。
- 通过确保自定义数据能被正确保存与加载,修复了 #622 问题。
- 修复了“打开对话”动作类型,使其支持从其他NPC触发对话。
- 通过为
ConditionDataSet与ActionDataSet补全equals和hashCode方法,修复了哈希相关问题。 - 新增自定义数据测试物品,便于 #622 相关测试及自定义数据调试。
- 优化音符盒(Records)相关逻辑,并修复潜在的数据缺失问题。
6.3.0
- 重构配置界面专用组件,并将其从核心模组中移除。
- 通过在发送至客户端前过滤对话数据,修复了对话数据问题。
- 修复了对话编辑器布局问题,并提升可用性。
- 修复了部分对话数据字段缺失默认值的问题。
- 新增对话优先级支持,用于控制对话执行顺序。
- 新增对话与计分板动作的条件支持。
- 新增对话频率支持,用于限制对话展示频次。
- 新增支持计分板与条件功能的NPC预设。
- 优化对话按钮数据格式,移除冗余字段。
6.2.0
- 修复了对话内的字符串注入漏洞。
- 修复了部分动作类型缺少翻译的问题。
- 新增计分板动作类型,支持增加、减少、设置计分板数值。
- 新增
@score(...)NPC宏,可在对话中显示计分板数值。 - 新增额外单元测试。
- 优化旋转按钮:增加状态指示器,并提升可用性。
6.1.2
- 修复了容器与菜单同步问题(缺失关闭容器数据包)。
- 修复了关闭按钮在某些情况下失效的问题。
- 修复了界面切换过程中鼠标光标异常跳动的问题。
- 修复了翻译文件,移除了重复与已弃用条目。
- 将Easy NPC魔杖移入现有核心物品标签页,而非新建标签页。
- 新增猫姿态支持(适配不同模型部件,尾巴除外)。
- 优化EasyNPCWand光灵(glowing)特效性能:仅在需要时启用。
- 优化自定义实体检测逻辑,排除显示实体(displays)、标记实体(makers)、投掷物(throwns)与刷怪器(spawners)等非生物实体。
- 优化猫变体处理逻辑。
6.1.1
- 通过重新校验实体类型,修复了 #612 问题。
- 通过强制同步特定模型的帽子与头部图层,修复了 #610 问题。
- 修复了兽人纹理显示问题。
- 通过将相关逻辑迁移至客户端侧,优化了自定义模型支持与性能。
- 优化玩家皮肤的玩家→UUID映射缓存。
- 将更换模型命令与逻辑限定为仅适用于Doppler NPC。
6.1.0 ✨
这是一次重大版本更新。更新前请务必备份您的世界存档与NPC数据。
本版本包含大量改进、优化与内部重构,与早期版本不完全兼容。
⚠️ 破坏性变更
- 6.1.0 版本之前的NPC及其配置数据可能无法正常加载,或需手动调整。
- 内部数据格式与部分行为已重构,以支持新用例。
🧩 全新模块化结构
Easy NPC 现已拆分为三个独立模组:
- Easy NPC —— 包含核心功能与配置界面的整合包,开箱即用。
- Easy NPC:核心版 —— 轻量级运行时与NPC逻辑,依赖极少;面向服务器、整合包与开发者。
- Easy NPC:配置界面 —— 独立的NPC创建与编辑配置界面;可单独安装于需UI的客户端。
🎯 此变更原因?
- 服务器与整合包可仅在服务端部署核心版,实现精简配置。
- 在无需UI的场景下,降低内存占用与加载时间。
- 分离UI与核心逻辑,加快开发与测试速度。



