Skip to content

配置文件格式

Tritium Configuration 读写近似 TOML 的“节 + 键值”格式,但解析器是定制实现(ConfigParser)。

文件位置

  • 默认:config/<modId>/<filename>.toml
  • 通过 TritiumConfig#filename(String) 可修改文件名(不含扩展名)

基本结构

  • 注释:以 # 开头的行会被忽略
  • 节(Section):[section],通常对应配置类的顶层字段
  • 键值:key = value
  • 字符串:必须使用双引号包裹
  • 列表:仅支持字符串列表,例如:["a", "b"]

示例:

toml
# your_mod Configuration
# Generated by TritiumConfig
# Environment: client
# Client-only sections will not be generated on server side

[general]
## Enabled
enabled = true

## Max Entities
maxEntities = 64

## Mode
mode = "SIMPLE"

#-------------------------
# 客户端
#-------------------------

## whitelist
whitelist = ["minecraft:player", "minecraft:villager"]

类型与解析细节

  • boolean:true/false,亦兼容(不区分大小写)t/1/yes/y
  • int/long/double:去空格后按对应数值类型解析;解析失败回退默认值并记录警告
  • enum:从字符串解析,大小写不敏感(按 Enum.name() 匹配)
  • List<String>:支持 [...] 或单值行(自动包装为单元素列表)

扁平化键与子分类

子分类会展开为“点分路径”的键:<section>.<sub>.<field>。保存时库会按节分组并插入注释、水平线。

config_version 说明

  • 初次生成的文件默认不包含 config_version
  • 当存在迁移时,迁移器会写入 config_version = <新版本>
  • 注意:默认迁移写入的文件是“纯键值列表”,不会保留原先的分节结构。
    • 如需恢复美观的分节格式,可在迁移后调用一次 save()(例如打开 UI 并保存)