配置文件

基本信息

属性 值
配置类 com.cardinalstar.cubicchunks.CubicChunksConfig
注册方式 GTNHLib ConfigurationManager.registerConfig(CubicChunksConfig.class)(CubicChunks.java:128)
@Config 声明 modid = CubicChunks.MODID、category = "general"(CubicChunksConfig.java:42)
可配置键数量 18(@Config.LangKey 计数 18)
被忽略字段 4 个(@Config.Ignore 计数 4)
重复键声明 无(对 18 个 LangKey 去重后无重复)

功能

配置通过 GTNHLib 的 @Config 体系声明,配置文件由模组自动生成,GUI 由 GTNHLib 依据 @Config.LangKey 自动搭建——这正是 en_US.lang 中 cubicchunks.config.* 系列语言键的用途。

init() 依次执行 validateConfigValues() 与 initDimensionalConfiguration()(CubicChunksConfig.java:168-171):前者把非 16 倍数的高度强制取整(:173-188),后者解析维度高度覆盖与填充块配置(:190-280),格式非法抛 ConfigException。

数值

18 个配置键及默认值:

配置键 类型 默认值 来源行
cubicchunks.config.filler_blocks String[] {"0:bottom:minecraft:stone", "0:top:minecraft:air", "-1:both:minecraft:netherrack", "1:both:minecraft:air"} CubicChunksConfig.java:62-63
cubicchunks.config.dimensional_height_limits String[] {"0:bottom:-64"} :77
cubicchunks.config.vert_view_distance int 8 :82
cubicchunks.config.enable_chunk_debugging boolean false :86
cubicchunks.config.relight_checks_per_tick_per_column int 0 :92
cubicchunks.config.do_client_light_fixes boolean false :97
cubicchunks.config.storage_format String ""(空=自动判定) :102
cubicchunks.config.spawn_generate_distance_horizontal int 12 :106
cubicchunks.config.spawn_generate_distance_vertical int 8 :110
cubicchunks.config.spawn_forceload_distance_horizontal int 8 :114
cubicchunks.config.spawn_forceload_distance_vertical int 8 :118
cubicchunks.config.default_min_height int 0 :123
cubicchunks.config.default_max_height int 1073741824(1 << 30) :128
cubicchunks.config.worldgen_watchdog_time_limit int 10000 :133
cubicchunks.config.use_shadow_paging_io boolean true :139
cubicchunks.config.disable_lighting boolean false :143
cubicchunks.config.optimizations Optimizations 子对象 嵌套 :153
cubicchunks.config.optimizations.background_threads int 可用处理器数 / 2 :159-160

带 @Config.RequiresWorldRestart 的只有 use_shadow_paging_io(:138);带 @Config.RangeInt 的只有 default_min_height(:122)与 default_max_height(:127)。

外部读取者验证(声明 → 赋值 → 实际读取)

逐项核对「有外部读者」而非仅看同类引用:

键 外部读取点
use_shadow_paging_io server/chunkio/RegionCubeStorage.java:68 依据它选择 ShadowPagingRegion
verticalCubeLoadDistance api/compat/CubicChunksVideoSettings.java:16 读取,:20 经 setVerticalViewDistance 回写并 ConfigurationManager.save(CubicChunksConfig.java:283-286)
defaultMaxCubesPerChunkloadingTicket @Config.Ignore,静态块在 :165 写入 modMaxCubesPerChunkloadingTicket
其余键 由 GTNHLib 配置框架与 initDimensionalConfiguration() 消费

4 个 @Config.Ignore 字段为:configuredDimensionalFillerMap(:46)、configuredDimensionalHeightMap(:66)、defaultMaxCubesPerChunkloadingTicket(:146)、modMaxCubesPerChunkloadingTicket(:149)——它们是由配置文件解析后填充的派生状态,不直接暴露为配置项。

交互

触发 行为
首次启动 GTNHLib 自动生成配置文件(general 分类)
改 default_min_height / default_max_height 为非 16 倍数 启动时自动向下取整并记录错误
改 filler_blocks / dimensional_height_limits 为非法格式 启动即抛 ConfigException
改 use_shadow_paging_io 需重启世界生效
GUI 拖动垂直视距滑块 回写 verticalCubeLoadDistance 并保存(见 垂直视距)

相关条目