re: the Phase_1/2/3 block of the settings family -- mostly per stage, not per phase

72 records, 94 distinct field names, 31 in every one (post-processing core, five
Fog*, three ScreenColor*, SpaceSize, five Supply*, UnderCommandSquadron, the
first BGOperate slot).  Optional families sit in clean tiers: Nebura_* and
ColorLayer* in 69/72, DOF_*/UnsharpMask_*/ExposureKey_* in 15/72, FinalPass* in
3/72.

REFUTED: BGOperateFrameCount is NOT the number of BGOperateFrameName_i slots --
36 of 72.  What holds is Count <= slots, 72/72: a fixed slot array with a live
count, the same shape as MessageCount under the 32-slot clamp.

68 of the fields common to all three phases NEVER differ in any of the 24
objects.  The phase block is a per-stage environment block copied three times;
what a phase change is actually for is the backdrop animation (BGOperate*) and
the supply/command squadron assignment.

MapPath is not in this family -- its 87 records per pack are 29 x 3, the
resource manifest's Phase_N.

Also fixed a non-determinism the verify loop caught: most_common() over a set
iteration ordered ties differently per run; now sorted by (-count, name).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PMRJjbxLqZtsb5Vb7KunPE
This commit is contained in:
Claude (auto)
2026-08-27 18:50:27 +00:00
parent 26b7728ceb
commit 5f764458cd
5 changed files with 177 additions and 7 deletions

View File

@@ -124,6 +124,41 @@ the rest of the settings object (24 objects):
PlayerShieldDamageAdjustment 1 distinct 1.0=24
ShieldDamageAdjustment 2 distinct 0.5=23 1.0=1
the Phase_1/2/3 block (72 records over 24 objects):
distinct field names : 94
present in EVERY record : 31
BGOperateFrameCount BGOperateFrameName_0 BGOperateScale_0 BloomScale BrightPassOffset BrightPassThreshold Brightness Contrast ExposureKeyValue FirstAdaptedLuminance FogLinear FogMaxAmount FogMaxDistance FogMinAmount FogMinDistance GlareType Hue LuminanceMax LuminanceMin Saturation ScreenColorB ScreenColorG ScreenColorR SpaceSize StarScale SupplyMovie1ID SupplyMovie2ID SupplyRange SupplySquadron1 SupplySquadron2 UnderCommandSquadron
field-count histogram : {31: 3, 58: 28, 59: 24, 61: 1, 62: 1, 77: 6, 78: 6, 90: 3}
BGOperateFrameCount == slots: 36/72 (REFUTED)
BGOperateFrameCount <= slots: 72/72
slot histogram {1: 3, 4: 67, 5: 2} ; Count histogram {1: 9, 2: 14, 3: 16, 4: 31, 5: 2}
fields that DIFFER between phases (of 24 objects):
BGOperateFrameName_0 6
SupplySquadron1 5
BGOperateFrameCount 3
BGOperateFrameName_2 3
BrightPassOffset 3
BrightPassThreshold 3
Brightness 3
ColorLayerA 3
FirstAdaptedLuminance 3
UnderCommandSquadron 3
BGOperateScale_2 2
BloomScale 2
ColorLayerG 2
ColorLayerR 2
Contrast 2
GlareType 2
LuminanceMax 2
StarScale 2
SupplyMovie1ID 2
BGRotateScale_2 1
FogMaxAmount 1
SpaceSize 1
SupplyMovie2ID 1
fields that NEVER differ between phases: 68
AfterimageScale BGAnimation_0 BGAnimation_3 BGOperateFrameName_1 BGOperateFrameName_3 BGOperateScale_0 BGOperateScale_1 BGOperateScale_3 BGRotateScale_0 BGRotateScale_1 BGRotateScale_3 CCDLuminance ColorLayerB ContrailFirstCullingOff DOF_Enable DOF_FarAmount DOF_FarClip DOF_FarFocal DOF_NearAmount DOF_NearClip DOF_NearFocal ExposureKeyValue ExposureKey_BeginTime ExposureKey_BeginValue ExposureKey_EndTime ExposureKey_EndValue FinalPassBB FinalPassBG FinalPassBR FinalPassDB FinalPassDG FinalPassDR FinalPassDesaturation FinalPassToneRatio FinalPassType FinalPassVinetting FinalPassVinettingSharpness FogLinear FogMaxDistance FogMinAmount FogMinDistance Hue LuminanceMin Nebura_Count Nebura_EmitterRadius Nebura_EmitterRadiusJitter Nebura_MiddleAmount Nebura_MiddleFar Nebura_MiddleNear Nebura_NearAmount Nebura_NearClip Nebura_ResourceName Nebura_Size Nebura_SpeedLimit Nebura_SpeedScale Saturation ScreenColorB ScreenColorG ScreenColorR SupplyRange SupplySquadron2 UnsharpMask_B UnsharpMask_Far UnsharpMask_G UnsharpMask_Luminance UnsharpMask_Near UnsharpMask_Offset UnsharpMask_R
the commonest Normal record:
CraftScore_Adjustment 1.0
FFPenalty_Craft_Basis 1.0