This page lists most of the different elements and attributes required to generate properly formed XML for an airport. Most of the XML shown, is created for you when you use The Scenery Editor tool - included as part of the Developer Mode toolset within Microsoft Flight Simulator 2024. As such, we recommend that you use that tool instead of trying to create your own XML from scratch, and use this page as a reference if you need to edit the files the Scenery Editor creates.

IMPORTANT!

When doing work on an already existing airport in the simulator, by default the behavior is to add the new set of data to the existing airport and not to replace the corresponding data. If the objective is to replace the previous set of data, then it is necessary to use a <DeleteAirport> element to describe what is to be replaced.

Note that this page covers the XML required for the airport and some of it’s facilities, but other things like runways and approach routes are not included here to keep the information in more manageable blocks. The links below cover the things that are not included on this page, and all of them would be used within the <Airport> container element:

Finally, the XML document for an airport must have the following format:

<?xml version="1.0" encoding="utf-8"?>
    <FSData version="9.0">
        <Airport>
            <!-- Airport Data Elements Here -->
        </Airport>
    </FSData>

<FSData>

The <FSData> element is the top level container which contains the <Airport> sub-element (and can also contain various other Scenery Editor Object XML elements). It has the following possible attributes:

AttributeDescriptionTypeRequired
versionThe current version of the XML file.Important!: The FSData container element can only be version “9.0” and anything else will fail to parse.StringYes
timestampThe file timestamp.StringNo
patchThe patch number for the file.StringNo
sourceThe original source of the file.StringNo

<Airport>

The <Airport> element is used to indicate the placement of airport facility information. Airports are placed according to their airport reference point and may contain a large amount of data, with the element containing one or more of the following sub-elements:

The following elements are also used in the creation of airports, and - if used - they must be defined in the given order:

The airport element has the following attributes:

AttributeDescriptionTypeRequired
displayNameThe display name for the object in the Scenery Editor.Note: this is only used for ordering in the The Scenery Contents ListStringNo
parentGroupIDThe ID of the parent group this object belongs to.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
groupIndexThe group index of the object.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
groupIDThe group ID of the object.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
groupGeneratedWhether the group has been auto-generated or not.Note: this is only used for ordering in the The Scenery Contents ListBooleanNo
countryThis is the name of the country the airport is in. This string can be localised using the TT:<VARIABLE_NAME> format, as explained in the LOC Files (Localization) documentation.StringNo
stateThis is the name of the state the airport is in. This string can be localised using the TT:<VARIABLE_NAME> format, as explained in the LOC Files (Localization) documentation.StringNo
cityThis is the name of the city that the airport is either in or nearest to. This string can be localised using the TT:<VARIABLE_NAME> format, as explained in the LOC Files (Localization) documentation.StringNo
nameThis is the name of the airport itself and will be displayed to the user. This string can be localised using the TT:<VARIABLE_NAME> format, as explained in the LOC Files (Localization) documentation.StringNo
regionThe region the airport is in. Generally the region would be one of the following: JapanAsia (China, India, Sri Lanka, Philippines, Taiwan, etc…)North America (Canada, USA)Latin America (Argentina, Cuba, Venezuela, Brazil, etc…)Middle East (UAE, Israel, Saudi Arabia, Iran, etc…)Europe (France, Spain, Germany, United Kingdom, etc…)Africa (Tunisia, Chad, Kenya, Madagascar, etc…)StringNo
regionCodeThis is the ICAO country code which must be a maximum of two characters. See here(opens in a new tab) for more information.StringNo
latLatitude of the airport reference point, in degrees between -90.0° and 90.0°.FloatYes
lonLongitude of the airport reference point, in degrees between -180.0° and 180.0°.FloatYes
altAltitude of the airport reference point, in meters. You may add the “F” suffix to convert the value to feet, for example: “13.0F”.FloatYes
altTypeThis is used to determine the referential for the alt field.Enum: GEOIDELLIPSOIDNo
magvarMagnetic variation, the angle difference between the magnetic north and true north. Negative for value to the east and positive for value to the west, measured in degrees between -360.0° and 360.0°.FloatNo
identThis is the icao code for the Airport being defined, and is used to represent the airport in multiple places. Must be between 3 and 8 characters long, eg: “UUWW”.StringYes
airportTestRadiusAirport test radius in meters. You may add the “F” suffix to convert the value to feet, for example: “1300.0F”. This is the distance around the airport reference point (location) that will be tested for airport object elements. Anything that is an airport element that is outside this area may cause build errors.FloatNo
trafficScalarThe volume of AI traffic that is appropriate for this airport. 1.0 would apply to major airports.Note: This is a deprecated feature and the value added for this attribute will have no effect in the simulation.FloatNo
isOnTINUsed to get a different ground materials behavior in certain area.BooleanNo
tinColorCorrectionThis option applies colour correction to certain airport features - mainly runways and aprons - to eliminate unnatural TIN colours bleeding into them. Mouse over the image below to see an example of the difference this option can make (note that the difference will depend on the location):Card BackCard FrontThis is enabled by default.BooleanNo
onlyAddIfReplaceOnly adds the airport if it was already present in another package. Relevant if the data contained within <Airport> is only complementary and not meant to be used on its own.BooleanNo
applyFlattenGenerate flattening rectangles on the airport based on runways altitude and inclination.BooleanNo
starAirportPuts the airport forward on the world map.BooleanNo
closedStop the airport from being accessible or interactive in any interface such as the world map, the instruments or the ATC system. The airport is only going to be rendered in the simulator..BooleanNo
groundMergingTransfertBrightGround merging bright setting.FloatNo
groundMergingTransfertDarkGround merging dark setting.FloatNo
uuidThis is a unique identifier used by some mission parameters.StringNo
transitionAltitudeThis defines the transition altitude - the altitude above sea level at which aircraft change from the use of local pressure to the use of standard pressure - for the airport, in ft.FloatNo
transitionLevelDefines the transition level - the height above sea level that flight level is used instead of feet or meters - for the airport, in ft.FloatNo

<AirportArchetype>

This a sub-element of the <Airport> element and is used to set the airport archetupe data for different aspects of the airport.

This element has the following attribute:

AttributeDescriptionTypeRequired
archetypeGUIDThe GUID for this archetype override.StringNo

<ParamOverride />

This is a self-closing sub-element of <AirportArchetype> and is used to define a single parameter to override and the value to override it with. You may include multiple of these elements to override several of the available properties for any airport, for example:

<AirportArchetype>
    <ParamOverride name="RunwayTireGumOpacity" value="0.0"/>
    <ParamOverride name="RunwayCrackOpacity" value="0.0"/>
    <ParamOverride name="RunwayPatchOpacity" value="0.0"/>
    <ParamOverride name="RunwayGroovingOpacity" value="0.0"/>
    <ParamOverride name="AsphaltDirtOpacity" value="0.000"/>
    <ParamOverride name="TaxiwayTireStainOpacity" value="0.0"/>
</AirportArchetype>

This element has the following attributes:

AttributeDescriptionTypeRequired
nameThe name of the parameter (as a string) to override the value of. See the Override Parameters List for all the available override parameters. For a visual representation of the changes these parameters will make to the airport see here: Airport Archetype OverridesStringYes
valueThe value/string to override the base parameter with.MixedYes
Override Parameters List

The table below lists all the parameters that can be used as override parameters in the <ParamOverride /> element:

Parameter StringDescriptionTypeUnit
TrafficDensityThis will change the density of airport traffic (ambient vehicles) around, where 0 is no traffic and 1 is the maximum amount permitted for the airport category.FloatN/A
TrafficVarietyAirportCategoryThis sets the category of traffic (ambient vehicles) to override, where each value corresponds to an existing airport archetype.Integer Constant0: Extra Small Airport1: Small Airport2: Medium Airport3: Large Airport4: Extra Large Airport5: Extra Extra Large Airport
TaxiwayTireGumOpacityThis will change the opacity (alpha) of the tire gum decal, and should be between 0 (invisible) and 1 (fully opaque).Default value is 0.Floatpercent over 100
TaxiwayTireGumMaterialThis parameter lets you override the default tire gum material with another one from The Material Editor. You supply the GUID of the material to apply, as a string.StringGUID
TaxiwayTireGumTilingThis parameter lets you change the amount that the tire gum decal material is tiled. Default value is 1.FloatN/A
TaxiwayTireGumMinCountThis value sets the minimum number of tire gum decals that can be overlaid (the actual amount will be a random number between the min and max count values).Default value is 1.S32 IntegerN/A
TaxiwayTireGumMaxCountThis value sets the maximum number of tire gum decals that can be overlaid (the actual amount will be a random number between the min and max count values).Default value is 1.S32 IntegerN/A
TaxiwayTireGumRandomRotationThis value sets the variation in angle for each of the overlaid tire gum decals.Default value is 0.FloatDegrees
TaxiwayTireGumRandomTranslateThis value sets the variation in the translation offset for each of the overlaid tire gum decals.Default value is 0.FloatMeters
TaxiwayTireGumMeanWidthThis value can be used to control the mean/average width over which the tire gum decals will be applied.Default is 20.FloatMeters
TaxiwayTireGumMinDensityThis value sits the minimum density for the tire gum decals.Default value is 1.FloatN/A
TaxiwayTireGumMaxDensityThis value sits the maximum density for the tire gum decals.Default value is 1.FloatN/A
RunwayTireGumOpacityThis will change the opacity (alpha) of the decal, and should be between 0 (invisible) and 1 (fully opaque).Floatpercent over 100
RunwayTireGumOpacityVarianceThis will change the amount of random variance in the decal opacity (alpha) that is applied, from 0 (no variance) to 1 (full variance).Floatpercent over 100
RunwayTireGumMaterialThis parameter lets you override the default material with another one from The Material Editor. You supply the GUID of the material to apply, as a string.StringGUID
RunwayTireGumWidthThis parameter controls the relative width of the tire gum decal on the runway, where 1 is the un-scaled base decal width, 0.5 would be half the decal width, and 2 would double the decal width.Default value is 1.FloatScalar
RunwayTireGumTilingVThis parameter sets the horizontal tiling amount for the tire gum decal material.Default value is 1.FloatN/A
RunwayTireGumAimingPointRatioThis parameter sets the distance ratio from the runway aiming point after which the tire gum decal should be stretched. A ratio of 1 will have the decal stretched after the aiming point the same amount as before, 0.5 will be half that distance, 2 will be double that distance.Default value is 1.FloatScalar
RunwayCrackOpacityThis will change the opacity (alpha) of the decal, and should be between 0 (invisible) and 1 (fully opaque).Default value is 0.Floatpercent over 100
RunwayCrackMaterialThis parameter lets you override the default material with another one from The Material Editor. You supply the GUID of the material to apply, as a string.StringGUID
RunwayCrackMaterialTilingThis parameter lets you change the amount that the decal material is tiled.Default value is 1.FloatN/A
RunwayCrackMeshTilingThis parameter will affect the way that the material texture is sampled and shown, as the simulation uses the mesh vertex count to define the “patches” within the decal to be displayed. A high density mesh (ie: lower values) will show a more “noisy” sample from the material, while a lower density mesh (ie: higher values) will show a less noisy sample.Default value is 1.FloatMeters
RunwayCrackWidthMinThis parameter sets the minimum width for the cracks mesh (the actual width will be a random number between the min and max values).Default value is 1.FloatMeters
RunwayCrackWidthMaxThis parameter sets the maximum width for the cracks mesh (the actual width will be a random number between the min and max values).Default value is 1.FloatMeters
RunwayCrackLengthMinThis parameter sets the minimum length for the cracks mesh (the actual width will be a random number between the min and max values).Default value is 1.FloatMeters
RunwayCrackLengthMaxThis parameter sets the maximum length for the cracks mesh (the actual width will be a random number between the min and max values).Default value is 1.FloatMeters
RunwayCrackDensityThis parameter sets the density of the cracks that will be added between the min/max length and width.Default value is 0.FloatN/A
RunwayCrackProfileThis paramter permits you to set a specific “damage profile” for where the cracks will be clustered.Default value is 0.Integer Constant0: Cracks will be scattered in a uniform away anywhere on the runways and roadways that have them.1: Cracks will be mainly concentrated along the center of the runways and roadways that have them.2: Cracks will be mainly concentrated along the edges of the runways and roadways that have them.
RunwayCrackOverMarkingsSetting this to 1 (TRUE) will force the cracks decals to be drawn over the runway markings. A value of 0 (FALSE) means that they will be under the runway markings.Default value is 0.BooleanN/A
SealedJointOpacityThis will change the opacity (alpha) of the decal, and should be between 0 (invisible) and 1 (fully opaque).Default value is 0.Floatpercent over 100
SealedJointBaseMaterialThis parameter lets you override the default base material with another one from The Material Editor. You supply the GUID of the material to apply, as a string.StringGUID
SealedJointMaterialThis parameter lets you override the default material with another one from The Material Editor. You supply the GUID of the material to apply, as a string.StringGUID
SealedJointMaterialTilingThis parameter lets you change the amount that the decal material is tiled. Default value is 1.FloatN/A
SealedJointMeshTilingThis parameter will affect the way that the material texture is sampled and shown, as the simulation uses the mesh vertex count to define the “patches” within the decal to be displayed. A high density mesh (ie: lower values) will show a more “noisy” sample from the material, while a lower density mesh (ie: higher values) will show a less noisy sample.Default value is 1.FloatMeters
SealedJointWidthMinThis parameter sets the minimum width for the sealed joint mesh (the actual width will be a random number between the min and max values).Default value is 1.FloatMeters
SealedJointWidthMaxThis parameter sets the maximum width for the sealed joint mesh (the actual width will be a random number between the min and max values).Default value is 1.FloatMeters
SealedJointLengthMinThis parameter sets the minimum length for the sealed joint mesh (the actual length will be a random number between the min and max values).Default value is 1.FloatMeters
SealedJointLengthMaxThis parameter sets the maximum length for the sealed joint mesh (the actual length will be a random number between the min and max values).Default value is 1.FloatMeters
SealedJointDensityThis parameter sets the density of the joints that will be added between the min/max length and width.Default value is 0.FloatN/A
SealedJointProfileThis parameter permits you to set a specific “damage profile” for where the sealed joint decals will be clustered.Integer Constant0: Joints will be scattered in a uniform away anywhere on the runways and roadways that have them.1: Joints will be mainly concentrated along the center of the runways and roadways that have them.2: Joints will be mainly concentrated along the edges of the runways and roadways that have them.
SealedJointOverMarkingsSetting this to 1 (TRUE) will force the sealed joints decals to be drawn over the runway markings. A value of 0 (FALSE) means that they will be under the runway markings.Default value is 0.BooleanN/A
RunwayPatchOpacityThis will change the opacity (alpha) of the decal, and should be between 0 (invisible) and 1 (fully opaque).Default value is 0.Floatpercent over 100
RunwayPatchMaterialThis parameter lets you override the default material with another one from The Material Editor. You supply the GUID of the material to apply, as a string.StringGUID
RunwayPatchColorFadeThis parameter (between 0 and 1) sets how much of the albedo texture colour for the patch materials will be blended with the underlying runway material colour. At 0, no colour from the patch will be used, and at 1, only the patch material colour will be used.Default value is 0.Floatpercent over 100
RunwayPatchSizeMinThis parameter sets the minimum size of the patch decal (the actual size will be a random number between the min and max values).Default value is 0.FloatMeters
RunwayPatchSizeMaxThis parameter sets the maximum size of the patch decal (the actual size will be a random number between the min and max values).Default value is 0.FloatMeters
RunwayPatchDensityThis parameter sets the density of the patches that will be added between the min/max length and width.Default value is 0.FloatN/A
RunwayPatchProfileThis parameter permits you to set a specific “damage profile” for where the patch decals will be clustered.Integer Constant0: Patches will be scattered in a uniform away anywhere on the runways and roadways that have them.1: Patches will be mainly concentrated along the center of the runways and roadways that have them.2: Patches will be mainly concentrated along the edges of the runways and roadways that have them.
RunwayGroovingOpacityThis will change the opacity (alpha) of the grooving decal, and should be between 0 (invisible) and 1 (fully opaque).Default value is 0.Floatpercent over 100
RunwayGroovingMaterialThis parameter lets you override the default grooving material with another one from The Material Editor. You supply the GUID of the material to apply, as a string.StringGUID
RunwayGroovingTilingUSets the horizontal tiling amount (along the width of the runway).Defualt value is 1.FloatMeters
RunwayGroovingTilingVSets the horizontal tiling amount (along the length of the runway).Defualt value is 1.FloatMeters
RunwayGroovingMinLengthSets the minimum length that the runway needs to be to have the runway groove decals applied (in meters).Default value is 2500.FloatMeters
AsphaltDirtOpacityThis will change the opacity (alpha) of the decal, and should be between 0 (invisible) and 1 (fully opaque).Default value is 0.Floatpercent over 100
AsphaltDirtMaterialThis parameter lets you override the default material with another one from The Material Editor. You supply the GUID of the material to apply, as a string.StringGUID
TaxiwayTireStainOpacityThis will change the opacity (alpha) of the decal, and should be between 0 (invisible) and 1 (fully opaque).Default value is 0.Floatpercent over 100
TaxiwayTireStainOpacityVarianceThis will change the amount of random variance in the decal opacity (alpha) that is applied, from 0 (no variance) to 1 (full variance).Floatpercent over 100
TaxiwayTireStainMaterialThis parameter lets you override the default material with another one from The Material Editor. You supply the GUID of the material to apply, as a string.StringGUID
TaxiwayTireStainWidthSets the relative width of the tire gum decal on the runway, where 1 is the un-scaled base decal width, 0.5 would be half the decal width, and 2 would double the decal width.FloatMeters
TaxiwayTireStainLongPathFadeThis sets the distance that the decal will be faded out over the length of the taxiway path.FloatMeters
TaxiwaySignEmissiveThis sets how much light the emissive textures of the taxiway signs emit.Floatnits
ApronPatchOpacityThis will change the opacity (alpha) of the decal, and should be between 0 (invisible) and 1 (fully opaque).Default value is 0.Floatpercent over 100
ApronPatchMaterialThis parameter lets you override the default material with another one from The Material Editor. You supply the GUID of the material to apply, as a string.StringGUID
ApronPatchSizeMinThis parameter sets the minimum size of the patch decal (the actual size will be a random number between the min and max values).Default value is 0.FloatMeters
ApronPatchSizeMaxThis parameter sets the maximum size of the patch decal (the actual size will be a random number between the min and max values).Default value is 0.FloatMeters
ApronPatchDensityThis parameter sets the density of the patches that will be added over the whole apron.Default value is 0.FloatN/A
ApronStainOpacityThis will change the opacity (alpha) of the stain decal, and should be between 0 (invisible) and 1 (fully opaque).Default value is 0.Floatpercent over 100
ApronStainMaterialThis parameter lets you override the default material with another one from The Material Editor. You supply the GUID of the material to apply, as a string.StringGUID
ApronStainSizeMinThis parameter sets the minimum size of the stain decal (the actual size will be a random number between the min and max values).Default value is 0.FloatMeters
ApronStainSizeMaxThis parameter sets the maximum size of the stain decal (the actual size will be a random number between the min and max values).Default value is 0.FloatMeters
ApronStainDensityThis parameter sets the density of the stains that will be added over the whole apron.Default value is 0.FloatN/A
ApronCarTireMarkOpacityThis will change the opacity (alpha) of the decal, and should be between 0 (invisible) and 1 (fully opaque).Default value is 0.Floatpercent over 100
ApronCarTireMarkMaterialThis parameter lets you override the default material with another one from The Material Editor. You supply the GUID of the material to apply, as a string.StringGUID
ApronCarTireMarkSizeMinThis parameter sets the minimum size of the tire mark decal (the actual size will be a random number between the min and max values).Default value is 0.FloatMeters
ApronCarTireMarkSizeMaxThis parameter sets the maximum size of the tire mark decal (the actual size will be a random number between the min and max values).Default value is 0.FloatMeters
ApronCarTireMarkDensityThis parameter sets the density of the cracks that will be added over the whole apron.Default value is 0.FloatN/A
ApronCrackOpacityThis will change the opacity (alpha) of the decal, and should be between 0 (invisible) and 1 (fully opaque).Default value is 0.Floatpercent over 100
ApronCrackMaterialThis parameter lets you override the default material with another one from The Material Editor. You supply the GUID of the material to apply, as a string.StringGUID
ApronCrackMaterialTilingThis parameter lets you change the amount that the decal material is tiled. Default value is 1.FloatN/A
ApronCrackMeshTilingThis parameter will affect the way that the material texture is sampled and shown, as the simulation uses the mesh vertex count to define the “patches” within the decal to be displayed. A high density mesh (ie: lower values) will show a more “noisy” sample from the material, while a lower density mesh (ie: higher values) will show a less noisy sample.Default value is 1.FloatMeters
ApronCrackWidthMinThis parameter sets the minimum width for the cracks mesh (the actual width will be a random number between the min and max values).Default value is 1.FloatMeters
ApronCrackWidthMaxThis parameter sets the maximum width for the cracks mesh (the actual width will be a random number between the min and max values).Default value is 1.FloatMeters
ApronCrackLengthMinThis parameter sets the minimum length for the cracks mesh (the actual width will be a random number between the min and max values).Default value is 1.FloatMeters
ApronCrackLengthMaxThis parameter sets the maximum length for the cracks mesh (the actual width will be a random number between the min and max values).Default value is 1.FloatMeters
ApronCrackDensityThis parameter sets the density of the cracks that will be added between the min/max length and width.Default value is 0.FloatN/A

<ApronControl>

This a sub-element of the <Airport> element and is used to add one or more Airline Codes for airport services. Each airline code registers a new Apron Control Unit for use at the airport and enables the airport and other objects to request and use the advanced services that can interact with other airport objects and aircraft. If you do not supply an Apron Control airline code, then this will mean that the airport has to use “fallback” services, which aren’t as comprehensive. Note that you can add multiple <ApronControl> elements and each one will create a new apron control unit with the designated airline code. Normally, this is the procedure for airports with multiple gates and aircraft parking spots, as you would want to have one control unit per gate (or cluster of gates).

For more information on the advanced setup of Apron Services, please see here:

This element has the following attribute:

AttributeDescriptionTypeRequired
airlineCodesHere you can give an airline code which is used to identify the airport service to be associated with the airport.StringNo

<Tower>

This a sub-element of the <Airport> element and is used to place an air traffic control tower location at an airport. This element must contain a single <SceneryObject> element, and has the following attributes:

AttributeDescriptionTypeRequired
displayNameThe display name for the object in the Scenery Editor.Note: this is only used for ordering in the The Scenery Contents ListStringNo
parentGroupIDThe ID of the parent group this object belongs to.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
groupIndexThe group index of the object.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
latLatitude of the tower location, in degrees between -90.0° and 90.0°.FloatNo
lonLongitude of the tower location, in degrees between -180.0° and 180.0°.FloatNo
altAltitude of the tower location, in meters. You may add the “F” suffix to convert the value to feet, for example: “13.0F”.FloatNo
alt_typeThis is used to determine the referential for the alt fieldEnum: GEOIDELLIPSOIDNo
overrideSizeUsed to override the default size.Enum: NONESMALLMEDIUMLARGENo
overrideLevelUsed to override the default level (values from 0 - 255 only).IntegerNo

<Services>

This a sub-element of the <Airport> element and has no attributes, It is used as a container for the self-closing <Fuel /> element

<Fuel />

This is a sub-element of <Services> and is used to define the type of fuel that may be available (or unavailable) at an airport. It has the following attributes:

AttributeDescriptionTypeRequired
typeThe type of fuel the service offers.Enum: 7387100130145MOGASJETJETAJETA1JETAPJETBJET4JET5UNKNOWNYes
availabilityThe fuel availability.Enum: YESNOUNKNOWNPRIOR_REQUESTYes

<Com />

This a sub-element of both the <Airport> and <Boundary> elements and is used to add one or more COM (communication) frequencies to an airport or a boundary. Note that this is a self-closing element and has the following attributes:

AttributeDescriptionTypeRequired
frequencyFrequency for COM in MHz, between 108.0 to 136.992.FloatNo
typeThe type of COM frequency.Enum: APPROACHASOSATISAWOSCENTERCLEARANCECLEARANCE_PRE_TAXICTAFDEPARTUREFSSGROUNDMULTICOMREMOTE_CLEARANCE_DELIVERYTOWERUNICOMNo
nameFriendly name for COM frequency (48 characters max)StringNo
NOTE

Editing COM data may prevent the simulation performing further automatic updates to the navigation data for the airport. Please see the following section for more information: Note On Navigation Data

<RunwayAlias>

This a sub-element of the <Airport> element and is used when replacing components inside of an airport (like taxiways), but the intent is not to replace the actual runways. This element serves as a note to the compiler that the old runway definition is to be preserved. This is a self-closing element and has the following attributes:

AttributeDescriptionTypeRequired
numberNumber of the runway. Note that you do not suffix the designator onto this value, but instead define it separately in the designator attribute.Integer:1 - 36or Enum: EASTNORTHNORTHEASTNORTHWESTSOUTHSOUTHEASTSOUTHWESTWESTYes
designatorDesignator of the runway.Enum: NONECCENTERLLEFTRRIGHTWWATERABENNENWSSESWWNo

<Ils>

This element is used to add one or more ILS beacons to either an <Airport> element or a <Runway> element. If assigned to an airport, the runway will need to use the <IlsReference /> sub-element to reference them, but if used on a runway, this is not required. This element may contain <GlideSlope />, <Dme /> and <VisualModel> sub-elements.

NOTE

Editing ILS data may prevent the simulation performing further automatic updates to the navigation data for the airport. Please see the following section for more information: Note On Navigation Data

The element may also have the following attributes:

AttributeDescriptionTypeRequired
latLatitude of the ILS beacon, in degrees between -90.0° and 90.0°.FloatYes
lonLongitude of the ILS beacon, in degrees between -180.0° and 180.0°.FloatYes
altAltitude of the ILS beacon, in meters. You may add the “F” suffix to convert the value to feet, for example: “13.0F”.FloatYes
altTypeThis is used to determine the referential for the alt field.Enum: GEOIDELLIPSOIDNo
headingThe heading of main ILS beam, from 0.0° to 360.0°, relative to magnetic north.FloatYes
frequencyThe ILS frequency in MHz, from 108.0 to 136.992.StringYes
endWhich end of the runway the ILS beacon is for.Enum: PRIMARYSECONDARYYes
rangeRange of ILS in meters or nautical miles. If no suffix is supplied, then the range will be set in meters, however using the “N” suffix converts the range into nautical miles, eg: “45N”. If this attribute is not set, it will default to “27N”.StringNo
magvarMagnetic variation at the ILS beacon to True North in degrees. Negative for values to the east and positive for values to the west, measured in degrees between -360.0° and 360.0°.FloatYes
identicao code identity for this ILS beacon, with a maximum of 8 characters.StringYes
widthLocalizer beam width in degrees, from 0.0° to 360.0°. If the attribute is not supplied a default value of 5.0° will be used.FloatNo
backCourseBoolean indicating that this ILS has a back course.BooleanNo
lsCategoryThis defines the category of landing system being used.Enum: “LOCALIZER”“CAT1”“CAT2”“CAT3”“IGS”“LDA_NO_GS”“LDA_WITH_GS”“SDF_NO_GS”“SDF_WITH_GS”No
trueReferencedIf this is “True” then the ILS is using true North rather than the magnetic north.BooleanNo

<GlideSlope />

Set the glideslope sub-element for the <Ils> beacon. Note that this is a self-closing element and has the following attributes:

AttributeDescriptionTypeRequired
latLatitude of the object, in degrees between -90.0° and 90.0°.FloatYes
lonLongitude of the object, in degrees between -180.0° and 180.0°.FloatYes
altAltitude of the object, in meters. You may add the “F” suffix to convert the value to feet, for example: “13.0F”.FloatYes
altTypeThis is used to determine the referential for the alt field.Enum: GEOIDELLIPSOIDNo
pitchThe pitch of glide slope, from 0.0° to 360.0°.FloatYes
rangeRange of glide slope in meters or nautical miles. If no suffix is supplied, then the range will be set in meters, however using the “N” suffix converts the range into nautical miles, eg: “45N”. If this attribute is not set, it will default to “27N”.StringNo

<Dme />

Set the DME values for the <Ils> beacon. Note that this is a self-closing element and has the following attributes:

AttributeDescriptionTypeRequired
latLatitude of the object, in degrees between -90.0° and 90.0°.FloatNo
lonLongitude of the object, in degrees between -180.0° and 180.0°.FloatNo
altAltitude of the object, in meters. You may add the “F” suffix to convert the value to feet, for example: “13.0F”.FloatNo
altTypeThis is used to determine the referential for the alt field.Enum: GEOIDELLIPSOIDNo
rangeRange of of the DME in meters or nautical miles. If no suffix is supplied, then the range will be set in meters, however using the “N” suffix converts the range into nautical miles, eg: “45N”. If this attribute is not set, it will default to “27N”.StringNo
biasThis defines the bias of the DME location, which can be used to tweak the DME such that it gives a 0 range at the runway threshold even if the DME itself is located further from the threshold.nmNo

<Aprons>

This a sub-element of the <Airport> element and is used to add aprons to an airport. The element has no attributes but can contain one or more <apron> sub-element, explained below.

<Apron>

This element is used to add an apron to the <Aprons> list of an airport. This element usually contains multiple <Vertex /> sub-elements and can also contain a <Coloration /> element. It has the following attributes:

AttributeDescriptionTypeRequired
displayNameThe display name for the object in the Scenery Editor.Note: this is only used for ordering in the The Scenery Contents ListStringNo
parentGroupIDThe ID of the parent group this object belongs to.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
groupIndexThe group index of the object.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
surfaceThe name of the surface material to use.StringNo
drawSurfaceWhether to draw the underlying surface or not.BoolNo
drawDetailWhether to draw the detail texture surface or notBoolNo
localUVWhen this attribute is set to “TRUE”, the surface material will be applied to the local coordinates of the apron. This means that moving the apron will also move the surface material, keeping it aligned with the position of the apron. When set to “FALSE”, moving the apron will not change the position of the surface material.Default value is “TRUE”.BoolNo
stretchUVWhen this attribute is set to “TRUE”, the surface material will be stretched to fit within the bounds of the apron area, such that changing the apron scale will also change the scale of the material being applied. When set to “FALSE”, the material will not be stretched when you change the size of the apron object.Note that if this is “TRUE” then the tiling attribute should be omitted.BoolNo
flipUVWhen this attribute is “TRUE”, the UV coordinates for the texture that the applied material is using will be flipped.BoolNo
isRectangleWhen this attribute is “TRUE”, the apron is considered a rectangular area (only used by the Scenery Editor).BoolNo
priorityThis attribute sets the render priority for the apron. If you have overlapping aprons and want one to render over another one, then you will need to change this value. Higher priority values will render over lower priorities, for example, an apron with priority 1 will render over one with priority 0, which in turn will render over one with priority -1. Note that the render pipeline cannot guarantee the render order for aprons with the same priority, so if you need something to always render over or under something else, you need to set this value.IMPORTANT! This value also encodes the Force draw above runways and Force draw above markings settings where:To draw above runway, the priority must be more than 1000000000to draw above markings, the priority must be more than 2000000000Essentially, set the priority and then add the extra amount required for drawing above the runway and/or markings, as required.FloatNo
tilingThis attribute permits you to change the tiling scale for the applied material texture. Note that if this is included in the XML then the stretchUV attribute should be omitted.FloatNo
offsetUThis attribute permits you to offset the texture alignment along the U axis, and should only be included in the XML is the tiling attribute has been set.FloatNo
offsetVThis attribute permits you to offset the texture alignment along the V axis, and should only be included in the XML is the tiling attribute has been set.FloatNo
headingThis attribute rotates the surface material texture within the apron area, changing it’s orientation without changing the orientation of the apron itself.FloatNo
falloffThis attribute can be used to “feather” the edges of the apron, removing the hard edge where the apron ends and the terrain begins. The value given should be in meters.FloatNo
opacityThis attribute can be used to make the apron surface texture more or less transparent. You give a value between 0 and 1, where 0 is fully transparent, and 1 is fully opaque.FloatNo
groundMergingWhen set to “TRUE”, this attribute will merge the terrain textures with the material texture that is used for the apron.BoolNo
excludeVegetationAroundWhen set to “TRUE”, this attribute will remove any vegetation that is near the edge of the taxiway path object.BoolNo
excludeVegetationInsideWhen set to “TRUE”, this attribute will remove any vegetation that is within the bounds of the taxiway path object.BoolNo

<PaintedElements>

This a sub-element of the <Airport> element and permits you to define the different painted lines and other things that are on the airport ground. It has no attributes and can contain the following sub-elements:

<PaintedPolygon>

This element is a sub-element of <PaintedElements> and is used to paint a polygon area within an airport, and as such uses the <Vertex /> sub-element to define the area being painted (minimum required is three vertices). It has the following attributes to define the color that is to be used:

AttributeDescriptionTypeRequired
redRed component of the paint (between 0 and 255).IntegerYes
greenGreen component of the paint (between 0 and 255).IntegerYes
blueBlue component of the paint (between 0 and 255).IntegerYes
alphaAlpha component of the paint (between 0 and 255).IntegerYes

<PaintedLine>

This element is a sub-element of <PaintedElements> and is used to paint a line, and as such it requires at least two <Vertex /> sub-elements to define the start and end points of the line, although you can define more vertices if required between those points. It has the following attributes to define the type of line to be painted:

AttributeDescriptionTypeRequired
displayNameThe display name for the object in the Scenery Editor.Note: this is only used for ordering in the The Scenery Contents ListStringNo
parentGroupIDThe ID of the parent group this object belongs to.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
groupIndexThe group index of the object.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
typeThe type of line to be painted.Enum: DEFAULTHOLD_SHORT_FORWARDHOLD_SHORT_BACKWARDHOLD_SHORT_FORWARD_MARKEDHOLD_SHORT_BACKWARD_MARKEDILS_HOLD_SHORTEDGE_LINE_SOLIDEDGE_LINE_DASHEDHOLD_SHORT_TAXIWAYSERVICE_DASHEDEDGE_SERVICE_SOLIDEDGE_SERVICE_DASHEDWIDE_YELLOWWIDE_WHITEWIDE_REDSLIM_REDEDGE_SOLID_ORTHOEDGE_SOLID_ORTHO_BACKNON_MOVEMENTNON_MOVEMENT_BACKENHANCED_CENTERDEFAULT_LIGHTEDHOLD_SHORT_FORWARD_MARKED_LHOLD_SHORT_BACKWARD_MARKED_LHOLD_SHORT_FORWARD_LIGHTEDHOLD_SHORT_BACKWARD_LIGHTEDILS_HOLD_SHORT_LIGHTEDEDGE_LINE_SOLID_LIGHTEDEDGE_LINE_DASHED_LIGHTEDHOLD_SHORT_TAXIWAY_LIGHTEDSERVICE_DASHED_LIGHTEDEDGE_SERVICE_SOLID_LIGHTEDEDGE_SERVICE_DASHED_LIGHTEDWIDE_YELLOW_LIGHTEDWIDE_WHITE_LIGHTEDWIDE_RED_LIGHTEDSLIM_RED_LIGHTEDEDGE_SOLID_ORTHO_LIGHTEDEDGE_SOLID_ORTHO_BACK_LIGHTNON_MOVEMENT_LIGHTEDNON_MOVEMENT_BACK_LIGHTEDENHANCED_CENTER_LIGHTEDYes
outlineTypeThe type of outline to use on the painted lines.Enum: NO_OUTLINELINEBORDERFITNo
trueAngleSet the true angle type.Enum: NONEBEGINENDBOTH_ENDSALL_POINTSNo
surfaceMaterial to apply to the line.String:“CONCRETE”“GRASS”“WATER”“GRASS_BUMPY”“ASPHALT”“SHORT_GRASS”“LONG_GRASS”“HARD_TURF”“SNOW”“ICE”“URBAN”“FOREST”“DIRT”“CORAL”“GRAVEL”“OIL_TREATED”“STEEL_MATS”“BITUMINUS”“BRICK”“MACADAM”“PLANKS”“SAND”“SHALE”“TARMAC”“WRIGHT_FLYER_TRACK”No

<PaintedHatchedArea>

This element is a sub-element of <PaintedElements> and is used to paint a cross hatched polygon, and as such uses the <Vertex /> sub-element to define the area being painted (minimum required is three vertices). It has the following attributes to define the area that is to be used:

AttributeDescriptionTypeRequired
displayNameThe display name for the object in the Scenery Editor.Note: this is only used for ordering in the The Scenery Contents ListStringNo
parentGroupIDThe ID of the parent group this object belongs to.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
groupIndexThe group index of the object.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
headingFacing angle for the hatching. Value between 0° and 360°.FloatYes
spacingThe distance between the lines of the hatching. The distance is in meters, but you can suffix the value with “F” for feet, eg: “2F”.FloatYes
typeThe type of line to be used for the hatching.Enum: DEFAULTHOLD_SHORT_FORWARDHOLD_SHORT_BACKWARDHOLD_SHORT_FORWARD_MARKEDHOLD_SHORT_BACKWARD_MARKEDILS_HOLD_SHORTEDGE_LINE_SOLIDEDGE_LINE_DASHEDHOLD_SHORT_TAXIWAYSERVICE_DASHEDEDGE_SERVICE_SOLIDEDGE_SERVICE_DASHEDWIDE_YELLOWWIDE_WHITEWIDE_REDSLIM_REDEDGE_SOLID_ORTHOEDGE_SOLID_ORTHO_BACKNON_MOVEMENTNON_MOVEMENT_BACKENHANCED_CENTERDEFAULT_LIGHTEDHOLD_SHORT_FORWARD_MARKED_LHOLD_SHORT_BACKWARD_MARKED_LHOLD_SHORT_FORWARD_LIGHTEDHOLD_SHORT_BACKWARD_LIGHTEDILS_HOLD_SHORT_LIGHTEDEDGE_LINE_SOLID_LIGHTEDEDGE_LINE_DASHED_LIGHTEDHOLD_SHORT_TAXIWAY_LIGHTEDSERVICE_DASHED_LIGHTEDEDGE_SERVICE_SOLID_LIGHTEDEDGE_SERVICE_DASHED_LIGHTEDWIDE_YELLOW_LIGHTEDWIDE_WHITE_LIGHTEDWIDE_RED_LIGHTEDSLIM_RED_LIGHTEDEDGE_SOLID_ORTHO_LIGHTEDEDGE_SOLID_ORTHO_BACK_LIGHTNON_MOVEMENT_LIGHTEDNON_MOVEMENT_BACK_LIGHTEDENHANCED_CENTER_LIGHTEDYes

<DetailPolys>

This a sub-element of the <Airport> element and is a container element for one or more detail polygon in the scene. It has no attributes, and requires one or more <DetailPoly> sub-element.

<DetailPoly>

This a sub-element of the <DetailPolys> element and is used to define the detail polygon shape. It has no attributes and requires at least three <Vertex /> sub-elements to define the polygon shape.

<ApronEdgeLights>

This a sub-element of the <Airport> element and is used to define the edge lights to the apron of an airport. Note that this element is defined under the main <Airport> element, and not as part of the <Apron> sub-element, and it usually contains multiple <EdgeLights> sub-elements and has no attributes.

<EdgeLights>

This element is used to add edge lights to the <ApronEdgeLights> list of an airport (this is the LightRow Object in the Scenery Editor). This will contain multiple <Vertex /> sub-elements - where each vertex corresponds to a position between which lights will be drawn - and has the following attributes:

AttributeDescriptionTypeRequired
displayNameThe display name for the object in the Scenery Editor.Note: this is only used for ordering in the The Scenery Contents ListStringNo
parentGroupIDThe ID of the parent group this object belongs to.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
groupIndexThe group index of the object.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
presetThis is the name of the preset to use for the edge light object. Presets are defined per airport from the <LightPreset> section.FloatNo
snapToVerticesWhen this is set to “True” the lights will only be placed on the vertices of the path that generates the light row. Enabling this will also override the spacing setting.BoolNo
headingHere you can set the heading value, in degrees.FloatNo
spacingThis attribute sets the spacing between each light along the row. The spacing is in meters, and is only used if the snapToVertices attribute is set to “False”.FloatNo

<LightPreset>

This a sub-element of the <Airport> element and is used to define a single light preset to be used by the airport, and you can have multiple sub-elements of this type to define multiple different light presets. The element requires one <Light /> sub-element and has the following properties:

AttributeDescriptionTypeRequired
nameThis is the name of the preset (which will be referenced by other objects to identify the preset).StringNo
phaseThis is only applicable if you have set the Phase property for the <Light /> that is being used by the preset. Essentially, this is a value that will be added to the light phase in an incremental fashion so that all lights using this preset phase in sequence rather than at the same time.FloatNo
meshThe GUID of the model mesh to use for the lights in the preset.GUIDNo

<Light />

This a self-closing sub-element of the <LightPreset> element and is used to define the properties of each individual light that will be used by the preset. It has the following attributes:

AttributeDescriptionTypeRequired
relativePositionThis is the offset for the light from the position it was placed in the world along the Y/Z/X axis, where the X axis will follow the light row that the preset is applied to. Values are in meters, and are given separated by commas.StringNo
directionThe direction of the light, set using Y/Z/X axis values, and the values used here will be added to the local frame of reference for the objects that use the preset. This parameter is used by all lights except the omni-directional type. Note that for Double Angle Directional and Fresnel lights, this value is for defining a normal from which a cutoff plane will be created for the light. Values are in degrees, and are given separated by commas.StringNo
direction2The second direction of the light, set using Z/X/Y axis values, and the values used here will be added to the local frame of reference for the components that use the preset. This is only used by the Angled Directional, Double Angled Directional, and Fresnel lights to set a normal for the cutoff plane used by those lights. Values are in degrees, and are given separated by commas.StringNo
typeSets the type of light that is being used. For an illustration of each one, please see the Light Presets section of the Scenery Editor.Enum: ANGLEDIRECTIONALDOUBLEANGLEDIRECTIONALFRESNELNONEOMNIDIRECTIONALUNIDIRECTIONALNo
fadeSets the type of fade to be applied to the light when it has duration, period, and/or phase settings.Enum: FADE_INFADE_IN_OUTFADE_OUTNO_FADENo
radiusThe radius of the light, in meters. This is essentially the distance of the “glow” around the light.FloatNo
colorThe color of the light, expressed as a string “R,G,B” where each colour is given as a value between 0 and 255.StringNo
intensityThe intensity of the light when fully on. Intensity is measured in candela, and higher values will mean a more intense light which will be visible at a greater distance.FloatNo
boostDayLightWhen this is set to “True” it will increase the intensity of the light during the day such that it will still be visible. If “False” - unless the intensity is very high - the light will only be visible during the night.BoolNo
durationThe duration of the light “ON” phase in seconds.FloatNo
periodThe combined total period of the light being on and the light being off (including fades in/out). For example, setting the duration to 10 and the period to 20 would have an “on” of 10 and an “off” of 10 (so the total is the period value of 20).FloatNo
phaseAn offset value for the light period so you can create sequences of flashing lights that flash on/off at different times but with the same period. Note that this will be combined with the <LightPreset> Incremental Phase value (if anything other than 0), so you can create complex effects of “marching” lights.FloatNo

<LightSupport />

This is a sub-element of the <Airport> element and is for adding a rectangular surface (sloped or flat) that will determine the altitude of all lights within the defined rectangle. Note that this is a self-closing element and has the following attributes:

AttributeDescriptionTypeRequired
displayNameThe display name for the object in the Scenery Editor.Note: this is only used for ordering in the The Scenery Contents ListStringNo
parentGroupIDThe ID of the parent group this object belongs to.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
groupIndexThe group index of the object.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
latitudeLatitude of the light support object, in degrees between -90.0° and 90.0°.FloatYes
longitudeLongitude of the light support object, in degrees between -180.0° and 180.0°.FloatYes
altitudeInitial altitude of the light support rectangle (in meters).FloatYes
altitude2Final altitude of the light support rectangle (in meters).FloatYes
headingFacing angle for the support rectangle. Value between 0° and 360°.FloatYes
widthThe width of the rectangle in meters.FloatYes
lengthThe length of the rectangle in metersFloatYes
excludeLightsWhether to exclude lights in the rectangle or not (this will exclude the lights, and the light model objects)BoolNo
excludeLightObjectsWhether to exclude only the light objects or not (if set to TRUE, then the lights will still appear as “floating” bright points without their object model).BoolNo

<AirportGroup />

This is a sub-element of the <Airport> element and is only used by the Scenery Editor for visual organisiation. It is a self-closing element and has the following attributes:

AttributeDescriptionTypeRequired
displayNameThe display name for the object in the Scenery Editor.StringNo
groupIDThe group ID value.IntegerYes
parentGroupIDThe ID of the parent group this object belongs to.IntegerNo
groupIndexThe group index of the object.IntegerNo

<Group>

This is a sub-element of the <Airport> element and is only used by the Scenery Editor for visual organisation of Scenery Objects. It is a container for one or more <SceneryObject> elements and has the following attributes:

AttributeDescriptionTypeRequired
nameThe name of the scenery group.StringNo
displayNameThe display name for the object in the Scenery Editor.StringNo
parentGroupIDThe ID of the parent group this object belongs to.IntegerNo
groupIndexThe group index of the object.IntegerNo
groupIDThe group ID value.IntegerNo
groupGeneratedWhen “True” the group was auto-generated by the Scenery Editor.BoolNo

<TaxiwaySign />

This a sub-element of the <Airport> element and is used to define a taxiway sign. It is a self-closing element with the following attributes:

AttributeDescriptionTypeRequired
displayNameThe display name for the object in the Scenery Editor.Note: this is only used for ordering in the The Scenery Contents ListStringNo
parentGroupIDThe ID of the parent group this object belongs to.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
groupIndexThe group index of the object.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
latLatitude of the taxiway sign object, in degrees between -90.0° and 90.0°.FloatNo
lonLongitude of the taxiway sign object, in degrees between -180.0° and 180.0°.FloatNo
headingFacing angle for the support rectangle. Value between 0° and 360°.FloatNo
labelThis is a string of characters that defines the display shown on the taxiway sign. For details on how this is constructed, please see here: Raw LabelStringNo
justificationThis defines the justification side for the display text.Enum: LEFTRIGHTNo
sizeThe sign size. Can only be a value between 1 and 5 inclusive.IntegerNo

<TextMarking>

This element is a sub-element of the <Airport> element, and is used to add a text object to the airport facility. This element can contain the following sub-elements:

The element has the following attributes:

AttributeDescriptionTypeRequired
displayNameThe display name for the object in the Scenery Editor.Note: this is only used for ordering in the The Scenery Contents ListStringNo
parentGroupIDThe ID of the parent group this object belongs to.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
groupIndexThe group index of the object.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
latLatitude of the text marking, in degrees between -90.0° and 90.0°.FloatNo
lonLongitude of the text marking, in degrees between -180.0° and 180.0°.FloatNo
headingFacing angle for the text marking. Value between 0° and 360°.FloatNo
scaleThe scale multiplier for the text marking. A value of 1 is the default scale.FloatNo
letterSpacingThe horizontal spacing offset between the letters of the text. Setting this to 0 uses the default spacing, while larger numbers will increase the spacing and lower numbers will decrease it.FloatNo
lineSpacingThe vertical spacing offset between the lines of the text. Setting this to 0 uses the default spacing, while larger numbers will increase the spacing and lower numbers will decrease it.FloatNo
paddingXSets the visual padding around the text on the horizontal axis. Setting this to 0 uses the default padding, while larger numbers will increase the padding and lower numbers will decrease it. The effect of this value is only visible when you have set either drawBackground or drawOutline (or both) to “true”.FloatNo
paddingYSets the visual padding around the text on the vertical axis. Setting this to 0 uses the default padding, while larger numbers will increase the padding and lower numbers will decrease it. The effect of this value is only visible when you have set either drawBackground or drawOutline (or both) to “true”.FloatNo
outlineThicknessSets the thickness of the text object outline. The default value is 0.1, and note that this will only be visible if the drawOutline attribute is “true”.FloatNo
drawBackgroundSets whether there should be a background to the text (“true”) or not (“false”). If set to “true” then you can include the <ColorBackground /> element to set the background colour.BooleanNo
drawOutlineSets whether there should be a background to the text (“true”) or not (“false”). If set to “true” then you can include the <ColorBackground /> element to set the background colour.BooleanNo
centerWhen this is set to “true” text will be centered within the marking area, while setting it to “false” means that all text will be left-justified.BooleanNo
labelThis is the text that will be displayed in the marking. See the section below on Label Contents.StringNo
Label Contents

The contents of the label attribute can can be any upper or lower case letter (A - Z, a - z), any numerical digit (0 - 9), or any one of the following characters:

CharacterSymbol DescriptionExample
*The next letter will be half height.For example: AB*CD
**All subsequent letters will be half height until ** is used again, or a new line is created.For example: A**BCD
[,[[,[[[Roman numerals for 1, 2, and 3.
&lt;Left Arrow
^Up Arrow
&gt;Right Arrow
!Down Arrow
^&lt;Up-Left Arrow
^&gt;Up-Right Arrow
!&lt;Down-Left Arrow
!&gt;Down-Right Arrow
/\.,-'#Special Characters
$New line.

<ColorText />

This is a self-closing sub-element of <TextMarking> and is used to set the colour of the text within the text marking object. This element must be included to set the text colour, and has the following attributes:

AttributeDescriptionTypeRequired
redThe red component of the text colour, expressed as a value between 0 and 255.IntegerYes
greenThe green component of the text colour, expressed as a value between 0 and 255.IntegerYes
blueThe blue component of the text colour, expressed as a value between 0 and 255.IntegerYes
alphaThe alpha component of the text colour, expressed as a value between 0 and 255.IntegerNo
overrideThis is an internal parameter used by the Scenery Editor and should not be edited or added manually.BoolNo

<ColorBackground />

This is an optional, self-closing, sub-element of <TextMarking> and is used to set the colour of the text marking background. The element has the following attributes:

AttributeDescriptionTypeRequired
redThe red component of the text background colour, expressed as a value between 0 and 255.IntegerYes
greenThe green component of the text background colour, expressed as a value between 0 and 255.IntegerYes
blueThe blue component of the text background colour, expressed as a value between 0 and 255.IntegerYes
alphaThe alpha component of the text background colour, expressed as a value between 0 and 255.IntegerNo
overrideThis is an internal parameter used by the Scenery Editor and should not be edited or added manually.BoolNo

<ColorOutline />

This is an optional, self-closing, sub-element of <TextMarking> and is used to set the colour of the text marking outline. The element has the following attributes:

AttributeDescriptionTypeRequired
redThe red component of the text outline colour, expressed as a value between 0 and 255.IntegerYes
greenThe green component of the text outline colour, expressed as a value between 0 and 255.IntegerYes
blueThe blue component of the text outline colour, expressed as a value between 0 and 255.IntegerYes
alphaThe alpha component of the text outline colour, expressed as a value between 0 and 255.IntegerNo
overrideThis is an internal parameter used by the Scenery Editor and should not be edited or added manually.BoolNo

<Waypoint>

This a sub-element of both the <Airport> and <FSData> elements and is used to add a waypoint to the airport facility database or to the world.

NOTE

Editing Waypoint data may prevent the simulation performing further automatic updates to the navigation data for the airport. Please see the following section for more information: Note On Navigation Data

This element may contain the optional sub-element <Route>, but if it has no sub-elements it can be self-closing. The element has the following attributes:

AttributeDescriptionTypeRequired
latLatitude of the waypoint, in degrees between -90.0° and 90.0°.FloatNo
lonLongitude of the waypoint, in degrees between -180.0° and 180.0°.FloatNo
waypointTypeThe type of waypoint.Enum: NAMEDUNNAMEDVORNDBOFF_ROUTEIAFFAFVFRRNAVNo
waypointRegionThe waypoint region code (maximum 3 characters, based on iso-3166-2(opens in a new tab)).StringNo
waypointIdentThe identity for this waypoint, with a maximum of five characters.StringNo
magvarMagnetic variation, the angle difference between the magnetic north and true north. Negative for value to the east and positive for value to the west, measured in degrees between -360.0° and 360.0°.FloatNo

<Route>

This sub-element of <Waypoint> is used to add a route designation to a waypoint. The element has two sub-elements - <Previous /> and <Next /> - and has the following attributes:

AttributeDescriptionTypeRequired
routeTypeLatitude of the airport reference point, in degrees between -90.0° and 90.0°.Enum: VICTORJETBOTHNo
nameThe name of the route (maximum 8 characters).StringNo
<Previous />

This is a sub-element of <Route> and adds the previous waypoint data to the route. This is a self-closing element with the following attributes:

AttributeDescriptionTypeRequired
waypointRegionThe waypoint region code (maximum 3 characters, based on iso-3166-2(opens in a new tab)).StringNo
waypointIdentThe identity for this waypoint, with a maximum of five characters.StringNo
waypointTypeThe type of waypoint.Enum: NAMEDUNNAMEDVORNDBOFF_ROUTEIAFFAFVFRRNAVNo
altitudeMinimumThe minimum altitude for the waypoint, in ft.FloatNo
<Next />

This is a sub-element of <Route> and adds the next waypoint data to the route. This is a self-closing element with the following attributes:

AttributeDescriptionTypeRequired
waypointRegionThe waypoint region code (maximum 3 characters, based on iso-3166-2(opens in a new tab)).StringNo
waypointIdentThe identity for this waypoint, with a maximum of five characters.StringNo
waypointTypeThe type of waypoint.Enum: NAMEDUNNAMEDVORNDBOFF_ROUTEIAFFAFVFRRNAVNo
altitudeMinimumThe minimum altitude for the waypoint, in ft.FloatNo

<Helipad>

This a sub-element of the <Airport> element and can be used to define one or more helipads within an airport facility.

NOTE

If you wish the helipad to be available as a starting location for helicopter flights, then you also need to define a <Start /> element of the type “HELIPAD”.

This element can have the <Coloration /> sub-element, otherwise it is self-closing and has the following attributes:

AttributeDescriptionTypeRequired
displayNameThe display name for the object in the Scenery Editor.Note: this is only used for ordering in the The Scenery Contents ListStringNo
parentGroupIDThe ID of the parent group this object belongs to.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
groupIndexThe group index of the object.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
latLatitude of the helipad, in degrees between -90.0° and 90.0°.FloatYes
lonLongitude of the helipad, in degrees between -180.0° and 180.0°.FloatYes
altAltitude of the helipad, in meters. You may add the “F” suffix to convert the value to feet, for example: “13.0F”.FloatYes
alt_typeThis is used to determine the referential for the alt fieldEnum: GEOIDELLIPSOIDNo
surfaceSurface material to apply to the helipadYes
headingFacing angle for the helipad. Value between 0° and 360°.FloatYes
lengthLength of the helipad. Length is in meters, but you can suffix the value with “F” for feet, eg: “2000F”.FloatYes
widthWidth of the helipad. Length is in meters, but you can suffix the value with “F” for feet, eg: “2000F”. Float YesFloatYes
typeThe type of helipad. Note that if you enter type as CIRCLE or SQUARE and the length and width are not identical, then the shape of the helipad will be an ellipse or rectangle, respectively.Enum: NONECIRCLEHMEDICALSQUAREYes
closedBoolean indicating whether the helipad is closed (TRUE) or not (FALSE)BooleanNo
transparentBoolean indicating that the helipad should be drawn without pavement (markings only)BooleanNo
fatoLengthThis attribute will add a Final Approach and Takeoff (FATO) area to the helipad of the given length, in meteres.FloatNo
fatoWidthThis attribute will add a Final Approach and Takeoff (FATO) area to the helipad of the given width, in meteres.FloatNo
isRunwayThis attribute tells the simulation to display the FATO area markings for a runway when set to “TRUE”.BooleanNo
runwayNumberThis attribute, when included in the XML will display the given value as a runway number within the Final Approach and Takeoff (FATO) markings.IntegerNo
leadingZeroIdentThis attribute, when set to “TRUE”, will prefix the runway numbers 1 - 9 with a 0, as done in European airports.BooleanNo
excludeVegetationAroundThis attribute, when set to “TRUE”, will remove any vegeation around the helipad area.BooleanNo
excludeBuildingsThis attribute, when set to “TRUE”, will prevent all generated buildings from being spawned in the helipad area.BooleanNo
apronControlIndexThis is the index of the Apron Controller to be assigned to this taxiway stand service location.Important!: This index value cannot be set in the XML and is assigned by the The Scenery Editor when you assign an Apron Control to a helipad.IntegerNo

<Start />

This a sub-element of the <Airport> element and is used to designate one or more helipads in the airport to be used as possible start locations for a flight. Note there should be at least one <Start> element defined for each <Helipad> element.

IMPORTANT!

In previous versions of the simulation this was parsed for both Runways and Helipads. However that is no longer the case and this element only applies to helipads, while runways should use the dedicated <RunwayStart /> element instead. Airports created in previous versions will have this element automatically updated to a runway start element on import, if the type parameter flags it as such.

This is a self-closing element and has the following attributes:

AttributeDescriptionTypeRequired
numberNumber of the runway to start on. Note that you do not suffix the designator onto this value, but instead define it separately in the designator attribute.IntegerNo
designatorDesignator of the runway chosen to start on.Note: This is a legacy attribute and only used by airports created in previous versions of the simulation.Enum: NONECCENTERLLEFTRRIGHTWWATERABENNENWSSESWWNo
latLatitude of the start position, in degrees between -90.0° and 90.0°.FloatYes
lonLongitude of the start position, in degrees between -180.0° and 180.0°.FloatYes
altAltitude of the start position, in meters. You may add the “F” suffix to convert the value to feet, for example: “13.0F”.FloatYes
alt_typeThis is used to determine the referential for the alt fieldEnum: GEOIDELLIPSOIDNo
headingFacing angle for the start position. Value between 0° and 360°.FloatYes
typeType of start point. Can only be HELIPAD, as the other possible values are deprecated.Enum: RUNWAYHELIPADTRACKWATERNo

<Jetway>

Jetway elements are part of an <Airport> element, and must contain a single <SceneryObject> element. One jetway can service at most one parking spot. A jetway will be animated and will usually come in to the main exit on the left side of the aircraft. AI controlled aircraft will also trigger the animation of the jetway. To replace jetways at an airport, use the <DeleteAirport> element with the <deleteAllJetways> field set to “TRUE”, then enter the new jetway elements. Note that all parking spots do not require jetways.

The available attributes for jetways are as follows:

AttributeDescriptionTypeRequired
displayNameThe display name for the object in the Scenery Editor.Note: this is only used for ordering in the The Scenery Contents ListStringNo
parentGroupIDThe ID of the parent group this object belongs to.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
groupIndexThe group index of the object.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
gateNameGate or parking spot name.All Jetways require a name and a parkingNumber to uniquely identify a parking location.Enum: DOCKE_PARKINGGATEGATE_AGATE_BGATE_CGATE_DGATE_EGATE_FGATE_GGATE_HGATE_IGATE_JGATE_KGATE_LGATE_MGATE_NGATE_OGATE_PGATE_QGATE_RGATE_SGATE_TGATE_UGATE_VGATE_WGATE_XGATE_YGATE_ZNE_PARKINGNONEN_PARKINGNW_PARKINGPARKINGSE_PARKINGS_PARKINGSW_PARKINGW_PARKINGYes
parkingNumberThe number for the parking spot.All Jetways require a number and a gateName to uniquely identify a parking location.StringYes
suffixSuffix to be added to the jetway parking name and number.Enum: GATE_AGATE_BGATE_CGATE_DGATE_EGATE_FGATE_GGATE_HGATE_IGATE_JGATE_KGATE_LGATE_MGATE_NGATE_OGATE_PGATE_QGATE_RGATE_SGATE_TGATE_UGATE_VGATE_WGATE_XGATE_YGATE_ZNONENo

<VDGS>

A VDGS object is part of an <Airport> element, and is used to add a Visual Docking Guidance System(opens in a new tab) to a stand at an airport. This element requires the <SceneryObject> sub-element to define the scenery object to use as the VDGS, and also requires the following attributes:

AttributeDescriptionTypeRequired
displayNameThe display name for the object in the Scenery Editor.Note: this is only used for ordering in the The Scenery Contents ListStringNo
parentGroupIDThe ID of the parent group this object belongs to.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
groupIndexThe group index of the object.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
gateNameGate or parking spot name.All VDGS require a name and a parkingNumber to uniquely identify a parking location.Enum: DOCKE_PARKINGGATEGATE_BGATE_CGATE_DGATE_EGATE_FGATE_GGATE_HGATE_IGATE_JGATE_KGATE_LGATE_MGATE_NGATE_OGATE_PGATE_QGATE_RGATE_SGATE_TGATE_UGATE_VGATE_WGATE_XGATE_YGATE_ZNE_PARKINGNONEN_PARKINGNW_PARKINGPARKINGSE_PARKINGS_PARKINGSW_PARKINGW_PARKINGYes
parkingNumberThe number for the parking spot.All VDGS require a number and a gateName to uniquely identify a parking location.StringYes
suffixSuffix to be added to the VDGS parking name and number.Enum: GATE_AGATE_BGATE_CGATE_DGATE_EGATE_FGATE_GGATE_HGATE_IGATE_JGATE_KGATE_LGATE_MGATE_NGATE_OGATE_PGATE_QGATE_RGATE_SGATE_TGATE_UGATE_VGATE_WGATE_XGATE_YGATE_ZNONENo

<BlastFence>

<BoundaryFence>

These are both sub-elements of the <Airport> element and are used to define a blast and boundary fences. Both elements require at least two <Vertex /> sub-elements to define the points between which instances of the given model will be placed, as well as a <Model /> sub-element to define the model that is used.

They also have the following attributes:

AttributeDescriptionTypeRequired
displayNameThe display name for the object in the Scenery Editor.Note: this is only used for ordering in the The Scenery Contents ListStringNo
parentGroupIDThe ID of the parent group this object belongs to.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
groupIndexThe group index of the object.Note: this is only used for ordering in the The Scenery Contents ListIntegerNo
profileThis is the GUID of the model that will be used to populate the blast fence.StringNo
snapToVerticesWhen this attribute is set to “TRUE” the chosen model will only be placed on the single vertices (points) that make up the blast fence, instead of being placed along the lengths of the paths. Default value is “FALSE”.BoolNo
spacingThis sets the spacing (in meters) between the models as they are placed along the blast fence. This set to a value that brings the object models closer together to keep continuity between them.FloatNo
headingThis attribute can be used to modify the orientation (heading) of the model by a value in degrees. This will be a relative orientation if the rotation attribute is set to “Follow edge” or “Random”, and an absolute orientation if the attribute is “Same”.StringNo
scaleThis attribute is used to scale the model up or down. The base value is 1, and a value less than one will scale it down and a value greater than 1 will scale it up. This will also be cumulative with the scale applied if the scaleDelta option is greater than 0.FloatNo
scaleDeltaThis attribute will add a random variation in scale to each model placed along the blast fence. The default value is 0, which is no random variation, and any value greater than 0 will be used to apply a random variation in size to each model using the given value as a magnitude for the variation. This variation will be cumulative with the scale setting.FloatNo
rotationWith this attribute you can change the way the model rotation will be handled by the simulation. It can be one of the following strings:"Follow edge": The models will be orientated relative to the direction of the blast fence it follows"Same": All the models will be orientated in the same, single direction, which can be edited using the heading parameter."Random": Each model will be given it’s own random orientation regardless of the position it occupies along the vector path.StringNo
avoidDiscontinuityThis attribute can be set to “TRUE” to have the scenery editor try and ensure that the models used match up correctly at the corners of the vector path. If set to “FALSE” then the model may overrun the length of the vectors.BoolNo
adjustScalingAlongPathAdjusts the model scale along the path to fit the available space.BoolNo
castShadowIf this attribute is set to “TRUE” the models used will cast a shadow, and if set to “FALSE” they won’t.BoolNo
forcedAltitudeIf this attribute is set to “TRUE”, it will force the vector placement models to be snapped to the altitude of the object, rather than the ground.FloatNo

<DeleteAirport>

This a sub-element of the <Airport> element and is used to remove certain features from the area the airport occupies. Since most of the airports that are going to be edited are preexisting airports within the simulator, it is important to understand the behavior behind the <DeleteAirport> structure: when loading two packages that cover the same airport, the simulator will load both versions of the airport from each package, adding the data from each package together, rather than overriding one package with another. In the case that this is not what you want, you need to use this element to remove features from any previously loaded airport (including those that are defined as part of the base sim).

This element can have the following attributes:

AttributeDescriptionTypeRequired
deleteAllApproachesRemove all data coming from <Approach> fieldsBooleanNo
deleteAllApronLightsRemove all data coming from <ApronEdgeLights> fieldBooleanNo
deleteAllApronsRemove all data coming from <Aprons> fieldBooleanNo
deleteAllArrivalsRemove all data coming from <Arrival> fieldsBooleanNo
deleteAllBlastFencesRemove all data coming from <BlastFence> fieldsBooleanNo
deleteAllBoundaryFencesRemove all data coming from <BoundaryFence> fieldsBooleanNo
deleteAllControlTowersRemove all data coming from <Tower> fieldsBooleanNo
deleteAllDeparturesRemove all data coming from <Departure> fieldsBooleanNo
deleteAllFrequenciesRemove all data coming from <Com> fieldsBooleanNo
deleteAllHelipadsRemove all data coming from <Helipad> fieldBooleanNo
deleteAllILSsRemove all data coming from <ILs> fieldsBooleanNo
deleteAllJetwaysRemove all data coming from <Jetway> fieldsBooleanNo
deleteAllLightSupportsRemove all data coming from <LightSupport> fieldsBooleanNo
deleteAllPaintedElementsRemove all data coming from <PaintedElements> fieldsBooleanNo
deleteAllProjectedMeshesRemove all data coming from <ProjectedMesh> fieldsBooleanNo
deleteAllRunwaysRemove all data coming from <Runway> fieldBooleanNo
deleteAllStartsRemove all data coming from <Start> fieldBooleanNo
deleteAllTaxiwaysRemove all data coming from <TaxiwayPoint>, <TaxiwayParking>, <TaxiwayPath> and <TaxiwayName>fieldsBooleanNo
deleteAllTaxiwaySignsRemove all data coming from <TaxiwaySign> fieldsBooleanNo
deleteAllTerminalNDBsRemove all data coming from <Ndb> fieldsBooleanNo
deleteAllTerminalWaypointsRemove all data coming from <Waypoint> fieldsBooleanNo
deleteAllVectorPlacementRemove all data coming from <VectorPlacement> fieldsBooleanNo

In addition to these attributes, there exists the following sub-elements which can be contained within the <DeleteAirport> structure in order to have a more refined deletion of certain objects.

<DeleteRunway />

The purpose of the <DeleteRunway /> element is to delete a specific runway from an airport. Note that this is a self-closing element and has the following attributes:

AttributeDescriptionTypeRequired
surfaceGUID or Name of the surface of the runway to deleteGUID or StringYes
numberNumber of the runway to delete. Note that you do not suffix the designator onto this value, but instead define it separately in the designator attribute.Integer:1 - 36or Enum: EASTNORTHNORTHEASTNORTHWESTSOUTHSOUTHEASTSOUTHWESTWESTYes
designatorDesignator of the runway to deleteEnum: NONECCENTERLLEFTRRIGHTWWATERABENNENWSSESWWNo

<DeleteStart />

The purpose of the <DeleteStart /> element is to delete a start location from an airport. This element is available but rarely required. Note that this is a self-closing element and has the following attributes:

AttributeDescriptionTypeRequired
typeType of start to deleteENUM:RUNWAYHELIPADWATERYes
numberNumber of the runway where the start is foundInteger:1 - 36or Enum: EASTNORTHNORTHEASTNORTHWESTSOUTHSOUTHEASTSOUTHWESTWESTYes
designatorDesignator of the runway where the start is foundEnum: NONECCENTERLLEFTRRIGHTWWATERABENNENWSSESWWNo

<DeleteFrequency />

The purpose of the <DeleteFrequency /> element is to delete specific navigation data related to the airport. Note that this is a self-closing element and has the following attributes:

AttributeDescriptionTypeRequired
frequencyThe frequency in hertz to be removed.FloatYes
typeThe type of navigation freuqncy to be removed.Enum: APPROACHASOSATISAWOSCENTERCLEARANCECLEARANCE_PRE_TAXICTAFDEPARTUREFSSGROUNDMULTICOMREMOTE_CLEARANCE_DELIVERYTOWERUNICOMYes

<HoldingPattern>

This is a sub-element of the <Airport> element, and is used to define a holding pattern. It has no sub-elements and takes the following attributes:

AttributeDescriptionTypeRequired
nameThe common name of the holding pattern.StringNo
fixTypeThe type of fix for the holding pattern.Enum: NDBTERMINAL_NDBTERMINAL_WAYPOINTVORWAYPOINTYes
fixRegionThe fix region code (maximum 3 characters, based on iso-3166-2(opens in a new tab)).StringYes
fixIdentThe fix identity (maximum 5 characters).StringNo
inboundHoldingCourseFloatNo
turnDirectionTurn direction supplied for this holding pattern, which can be L (Left), R (Right) or E (Either), where the default is E.Enum: LREYes
lengthThe length of the holding pattern, in meters. You may suffix the value with “N” to get nautical miles, eg: “34N”. If used, then do not enter a value for time.FloatNo
timeTime, in minutes. If used, then do not enter a value for length.FloatNo
altitudeMinimumThe minimum altitude, in ft, for the holding pattern.FloatNo
altitudeMaximumThe maximum altitude, in ft, for the holding pattern.FloatNo
holdSpeedThe speed of the aircraft when using the holding pattern.FloatNo
requiredNavigationPerformanceFloatNo
arcRadiusThe arc radius for the holding pattern, in degrees.FloatNo

<WasmModule />

This is a sub-element of the <Airport> element and is used to add a Web Assembly module (WASM) to an airport. This is a self closing element and has the following attribute:

AttributeDescriptionTypeRequired
pathThis is the path to the WASM that you want the airport to use, relative to the root folder of the package.StringYes

For more information please see the following section:

0/255