LOD服务器支持

LOD服务器支持

Voxy 多人游戏支持 (非官方)。兼容 Fabric/Paper/Purpur/Folia。

LOD 服务器支持

通过自定义网络协议,将 LOD(细节层级)区块数据从服务器分发到连接的客户端。主要用作 Voxy 的多人游戏后端。客户端分批请求远距离区块,服务器从磁盘或内存中读取数据并流式传回,使 Voxy 能够在多人服务器上渲染远超原版视距的地形。结果:玩家在多人服务器上可以看到数百个区块外完全渲染的地形,无需事先探索世界。

支持 Fabric 客户端以及 FabricPaperPurpurFolia 服务器。

最新文档请参见 https://github.com/VoX/lod-server-support

演示视频:https://github.com/user-attachments/assets/721fb344-890e-4e03-ab36-539444427f7b

安装

服务器(Fabric 模组或 Paper 插件)和每个客户端(LSS Fabric 模组 + Voxy)上安装 LOD 服务器支持(LSS)。如果连接客户端和服务器上没有同时安装 LSS,将无法工作。

Fabric 客户端

  1. 安装 Voxy,并将 lod-server-support-fabric.jar 放入客户端的 mods/ 目录
  2. 加入运行 LSS 的服务器——客户端配置文件生成于 config/lss-client-config.json

Fabric 服务器

  1. lod-server-support-fabric.jar 放入服务器的 mods/ 目录
  2. 在所有客户端上安装 Fabric 模组 Voxy
  3. 重启服务器——配置文件生成于 config/lss-server-config.json

Paper/Purpur/Folia 服务器

  1. lod-server-support-paper.jar 放入服务器的 plugins/ 目录
  2. 在所有客户端上安装 Fabric 模组 Voxy
  3. 重启服务器——配置文件生成于 plugins/LodServerSupport/lss-server-config.json

命令

服务器(Fabric 和 Paper)

  • /lsslod stats - 显示每个玩家的传输统计信息
  • /lsslod diag - 显示详细诊断信息(配置、带宽、队列深度)

客户端(仅 Fabric)

  • /lss clearcache - 清除本地列缓存,强制所有区块重新从服务器请求
  • /lss diag - 显示客户端诊断信息(连接、吞吐量、扫描进度、请求预算)

配置

服务器(Fabric 和 Paper)

服务器配置在首次运行时生成:

  • Fabric: config/lss-server-config.json
  • Paper: plugins/LodServerSupport/lss-server-config.json
设置项 默认值 描述
enabled true 启用 LOD 分发
lodDistanceChunks 256 LOD 最大距离(以区块为单位)
bytesPerSecondLimitPerPlayer 20971520 每个玩家的预压缩带宽上限(20 MB/s)
bytesPerSecondLimitGlobal 104857600 全局预压缩带宽上限(100 MB/s)
diskReaderThreads 5 异步磁盘读取的线程池大小
sendQueueLimitPerPlayer 4000 每个玩家队列中的最大列载荷数(每个载荷包含一个完整的区块列截面)
syncOnLoadConcurrencyLimitPerPlayer 200 每个玩家的最大并发同步请求数
generationConcurrencyLimitPerPlayer 16 每个玩家的最大并发生成请求数
enableChunkGeneration true 按需生成缺失区块的 LOD 数据
generationConcurrencyLimitGlobal 32 全服同时生成区块的最大数量
generationTimeoutSeconds 60 待处理区块生成的超时时间
perDimensionTimestampCacheSizeMB 32 每个维度的时间戳缓存最大大小(以 MB 为单位,用于重连时的最新检查)
dirtyBroadcastIntervalSeconds 10 向客户端推送脏列通知的间隔时间

Paper 专属: 配置中还包含一个 updateEvents 列表,用于脏区块检测的 Bukkit 事件类名。/lsslod 命令需要 lss.admin 权限(或 op)。

客户端

客户端配置在首次运行时生成于 config/lss-client-config.json

设置项 默认值 描述
receiveServerLods true 启用从服务器接收 LOD 数据
lodDistanceChunks 0 LOD 最大请求距离(以区块为单位,0 表示使用服务器限制)

许可证

MIT