Disclaimer:
Please note: The analysis, coordinate calculations, and the patch provided below were co-authored and generated with the assistance of an AI (Gemini), based on my manual troubleshooting, log readings, and geometric testing in-game.
Bug Description & Symptoms:
I have been experiencing a game-breaking issue with the FreeIVA implementation for the stock Mobile Processing Lab (MPL-LG-2, part name: Large_Crewed_Lab), when used with a ton of mods, FOR WEEKS.
Bug Observation: The top hatche is permanently blocked. Others is avaliable to been opened, but still buggy. If it is not connected to a node, it can be used to go outside with IVA. If it is connected to a node, the opposite hatch is blocked.
Error Log:
Error: [FreeIva] INTERNAL 'Mobile_Processing_Lab_Int' contains PROP 'FreeIva_Hatch_Round_Size0' with attachNodeId 'node_stack_top' but it was not found in PART 'Large_Crewed_Lab'
Root Cause Analysis:
After digging into the ModuleManager.ConfigCache, we discovered this maybe the causes:
"Shared INTERNAL" Pollution (The Culprit):
The root of the problem is that Mobile_Processing_Lab_Int is not exclusive to the stock MPL-LG-2. Several other mods have "stolen" or reused this exact internal space for their own entirely different parts. Specifically, this INTERNAL is shared across at least 5 different parts in my install:
The stock lab itself (Large_Crewed_Lab)
WarpPlugin (KSP Interstellar Extended): kspieIXSScienceLab (WarpPlugin/Parts/Command/IXSModuleSciencelab/sciencelab.cfg)
WarpPlugin (KSP Interstellar Extended): kspiDSD1 (WarpPlugin/Parts/Command/DSD/DSD.cfg)
Cormorant Aeronology: spacelab (Cormorant Aeronology/Assets/SPT/Spacelab/Spacelab.cfg)
Cormorant Aeronology: spacelab_Short (Cormorant Aeronology/Assets/SPT/Spacelab/Spacelab_Short.cfg)
Gemini said:
Because these external parts have completely different physical dimensions and node naming conventions, FreeIVA’s auto-detection algorithm experiences severe cross-talk. It attempts to map the node logic of one part onto the MPL, resulting in ghost errors like looking for node_stack_top when the compiled node is simply top.
(I have no idea this is true or false, but the solution worked.)
(Gemini also mentioned something about rotation here, but I believe these are totally non-sense.)
The Solution (Tested & Working):
I vibe-coded a .cfg to fix MPL-LG-2. I don't care about the other modded labs take part in this, so it's effect on them is not tested.
Here is the working MM patch that fixes the MPL-LG-2:
// 1. Clone the shared INTERNAL and make it exclusive to the stock MPL
+INTERNAL[Mobile_Processing_Lab_Int]:FINAL
{
@name = Mobile_Processing_Lab_Int_FixedForMPL
// 2. Map Z-axis hatches (3m distance) to the length of the lab (top/bottom nodes)
@PROP[FreeIva_Hatch_Round_Size0]:HAS[#position[0,?0,?1.5]]
{
%attachNodeId = top
}
@PROP[FreeIva_Hatch_Round_Size0]:HAS[#position[0,?0,?-1.5]]
{
%attachNodeId = bottom
}
// 3. Map Y-axis hatches (2.33m distance) to the width of the lab (airlock nodes)
@PROP[FreeIva_Hatch_Square]:HAS[#position[0,?1.16533005,?0]]
{
%attachNodeId = airlockR
}
@PROP[FreeIva_Hatch_Square]:HAS[#position[0,?-1.16532791,?0]]
{
%attachNodeId = airlockL
}
}
// 4. Redirect the stock lab to use the fixed INTERNAL
@PART[Large_Crewed_Lab]:FINAL
{
@INTERNAL
{
@name = Mobile_Processing_Lab_Int_FixedForMPL
}
}
I hope this report is worth reading for you :>
Disclaimer:
Please note: The analysis, coordinate calculations, and the patch provided below were co-authored and generated with the assistance of an AI (Gemini), based on my manual troubleshooting, log readings, and geometric testing in-game.
Bug Description & Symptoms:
I have been experiencing a game-breaking issue with the FreeIVA implementation for the stock Mobile Processing Lab (MPL-LG-2, part name: Large_Crewed_Lab), when used with a ton of mods, FOR WEEKS.
Bug Observation: The top hatche is permanently blocked. Others is avaliable to been opened, but still buggy. If it is not connected to a node, it can be used to go outside with IVA. If it is connected to a node, the opposite hatch is blocked.
Error Log:
Error: [FreeIva] INTERNAL 'Mobile_Processing_Lab_Int' contains PROP 'FreeIva_Hatch_Round_Size0' with attachNodeId 'node_stack_top' but it was not found in PART 'Large_Crewed_Lab'Root Cause Analysis:
After digging into the ModuleManager.ConfigCache, we discovered this maybe the causes:
"Shared INTERNAL" Pollution (The Culprit):
The root of the problem is that Mobile_Processing_Lab_Int is not exclusive to the stock MPL-LG-2. Several other mods have "stolen" or reused this exact internal space for their own entirely different parts. Specifically, this INTERNAL is shared across at least 5 different parts in my install:
The stock lab itself (Large_Crewed_Lab)
WarpPlugin (KSP Interstellar Extended): kspieIXSScienceLab (WarpPlugin/Parts/Command/IXSModuleSciencelab/sciencelab.cfg)
WarpPlugin (KSP Interstellar Extended): kspiDSD1 (WarpPlugin/Parts/Command/DSD/DSD.cfg)
Cormorant Aeronology: spacelab (Cormorant Aeronology/Assets/SPT/Spacelab/Spacelab.cfg)
Cormorant Aeronology: spacelab_Short (Cormorant Aeronology/Assets/SPT/Spacelab/Spacelab_Short.cfg)
Gemini said:
Because these external parts have completely different physical dimensions and node naming conventions, FreeIVA’s auto-detection algorithm experiences severe cross-talk. It attempts to map the node logic of one part onto the MPL, resulting in ghost errors like looking for node_stack_top when the compiled node is simply top.(I have no idea this is true or false, but the solution worked.)
(Gemini also mentioned something about rotation here, but I believe these are totally non-sense.)
The Solution (Tested & Working):
I vibe-coded a .cfg to fix MPL-LG-2. I don't care about the other modded labs take part in this, so it's effect on them is not tested.
Here is the working MM patch that fixes the MPL-LG-2:
I hope this report is worth reading for you :>