跳到主要内容

配置说明

config.yml 负责全局语言、全息高度、燃料耗尽超时和放置状态存储。

config.yml

默认值说明
language.defaultzh_cn默认语言文件
hologram.height1.5全息文字相对锅具的高度
cooking.fuel_out_timeout60燃料耗尽后,锅具进入失败判定前的秒数
database.typesqlite放置状态存储类型
database.flush_interval10异步刷盘间隔,单位秒
database.tablematrixcook_placed_cookersSQL 表名
database.sqlite.filedata/matrixcook.dbSQLite 文件路径
database.mysql.*见默认配置MySQL 连接参数
database.redis.*见默认配置Redis 键空间与连接参数

存储类型

当前代码支持 4 种放置状态存储:

类型说明
sqlite默认选项,单机最省事
mysql多服或外部数据库环境可用
redis运行态快照写入 Redis key
yaml兼容旧版 data/placed_cookers.yml

需要注意的是,存储后端只负责“已放置锅具”的运行态数据,不负责锅具、配方、燃料这些静态配置。

旧版数据迁移

如果当前配置使用的存储后端还是空的,而 plugins/MatrixCook/data/placed_cookers.yml 存在,ConfigManager 会尝试把旧 YAML 数据迁移到新的后端,然后把旧文件改名为 .migrated

自动保存

放置状态不会每次都同步写盘,而是通过:

  • 配置变更后的强制持久化
  • 周期性自动刷盘
  • 服务器关闭前的同步落盘

这也是 database.flush_interval 存在的原因。