promotional bannermobile promotional banner

VillagerDetails

VillagerDetails fixes annoying villager AI. This Fabric mod adds 30+ toggleable fixes for villagers, entities, and blocks, including infinite trades, bed rebinding, and portal binding. Manage rules via the /ec command or the J GUI.
Back to Files

VillagerDetails 1.1.0 for MC 26.2

File namevillagerdetails-1.1.0-fabric-0.19.3-api-0.160.0-26.2-all.jar
Uploader
AcvvbAcvvb
Uploaded
Nov 1, 2026
Downloads
8
Size
782.8 KB
Mod Loaders
Fabric
File ID
9392806
Type
R
Release
Supported game versions
  • 26.2

Curse Maven Snippet

Fabric

modImplementation "curse.maven:villagerdetails-1771564:9392806"

Learn more about Curse Maven

What's new

🚀 版本定位

引入网络协议版本控制包,全面不再兼容旧版本客户端(未安装客户端的玩家仍可进服)。配置迁移也做了规范化:不再支持旧版配置,以 1.0.0 作为新基线,短期内不再重构框架。

✨ 新增功能

🎮 游戏规则类

  • 方块弱充能控制规则
  • 禁用生物生成规则
  • 乐魂可调节飞行速度规则;移除"移动过快"检测
  • 末地门重力方块规则
  • 禁用地狱门刷僵尸猪灵
  • 涛熔炉助手
  • 规则切换日志:适配所有规则,附带切换操作人,客户端 UI 同步适配

🖥️ 客户端

  • 村民工作方块渲染
  • 客户端开关分类,开启/关闭不再依赖状态判断开关类型
  • 骑行玩家、坐板砖和楼梯检测
  • 命令接入 Tab 键动态补全
  • 熔炉藏东西显示重构为视距扫描范围(可配置)
  • 设置界面所有滑条支持鼠标滚轮调节,调节手感更加顺滑
  • 快捷键绑定支持“依次按下”录入(最高支持 3 键组合),且支持再按一次撤销录入

⚙️ 框架

  • GitHub 工作流支持自动发版到 Modrinth 与 CurseForge
  • 命令系统与配置系统的启动期 Fail-Fast 自检:拦截重复注册、实例冲突、命名漂移

🐛 问题修复

🔒 安全与权限

  • /ec c 规则名越权问题;无权限执行命令仍有补全泄露
  • 传送门绑定跨维度脏选区残留导致写入错误坐标的漏洞;移除易误伤的 (0,0,0) 坐标校验

📝 配置与命令

  • /ec c reload 假读盘导致玩家手改配置被覆盖,以及 RuleConfig 缓存未失效造成的假重载
  • set 命令因未接收返回值导致注册丢失;多规则同名字面量被静默合并
  • 服务端配置重复注册造成误判
  • 移动速度过快拉回异常;修改乐魂飞行值未立即生效
  • 规则枚举新增取值范围限制,超范围直接回落默认值;默认配置同样落盘,读取失败即覆写为默认
  • 修复网络包发送失败时被错误标记为“已请求”,导致补全或详情页数据永久静默失效的问题
  • 修复重置默认配置时,未清空废弃字段键(孤儿键),导致配置文件长期残留垃圾数据的问题

🌐 渲染与翻译 & 客户端 UI

  • bed 先选床后选错方块,导致错误方块名在客户端翻译失效
  • 服务端语言翻译导致颜色码丢失
  • 客户端启动重复加载缓存
  • FurnaceDirtyHighlight 在 Freecam(灵魂出窍)下高亮不跟随视角,改为服务端按区块动态追踪,同时解决跨维度串号
  • 地狱门绑定若干问题(重写绑定逻辑)
  • 修复极小窗口/高 GUI Scale(如 Scale 6)下,按钮重叠、文字越界溢出的问题
  • 修复切换分类时,列表滚动条未重置,导致切页后出现内容不可见的空白问题
  • 修复快捷键修改后,冲突警告颜色与重置按钮状态不实时刷新的问题
  • 修复详情页值输入框被强行拦截方向键与 Tab 键,以及删除列表行时错误清空正在输入文本的问题
  • 修复颜色输入框(如 #FF4D4D)被鼠标滚轮异常横向滚动导致文本隐藏的问题
  • 修复快捷键绑定按钮在编辑状态出现多余边框,及 ESC 无法直接清空绑定的逻辑
  • 修复连续切换绑定的快捷键框时,吞掉第一次点击的问题

🛠️ 构建

  • Java 泛型检查 bug 引起的偶发构建失败

⚡ 架构与性能优化

📂 目录/模块重构

  • main 中的 server 代码拆分,重构为 server / client / main(公共区)三层

📦 注册体系

  • 服务端事件、网络包、缓存、主类注册全面接口规范化 + 统一注册,清理混乱注册与顺序问题
  • 反射注册重复创建实例问题重构;改用 ScanService 查找类,移除反射扫包
  • 抽象客户端渲染注册与缓存注册,渲染注册不再由主类接管
  • 命令注册抽取公共基类,补全逻辑统一化;拆解 CCommand,样式方法独立成类
  • 配置类初始化与命令初始化统一,不再需要两处手动登记

🔄 协议与同步

  • 规则同步从"客户端翻译"改为完全由服务端翻译
  • 彻底废弃并发易错的"序号+版本号"机制,替换为全局自增 ID
  • 修复客户端退出时,因 Fabric 网络线程并发清空集合导致 HashMap 结构损坏甚至崩溃的隐患(改用并发容器)

🚀 性能

  • 语言翻译性能优化(减少对象创建)+ 可读性(递归改循环)
  • 移除不必要缓存与过早序列化;修复启动读盘后重复写盘
  • scanRadius 重命名为 viewRadius,动态读取服务端视距,取消客户端冗余距离过滤
  • 抽取方块高亮、实体-方块连线、实体渲染框到工具类
  • 配置重载统一为"按物理文件整份重读",停服补充静态引用清理防内存泄漏;清理未使用的类/方法/目录/语言键
  • 不再构建全量包,优化发包工作流

🎨 交互

  • 前端交互手感两轮优化
  • BB 选择器新增玩家切换维度自动清除
  • 引入 ScaledScreen 基类,以 GUI Scale 4 为基准实现客户端界面的全局等比例缩放,完美兼容 1~6 倍 GUI 缩放
  • 完善全局滚轮事件分发拦截机制,防止滑条/输入框滚动时意外穿透引发外层列表乱滚
Type
Name
Game Versions
Mod Loaders
Size
Downloads
Uploaded