
地图墙壁更新器
允许玩家在不从物品展示框中取下的情况下刷新原版已填充的地图
地图墙更新器
地图墙更新器是一款轻量级的、服务端专用的 Forge 模组,适用于 Minecraft 1.20.1。 它允许玩家无需从物品展示框中移除已填充的地图,即可刷新这些地图。
使用方法
潜行并右键点击物品展示框中的任意已填充地图。模组会识别出朝向相同、相互连接的带框地图墙,并将其独特、未锁定的地图放入一个受保护的刷新队列中。
当玩家未潜行时,正常的物品展示框交互不会受到影响。
性能
- 普通地图墙的更新目标耗时约为 10 秒。
- 当可配置的毫秒预算用尽后,会停止开始新的更新任务。
- 使用可配置的每游戏刻硬性工作量上限来保护服务器 TPS(每秒游戏刻数)。
- 每个采样区域只检查一次区块可用性,而不是每轮更新都检查。
- 一次只处理一个排队中的地图墙,并在其包含的地图之间公平轮转。
- 可以更新未加载的地形数据;默认启用。
- 也可以选择跳过未加载的地形,以避免同步加载区块。
- 对共享同一地图 ID 的复制地图进行去重处理。
- 对最近已入队的地图应用 60 秒的冷却时间。
- 在墙壁的采样点周围显示轻量级的进度粒子效果。
- 在发起请求的玩家的操作栏中显示进度百分比。
当达到每游戏刻安全上限时,大型或高缩放级别的地图墙可能会超出目标耗时。这可以防止极端规模的地图墙垄断单个游戏刻。
配置
Forge 会在首次启动后创建 config/map_wall_updater-common.toml 配置文件。
| 选项 | 默认值 | 描述 |
|---|---|---|
target_update_seconds |
10 |
普通地图墙更新的目标耗时。 |
max_passes_per_tick |
128 |
每个服务器游戏刻的硬性工作量上限。 |
max_work_millis_per_tick |
3.0 |
每个服务器游戏刻的挂钟时间工作预算。 |
update_unloaded_terrain |
true |
允许更新同步加载其所代表的地形。 |
generate_missing_chunks |
false |
允许生成从未被保存过的区块。 |
wall_cooldown_seconds |
60 |
地图在可再次入队前的延迟时间。 |
player_cooldown_seconds |
60 |
同一玩家在排队不同地图墙前的延迟时间。 |
minimum_permission_level |
0 |
排队地图墙所需的权限等级;0 表示允许所有玩家。 |
maximum_queued_walls |
4 |
全局的活动和等待中的地图墙数量上限。 |
max_connected_maps |
256 |
每次交互发现的相互连接的带框地图的最大数量。 |
message_language |
SPANISH |
玩家消息语言;接受 SPANISH 或 ENGLISH。 |
操作员命令
/mapwall status显示排队中的地图墙、待处理的地图和当前进度。/mapwall cancel取消当前活动的地图墙更新。/mapwall cancelall清除所有活动及等待中的地图墙更新。
所有命令都需要原版权限等级 2。
需求
- Minecraft 1.20.1
- Forge 47.4.20 或更高版本(47.x 系列)
- Java 17
该模组仅需安装在专用服务器上。原版客户端可以正常连接。 它使用原版地图渲染机制,因此其他模组提供的地图颜色仍然兼容。 进度粒子效果对未安装模组的客户端也是可见的。
限制
- 故意忽略已锁定的地图。
- 当
update_unloaded_terrain = true时,更新远处地图可能会同步加载区块。 - 除非
generate_missing_chunks = true,否则会跳过缺失的区块。 - 设置
update_unloaded_terrain = false以跳过未加载的源地形,并最大限度地减少加载区块的影响。 - 单次同步区块加载可能超出毫秒预算;处理会在该游戏刻稍后暂停。
- 只有朝向相同且直接连接的物品展示框才会被视为一面地图墙。
- 玩家必须保持在线才能收到最终的完成消息。
联系/反馈 Bug
Discord 上的 0b11_3x
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。