# livery.cfg {{< image-center src="images/2_DevMode/simobject_editor/cfg/cfg_tab_14_livery.png" alt="The Livery Tab In The SimObject Editor" >}} The `livery.cfg` is an *optional* file for **modular** SimObjects, and is not used by non-modular SImObjects. This file should be placed within the individual *liveries* folders of the SimObject project, with specifically *one* version of the file **per-livery**. The full description of the files used in the livery folders can be found on the modular SimObject page here: - [Liveries](../../modular-simobjects/modular-simobject-project-structure/#liveries) For information on how to set up the assets to be able to use this file, please see the following page: - [Modelling Aircraft Livery](../../../models-and-textures/modeling/aircraft/airframe/liveries/modelling-liveries/) For information on how an individual livery should be set up to make use of adaptive elements, please see here: - [Liveries](../../modular-simobjects/aircraft/liveries/liveries/) For information on how liveries are applied when in Career Mode, please see here: - [Livery Application](../../careers/general-career-information/career-activities-additional-information/#livery-application) ### [Version] The `[Version]` section provides version information for the configuration file. In Microsoft Flight Simulator 2024, major versions should *always* be at least equal to 1. Note that this section information is **mandatory** and should always be included. {{< table-wrapper >}} | Parameter | Description | Type | Required | |-----------|---------------------------------------------------------------|---------|:--------:| | {{< anchor id="major" />}}`major` | Major CFG file version number, values must be greater than 0. | Integer | Yes | | {{< anchor id="minor" />}}`minor` | Minor CFG file version number, values must be greater than 0. | Integer | Yes | {{< /table-wrapper >}} ### [General] The parameters in this section are used to provide some general information about the livery. {{< table-wrapper >}} | Parameter | Description | Type | Required | |-------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------|--------|:--------:| | {{< anchor id="name" />}}`name` | The name of the livery, as a localisable string. This will be displayed to the user on the Aircraft Configurator screen in the simulation | String | Yes | {{< /table-wrapper >}} ### [Selection] The parameters in this section are used to define under which circumstances the livery will be available to the user for selection, or for a mission to apply automatically. It has the following parameters: {{< table-wrapper >}} | Parameter | Description | Type | Required | | --- | --- | --- | --- | | {{< anchor id="required_tags" />}}`required_tags` | This defines which _tags_ are required for this livery to show up for a given [Preset](../../modular-simobjects/Modular_SimObject_Project_Structure/#presets). This parameter lets you disable a livery if it is not compatible when a tag is missing. Multiple tags can be specified by separating them using a comma. Tags are defined in the `attachment.cfg` so, for example, if you have two attachments and want to use the livery on both, you would set the `Tag.N` in the `attachment.cfg` files, then list both the tags in this parameter:```required_tags = node_default, nose_cargo``` | String | No | {{< /table-wrapper >}} ### [EDITABLE_COLORS] This section is used to define the base editable colour (and optional material) for the livery. For more information, please see the [Liveries](../../modular-simobjects/aircraft/liveries/liveries/) page. {{< table-wrapper >}} | Parameter | Description | Type | Required | | --- | --- | --- | --- | | {{< anchor id="editable_color.n" />}}`editable_color.N` | Each `editable_colour.N` entry in the section is used to define a base colour and an optional material and fallback colour for the editable colour. Colours are indexed from 0 and should be incremented by 1 for each new colour that is added.The colour hash map is comprised of the following multiple `key:value` pairs, separated by the `#` symbol:```editable_color.N = color: #materials:, , ... #fallback:```The colour value is defined using three values for the RGB components, and will be the default colour for the livery adaptive colour "slot" corresponding to the index. This key is the only required key in the hash map.The material name given is a [**flightsim material**](../../../models-and-textures/textures/materials/flightsim-materials/) to target with this colour, as defined in one of the livery [glTF](#) files. When giving the material name, it can be formatted in any one of the following ways depending on the requirements of the SimObject:1. `""` - this simply looks for `material_name` in the exterior model (excluding attachments)2. `":"` - this looks for `material_name` on all attachments with the given `tag`3. `"@"` - this looks for `material_name` on the attachment with the given `alias`4. `"no_material"` - this can be used if there is no material assigned to the editable colour.The fallback index that you give is the index of the `editable_colour.N` entry to use if there are not enough custom colors for the number of adaptative colors defined in the livery. If not included, the initial colour value will be used.A full example of a single colour definition would be like this:```editable_color.0 = color: 158, 158, 158 #materials: "airframe:CustomColor_01_Base", "airframe:CustomColor_01_DoorTail"``` | [Hash Map](CFG_Files/#hash-map) | No | {{< /table-wrapper >}} ### [PALETTE_LABELS] This section is used to define a number of key/value pairs which will be used as "labels" to filter colour palettes. The idea is that the labels given hear will narrow the selection of a colour palette down to just one from the `palette.lbl` file. For more information, please see the [Liveries](../../modular-simobjects/aircraft/liveries/liveries/) page. {{< table-wrapper >}} | Parameter | Description | Type | Required | | --- | --- | --- | --- | | {{< anchor id="label_key.n" />}}`label_key.N` | This defines a label key to search for as part of the palette filtering. Keys are indexed from 0 and should increment by 1 for every new key added. You may have keys with no associated value (see [Geographic Keys](../../LBL_Files/palette_lbl/#geographic), for more information). For example:```label_key.0 = "Activity"label_value.0 = "AAD"label_key.1 = "Country"```You have access to a number of built-in palettes using specific keys and values, as outlined here: [Labels / Keys For Included Palettes](../../LBL_Files/palette_lbl/#included_palettes). You may also create your own palettes and then supply your own key/value pairs, as explained here: [Palettes](../../modular-simobjects/Aircraft/Liveries/Liveries/#palettes) | String | Yes | | {{< anchor id="label_value.n" />}}`label_value.N` | This defines the value for the associated key. The _`N`_ index should be the same as that of the `label_key` it corresponds to, and you _cannot_ have a value without an associated key. Values should always be expressed inside quotation marks, even if it's a float or integer. | String | No | {{< /table-wrapper >}} ### [Panel_DynamicParameters] This section lets you define a number of dynamic parameters which will be used to override those found in the `attached_objects.cfg` of any attachments that are loaded as part of the modular aircraft. {{< table-wrapper >}} | Parameter | Description | Type | Required | | --- | --- | --- | --- | | {{< anchor id="param.n" />}}`param.N` | This parameter can be used to create a list of dynamic parameters which will override any value created using the [vcockpit\_parameter.N](attached_objects/#vcockpit_parameter.N) or [vpainting\_parameter.N](attached_objects/#vpainting_parameter.N) attachment parameters. The value for the parameter is a string, and within the string you give two pieces of data, separated by a comma:1. "the parameter name,the parameter value"Parameters indexed from 0 and should be incremented by 1 for each new parameter that is added. A full example of a single parameter definition would be like this:```param.0 = "exterior_registration_number_color,0x080808"``` | String | No | {{< /table-wrapper >}} ### [Specialization] The parameters in this section are used to define under which circumstances the livery will be available to the user for selection, or for a mission to apply automatically. It has the following parameters: {{< table-wrapper >}} | Parameter | Description | Type | Required | | --- | --- | --- | --- | | {{< anchor id="dressing_codes" />}}`dressing_codes` | This parameter specifies for which career specialisations the livery is applicable. If the livery is applicable to multiple different specialisations, these can be added as a comma separated list, for example:```dressing_codes = "CAR-PSO, CAR-PLC, CAR-PCC, CAR-PVO"```The default value is an empty string "" which means the livery can be used in all careers. | [List](CFG_Files/#list) of strings | Yes | {{< /table-wrapper >}} The table below lists all the available career specialisation codes: {{< table-wrapper >}} | **Specialisation** | Dressing Code | Cabin Code | | --- | --- | --- | | [Medevac](../../../content-configuration/Careers/Medevac/) - Plane | MED-PLN | MED\_Cabin | | [Cargo Transport](../../../content-configuration/Careers/Cargo_Transport/) (Light) - Plane | CAR-PSO | CAR\_Cabin | | [Cargo Transport](../../../content-configuration/Careers/Cargo_Transport/) (Medium) - Plane | CAR-PLC | CAR\_Cabin | | [Cargo Transport](../../../content-configuration/Careers/Cargo_Transport/) (Heavy) - Plane | CAR-PCC | CAR\_Cabin | | [Cargo Transport](../../../content-configuration/Careers/Cargo_Transport/) (Super Heavy) - Plane | CAR-PVO | CAR\_Cabin | | [Remote Cargo Ops](../../../content-configuration/Careers/Cargo_Transport/) - Plane | CAR-PLM | CAR\_Cabin | | [Cargo Transport](../../../content-configuration/Careers/Cargo_Transport/) - Rotorcraft | CHT-ROH | CHT\_Cabin | | [Aerial Construction](../../../content-configuration/Careers/Aerial_Construction/) - Rotorcraft | CHT-AEC | CHT\_Cabin | | [Scientific Research](../../../content-configuration/Careers/Scientific_Research/) - Plane | DIC-SCR | DIC\_Cabin | | [Passenger Transport](../../../content-configuration/Careers/Commercial_Passengers/) - Plane | COF-PCC | COF\_Cabin | | [Passenger Transport](../../../content-configuration/Careers/Commercial_Passengers/) - Rotorcraft | COF-ROT | COF\_Cabin | | [Charter Service](../../../content-configuration/Careers/Charter_Service/) (Private) - Plane | PRC-PSO | COF\_Cabin / PRC\_Cabin | | [Charter Service](../../../content-configuration/Careers/Charter_Service/) (VIP) - Plane | PRC-PLC | PRC\_Cabin | | [Charter Service](../../../content-configuration/Careers/Charter_Service/) (VIP Airliner) - Plane | PRC-PCC | PRC\_Cabin | | [Search & Rescue](../../../content-configuration/Careers/Search_And_Rescue/) - Plane | SAR-PLN | N/A | | [Search & Rescue](../../../content-configuration/Careers/Search_And_Rescue/) - Rotorcraft | SAR-ROT | SAR\_Cabin | | [Search & Rescue](../../../content-configuration/Careers/Search_And_Rescue/) (Hoist) - Rotorcraft | SAR-ROI | SAR\_Cabin | | [Aerial Firefighting](../../../content-configuration/Careers/Aerial_Firefighting/) (Initial Attack) - Plane | FIR-INA | FIR\_Cabin | | [Aerial Firefighting](../../../content-configuration/Careers/Aerial_Firefighting/) (Extended Attack) - Plane | FIR-EXA | FIR\_Cabin | | [Skydive Aviation](../../../content-configuration/Careers/Skydiving/) - Plane | SKP-PLN | SKP\_Cabin | | [Agricultural Aviation](../../../content-configuration/Careers/Agricultural_Aviation/) - Plane | AEA-PLN | AEA\_Cabin | | [Agricultural Aviation](../../../content-configuration/Careers/Agricultural_Aviation/) - Rotorcraft | AEA-ROT | AEA\_Cabin | | [Aerial Advertising](../../../content-configuration/Careers/Aerial_Advertising/) - Plane | AAD-PLN | AAD\_Cabin | | [First Flight](../../../content-configuration/Careers/Flight_Seeing/) - Plane | FIF-PLN | COF\_Cabin | AAD\_Cabin | | [Flightseeing](../../../content-configuration/Careers/Flight_Seeing/) - Plane | TOR-PLN | AAD\_Cabin | | [Flightseeing](../../../content-configuration/Careers/Flight_Seeing/) - Rotorcraft | TOR-ROT | AAD\_Cabin | | [Ferry Flight](../../../content-configuration/Careers/Ferry_Flights/) - Plane | FEF-PLN | DEFAULT | {{< /table-wrapper >}} ### [Tags] This section is used to list any **tags** that you wish to be associated with the livery being defined. These tags are used to make the livery available in specific activities, in career mode, and to group liveries together. Note that these tags are independent of the ones defined in the `attachment.cfg` file. {{< table-wrapper >}} | Parameter | Description | Type | Required | | --- | --- | --- | --- | | {{< anchor id="tag.n" />}}`tag.N` | A single tag string to be associated with the livery. Tags are indexed from 0 and should be incremented by 1 for each new tag that is added, for example:tag.0 = "Freelance"tag.1 = "Licence_Firefighting"The tags available are as follows:" Freelance" "Licence_Tour"" Licence_SkydiveSport"" Licence_CargoTransport"" Licence_AgriculturalAviation"" Licence_AerialAdvertising"" Licence_Airline"" Licence_PrivateCharter"" Licence_Firefighting"" Licence_SearchAndRescue"" Licence_Medevac"" Licence_AerialConstruction"| String | No | {{< /table-wrapper >}} ### [FLTSIM.*N*] This section is used to override the corresponding `[FLTSIM.N]` section in the [aircraft.cfg](aircraft.cfg/) file, permitting extra customisation options for the livery. {{< table-wrapper >}} | Parameter | Description | Type | Required | |---|---|---|---| | {{< anchor id="icao_airline" />}}`icao_airline` | Non-localized ICAO designator of the airline if the variation is a livery for a real airline. Please see the [Aircraft.cfg - Air Traffic](aircraft-sim/air-traffic/) section for additional information related to this setting. | String | No | | {{< anchor id="atc_parking_types" />}}`atc_parking_types` | List of types of parking permitted for the aircraft. This is a single string containing a comma separated list of possible parking types, eg: `"GATE,RAMP,CARGO"`. Possible values: `ANY`, `RAMP`, `CARGO`, `MIL_CARGO`, `MIL_COMBAT`, `GATE`, `DOCK` | String | No | | {{< anchor id="atc_parking_codes" />}}`atc_parking_codes` | A single string containing a comma separated list of parking codes, eg: `"F18,A"` | String | No | | {{< anchor id="atc_id" />}}`atc_id` | This gives the registration number of the aircraft (note that it can be modified in the simulation options by the user). The options for how this is displayed will depend on the `[VPaintingN]` settings of the `panel.cfg` file. For more information please see here: [Registration Numbers](../../../models-and-textures/modeling/aircraft/airframe/registration-numbers/). | String | No | {{< /table-wrapper >}}