基本信息
我的世界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.20.1)
注意
本更新日志仅包含简要变更摘要。
完整更新日志请前往 GitHub 提交历史 查看。
注意:在更新至新版本前,请务必备份你的世界/NPC 数据!
更多信息请参阅 升级指南。
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()选项,允许原始模型使用变体材质。
6.8.1
- 通过使用现有预设辅助方法而非自定义方法,修复 #676。
6.8.0(新增 API 支持)
- 通过添加无效网络封包的警告信息与额外校验,修复 #667。
- 修复马刷怪蛋模型。
- 修复悦灵、鸡、苦力怕、狐狸、恶魂、马、灾厄村民、铁傀儡、史莱姆和恼鬼的姿势支持。
- 新增 NPC 基础类以更好地支持 API。
- 新增 NPC 原始类以支持高级 API 功能。
- 新增史莱姆与恶魂 NPC 类型。
- 新增自定义模型 API,便于与其他模组及自定义模型集成。
- 重构内部数据处理与注册逻辑,提升可维护性并为未来改进打下基础。
6.7.1
- 通过添加额外的客户端校验以规避原版漏洞,修复 #657 与 #656。
6.7.0
- 通过在 setupAnim 方法中实现狼腿部动画,修复 #650。
- 修复 canBeHitByProjectiles 的翻译问题,修复 #648。
- 通过添加
allowBypassInvulnerability配置选项,允许/禁止绕过 NPC 的无敌效果,修复 #645。 - 修复删除按钮在宽度较小时仍显示标签的问题。
- 修复上下按钮在某些情况下位置不正确的问题。
- 修复对话框和配置 GUI 中命名牌意外显示的问题。
- 修复距离触发行为中多个动作未能正确触发的问题。
- 修复 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 记录(records),增强不可变性与线程安全性。
- 新增基于 ConcurrentHashMap 的线程安全会话服务器防刷机制。
- 新增全面的错误恢复机制,在失败时自动重置冷却时间。
- 改进材质加载性能,采用 2 线程池与 500ms 速率限制。
- 改进异常处理,针对 IIOException 与 FileNotFoundException 添加专用捕获块。
6.5.2
- 修复村民职业与工作皮肤问题。
- 通过为 Gradle 依赖添加缓存,改进 GitHub 工作流。
- 优化 Gradle 构建时间与清理任务。
6.5.1
- 通过实现 ON_KILL 行为类型与事件,修复 #632。
- 通过优化材质处理性能、缓存与内存使用,修复 #629。
- 修复击杀命令对 NPC 无效的问题。
- 修复材质重载保护机制阻止缓存驱逐后重新加载的问题。
- 修复远程图片校验器中的 WebP 校验漏洞(缺少 return 语句)。
- 重构材质处理逻辑,提升可维护性并为未来改进打下基础。
- 新增基于时间的重载保护机制(60 秒),替代永久阻塞机制。
- 新增材质处理相关的额外单元测试。
- 优化 Gradle 构建任务。
6.5.0
- ⚠️ 移除 jar-in-jar 打包方式,以提升模组兼容性与 API 能力。
- 通过改进剪刀实现方式,提升与其他模组的兼容性,修复 #627。
- 修复使用旋转或移动模型部件时动画异常活跃的问题,修复 #625。
- 修复使用缩放模型部件时默认动画被取消的问题。
- 新增更智能的姿势动画控制,提供 smart、default 与 none 三种选项。
6.4.1
- 修复不同 NPC UUID 的界面切换逻辑,感谢
Spawnblade提供详细调查与修复建议,修复 #626。
6.4.0
- 通过改进对话数据验证与错误处理,修复 #626。
- 通过重构渲染数据与渲染处理逻辑,修复 #623。
- 通过确保自定义数据能正确保存与加载,修复 #622。
- 修复“打开对话框”行为类型,允许从其他 NPC 打开对话框。
- 通过为 ConditionDataSet 与 ActionDataSet 添加缺失的 equals 与 hashCode 方法,修复哈希问题。
- 为 #622 新增自定义数据测试物品,便于测试自定义数据。
- 改进记录结构并修复潜在的数据缺失问题。
6.3.0
- 重构配置 GUI 专用组件,并将其从核心模组中移除。
- 通过在发送至客户端前过滤对话数据,修复对话数据问题。
- 修复对话编辑器布局问题并提升可用性。
- 修复部分对话数据字段缺少默认值的问题。
- 新增对话优先级支持,用于控制对话执行顺序。
- 新增对话与计分板行为的条件支持。
- 新增对话频率限制功能,控制对话显示频率。
- 新增支持计分板与条件的新 NPC 预设。
- 通过移除冗余字段,改进对话按钮数据格式。
6.2.0
- 修复对话中的字符串注入问题。
- 修复行为类型缺少翻译的问题。
- 新增计分板行为类型,用于增加、减少或设置计分板数值。
- 新增
@score(...)NPC 宏,用于在对话中显示计分板数值。 - 新增额外单元测试。
- 改进纺线器按钮,添加指示器并提升可用性。
6.1.2
- 修复因缺少关闭容器封包导致的容器与菜单同步问题。
- 修复某些情况下关闭按钮无效的问题。
- 修复界面切换时光标跳动的问题。
- 修复翻译文件,移除重复与弃用条目。
- 将 Easy NPC 法杖移至现有核心物品选项卡,不再创建新选项卡。
- 新增猫姿势支持(除尾巴外的各模型部件)。
- 通过在不需要时禁用发光效果,提升 EasyNPCWand 发光效果性能。
- 通过排除非生物实体(如展示物、造物主、投掷物与刷怪笼),改进自定义实体检测。
- 改进猫变种处理逻辑。
6.1.1
- 通过重新校验实体类型,修复 #612。
- 通过强制同步特定模型的帽子与头部图层,修复 #610。
- 修复兽人皮材质。
- 通过将相关逻辑移至仅客户端执行,改进自定义模型支持与性能。
- 改进玩家皮肤中玩家到 UUID 映射的缓存机制。
- 限制模型更换命令与逻辑仅适用于 Doppler NPC。
6.1.0 ✨
此为重大版本更新。更新前请务必备份你的世界与 NPC 数据。
本版本包含大量改进、优化与内部变更,与早期版本不完全兼容。
⚠️ 破坏性变更
- 6.1.0 之前版本的现有 NPC 及其配置数据可能无法正确加载,或需手动调整。
- 为支持新用例,内部数据格式与部分行为已重构。
🧩 新模块化结构
Easy NPC 现已拆分为三个独立模组:
- Easy NPC – 包含 Core 与 Configuration UI 的整合包,提供即装即用体验。
- Easy NPC: Core – 轻量级 NPC 运行时与逻辑核心,依赖极少,适用于服务器、整合包与开发者。
- Easy NPC: Configuration UI – 独立的 NPC 创建与编辑配置界面,可单独安装于需要 UI 的客户端。
🎯 此变更原因
- 允许服务器与整合包仅在服务端部署 Core 模组,实现更精简的配置。
- 在无需 UI 的场景下降低内存占用与加载时间。
- 通过分离 UI 与核心逻辑,加快开发与测试速度。



