海洋控制参数(Ocean Control Parameters)
基本信息
| 属性 | 值 |
|---|---|
| 配置分类 | Ocean Control Parameters |
| 源码位置 | climateControl/api/ClimateControlSettings.java:236-263 |
| 设置项数量 | 7 |
| 配置载体 | Forge Configuration,写入 config/climatecontrol.cfg |
| 作用对象 | 大陆/岛屿种子频率与陆块合并规则,不是方块/物品 |
功能
Ocean Control Parameters 分类(oceanControlCategory)控制世界的海陆格局:各种大小的陆块种子被播撒的频率,以及陆块之间是否允许合并。分类说明原文(ClimateControlSettings.java:238-240):
Frequencies are x per thousand but a little goes a very long way because seeds grow a lot. SeparateLandmasses = true makes an oceanic world with these settings and SeparateLandmasses = false makes a continental world
要点:
- 频率单位是千分之一(x per thousand);由于种子会生长扩大,少量频率就能形成大片陆地
SeparateLandmasses = true→ 海洋型世界;false→ 大陆型世界(同一份频率设置,两种结果)
该分类与 GenLayer 生成栈 中的 GenLayerAddIsland / GenLayerRemoveTooMuchOcean / GenLayerLessRiver 配合:频率经由 GenLayerAddIsland(各 seed 编号对应不同尺寸档位)播撒为岛屿,GenLayerRemoveTooMuchOcean(seed 2)再削减过多海洋。
数值
| 设置项(配置键) | 字段 | 类型 | 默认值 | 说明(源码原文/摘要) |
|---|---|---|---|---|
Incidence of Continents,Large |
largeContinentFrequency |
Integer | 40 |
大陆种子频率,约 8000×16000 |
Incidence of Continents,Medium |
mediumContinentFrequency |
Integer | 100 |
中陆种子频率,约 4000×8000 |
Incidence of Continents,Small |
smallContinentFrequency |
Integer | 60 |
小陆种子频率,约 2000×4000 |
Incidence of Islands,Large |
largeIslandFrequency |
Integer | 30 |
大岛种子频率,约 500×1000 |
Incidence of Islands,Medium |
mediumIslandFrequency |
Integer | 15 |
中岛种子频率,约 250×500;容易碎裂成群岛 |
SeparateLandmasses |
separateLandmasses |
Boolean | true |
大部分情况下阻止陆块合并;默认设置下 true = 海洋世界,false = 大陆世界 |
Land Expansion Rounds |
landExpansionRounds |
Integer | 1 |
海洋型世界(separateLandmasses 关闭时)的大陆与大岛扩张轮数;越大陆地越大、海洋越窄 |
字段声明见 ClimateControlSettings.java:242-263;显示名常量见同文件 :37-41、:58、:74。
交互
separateLandmasses是本分类的总开关:其说明(:254-258)明确 “True mostly stops landmasses merging”,并据此决定世界类型。landExpansionRounds的说明限定 “in oceanic worlds (with separateLandmasses off)”(:262),即字面意义上只在大陆型世界(separateLandmasses 关闭)路径上生效。- 各频率最终被
GenLayerAddIsland的构造 seed 划分档位消费,见generator/VanillaCompatibleGenerator.java:59-66(依次传入 seed 1、2、50、70、3)。 - 调整本分类会改变未生成区块的地形。
GenLayerRemoveTooMuchOcean(seed 2,VanillaCompatibleGenerator.java:64)负责削减过多海洋。
相关条目
- 气候带参数 - 决定气候带尺寸
- GenLayer 生成栈 - 频率设置的实际消费点
- 世界类型接管 - 决定 CC 是否对该世界类型生效