Skip to content

Configuration

Chris Adderley edited this page Jul 6, 2024 · 2 revisions

Bulkhead Tags

This section describes configuration options for the Bulkhead Tags feature of the mod.

Notes on Profiles

How they Work

Bulkhead profiles determine what tag shows on a part in the Editor. They are defined in part configs as part of stock data and look like this:

// this part has 2 profiles, size 1 aka 1.25m and surface
bulkheadProfile = size1, srf

The mod will look at this list and pick the largest one to show in the part's tag. Size of a profile is defined in the configuration, which maps a particular string tag to a size (e.g. size1 to 1.25m) So a part that has size1, size4 and srf will show the Size 4, aka 5.0m tag.

If you want to change the tag shown for a part, you can edit the bulkheadProfile value in the PART config using ModuleManager.

Tag Color Conventions

I've set things up so that tag color broadly corresponds to bulkhead size, starting in the reds for small sizes and proceeding through hues as size increases. What this means is that if you add a new size between two existing sizes, you should choose a color that fits between them.

Creating and Editing Bulkhead Tag Profiles

Creating tags associated with a bulkhead profile is pretty easy. Just add an empty .cfg file in your GameData folder and add nodes as follows:

ORGANIZERBULKHEAD
{
  // the config name, which matches the size defined in part configs
  name = size0
  // the size aka diameter of the part
  Size = 0.625
  // the localization tag for the label in the UI
  Label = #LOC_VABOrganizer_Bulkhead_size0
  // The RGB color of the tag in the UI
  Color = 0.7, 0.21, 0.21
}

They can also be edited with Module Manager patches as needed.

@ORGANIZERBULKHEAD[size0]
{
  // ZERO IS ZERO
  @Size = 0 
}

Subcategories

This section describes configuration options for the Subcategory feature of the mod.

Creating and Editing Subcategories

Creating subcategories is pretty easy. Just add an empty .cfg file in your GameData folder and add nodes as follows:

ORGANIZERSUBCATEGORY
{
  // the name of the category, which you use to assign parts
  name = sas  
  // the localization key that defines the UI name of the category
  Label = #LOC_VABOrganizer_Subcategory_reactionWheels
  // The priority of the aubcategory in the UI. Higher numbers show up later
  Priority = 15
  // The priority of the subcategory over sets of other categories in the UI. This is relevant when doing searches or custom categories. 
  // CategoryPriority is used for sorting before Priority, so all categories with a high CategoryPriority will appear after others. even if
  // their Priority is low
  CategoryPriority = 15
}

Subcategories can be edited with ModuleManager patches as any other ConfigNode data, e.g.

@ORGANIZERSUBCATEGORY[sas]
{
  // Change the priority because I love SAS units
  @Priority = 1
  // Change the category priority because I love SAS units above all else
  @CategoryPriority = 0
}

Assigning parts to Subcategories

To assign a part to a subcategory, you add a config block to the part's config file:

VABORGANIZER
{
  // The category to assign the part to
  organizerSubcategory = noses
}

The best nondestructive way to do this is to assign the category using a Module Manager patch

@PART[thePartYouWant]:FOR[YourModName]
{
  %VABORGANIZER
  {
    %organizerSubcategory = theCategoryYouWant
  }
}