
温度带
修改世界生成,将生物群系放置到重复的温度带中。兼容大多数世界生成模组。现在根据靠近河流和/或海洋的距离,湿度也会随之变化!
查看大图🌡️ 关于
不喜欢冷热或干湿生物群系随机分布的方式?本模组修改了世界生成机制,根据重复的温度带(也可称为"气候带")来放置生物群系。该模组能自动兼容大多数世界生成模组(详见兼容性章节)。2.0版本新增了高级湿度算法,使湿润生物群系更靠近河流和/或海洋;此外还提供了一种更简单/更快的湿度带选项,这些湿度带与温度带垂直。
📜 更新日志(更新历史)
点击展开
2.0.x 版本
- 新增: 湿度设置,进一步优化生物群系放置。默认(仅适用于1.20.1及更高版本,原因见常见问题)采用"高级"算法,根据与河流和/或海洋的接近程度计算湿度。另一个"简单"选项会生成垂直于温度带的湿度带。现有世界将保持原版的湿度设置,更多信息请参阅模组描述页面的"升级"章节。
- 优化: 核心系统已完全重写,取代了温度/湿度密度函数,并通过检查成功/失败来验证操作,而不是动态修改它们并假设其生效。现在更加稳健、可靠,也更优秀。以下大部分改进都得益于本次重写。
- 新增: 能够将特定维度加入黑名单/白名单。默认配置会排除下界和末地。此新默认值仅适用于新创建的世界,更多信息请参阅模组描述页面的"升级"章节。
- 新增: 当安装了 World Preview 模组时,提供基准测试选项。具体用法请查看配置文件,结果会记录在日志/控制台中。
- 改进: 在重新创建世界时,温度带配置现在默认会正确地从旧世界复制。此功能可以禁用,以使世界重建时使用当前的模组默认设置,更多信息请参阅模组描述页面的"升级"章节。
- 改进: 与世界生成模组的兼容性更好。已使用 Larion、Tectonic 和 Lithosphere 进行过测试——它们现在能真正完美运行,并且应该能与所有世界生成模组兼容(前提是它们仍然使用名为"temperature"和"humidity"的密度函数)。
- 改进: 解决了与 C2ME 以及其他性能优化模组的兼容性问题。
- 改进: 新增了更多配置选项,完善了注释,并重新调整了默认设置。
- 版本: 最新分支已迁移至 26.1.2,不再支持 1.21.5(之前的最高版本)和 1.18.2 版本(反向移植工作量太大且已不再流行)。
- [2.0.2] 修复: 解决了因尝试处理"虚假"世界(例如来自 Supplementaries 模组和/或 Moonlight Lib 模组)而导致的崩溃问题。
- [2.0.2] 修复: 正确处理那些在主世界噪声路由器基础上生成的运行时维度的维度数据。
- [2.0.3] 修复: 改进了对某些"不听话"模组的支持,这些模组会用一个不继承自原始 MultiNoise 类型的生物群系源来替换主世界生物群系源(例如 Blueprint 库)。
- [2.0.3] 修复: 在游戏内预览界面时,跳过 World Preview 的基准测试(消除了日志刷屏)。
- [2.0.4] 修复: 进一步改进了与修改原版生物群系源的模组的兼容性(尤其是在安装了 C2ME 的情况下)。
- [2.0.4] 修复: 修复了专用服务器上的崩溃问题。
- [2.1.0] 优化: [仅适用于 1.20.1+] 气候采样器[高级湿度]的速度大幅提升,平均测量速度提升了 200% 以上(!!!)。我们现在完全跳过了温度和湿度噪声的生成(因为河流/海洋不关心这些参数),同时引入了一种早期中止机制,一旦确定某个点绝对不存在河流/海洋,就跳过多余的采样。此优化不适用于 1.19.2 版本,因为它不支持高级湿度。
- [2.1.0] 优化: [仅适用于 1.20.1+] 移除了所有气候预取功能和配置,因为在上述优化之后它不再提供任何实际益处。
- [2.1.0] 修复: [仅适用于 1.20.1+] 修复了与 BCLib 和 BetterX 模组,以及其他存在类似不良移植问题的模组的崩溃问题——这些模组在世界加载时调用的是 "createAccess" 而不是 "validateAndCreateAccess",这在技术上对 1.20.1 及更高版本是错误的。1.19.2 版本无需此修复。
1.0.0 版本
- 初始版本
⭐ 亮点
- 修改世界生成,将生物群系沿温度带循环放置,从最冷到最热,再回到最冷,依此类推;
- 新功能: 额外调整生物群系放置,使高湿度生物群系更靠近河流和/或海洋(默认启用,可配置,仅适用于 1.20.1+),或放置在垂直于温度带的湿度带中(1.19.2 版本的默认行为);
- 新功能: 维度黑名单/白名单。默认情况下,下界和末地被列入黑名单;
- 兼容大多数世界生成模组(详见兼容性章节);
- 每个世界都会记住自己的设置,模组配置仅适用于新世界;
- 可配置的温度带大小、垂直带选项,以及更多配置选项;
- 默认情况下,世界出生点(靠近原点;即方块 X,Z 坐标 0,0)将如同"北半球温带起点",即北方为寒冷,南方为炎热(注意:仅在最原版的世界生成中保证有效,一些模组(例如 Larion 和 Tectonic)对原点的处理更加随机——请参阅"提示"章节,了解如何通过另一个模组解决此问题);
- 如果安装了 World Preview 模组,则能够对区块生成进行基准测试。
一个 1.21.1 世界在使用模组前后(使用模组默认配置)的示例图片:

(截图使用 World Preview 模组拍摄,强烈推荐用于测试任何配置更改。1.20(.1) 版本在此处提供(CurseForge),适用于 NeoForge 1.21.1 的移植版可以在 Modrinth 上找到。)
🏷️ 用法和配置
安装模组后,只需启动 Minecraft 即可生成配置文件。如果你对下面的默认配置满意,就创建一个新世界。默认情况下,每个温度带的平均宽度约为 2048 个方块,玩家将在"赤道上方"开始,北边是寒冷生物群系,南边是温暖生物群系,但这些都可以在配置中更改。
配置文件内容非常详尽,并附有冗长的注释,详细说明了所有功能和值得考虑的方面。强烈建议通读一遍。另请注意,某些功能和配置设置,特别是与高级湿度相关的设置,仅在 1.20.1 及更高版本中可用。原因请参见常见问题解答。
temperaturebands-common.toml:
点击展开配置文件内容
[global] 设置并非特定于某个世界。它们将应用于所有世界,并且不会按世界保存,
因为它们不影响世界生成。
[doBenchmark] 如果安装了 World Preview,则在打开“预览”选项卡时(以及在关闭 World Preview 设置菜单后,
即每当区块预览开始生成时)执行基准测试。
- 在 World Preview 激活时,请勿滚动或调整窗口大小,这会导致基准测试失败或永远无法完成。
要重新启动基准测试,只需进入 World Preview 设置菜单然后退出。等待所有可见的区块生成完毕,
即可在日志/控制台中查看结果。
- 如果湿度算法不是高级的,或者气候采样器缓存被禁用,则结果的“缓存命中率”部分将不正确
——请忽略它。
doBenchmark = false
[copyConfigOnRecreateWorld] 为 true 时,在执行“重新创建”操作时,会将之前世界的温度带配置
复制到新世界。
- 如果你希望在更新模组后使用新功能和默认设置来“升级”你的世界,请将其设置为 false。
你仍然需要执行世界重新创建操作。
- 仅与客户端相关。服务器需要手动重新创建其世界(例如,在服务器配置中设置相同的种子/设置,
并删除旧世界)。
copyConfigOnRecreateWorld = true
[ignoreDimensionFailures] 是一个维度列表,用于在替换其温度/湿度函数失败时忽略记录错误。
- 用逗号分隔。尾部逗号无所谓。
- 默认条目中的末地是由于原版末地对其温度使用常量 0.0(虽然它根本不使用任何湿度噪声),
而模组仍会尝试替换温度,从而导致虚假的“如需为此自定义维度提供支持,请报告”错误。
请不要报告该错误 :)
ignoreDimensionFailures = "minecraft:the_end,"
[dumpRiverAndOceanBiomes] 如果设置为 true,则会将每个维度中带有 'minecraft:is_river' 和
'minecraft:is_ocean' 标签的所有生物群系列表转储到控制台/日志。
- 可能对整合包作者有用(与湿度算法相关)
dumpRiverAndOceanBiomes = false
[climatesampler-performance]
[climatesampler-performance] 是与性能相关的全局气候采样器设置(由所有世界共享,不按世界保存)。
- 在基于与河流和/或海洋的接近程度计算湿度时,会使用自定义的气候采样器。这些设置目前仅
在启用了“高级”湿度算法时才相关(该算法是新世界的默认设置,但现有世界保持禁用状态)。
--------
[climateSamplerCacheSize] 是自定义气候采样器的大小,以兆字节为单位。
- 默认的 5MB 可以容纳近 5 万个样本,对于任何环境来说都应该绰绰有余。
- 设置为零将禁用缓存,**不推荐这样做** —— 没有缓存,你的 CPU *和*内存使用率都会高得多。
默认值: 5
范围: 0 ~ 128
climateSamplerCacheSize = 5
[world]
[world] 是新世界的通用默认设置。这些设置仅适用于新生成的世界,现有世界将记住它们自己的设置。
--------
[bandSize] 是每个温度带的平均大小,以方块为单位。
- 原版 Minecraft 世界生成有 5 个温度区域——冰冻、寒冷、温带、温暖和炎热——每个生物群系
都适合这五个温度范围之一。例如,当此值为 2048 时,从一个炎热带的*中心*到下一个炎热带
中心的距离约为 16384 (2048 * 8) 个方块;从炎热经过寒冷再回到炎热。
- 如果有任何世界生成模组添加了具有不同“温度范围”的生物群系,它们通常应被整合到现有
的温度带中。
- 如果你希望尽可能保持性能,请将此值保持为 2 的幂。
默认值: 2048
范围: 512 ~ 32768
bandSize = 512
[useVerticalBands] 如果为 true,则使用垂直带代替水平带。
useVerticalBands = false
[bandPositionShift] 按给定的百分比平移温度带。
- 通常,炎热带(沙漠等)会在原点 (0,0) 处生成,因此默认的 25% 偏移将使原点的温度变为
温带(中等温度),向下偏移以模拟“北半球”起点(更冷将在北方,如果是垂直带,则在东方;
更热将在南方或西方)。值为 0.75 将模拟南半球起点。
- 请注意,某些世界生成模组(如 Tectonic 和 Larion)似乎对初始世界出生点有自己的想法,
并且不使用世界原点,在这些情况下,你可能也想使用像 'Biome Spawn Point' 这样的模组。
默认值: 0.25
范围: 0.0 ~ 1.0
bandPositionShift = 0.25
[tempRange] 是绝对的最小/最大温度范围。
- 增大将使最冷和最热的温度带变大,同时减小其他温度带,减小则产生相反效果。
- 默认值使最热/最冷的热带比其他带略小。将此值设置得太高或太低可能会导致某些
温度带根本不生成。
默认值: 0.65
范围: 0.3 ~ 1.0
tempRange = 0.65
[tempGradeShift] 用于使最热和最冷的温度带大小大致相同。
- 原版温度偏向寒冷,这解决了这个问题。例如,如果将其设置为零,最冷的温度带将比其他
所有温度带都大,而最热的将比其他所有温度带都小。
默认值: -0.05
范围: -0.5 ~ 0.5
tempGradeShift = -0.05
[bandAlgorithm] 是用于温度带的算法。
- 你可以在下面的各自章节中配置和了解更多关于每种算法的信息。如果要更改设置,建议
使用 World Preview。
- 请注意,目前只有 1 种算法,此配置条目仅用于防止以后添加更多算法。
默认值: 1
范围: 1 ~ 1
bandAlgorithm = 1
[noiseFactor] 大于零时,会将原始噪声生成纳入温度带,以帮助使温度带的形状和边缘更好看一些。
- 强烈建议保持启用。
- 有关 noiseFactor 的使用细节,请参阅每种算法。其单位是任意的,并且非常依赖于 bandSize。
例如,对于 2048 的 bandSize,100 是不错的值,但如果 bandSize 减小,这个值可能就显得
太狂野了;如果 bandSize 增大,则可能显得太温顺。
默认值: 100
范围: 0 ~ 1000
noiseFactor = 100
[distanceFunction] 提供了选择用于计算距离的算法(目前仅由默认/高级湿度功能使用)。
- 值为 1 是默认值,使用 "octile" 距离,速度相当快,精度也相当高。
- 值为 0 使用 "Manhattan"(或 "taxi cab")距离,速度更快但精度稍差。
- 值为 2 使用通过斜边计算的"真实"或"欧几里得"距离,速度稍慢但提供最大精度。
- 建议保持为 1 (octile)。虽然欧几里得距离只慢大约 3%,但它看起来并没有更好——只是
“不同”。不过,如果你对湿度和气候采样器使用非常高的精度,欧几里得距离可能会提供更好的
平滑度。曼哈顿距离比 octile 快约 5%,但看起来不太好——可能会非常“嘈杂”,并且经常
“跳过”生物群系过渡。
默认值: 1
范围: 0 ~ 2
distanceFunction = 1
[dimBlacklist] 指定一个维度黑名单,以排除*所有*修改。
- 用逗号分隔。尾部逗号无所谓。
- 默认排除 the_nether 和 the_end。
- 添加 minecraft:overworld 不会起任何作用,它始终被列入白名单。
dimBlacklist = "minecraft:the_nether,minecraft:the_end,"
[dimBlacklistAsWhitelist] 为 true 时,会将上述黑名单用作白名单。
- 不需要添加 minecraft:overworld,它始终被列入白名单。
dimBlacklistAsWhitelist = false
[vanillaNoiseOverride] 用于使用类似原版的移位噪声(Shifted Noise)来覆盖基础噪声。
即与 noiseFactor 和 humidityBaseNoisePercent 一起使用的噪声。
- 默认值 1 仅在原始噪声尚不是 ShiftedNoise 类型时才替换它。推荐。
- 值为 2 将始终替换噪声。仅在你使用了一个恰好保持温度和湿度使用 ShiftedNoise 的世界
生成模组时推荐,但*不*推荐用于原版世界生成(原因见倒数第二点)。
- 值为 0 将禁用此功能。不推荐(原因见上一点)。
- 实现此功能是为了帮助为各种世界生成模组重新引入一些变化,并且通常会略微提升性能。
没有它,生物群系会变得极大且无聊,并且有时生成速度极慢。Lithosphere 是最好的例子
(尽管由于速度极慢,通常不推荐使用 Lithosphere)。
- 设置为 2(始终替换)仅推荐用于非原版世界生成,因为替换*不是*在给定相同种子的情况下
对原版噪声进行 1:1 的重新创建。
- 此功能对许多世界生成模组(如 Larion)特别有用,这些模组的原始温度/湿度噪声非常“温和”,
导致温度带极其笔直。对于某些模组,你可能需要将 noiseFactor 增加到默认值以上。
默认值: 1
范围: 0 ~ 2
vanillaNoiseOverride = 1
[algorithm1]
[algorithm1] 是温度算法 1(“标准带”算法)的设置。
- 和以前一样,这些设置仅是新世界的默认值——每个世界都会记住自己的设置。
- 此算法非常简单,会生成锯齿状的线条,单独看起来不太随机或自然,但只要保持
noiseFactor,它们看起来就相当不错。
- 保持方差较低,但 noiseFactor 值适中(大约 100 左右),将在带中产生一些看起来不错的
曲线/波浪,并带有一些随机性。但如果你想要更可预测的结果,可以降低 noiseFactor,
同时可选地增加方差。
--------
[configAlgo1BandVariance] 是带的方差(大致以方块为单位)。如果低于 10,每个带将在世界中
拥有完全笔直的边缘,并将禁用所有剩余的 algo1 功能。
- 你应该将此值保持得相当小。使其过大会导致奇怪的结果,特别是如果它太接近 bandSize。
- 如果你希望尽可能保持性能,请将此值保持为 2 的幂。
默认值: 32
范围: 0 ~ 16384
bandVariance = 32
[algo1bandVarianceSteepness] 是带方差的“陡度”。
- 单位是任意的,如果你更改它,你将需要进行试验和测试。不过,最好还是保留原样。
默认值: 0.2
范围: 0.1 ~ 10.0
algo1bandVarianceSteepness = 0.2
[humidity-world]
[humidity-world] 是特定于世界的湿度(也称为植被)设置。
- 和以前一样,这些设置仅是新世界的默认值——每个世界都会记住自己的设置。
--------
[humidityAlgorithm] 是用于湿度(也称为植被)的算法。
- 你可以在下面的各自章节中配置和了解更多关于每种算法的信息。如果你想调整设置,
建议使用 World Preview。
- 值 2(默认)使用基于与河流和/或海洋接近程度的“逼真”湿度计算。可能有点慢,但仍然
不如许多世界生成模组慢,而且(在我看来)绝对值得。
- 值 1 使用一个简单得多的“湿度带”算法,该算法生成与温度带垂直的湿度带。
- 值 0 将完全禁用湿度功能,保持原版的随机噪声湿度。
- 请注意,使用高级湿度时,某些世界生成模组可能会变得极其缓慢。例如 Lithosphere。
在这种情况下,最好使用简单湿度,或者至少关闭河流影响(Lithosphere 尤其不会生成
很多河流)。
默认值: 2
范围: 0 ~ 2
humidityAlgorithm = 2
[humidityTempWeight] 是温度对湿度的额外影响程度。
- 适用于所有湿度算法,并且是对湿度值的最终调整。
- 对于湿度算法 2(高级),它在温带(中等温度)带的较暖和较冷两侧之间引入一些生物
群系变化。
- 对于湿度算法 1(湿度带垂直于温度带),它通过收窄/加宽湿度带来施加一些角度——
当你接近寒冷带时,低湿度生物群系会变宽;当你接近炎热带时,高湿度生物群系会变宽。
- 设置为 0.0 将禁用此功能。
默认值: 0.4
范围: 0.0 ~ 1.0
humidityTempWeight = 0.4
[humidity-algorithm1]
[humidity-algorithm1] 是特定于世界的“简单”带状湿度算法设置,即与温度垂直的湿度带。
--------
[humidityAlgo1MimicScale] 将按比例缩放湿度带,相对于温度带。
- 例如,默认值 0.5 意味着湿度带的大小将是温度带的一半,而频率是温度带的两倍
(平均而言)。
默认值: 0.5
范围: 0.1 ~ 1.0
humidityAlgo1MimicScale = 0.5
[humidity-algorithm2]
[sectionHumidityAlgo2] 是特定于世界的“高级”湿度算法设置,即基于与河流和/或海洋
接近程度的湿度。
--------
[humidityResolution] 是计算给定区域与河流和/或海洋距离的精度或“分辨率”,较低的值
意味着更高的精度。
- 以平方根表示,即默认值 3 意味着每个 9x9 区域将使用相同的距离值。
- 这是一个性能与精度的选择,但默认值 3 似乎平衡得不错;低于 3 的值会开始变得
极其消耗 CPU/世界生成时间,而平滑度只有微小提升;高于 3 的值会变得有点太“粗糙”。
最大值 8(每个 64x64 区域具有相同湿度)会导致看起来傻乎乎的棋盘格效果(但速度非常快)。
- 如果你更改此值,请务必同时查看 "[climatesampler-world]" 部分的
"climateSamplerResolution" 设置——这两个设置密切相关。
默认值: 3
范围: 1 ~ 8
humidityResolution = 3
[humidityRiverInfluence] 确定河流对最终湿度值的贡献程度。
- 默认值 0.4 意味着 40% 的河流接近度将被添加到由海洋接近度确定的基础湿度中。
- 设置为 0 将禁用河流对湿度的任何影响(仅计算海洋),并带来大约 40% 的速度提升,
因为当只搜索海洋时,我们可以采取一些捷径(只需计算大陆性),但这确实使世界生成
变得乏味得多,也更不真实。
- 高于默认值的值会使生物群系放置变得非常“嘈杂”(直到接近 1.0),即在海洋和河流
距离阈值相交的区域周围散布着许多微小生物群系的“点”。默认值 0.4 也有点这种情况,
但不算过分,而且实际上还挺酷的 :)
- 值达到/超过 1.0 将有效地加倍/倍增湿度值。如果你想要一个河流比海洋贡献“更多湿度”
的世界,这可能很有用。
- 无论值如何,保持此功能启用都会消耗相同的性能成本——因此,选择使用何种影响(如果有的话)
纯粹取决于个人口味。
默认值: 0.4
范围: 0.0 ~ 5.0
humidityRiverInfluence = 0.4
[humiditySearchDistance] 是从河流和/或海洋开始,被认为是“绝对干燥”(最低湿度)的
最大距离(以方块计,在 XZ/水平轴上)。换句话说,数值越大,湿度随着与河流和/或海洋
生物群系距离的增加而下降得越慢。
- 通俗地说,这是我们从任何给定点搜索河流和/或海洋的距离,最终湿度基于
actualDistance/searchDistance。
- 值越高,CPU/世界生成时间成本越高,但可以通过增加 humidityResolution 和/或
climateSamplerResolution 来缓解,代价是世界生成质量下降(你会看到生物群系边界
更“块状”)。或者,你可以尝试调整 climatesampler-performance 设置,以可能的
CPU/RAM 负载增加为代价来提高效率,但这最终可能仍会降低吞吐量/世界生成速度。
- 默认值看起来不错,但对于创造更大陆地和/或更少河流的世界生成模组,你可能需要
增加此值。
默认值: 600
范围: 16 ~ 16384
humiditySearchDistance = 600
[humidityBaseNoisePercent] 是原始湿度噪声对计算出的基于接近度的湿度的贡献程度。
默认值 0.1 表示 10%。
- 设置为 0.0 将禁用基础噪声的使用,并提供*非常微小*的性能改进(可能甚至无法测量)。
- 这不基于湿度或采样器的分辨率,因此有助于为最终结果提供一点随机变化。
- 你可能希望将此值保持得相当低(接近 0.0)或相当高(接近 1.0),否则生物群系放置会
变得非常“嘈杂”,尽管设置较高的值可能会完全违背使用此算法的目的。
默认值: 0.1
范围: 0.0 ~ 1.0
humidityBaseNoisePercent = 0.1
[humidityMiddleWeight] 是接近最终的湿度值被拉向中心的程度。
- 默认值 0.3 可以在略微减小中等温度下极端湿度生物群系(例如黑森林)的大小的同时,
提供一些更好的生物群系过渡。
- 此调整发生在 humidityTempWeight 之前,但在所有其他因素之后。
- 设置为 0.0 将禁用此功能,尽管它不会提供任何性能优势,并且生物群系过渡将
(主观上)更差。
默认值: 0.3
范围: 0.0 ~ 1.0
humidityMiddleWeight = 0.3
[climatesampler-world]
[climatesampler-world] 是特定于世界的气候采样器设置。目前仅由湿度使用。与
climatesampler-performance 设置不同,这些设置*确实*会影响世界生成。
--------
[climateSamplerResolution] 是采样气候的精度或“分辨率”。
- 目前仅在高级湿度算法中用于海洋/河流搜索。
- 默认值 -1 表示自动,该值将是 humidityResolution 的立方。这似乎是质量和性能之间
最合理的平衡点——生物群系边界看起来很自然,并带有零星的其他生物群系斑块,这些斑块
根据附近的湿度/温度值来增加混合的趣味性。
- 将此值设置为等于 humidityResolution 将提供最大精度,但会变得*非常*消耗 CPU/世界
生成时间,不过如果你希望所有生物群系边界更平滑且轮廓分明,且最少量的生物群系“斑块”,
这可能是可取的。
- 如果你为了提高性能而提高了 humidityResolution(意味着精度降低),则手动将此值
设置为更接近新的 humidityResolution 的值,而不是保持自动,可能是有用的;这种更改
可以在不显著损失效率的情况下带来更好的整体平滑度。不过请注意,将此值设置得
低于 humidityResolution 是毫无意义的——只会毫无理由地消耗 CPU 时间。
默认值: -1
范围: -1 ~ 64
climateSamplerResolution = -1
[climateSamplerShortcuts] 如果为 true,则在气候采样期间执行一些捷径,使其更快。
- 跳过一些与海洋或河流无关的噪声计算。这导致区块生成速度提高约 200%。
- 海洋仅基于大陆性,因此我们在搜索海洋时可以完全跳过生成其他噪声。
- 河流只能使用 Valleys PV 生成(-0.05 到 +0.05 之间的奇怪噪声),因此我们首先检查
这一项,如果它不在此范围内,则提前中止。
- 温度和湿度噪声也完全跳过,因为所有海洋和河流生物群系都可以在任何温度或湿度下生成。
- 启用/禁用在技术上会导致世界生成发生变化,但这只会在极其特定的情况和微小的区域内发生。
尽管如此,它仍将保存到世界配置中。
- 强烈建议保持启用,除非你正在使用一个改变了河流和/或海洋生物群系参数的模组。
- 请注意,即使此项设置为 false,海洋的气候采样将始终通过仅检查大陆性噪声来优化,
因为这本质上是海洋与陆地的核心规则。
climateSamplerShortcuts = true
💡 提示
- World Preview 模组 允许你在创建世界之前预览设置。如果你想调整配置,强烈推荐使用。(注意:适用于 NeoForge 1.21.1 的移植版可以在 Modrinth 上找到)
- World Preview Temperature Addon 为 World Preview 添加了一个“热力图”视图,为更改后的配置提供一些重点细节。
- Biome Spawn Point 在使用一些世界生成模组(如 Tectonic 或 Larion)时可能有用,这些模组对初始世界出生点有自己的想法(而不是原点)。
⤴️ 升级
模组的新版本可能会添加新功能,这些新功能将是可配置的,但不会应用于现有世界(以避免世界生成问题)。升级的最简单方法是将配置 "copyConfigOnRecreateWorld" 设置为 false,(重新)启动 Minecraft,然后重新创建你的旧世界。然而,在某些情况下,你可能希望追溯性地将新更改应用于旧世界。以下是最简单的方法(在开始之前请务必通读本节):
- 升级到新版本的 Temperature Bands;
- 启动 Minecraft,生成一个新世界,然后保存并退出(无需退出整个游戏);
- 浏览到你实例的存档文件夹。如果你不知道怎么做,很抱歉我帮不了你——请自行网络搜索;
- 这里的每个文件夹对应你的各个世界。在里面,会有一个 'temperaturebands.prop' 文件——这是一个纯文本文件,包含该世界的温度带配置;
- 你可以“简单地”用记事本(或任何其他工具)打开这些文件,比较新生成的世界与旧世界的 prop 文件内容,然后复制粘贴适当的新行。
当然,如果你想小心行事,可以备份你现有的世界。有时,你不需要精确地复制这些行,你可能想要更改它们。你可能已经注意到,这个 prop 文件中的每一行已经对应了通常的(默认世界)配置中的一个设置,因此除非你绝对确定,否则不要更改 prop 中的任何内容。这里我将详细说明新的配置选项以及关于它们的任何提示:
2.0.0 版本
新增了配置条目 "configDimBlacklist" 和 "configDimBlacklistAsWhitelist"。你可以在上面的"用法和配置"部分阅读关于它们的信息,但它们大部分应该是不言自明的。不过,关于它们有几点重要的说明:
- "configDimBlacklist" 列出了被列入黑名单的维度,每个维度条目用逗号分隔。不要删除 '' 字符,这些是必需的。即默认的 "configDimBlacklist=minecraft:the_nether,minecraft:the_end" 是正确的。
- 如果最终你将黑名单移到了你的旧世界,你可能需要删除这些维度或区块,以便它们能正确重新生成。你可以通过删除存档文件夹内的 "DIM1" 和 "DIM-1" 文件夹来删除整个维度(请确保首先保存并退出了你的世界)。
- 如果你想要将其保留为黑名单,则并非必须复制 "configDimBlacklistAsWhitelist" 选项,因为默认值已经是 false。
- 你可以在加载进入一个世界后查看日志来验证黑名单是否生效——你会看到类似 "Using dimension blacklist: minecraft:the_nether,minecraft:the_end" 的信息(如果你将 configDimBlacklistAsWhitelist 设置为 true,则会显示 "whitelist" 而不是 "blacklist")。
✔️ 兼容性和已知问题
该模组应该与大多数世界生成器模组兼容,因为在现代 Minecraft 中,它们通常基于仍然使用原版风格温度噪声函数的数据包。这包括以下模组(已亲自测试,确认在 2.0 中有效):
- Tectonic 和/或 Terralith;
- Larion World Generation;
- Lithosphere;
……只要它们仍然使用名为 "temperature" 和 "humidity" 的 DensityFunctions,大多数世界生成模组应该都能正常工作。不过请注意,默认的模组配置可能不适用于某些模组——请阅读配置注释以了解详细信息。最值得注意的是 vanillaNoiseOverride。
以下是不兼容的世界生成模组的例子,因为它们完全用自己的系统取代了 Minecraft 的生成(即它们不使用原版 NoiseRouter 和/或原版 DensityFunctions):
- TerraFirmaCraft;
不会为这些不兼容的模组添加支持。请报告任何其他未提及的问题,以便我改进模组 😁
其他模组
- C2ME 是受支持的,至少在我对最新版本模组(NeoForge 和 Fabric 的 0.4.x+ 版本)的测试中是如此。但是,被遗弃的和过时的 C2ME 分支(例如 Forge 1.20.1 的 0.2.x 版本)无法支持高级湿度——你可能会遇到极其缓慢的世界生成速度。要么移除 C2ME,要么禁用高级湿度以恢复正常运行。
🛎️ 支持
希望这个模组足够简单易用,但我们鼓励你:
- 报告你发现的任何错误;
- 报告与其他模组的任何不兼容问题;
- 请求任何你想要看到的功能
……以便我继续改进模组 😊 请务必说明你的加载器(例如 Forge、Fabric)和 Minecraft 版本!
⁉️ 常见问题解答 / 故障排除
问:我可以在我的整合包中使用这个模组吗?
答:当然可以!只要你能想着报告任何模组兼容性问题,以及功能/配置请求 😁
问:这个模组会减慢世界生成速度吗?
答:会,也不会。如果你关闭了高级湿度,性能影响可以忽略不计。如果你正在使用高级湿度,它会稍微慢一点,但在现代 Minecraft 中,这种初始噪声生成和生物群系放置是高度多线程化的,并且在实际游戏过程中很少会成为瓶颈。区块生成的最后阶段——装饰和雕刻——通常是瓶颈,因为最后一部分仍然在主(服务器)线程上运行。在我的 3900X 上的 World Preview 中,我仍然能够达到每秒超过 15000 个区块。不过,如果你希望它更快,请看下一个问题。
问:我能让 World Preview 更快吗?
答:可以,假设你保持启用高级湿度,这是导致速度变慢的主要原因。在 World Preview 设置菜单(预览选项卡上的扳手图标)中,转到 "Resolution" 选项卡并更改底部栏 "samples per chunk" 为最大值(最右边)。预览会变得稍微像素化一些,但这会显著提高速度。
问:“气候采样器预热中”屏幕(或服务器上的世界加载)耗时太长,如何加快速度?
答:更新到版本 2.1.0。由于 2.1.0 中的重大优化,气候采样器预热和预取已不复存在。
问:X 世界生成模组兼容吗?
答:如果它只添加新的生物群系,是的。如果它实际上改变了世界生成,并且没有在上面的兼容性部分列出,很可能——试试看!欢迎报告你的结果 😊 请记住,你可以使用 World Preview 模组来加快测试速度,尽管在撰写本文时它仅适用于 1.20.x(在 Modrinth 上也有适用于 NeoForge 1.21.1 的非官方移植版)。当给定维度的温度/湿度函数替换成功或失败时,你应该会看到日志
正在加载版本记录…



正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。