跳到正文
烈焰甘蔗Wiki

配置(Configuration)

基本信息

属性 值
处理类 com.gtnewhorizon.structurelib.ConfigurationHandler(单例枚举 INSTANCE)
配置文件 FML 建议路径下的 structurelib.cfg
配置版本 ConfigurationVersion,当前仅 V1
配置 GUI guiFactory = com.gtnewhorizon.structurelib.GuiFactory

ConfigurationHandler 是枚举单例,在 preInit 中用 e.getSuggestedConfigurationFile() 初始化,随后读取全部选项并调用 setLanguageKeys 为每个分类和条目设置语言键(形如 structurelib.config.<分类>.<选项>)。

订阅了 ConfigChangedEvent.PostConfigChangedEvent,在游戏内改配置后会重新 loadConfig() 完整重载。

配置项

分类 键 类型 默认值 范围
client.hologram maxCoexisting int 1 1 – 100
client.hologram removeColliding boolean true —
client.hologram hintLifespan int 400 1 – 20000
client.hologram hintTransparency int 192 1 – 255
common.hologram autoPlaceBudget int 25 1 – 200
common.hologram autoPlaceInterval int 300 0 – 20000

client.hologram

  • maxCoexisting(最大共存全息数):一次右键产生的所有提示算作一组"全息",该值限制屏幕上同时存在的组数。新全息即将生成时若已超限,会尝试裁剪旧的全息组。
  • removeColliding(移除相交全息):为 true 时,若新全息与既有全息位置重复,会移除既有的一组。
  • hintLifespan(提示存活时间):单位为游戏 tick。ClientProxy.onClientTick 每 tick 末尾用 当前玩家 ticksExisted - hintLifespan 作为截止时间,清理 allGroups 中创建时间早于该值的全息组。
  • hintTransparency(提示透明度):全息立方体渲染时的 alpha 值,取值 1–255。数值越大越"实",越小越通透。渲染时还会乘以一组按通道区分的系数(红 ×0.9、绿 ×0.95、蓝 ×1.0)。

common.hologram

这两项是服务端/客户端共用的设置,配置文件注释明确指出服务端设置会覆盖客户端设置。

  • autoPlaceBudget(单轮自动放置预算):一次自动放置轮次中最多放置的结构元素数量上限,范围 1–200,默认 25。IConstructable 的实现者可以为过大的结构自行上调,但源码注释建议不要设成四位数,以免压垮服务端。
  • autoPlaceInterval(自动放置间隔):两次自动放置轮次之间的最小间隔,单位是毫秒(墙上时钟),不是游戏 tick,范围 0–20000,默认 300。ConstructableUtility 用 System.currentTimeMillis() - 上次使用时刻 与该值比较,未达间隔时拒绝执行并提示 Please wait %d milliseconds before another autoplace...。该值没有下界保护设为 0 的语义,源码注释指出小于默认值时玩家基本感觉不到间隔。

registries.<注册表名> 分类

除固定分类外,配置加载时还会为每个已注册的 SortedRegistry 动态生成一个 registries.<name> 分类,每个分类包含两个字符串数组选项:

键 类型 默认值 含义
ordering String[] 注册表当前的自然顺序 显式排序,未列出的条目按自然顺序追加在后面
disabled String[] 空 列入的条目被禁用

加载时会做一次合并清理:从 ordering 中剔除同时出现在 disabled 里的键,并丢弃 ordering 中已不在注册表里的陈旧键,再把剩余的自然顺序条目追加到末尾。

客户端会为这些分类设置自定义配置项类 RegistryOrderEntry,从而在游戏内配置 GUI 中以可拖拽的列表呈现。改动会通过 RegistryOrderSyncMessage 同步到服务端。

本 mod 自带的注册表见 /sl_registry_debug。

相关条目:SortedRegistry 排序注册表、提示渲染系统、多方块构造机制。

浏览全部模组