-
Notifications
You must be signed in to change notification settings - Fork 266
Description
MechJeb Version
2.15.1
KSP Version
1.12.x (tested on 1.12.4)
Description
All MechJeb features are immediately unlocked in Career mode, regardless of technology tree progress. The unlockTechs configuration is being completely ignored, making all modules available from the start of a new career game.
Root Cause: The bug possibly was introduced in commit 00891f80 (2023-06-19) "ComputerModule breaking API changes" when the UnlockCheck() method logic was refactored.
Before (v2.14.3 - working correctly):
public virtual void UnlockCheck()
{
if (!unlockChecked) // Only execute if not checked yet
{
bool unlock = true;
if (ResearchAndDevelopment.Instance != null)
{
// Check technologies...
}
unlockChecked = true; // Only set inside the block
}
}Replication Case
- Install MechJeb 2.15.1
- Start a new Career mode game (Normal difficulty)
- Launch any vessel with a command pod (e.g., basic Mk1 Command Pod)
- Open MechJeb menu
- Expected: Only basic features should be available based on
unlockTechsconfiguration (e.g., only Smart A.S.S. and Custom Window Editor ifflightControltech is unlocked) - Actual: All MechJeb features are immediately available (Ascent Guidance, Landing Guidance, Docking Autopilot, etc.) even though the required technologies are not researched
Note: The technology tree correctly shows that MechJeb-related technologies are locked, but MechJeb itself ignores these restrictions.
Workaround: Downgrade to MechJeb 2.14.3, which works correctly.
KSP.log
N/A - This is a code logic issue, not a runtime error. The game runs normally, but MechJeb's unlock system doesn't work as intended.
References:
- Commit introducing the bug:
00891f80 - Last working version: v2.14.3
- Current broken version: v2.15.1