Skip to content

MapSyncer v1.0.3

Latest

Choose a tag to compare

@RuoChennn RuoChennn released this 13 Jun 15:41
· 106 commits to main since this release
b6d9046

更新日志

新功能

  • 自动同步机制 — 加入服务器时自动比对服务端地图生成时间,静默完成同步
  • 防刷屏 —更新进度调整为快捷栏上方动态展示,聊天栏仅显示关键信息
  • MC 1.21.11 全平台适配 — Forge (FML 3.0)、Fabric (Loom 1.15.4)、NeoForge 三平台编译通过
  • MapPackager 独立打包工具 — 纯 Java CLI,将服务器缓存打包为客户端可用的 Xaero 地图 zip
  • 内置服务器支持 — 单人游戏局域网共享,复用主机 Xaero 存档目录作为缓存(条件不足暂未测试)
  • Payload 双向分片传输 — 所有 >28KB 数据自动拆分为小包,接收端组装,支持乱序到达 issue#3
  • 同步冲突防护 — 同步进行中拒绝新请求,10 分钟超时自动清除残留状态
  • 握手保护 — Forge 检查客户端 mod 列表 + NeoForge 双向握手,禁止向未安装模组的客户端发送 payload

Bug 修复

  • 修复彩色玻璃 — 应作为 overlay 处理而非视为隐形
  • 修复增量更新不持久化 — saveConfig() 空方法导致配置无法保存
  • 修复乱码中文注释 + 删除 4 个废弃类
  • 修复 NBT MAX_LIST_SIZE — 5000 → 100000,防止大区域解析失败
  • 修复单机目录命名 — 对齐 Xaero,使用存档文件夹名
  • 修复自动同步消息双前缀

性能优化

  • 区域转换 CPU 优化 — 5 项热点消除(sectionLookup O(1)、getFlags 位掩码、去 Stream、预计算、调色板索引),约 30-50% CPU 降低
  • 转换线程使用 MIN_PRIORITY — 降低对服务端 tick 的 CPU 争用
  • DimensionConfigParser 添加解析缓存 + 合并查找循环

内存与稳定性

  • 修复光照数据双重存储,避免 OOM
  • 修复时间戳缓存无限增长,添加上限限制
  • NetworkHandler 添加幂等防护,防止 payload 重复注册

重构

  • Xaero 路径统一 — xaero/world-map 优先,XaeroWorldMap 兼容 fallback issue#4