Jump to content

VAB Category Fail


Recommended Posts

Hey, I have a heavily modded install (I know), and I am having a problem where the VAB categories are failing if I click on "Filter by Cross Section". It does not refresh the list of parts, and continues to fail to refresh the list after this point, until I exit the VAB. Effectively, this part of the filters is broken for me at this time.

I see a tab with a "?" which is the default option, situated above "Mk2". It does not have a tooltip.

I am getting the following error when I use the filter:

NullReferenceException: Object reference not set to an instance of an object
  at KSP.UI.Screens.PartListCategories.BulkheadProfile.ExclusionCriteria (.AvailablePart aP) [0x00000] in <filename unknown>:0 
  at EditorPartListFilter`1[AvailablePart].FilterList (System.Collections.Generic.List`1 parts, System.Func`2 filter) [0x00000] in <filename unknown>:0 
  at EditorPartListFilterList`1[AvailablePart].FilterList (System.Collections.Generic.List`1 list) [0x00000] in <filename unknown>:0 
  at KSP.UI.Screens.EditorPartList.RefreshPartList () [0x00000] in <filename unknown>:0 
  at KSP.UI.Screens.EditorPartList.Refresh () [0x00000] in <filename unknown>:0 
  at KSP.UI.Screens.EditorPartList.Refresh (State state) [0x00000] in <filename unknown>:0 
  at KSP.UI.Screens.PartCategorizer+<UpdateDaemon>c__Iterator5.MoveNext () [0x00000] in <filename unknown>:0 
  at UnityEngine.SetupCoroutine.InvokeMoveNext (IEnumerator enumerator, IntPtr returnValueAddress) [0x00000] in <filename unknown>:0 

To me, this does not seem to name any particular mods, so I do not know where to start. Is there a way of narrowing this search down?

Link to comment
Share on other sites

This seem to be an issue with the cross section filter and part mods.

Wild guess here:

In 1.5.1, there was an issue regarding the cross section filter not showing any revamped parts which got a variant theme: https://bugs.kerbalspaceprogram.com/issues/20345

It is still open in the bug tracker but on a stock install, the filter works perfectly fine (all parts are displayed and the list will update properly through other filters). Probably SQUAD changed something there and forgot it in the patch notes of 1.6.0 and some mod parts seem to have an issue with this patch.

There is one more twist on this issue: Not every part mod is affected. I've tried:

  • Airplane Plus (got the NRE)
  • BD Armory (got the NRE)
  • Missing History (works fine)
  • Smart Parts (works fine)
  • Tundra Exploration (got the NRE)

I have absolut no clue what's the difference between this mods so some are affected and some are not. All mods include part models, textures and configs.

For Tundra Exploration, I was able to nail down the issue to the 'New Horizons' parts but I cannot do more testing right now...maybe @damonvv got an idea what's different on these parts compared to the probes and Rosetta parts?

Link to comment
Share on other sites

5 minutes ago, 4x4cheesecake said:

For Tundra Exploration, I was able to nail down the issue to the 'New Horizons' parts but I cannot do more testing right now...maybe @damonvv got an idea what's different on these parts compared to the probes and Rosetta parts?

Interesting. Is this only happening in 1.6 or is 1.5.1 also affected? I will test this evening

Link to comment
Share on other sites

@damonvv I guess, I found the culprit of the issue: Some part configs don't contain an entry for 'bulkheadProfiles' and after adding this entry to TT_NewHorizons_Antenna and TT_NewHorizons_Body, everything works fine again.

The same applies to other part mods as well.

So, I'm back to my previous guess: This entry seem to be required since 1.6.0 in order to fix the issue of missing parts when sorting them by cross section profile. Well, can also be a bug since it is not mentioned in the patch notes but I don't think so.

Link to comment
Share on other sites

22 hours ago, 4x4cheesecake said:

@damonvv I guess, I found the culprit of the issue: Some part configs don't contain an entry for 'bulkheadProfiles' and after adding this entry to TT_NewHorizons_Antenna and TT_NewHorizons_Body, everything works fine again.

The same applies to other part mods as well.

So, I'm back to my previous guess: This entry seem to be required since 1.6.0 in order to fix the issue of missing parts when sorting them by cross section profile. Well, can also be a bug since it is not mentioned in the patch notes but I don't think so.

Fixed it. Will update later today. Thanks!

Link to comment
Share on other sites

1 hour ago, jospanner said:

Does the bug entry need to be updated? I'm not sure what's going on here.

I'm sorry, totally forgot about the next step :confused:

Two things:

1) I'm not quiet sure if this is a bug which needs to be fixed by SQUAD or by the mod makers and was hoping for some responses on the bugtracker

2) If you want to fix it right now, you can inform every mod creator about the issue and wait for an update or do it on your own.

There are two possibilities to fix it on your own. If you want to get it right, you have to check each part config for the entry and if it is missing, add it and assign a category that fits for the part (like size0, size1, srf...)
Or, a quick and dirty solution, would be a ModuleManager patch, that adds this entry with a fix value. This will cause the NRE to disappear but some parts will not be sorted correctly.
The patch should look like this:

@PART[*]:HAS[~bulkheadProfiles[]]
{
	bulkheadProfiles = srf
}

Create a textfile somewhere in your GameData folder, name it however you want (but it must be a .cfg file), copy&paste the content from above and save it.

This patch will add the "bulkheadProfiles = srf" entry to every part which doesn't have any "bulkheadProfiles" entry at all which will cause this items to appear in the 'surface attach only' section in the editor. This might not be the place where each of these parts belong but you will get rid of the NRE and can use the cross section filter again.

Edited by 4x4cheesecake
Link to comment
Share on other sites

  • 2 weeks later...
49 minutes ago, GreekYogurt said:

Hello again, Cheesecake. I'm back. 

So the patch didn't work. And the stuff I said on bug tracker followed through. For some reason, the problem is only happening through advanced mode. And, it's only been happening on heavily modded installs, as far as I'm concerned.

Welcome to the forum :)

Like I said on the bugtracker, I'll need a log file to investigate the issue further since I cannot replicate the issue for other filters. If you don't know where to find the file, please take a look here:

The thread contains a list of the log file location for each operating system. I'll probably also need your ModuleManager.ConfigCache which is located in your GameData folder. Please upload both files to a filehoster/cloud service of your choice and share the download link here :)

Keep in mind that the log file is overwritten everytime you launch the game, so please make sure that the issue is actually logged ;)

Link to comment
Share on other sites

54 minutes ago, TiktaalikDreaming said:

Has anyone tried non standard bulkhead profiles?

I have an install set up with ALL my mods installed, and a number of parts still need to be updated, I have a patch which assigns a nonexistent size to all parts which are missing the bulkheadProfiles line.

In the editor, went into to the filter-by-size, and while those parts didn't show up there, and there wasn't any extra icons, nothing funny happened

Link to comment
Share on other sites

23 minutes ago, linuxgurugamer said:

I have an install set up with ALL my mods installed, and a number of parts still need to be updated, I have a patch which assigns a nonexistent size to all parts which are missing the bulkheadProfiles line.

In the editor, went into to the filter-by-size, and while those parts didn't show up there, and there wasn't any extra icons, nothing funny happened

Awesome. I have done mods with large bulkhead sizes that really shouldn't be listed with  surface attachable. :)

Link to comment
Share on other sites

3 minutes ago, TiktaalikDreaming said:

Awesome. I have done mods with large bulkhead sizes that really shouldn't be listed with  surface attachable. :)

A simple rule of thumb could be, look at the node sizes of the parts, and assign an appropriate bulkhead profile based on that.

Link to comment
Share on other sites

31 minutes ago, linuxgurugamer said:

The should be scaled , because that determines how strong the joint is

I'm not 100% on it scaling joint strength.  I did tests on surface attach nodes a few versions back, and the joint rigidity seemed to relate to the intersecting collider surface area more than the node size.  Stack nodes "should" work more like what's on the tin, and scale strength with node size though.  I haven't actually tested.  If it didn't scale, I imagine some of my rockets would be pretty horribly floppy.

Link to comment
Share on other sites

  • 2 weeks later...
2 minutes ago, Jacke said:

@linuxgurugamer, if it's a MM script, could you post your workaround patch?

I'm wondering how this interacts with @taniwha's Custom Bulkhead Profiles.

 

 

AFAIK, the MM script of LGG is the same as mine^^

I guess, you can use the Custom Bulkhead Profiles mod to create a custom profile and than use a MM patch to add the parts with missing entries in this group. Just switch out the 'srf' part in my patch to the custom profile. It should work, but I haven't tried it ;)

Link to comment
Share on other sites

11 hours ago, Jacke said:

@linuxgurugamer, if it's a MM script, could you post your workaround patch?

I'm wondering how this interacts with @taniwha's Custom Bulkhead Profiles.

 

If there is a line "bulkheadProfiles =" in the part, the patch won't do anything

11 hours ago, 4x4cheesecake said:

AFAIK, the MM script of LGG is the same as mine^^

I guess, you can use the Custom Bulkhead Profiles mod to create a custom profile and than use a MM patch to add the parts with missing entries in this group. Just switch out the 'srf' part in my patch to the custom profile. It should work, but I haven't tried it ;)

but I'll list it here anyway:

@PART[*]:HAS[~bulkheadProfiles[]]
{
	bulkheadProfiles = srf
}

 

Link to comment
Share on other sites

2 minutes ago, TiktaalikDreaming said:

Just as a side note. The game only has its issue of there's no bulkhead profile for a part. It doesn't care if the profile is matching anything. So you can use that patch, but have something like "null" instead of "srf", and you have an easy way of spotting the problem parts.

I actually use the term "missingBulkhead" when I'm debugging, by putting in "srf", I ensure that at least all parts will show up in at least one size category

Link to comment
Share on other sites

On 1/22/2019 at 12:04 AM, TiktaalikDreaming said:

I have a patch which assigns a nonexistent size to all parts which are missing the bulkheadProfiles line.

In the editor, went into to the filter-by-size, and while those parts didn't show up there, and there wasn't any extra icons, nothing funny happened

Weird, i have many nonexistent sizes and they show up in the editor as "?" icons with no tooltips.

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...