配置文件

基本信息

属性 值
读取类 com.gtnewhorizons.gravisuiteneo.common.Properties
读取时机 父模组 GraviSuite.preInit 中途(见下方「配置宿主」)
有效选项数 64
仅写注释项 21(只 setComment、从未被读取)

配置宿主:写进父模组的配置文件

本 mod 没有自己的配置文件。Properties.init(config) 由 Mixin 注入到父模组的配置加载点:

@Inject(at = @At(opcode = PUTSTATIC, target = "logWrench:Z", value = "FIELD"),
        locals = CAPTURE_FAILEXCEPTION, method = "preInit", remap = false)
private void gravisuiteneo$getProperties(FMLPreInitializationEvent event,
                                        CallbackInfo ci, Configuration config) {
    Properties.init(config);        // MixinGraviSuite_General.java:46-53
}

注入点是父模组 GraviSuite.preInit 里字段 logWrench 被赋值的瞬间,config 参数是父模组自己的 Configuration 实例。因此本 mod 的全部配置键都写进 GraviSuite 的配置文件,文件名由父模组决定(本仓库不含父模组源码,无法从本仓库确定)。

⚠️ 后果:卸载本 mod 不会清理这些配置项;删掉 GraviSuite 的配置文件会同时丢掉 GSN 的设置。

Recipes settings(3 项,Properties.java:35-37)

键 类型 默认 作用
Disable Basic recipes boolean false 不由本 mod 使用;被 mixins/MixinGraviSuite_Recipes.java:68、:81 读取,用来摘掉父模组的基础配方
Disable EpicLappack recipe boolean false 关闭史诗镐之背包配方
Disable Nanobot recipe boolean false 关闭纳米机器人配方(4 个 GraviSuite.itemSimpleItem meta 7)

armor presets(4 项)

ArmorPresets 只有 4 个护甲,每项 1 个 absorptionRatio(Properties.java:39-41、:95-106),分类路径为 armor presets: + Configuration.CATEGORY_SPLITTER + 枚举名:

分类 键 默认 范围
armor presets:AdvJetPack absorptionRatio 0.0 0.0 – 1.0
armor presets:AdvLapPack absorptionRatio 0.0 0.0 – 1.0
armor presets:AdvNanoChestPlate absorptionRatio 0.36 0.0 – 1.0
armor presets:GraviChestPlate absorptionRatio 0.44 0.0 – 1.0

⚠️ 分类名 armor presets 里含空格。配置注释把 armor piece 拼成 “armor pieve”(:102)。

electric presets(48 项 = 12 × 4)

ElectricPresets 有 12 个预设(数值见分类页总表),每个预设 4 个键,分类路径为 electric presets:<枚举名>(Properties.java:137):

键 类型 范围 源码
EnergyPerOperation int 0 – Integer.MAX_VALUE :139-145
MaxCharge int 0 – Integer.MAX_VALUE :147-153
Tier int 0 – 14 :155
TransferLimit int 0 – Integer.MAX_VALUE :157-162

枚举构造签名是 (maxCharge, tier, transferLimit, energyPerOperation)(:129),但写盘顺序是 EnergyPerOperation → MaxCharge → Tier → TransferLimit——两者不同。

MaxCharge / Tier / TransferLimit 通过 MixinGraviSuite_General 的 @ModifyArgs 回写到父模组的镐之背包等物品构造器(:62-79)。

additional tweaks(9 项,Properties.java:215-286)

键 类型 默认 范围 作用
MaxToolLevelAvailable int 3 0 – 999 工具等级上限;仅当装了 Tinkers / Iguana 时影响工具提示(:216-222)
EpicLapPackChargeTickChance int 10 1 – 999 史诗镐之背包 扫描背包的间隔(1 = 每 tick,20 ≈ 每秒)
xpGainFactor int 10000 1 – 150000000 父模组 XP 池基数,公式 xpGainFactor * (currentLevel + 1)²(:232-238)
hoverModeFallSpeed float 0.0f 0.0 – 1.0 高级喷气背包悬停模式的最大下落速度(父模组默认 0.03)(:240-246)
PlasmaLauncherFluids String[] [](空) — 等离子流体效率表,格式 流体名:效率(:248-252)
AdvChainsawAdditionalMineableBlocks String[] 6 条(见下) — 追加可挖掘方块(:254-259)
AllowedShieldHelmets String[] 4 条(见下) — 可替代量子头盔的物品(:261-269)
AllowedShieldLeggins String[] [](空) — 可替代量子护腿的物品(键名 “Leggins” 是源码拼写,:271-277)
AllowedShieldBoots String[] 1 条(见下) — 可替代量子靴子的物品(:279-285)

列表默认值

AdvChainsawAdditionalMineableBlocks(:257-258):

minecraft:leaves, minecraft:wool, minecraft:melon_block,
minecraft:cactus, minecraft:snow, IC2:blockRubLeaves

AllowedShieldHelmets(:265-267):

AdvancedSolarPanel:hybrid_solar_helmet, AdvancedSolarPanel:ultimate_solar_helmet,
EMT:QuantumGogglesRevealing, EMT:SolarHelmetRevealing

AllowedShieldBoots(:283):

EMT:QuantumBootsTraveller

⚠️ PlasmaLauncherFluids 出厂默认就是空列表,所以等离子流体效率表在纯净环境下完全为空。ItemPlasmaCell.fill 又拒绝装入效率 < 1 的流体(items/ItemPlasmaCell.java:77),而唯一能让表非空的配置入口 PlasmaLauncherFluids 因为 split(":", 1) 缺陷读不进来(见分类页「已知源码缺陷」第 1 条)——三处叠加后,除非装了 GregTech 并让代码走 GraviSuiteNeoRegistry.java:93-95 从 GT API 取流体,否则等离子炮 不可用。

三个 AllowedShield* 默认值引用 AdvancedSolarPanel 与 EMT(Electro Morphitics Technology),两者都不是硬依赖。

仅写注释、从未被读取的 21 项

以下键只在 config.getCategory(...).get(...).comment = ... 里出现(Properties.java:50-76),全仓库无任何读取点——会写进配置文件但不产生效果:

分类 键 数量
hud settings Display hud、hudPosition 2
Recipes settings Disable Advanced Chainsaw recipe、Disable Advanced Dimond Drill recipe、Disable Advanced Jetpack recipe、Disable Advanced NanoChestPlate recipe、Disable AdvancedLappack recipe、Disable GraviChestPlate recipe、Disable GraviTool recipe、Disable Relocator recipe、Disable UltimateLappack recipe、Disable UltimateSolarHelmet recipe、Disable Vajra recipe 11
relocator settings Disable portal mode、Disable translocator mode、relocatorEnergyPerDimesionTp、relocatorEnergyPerPortal、relocatorEnergyPerStandartTp、relocatorEnergyPerTranslocator 6
sounds settings Disable all sounds 1
vajra settings Disable Vajra accurate mode 1

这些是预留项(relocator 传送耗能在父模组侧计算,本 mod 未接管)。relocatorEnergyPerDimesionTp 把 Dimension 拼成 “Dimesion”,Disable Advanced Dimond Drill 把 Diamond 拼成 “Dimond”。