TerrainCustomiser Fix
Community rebuild of Snosz-TerrainCustomiser 0.3.2 for current PEAK (verified v2.6.b): custom biome maps work again, with old-save, multiplayer and storm fixes. | 地形定制器 0.3.2 社区修复重建版,适配当前 PEAK,含旧存档、联机与风暴修复。
By AiAeT
CHANGELOG
v1.0.1
English
- Clients got no storms: on multiplayer custom maps the host could be caught in an Alpine snowstorm or Roots windstorm while a client saw no storm, not even the event. Fixed two causes of mismatched network IDs: the identity map of generated objects is now published before the ID list (before, a client that finished generating first never actually used hierarchy-path matching), and the game's own scene objects are no longer renumbered (a client that activated one early refused the host's ID). As a safety net, the host also publishes every storm start and stop by hierarchy path, and a client that missed the game's own toggle applies the host's state within a few seconds (new setting
Multiplayer/EnableStormSync, on by default). - Storm shelter still let wind through: the upwind check now casts three rays instead of one (chest, head, and one tilted slightly up); any hit on terrain counts as shelter. While sheltered, the wind factor and climbing-stamina multiplier left over from being exposed are reset. A bake that failed, or a scene with no light volume, no longer counts as "baked" and no longer switches the raycast fallback off. The log states whether the fallback is active on this machine.
- Campfire save errors: fixed the NRE when saving at the first campfire on a custom map (the variant had no previous scout statue), and the NRE on every campfire when TerrainRandomiser is installed, which stopped the quicksave from being written.
- Diagnostics: on map load every storm zone is logged with its path and network ID, and every storm start/stop and every correction is logged as a
[TC] Stormline, so host and client logs can be compared directly.
中文
- 客机没有风暴:联机自定义图里,主机遇到高山暴风雪或森蕈大风时,客机可能一直没有风暴,连事件都不出现。修了两处网络 ID 对不上的原因:生成物的身份表改为先于下标表发出(以前客机先生成完时,按层级路径对号这一步实际上从未生效);游戏自带的场景物件不再被重新编号(客机提前激活了它时,会拒收主机给的 ID)。另外加了一层兜底:主机会把每次风暴开始和停止按层级路径广播,客机没收到游戏自己的切换时,几秒内按主机状态补上(新配置
Multiplayer/EnableStormSync,默认开)。 - 风暴遮蔽仍漏风:上风射线从一条改为三条(胸口、头部,再加一条略向上抬的),任一命中地形即算挡住。躲避时会清掉露天时留下的风力系数和攀爬耐力倍率。烘焙失败或场景里没有光照体积时,不再被当成「已烘焙」而关掉射线兜底。日志会说明本机的射线兜底是否在工作。
- 篝火存档报错:修复自定义图第一次点篝火时快速存档报 NRE(变体里找不到上一段的雕像);修复装了 TerrainRandomiser 时每次点篝火都报 NRE、快速存档写不出来的问题。
- 诊断:进图时列出所有风暴区的路径和网络 ID,风暴每次开始 / 停止和每次纠正都会写一行
[TC] Storm日志,主客机日志对照即可看出是否同步。