MechJeb2

MechJeb2

4M Downloads

"Current Biome" item being shown in the VAB causes the entire window to be blank.

Nexather opened this issue ยท 2 comments

commented

Here are the relevant logs I found, they came in pairs:

[EXC 01:06:07.197] ArgumentException: Getting control 0's position in a group with only 0 controls when doing repaint
Aborting
    UnityEngine.GUILayoutGroup.GetNext () (at <fa6f9762ac624af092525d37c9d516c4>:0)
    UnityEngine.GUILayoutUtility.BeginLayoutGroup (UnityEngine.GUIStyle style, UnityEngine.GUILayoutOption[] options, System.Type layoutType) (at <fa6f9762ac624af092525d37c9d516c4>:0)
    UnityEngine.GUILayout.BeginVertical (UnityEngine.GUIContent content, UnityEngine.GUIStyle style, UnityEngine.GUILayoutOption[] options) (at <fa6f9762ac624af092525d37c9d516c4>:0)
    UnityEngine.GUILayout.BeginVertical (UnityEngine.GUILayoutOption[] options) (at <fa6f9762ac624af092525d37c9d516c4>:0)
    MuMech.MechJebModuleCustomInfoWindow.WindowGUI (System.Int32 windowID) (at <60b49d46f6af4dce8b1343a59e9ab484>:0)
    MuMech.DisplayModule.ProfiledWindowGUI (System.Int32 windowID) (at <60b49d46f6af4dce8b1343a59e9ab484>:0)
    UnityEngine.GUILayout+LayoutedWindow.DoWindow (System.Int32 windowID) (at <fa6f9762ac624af092525d37c9d516c4>:0)
    UnityEngine.GUI.CallWindowDelegate (UnityEngine.GUI+WindowFunction func, System.Int32 id, System.Int32 instanceID, UnityEngine.GUISkin _skin, System.Int32 forceRect, System.Single width, System.Single height, UnityEngine.GUIStyle style) (at <fa6f9762ac624af092525d37c9d516c4>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)
[EXC 01:06:07.213] NullReferenceException: Object reference not set to an instance of an object
    MuMech.MechJebModuleInfoItems.CurrentBiome () (at <60b49d46f6af4dce8b1343a59e9ab484>:0)
    (wrapper dynamic-method) System.Object.lambda_method(System.Runtime.CompilerServices.Closure,object)
    MuMech.ValueInfoItem+<>cDisplayClass14_0.<.ctor>b0 () (at <60b49d46f6af4dce8b1343a59e9ab484>:0)
    MuMech.ValueInfoItem.UpdateItemCache () (at <60b49d46f6af4dce8b1343a59e9ab484>:0)
    MuMech.ValueInfoItem.UpdateItem () (at <60b49d46f6af4dce8b1343a59e9ab484>:0)
    MuMech.MechJebModuleCustomInfoWindow.UpdateWindowItems () (at <60b49d46f6af4dce8b1343a59e9ab484>:0)
    MuMech.MechJebModuleCustomInfoWindow.WindowGUI (System.Int32 windowID) (at <60b49d46f6af4dce8b1343a59e9ab484>:0)
    MuMech.DisplayModule.ProfiledWindowGUI (System.Int32 windowID) (at <60b49d46f6af4dce8b1343a59e9ab484>:0)
    UnityEngine.GUILayout+LayoutedWindow.DoWindow (System.Int32 windowID) (at <fa6f9762ac624af092525d37c9d516c4>:0)
    UnityEngine.GUI.CallWindowDelegate (UnityEngine.GUI+WindowFunction func, System.Int32 id, System.Int32 instanceID, UnityEngine.GUISkin _skin, System.Int32 forceRect, System.Single width, System.Single height, UnityEngine.GUIStyle style) (at <fa6f9762ac624af092525d37c9d516c4>:0)
    UnityEngine.DebugLogHandler:LogException(Exception, Object)
    ModuleManager.UnityLogHandle.InterceptLogHandler:LogException(Exception, Object)
    UnityEngine.Debug:CallOverridenDebugHandler(Exception, Object)

I went digging through the code and believe the relevant code to be https://github.com/MuMech/MechJeb2/blob/dev/MechJeb2/MechJebModuleInfoItems.cs#L1094

The only discrepancy I can find is that showInEditor=false does not have spaces around the = like every other item that dictates if it can or can not show in editor.

commented

Are you sure that you use the last version ( 2.14.1) ? Because I fixed this already here

commented

I am what you might call a technically capable fool, I didn't even think to check the version. I am still on 2.13, sorry for the confusion