配置文件
基本信息
| 属性 | 值 |
|---|---|
| 读取类 | 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”。