DYNAMIC LIBRARY (LBL) FILES

When preparing liveries there are a number of *.lbl files that you may need to create, depending on the number of dynamic materials defined in the Livery XML. These files are essentially JSON format files that are used to link the various parts of the livery with different geographic locations, careers and other dynamic data points, such that they can be adapted to suit the exact situation in which the aircraft is being used. There are five types of LBL files available, and it should be noted that for the livery and dynamic material systems to access them, they must be part of the same package:

 

  • liveries.lbl
    There is only one of these files per-aircraft, and it goes in the top level liveries folder of the modular aircraft (as explained here).

 

  • <texture>.lbl
    There should be one of these files placed in each of the texture library folders containing the textures you wish to use as part of the livery.

 

  • <text>.lbl
    There should be at least one of these files placed in the text library folder for the text you wish to use as part of the livery.

 

  • material.lbl
    There should be one of these files placed in each of the material library folders containing the materials you wish to use as dynamic materials.

 

  • <palette>.lbl
    There should be at least one of these files placed in the palette library folder to define the palettes to use in the livery.

 

 

Geographic Keys / Values

Note that you can setup the key / label pairs in the various LBL files such they will work with the simulation adaptive livery system based on geographic location, which - when combined with other label key/values - can be used to generate liveries that will adapt to the location of the aircraft in the world under diverse situations and activities.

 

For these keys and values to be recognised, you will need to ensure that there is a <Label> element with a key of the correct name (listed below) but with no value. You then ensure that there is a corresponding label and key in the appropriate LBL file(s). For example, if you want some adaptive text to be translated based on "MergedCountry", you would have something like this in the XML:

<DynamicMaterial>
    <MatName>Custom_Text_00</MatName>
    <Type>Text</Type>
    <TextureSize Width="1024" Height="100" />
    <TextLayer>
        <Line>
            <Content>Taxi</Content>
            <FontFamily>Roboto</FontFamily>
            <MacStyle Bold="true" Italic="false" Underline="false"/>
            <FontSize Value="AUTO" Unit="px"/>
            <Color>#111111</Color>
            <Alignement>center</Alignement>
            <LetterSpacing Value="5" Unit="px"/>
        </Line>
    </TextLayer>
    <Labels>
        <Label Key="MergedCountry"/>
    </Labels>
</DynamicMaterial>

 

Then in the text.lbl file you would have something like this:

{
    "LabeledTexts": [
        {
            "Name": "Taxi_Russia",
            "TextLayerAlteration":[
                {
                    "LineId" : "0",
                    "Content" : "Такси"
                }
            ],
            "Labels": [
            {
                "Key": "MergedCountry",
                "Values":["Russia_East", "Russia_EastCentral", "Russia_West", "Russia_WestCentral"]
            }
            ]
        },
        {
            "Name": "Taxi_India",
            "TextLayerAlteration":[
                {
                    "LineId" : "0",
                    "Content" : "टैक्सी"
                }
            ],
            "Labels": [
            {
                "Key": "MergedCountry",
                "Values":["IndianSubcontinent"]
            }
            ]
        },
        // ETC....
    ]
}

 

The adaptive key / value pairs that can be used are as follows:

 

  • "Continent": this key requires a value corresponding to one of the recognised continents in the simulation. Accepted values in the palette library for this are:

    Africa
    Antartica
    Asia
    Europe
    North America
    Oceania
    South America

 

  • "MergedCountry": this key requires a value corresponding to one of the recognised merged countries in the simulation (a merged country is a collection of countries grouped together based on geographic and socio-cultural parity). Accepted values in the palette library for this are:

    AF_Central
    AF_East
    AF_North
    AF_South
    AF_West
    Antarctica
    Australia_East
    Australia_West
    Balkans
    Brazil
    BritishIsles
    Canada_Central
    Canada_East
    Canada_North
    Canada_West
    Caribbean
    CentralAmerica
    CentralAsia
    China_NorthEast
    China_SouthEast
    China_West
    DACHCzechia
    EasternEurope
    FranceBenelux
    GreeceTurkeyCaucuses
    GreenlandIceland
    IberianPeninsula
    IndianOcean
    IndianSubcontinent
    ItalyMalta
    JapanKoreas
    Mexico
    MiddleEast
    NewZealandOceania
    Russia_East
    Russia_EastCentral
    Russia_West
    Russia_WestCentral
    SA_North
    SA_South
    SA_West
    SEAsiaIslands
    SEAsiaMainland
    Scandinavia
    USA_Alaska
    USA_HawaiiPacific
    USA_MidWest
    USA_NorthEast
    USA_NorthWest
    USA_SouthCentral
    USA_SouthEast
    USA_SouthWest
    Ukraine

 

  • "Country": this key requires a value corresponding to one of the recognised countries in the simulation. Accepted values in the palette library for this are:

    Afghanistan
    Albania
    Algeria
    Angola
    Antarctica
    Argentina
    Armenia
    Australia_East
    Australia_West
    Austria
    Azerbaijan
    Bahrain
    Bangladesh
    Belarus
    Belgium
    Belize
    Benin
    Bhutan
    Bolivia
    BosniaHerzegovina
    Botswana
    Brazil
    Brunei
    Bulgaria
    BurkinaFaso
    Burundi
    Cambodia
    Cameroon
    Canada_Central
    Canada_East
    Canada_North
    Canada_West
    CapeVerde
    Caribbean
    CentralAfricanRepublic
    Chad
    Chile
    China_NorthEast
    China_SouthEast
    China_West
    Colombia
    Comoros
    Congo
    CostaRica
    Croatia
    Cuba
    Czechia
    DRCongo
    Denmark
    Djibouti
    DominicanRepublic
    EastTimor
    Ecuador
    Egypt
    ElSalvador
    EquatorialGuinea
    Eritrea
    Estonia
    Eswatini
    Ethiopia
    Fiji
    Finland
    France
    Gabon
    Gambia
    Georgia
    Germany
    Ghana
    Greece
    Greenland
    Guatemala
    Guinea
    GuineaBissau
    Guyana
    Haiti
    Honduras
    Hungary
    Iceland
    India
    Indonesia
    Iran
    Iraq
    Ireland
    Israel
    Italy
    IvoryCoast
    Jamaica
    Japan
    Jordan
    Kazakhstan
    Kenya
    Kosovo
    Kuwait
    Kyrgyzstan
    Laos
    Latvia
    Lebanon
    Lesotho
    Liberia
    Libya
    Lithuania
    Luxembourg
    Madagascar
    Malawi
    Malaysia
    Maldives
    Mali
    Malta
    Mauritania
    Mauritius
    Mexico
    Moldova
    Mongolia
    Montenegro
    Morocco
    Mozambique
    Myanmar
    Namibia
    Nepal
    Netherlands
    NewZealand
    Nicaragua
    Niger
    Nigeria
    NorthKorea
    NorthMacedonia
    Norway
    Oceania
    Oman
    Pakistan
    Palestine
    Panama
    PapuaNewGuinea
    Paraguay
    Peru
    Philippines
    Poland
    Portugal
    Qatar
    Romania
    Russia_East
    Russia_EastCentral
    Russia_West
    Russia_WestCentral
    Rwanda
    SaoTomePrincipe
    SaudiArabia
    Senegal
    Serbia
    Seychelles
    SierraLeone
    Singapore
    Slovakia
    Slovenia
    SolomonIslands
    Somalia
    SouthAfrica
    SouthKorea
    SouthSudan
    Spain
    SriLanka
    Sudan
    Suriname
    Sweden
    Switzerland
    Syria
    Tajikistan
    Tanzania
    Thailand
    Togo
    Tunisia
    Turkey
    Turkmenistan
    USA_Alaska
    USA_HawaiiPacific
    USA_MidWest
    USA_NorthEast
    USA_NorthWest
    USA_SouthCentral
    USA_SouthEast
    USA_SouthWest
    Uganda
    Ukraine
    UnitedArabEmirates
    UnitedKingdom
    Uruguay
    Uzbekistan
    Venezuela
    Vietnam
    Yemen
    Zambia
    Zimbabwe