
L'outil lui-même est codé dans Object_Placement.dll. Peut Object_Placement.dll être trouvé dans le Simulateur de vol de Microsoft X\SDK\Mission la liste d'adresses de Kit de Création .
Installer le dll , le fichier dll.xml dans le Le dossier devrait contenir les lignes hardies suivantes (si le fichier dll.xml existe déjà dans ce dossier), ou le fichier dll.xml devrait contenir tout suivant (si le fichier dll.xml n'existe pas déjà à l'emplacement juste).
<?xml version="1.0" encoding="Windows-1252"?> <SimBase.Document Type="Launch" version="1,0">
</SimBase.Document> |
Simulateur de vol Proche pour le moment. Le premier interviennent la création d'une mission est fait à l'extérieur du programme .

Mission Creation Tutorial
![]() |
La mouche un Cessna du Champ(Domaine) de Boeing, atteignez une certaine altitude et une vitesse (1000 pieds et 80 noeuds), atterrissez ensuite en arrière au Champ(Domaine) de Boeing. |


Le pas suivant doit ajouter les valeurs appropriées pour les propriétés du metadata . Éditer n'importe quelle valeur double cliquent sur l'entrée dans la boîte de Valeur. Pour notre mission simple, entrez à la Mission dans ScenarioType , Seattle dans LocationDesc , choisissez le Débutant pour le niveau d'habileté(de compétence) et entrez à 15 minutes pour EstimatedTime . Le DifficultyLevel peut être n'importe quelle valeur d'entier et est utilisé pour trier la liste de missions par la difficulté - l'apparition la plus facile d'abord. Laissez(quittez-le) à 0 pour que la mission apparaisse en haut de la liste chaque fois que vous commencez le Simulateur de vol , pour la convenance. Quand vous avez achevé la création de la mission, s'il doit être utilisé par d'autres, comparer ensuite la difficulté (et la valeur de DifficultyLevel ) avec d'autres missions et le changer ensuite à une valeur appropriée.
UncompletedImage se réfère au bitmap qui doit être montré avant que la mission n'ait été achevée par l'utilisateur, tapez donc Cessna_Incomplete.jpg ici et évidemment le CompletedImage se réfère au bitmap qui sera utilisé quand la mission a été achevée, tapez donc Cessna_Complete.jpg . Pour MissionBrief tapent MissionCreationTutorial . HTML . Il est important de ne pas ajouter un nom de fichier au metadata jusqu'à ce que ce fichier acutally existe, autrement l'outil peut s'effondrer. C'est pourquoi nous avons créé le fichier de briefing et reflétons d'abord.
Laissez(Quittez) les messages de texte et CategoryRef inchangé pour le moment.
Sauvez maintenant de la mission, en retournant à l'étiquette de Mission et le déclic Sauvent(Économisent) la Mission. Le défaut doit sauver(économiser) le fichier de mission dans vos Mes Fichiers de Simulateur Documents\Flight X la liste d'adresses, mais naviguer au lieu de cela au Simulateur de vol de Microsoft X\missions\Missions dans la liste d'adresses de Classe de travaux dirigés Progress\Creation et sauver(économiser) la missionlà avec le nom de fichier MissionCreationTutorial . L'économie(le sauvetage) d'une mission rédigera les détails de la mission d'un fichier XML . Si vous ouvrez le fichier qui a juste été sauvé(économisé)cela devrait y sembler semblable :
<?xml version="1.0" encoding="Windows-1252" ?> <SimBase.Document Type="MissionFile" version="1,0"> <Descr>This is a mission created simply to explain the use of the Object Placement Tool.</Descr> <Filename>C:\Program Files\Microsoft Games\Microsoft Flight Simulator X\missions\Missions
in Progress\Creation Tutorial\MissionCreationTutorial.xml</Filename>
<Title>Mission
Creation Tutorial</Title>
<WorldBase.Flight>
<SimMissionUI.ScenarioMetadata InstanceId="{871EB828-3439-4C4E-8BDA-4DDEAD4C9B2E}">
<Descr>ScenarioMetadata1</Descr>
<ScenarioType>Mission</ScenarioType>
<LocationDescr>Seattle</LocationDescr>
<DifficultyLevel>0</DifficultyLevel>
<EstimatedTime>15 minutes</EstimatedTime>
<UncompletedImage>Cessna_Incomplete.jpg</UncompletedImage> <CompletedImage>Cessna_Complete.jpg</CompletedImage> <MissionBrief>MissionCreationTutorial.HTML</MissionBrief> </SimMissionUI.ScenarioMetadata>
</WorldBase.Flight>
<MissionBuilder.MissionBuilder />
</SimBase.Document> |
Maintenant est un bon temps pour entrer à la catégorie de votre mission. La catégorie (fait référence par un GUID dans la propriété CategoryRef du metadata ) fera(sera) idenfity la mission comme un de la liste suivante :
Mettre la catégorie GUID dans votre coupe(diminution) de metadata et coller la valeur de ce fichier de Catégorie . Nous utiliserons la catégorie de Classe de travaux dirigés pour cette mission. Typiquement un outil commele Bloc-notes est utilisé pour faire cette sorte de d'édition aux données de mission. Assurez-vous pour inclure les parenthèses {} quand vous coupez et collez le GUID .
<?xml version="1.0" encoding="UTF-16" ?>
- <SimMissionUI.ScenarioCategory id="{GUID}">
</SimBase.Document> |
Assurez que vous avez le Simulateur de vol en haut et la course(direction). Cliquez d'abord sur desFixations, alors le Général, choisissez ensuite l'Exposition Captioning la boîte de contrôle(chèque), comme indiquéci-dessous. Cela assurera que vous pouvez les deux voir le texte de dialogue aussi bien qu'entendre le fichier du son(sain). Par défaut, l'Exposition Captioning la boîte de contrôle(chèque) est laissée(quittée)incontrôlée.
Quand vous l'avez fait, assurez-vous que les changements de réalisme se Permettant pendant la boîte de contrôle(chèque) de Missions sont choisis - cela fera l'addition de détentes et des actions plus faciles. Maintenant le clic sur la Classe de travaux dirigés de Création de Missiondans la liste de Missions et clique ensuite Vont au Briefing . Quand le document de briefing apparaît, la Mouche de clic ! . Ouvrez alors l'Outil de Placement d'Objet.
La première chose que la plupart des missions feront est présentent la mission de l'utilisateur avec un certain discours et texte. Le texte apparaîtra sur l'écran le même temps que le texte est rendu par le système audio. Le premier pas doit ajouter les actions de dialogue. Cela en cliquetant sur Ajoute, choisissant l'Action dans la Première boîte, alors DialogAction dans la Deuxième boîte et entre ensuite au Texte et aux propriétés SoundFileName comme approprié :

Répétez ce processus d'ajouter des actions de Dialogue pour tous les cinq enregistrements que vous avez faits pour cette mission. Dans chaque cas vous devriez seulement taper dans le Texte et les propriétés SoundFileName . Remarquez comment chaque action est ajoutée avec un numéro(nombre) dans Toute la liste d'Articles.
Le pas suivant doit ajouter une détente de minuteur, qui amorcera(introduira) le premier de nos actions de dialogue.
Pour faire cela va à l'étiquette d'Objet de l'outil, le clic Ajoute, choisit ensuite la Détente de la Première boîte et TimerTrigger de la Deuxième boîte. Le clic Ajoute de nouveau et vous verrez la liste de propriétés associées à une détente de minuteur :

Il est préférable de laisser l'utilisateur attendre quelques secondes avant la présentation de la mission de l'utilisateur, changez donc la valeur de StopTime à 5.0 . Laissez(quittez) le StartTime à 0.0 , ainsi les démarrages de minuteurquand le vol est chargé. Les actions sont amorcées(introduites) par des détentes de minuteur quand le temps d'arrêt est atteint, donc ces deux valeurs amorceront(introduiront) le texte et le discours 5 secondes dans la mission.
La propriété OneShot le jeu à Vrai signifie simplement que l'action devrait seulement être renvoyée(tirée) une fois (ce n'est pas très important pour des détentesde minuteur, qui sont seulement renvoyées(tirées) une fois, mais vous devrez vous décider avec d'autres détentes si vous voulez qu'ils continuent à renvoyer(tirer) leurs actions si un utilisateur continue à les déclencher). Activé devrait être Vrai - cela signifie que cette détente doit être considérée actif et n'attend pas un autre événement avant qu'il ne doive devenir actif. Laissez(quittez) les autres propriétés comme ils sont.
Toute la boîte d'Articles, dans le coin juste supérieur du dialogue, contient maintenant l'article complémentaire que nous avons ajouté. Le déclic sur n'importe quel article dans cette boîtemontera cet article et ses propriétés aux boîtes ci-dessous.
Nous n'avons pas fini encore, comme nous n'avons pas encore lié la détente de minuteur et l'action de dialogue. Faites-le en cliquetant sur le Jeu de Propriété pour la propriété d'Actions. Cela montera une liste d'articles dans la boîte d'Éléments avec laquelle cette détente pourrait être liée. Le double-clic sur DialogAction1 dans la boîte d'Éléments pour lier la détente et l'action. On le montrera tant par un + le signe ajouté au nom dans la boîte d'Éléments, qu'aussi une entrée dans la boîte de Références, comme indiqué ci-dessous :

C'est tout ce que nous devons faire pour présenter notre mission.
Retournez à l'étiquette de Missions et sauvez de la mission. Sortez alors le vol commence la mission de nouveau, attend cinq secondes et vous devriez les deux voir et entendre le texte Bienvenu au Champ(Domaine) de Boeing Partent(Décollent) quand vous êtes prêts . Si vous faites, donc tout est bien, sinon, retournez et vérifiez les propriétés pour la détente et l'action.
C'est un des exemples les plus simples d'une détente et d'une action, mais ce processus de lier ces deux éléments d'une mission s'applique partout dans l'outil.




Many missions will end with a successful landing. Add an
AirportLandingTrigger and enter the four digit Airport identification
code to identify the correct airport (KSEA for SeatTac International or
KBFI for Boeing Field,
for example). Again set the Activated property to False. Set the
Actions property to trigger DialogAction5, which is the
appropriate mission completed text. For this case leave the landing as
FullStop (the alternatives are TouchDown and Any), and leave the
RunwayFilter entry for now (it is possible to specify which runway must
be landed on to fire the trigger).
Go back to the ObjectActivationAction created in Step 9 (click on it
in the All
Items list) and add the AirportLandingTrigger to the actions that
become active when the object activation action fires.
For this mission we might decide that there are two goals, one for the user
to enter the proximity trigger box
and land on the painted runway number, and the second for a correct landing (coming to a complete stop).
Add goals by clicking Add, then selecting Goal. The goal state should
be left as pending. The text entered here will appear in the End
Mission dialog, along with the final state of the goal (pending,
completed, or failed). Enter two goals,
one for landing on the runway
number, and another for a correct landing. The text can be Landed
on the Painted Number , with an Order number of 1, for the first
goal, and Complete Stop, with an Order number of 2, for the second
goal.
Next, add a GoalResolutionAction for each goal. The Goals property of
this action should be linked in the usual way to the goals themselves.
Go
to the ProximityTrigger and add the second goal resolution action
(Landed on the Painted Number) to
its list of actions. Finally go back to the AirportLandingTrigger and add the correct goal
resolution action (Complete Stop) to the list of
actions which it fires.
There is currently no concept of an optional goal in the Mission system.
Rewards are different from goals, they are persistent and added to the user's pilot records. A reward can be serious in the sense of a certificate for achieving some level of skill, or more trivial, for example a reward for photographing a humpback whale off Hawaii. The rewards that ship with Flight Simulator are integrated into the missions and tutorials that are provided, so it makes most sense to create your own rewards, if you choose to use them.
To create the simplest form of reward, go through the following steps:
| <?xml version="1.0" encoding="ISO-8859-1" ?> - <FSData version="9.0"> - <Reward rewardId="{GUID}" name="name of the reward" description="description of the reward." type="TROPHY" bitmap = "artwork_small.bmp" rewardDetailBitmap="artwork_large.bmp"> </Reward> </FSData> |
A rewards file can contain any number of rewards, simply by entering as many <Reward> </Reward> entries in the xml file as there are rewards. More complex rewards can be created by adding a <Criteria> section to a reward. The following table shows an example with all the possible criteria.
<! An example comment: hours include decimal places, 2.5 hours for example >
<Criteria landings="2" differentAirports="2"> |
The criteria in the above example are not very realistic, they require the user to have completed two landings at two different airports and landed at the list of the three specified (KORD, KSEA, and KBFI). It also requires 10 hours experience in a whole range of situations, and that two other rewards must have been earned before this one can be given. All criteria are logically ANDed to make up the requirement for a reward, and all equals signs should be interpreted as greater than or equal to (in other words, at least 10 hours experience in all the aicraft and situations listed in the example above). The following table gives some more realistic examples:
| - <Reward rewardId="{GUID}" name="10 hours flying " description="Earn a medal for flying any aircraft for a total of 10 hours flying time." type="MEDAL" bitmap="small.jpg" rewardDetailBitmap="large.jpg"> - <Criteria> <RewardHours hours="10" hoursType="ANY" /> </Criteria> </Reward> |
| - <Reward rewardId="{GUID}" name="15 hours at night " description="Earn a certificate for flying any aircraft for a total of 15 hours flying at night." type="CERTIFICATE" bitmap="small.jpg" rewardDetailBitmap="large.jpg"> - <Criteria> <RewardHours hours="15" hoursType="NIGHT" /> </Criteria> </Reward> |
| - <Reward rewardId="{GUID}" name="25 landings" description="Earn a badge for completing 25 landings." type="BADGE" bitmap="small.jpg" rewardDetailBitmap="large.jpg"> <Criteria landings="25" /> </Reward> |
| - <Reward rewardId="{GUID}" name="Remote location" description="Earn a postcard for landing on Easter Island." type="POSTCARD" bitmap="small.jpg" rewardDetailBitmap="large.jpg"> - <Criteria> <RewardAirport ident="SCIP" /> </Criteria> </Reward> |
| - <Reward rewardId="{GUID}" name="Busy airports " description="Earn a trophy for landing at 3 of the busiest airports in the world: London Heathrow, Atlanta and Singapore." type="TROPHY" bitmap="small.jpg" rewardDetailBitmap="large.jpg"> - <Criteria> <RewardAirport ident="EGLL" /> <RewardAirport ident="KATL" /> <RewardAirport ident="WSSS" /> </Criteria> </Reward> |
Having completed building the mission, ensure you have saved it all
off, and then test it thoroughly. The best designed mission can still
exhibit strange behaviour during testing.
There are of course many cases where the mission might inappropriately
reward a user. For example, the proximity trigger in our example will
still fire correctly if the aircraft is landing upside down, without
its gear down, too fast, or whatever. To tighten up a mission you will
need to add conditions to many of the triggers, especially the
proximity triggers.
This ends the tutorial section of this document. The most popular and
useful actions and triggers are covered in the tutorial, but there are
many others, and the following reference section describes all the
Mission Objects.
You can also refer to the missions provided with Flight Simulator (by loading them into the Object Placement Tool, or viewing the XML in an appropriate editor) for examples of how different triggers, actions, goals and rewards can be used. Mission files created using this tool are in an open XML format. Mission files supplied with Flight Simulator X are in a binary format with the .SPB extension. If both are present in the same folder, the .SPB file is read in preference. To help in the understanding of the mission system, the XML files used to create the default missions are supplied in a sub-folder of this SDK.
Mission files can either be in XML or SPB (Sim-Prop Binary) format. The binary format is faster to load that its XML equivalent. To create an SPB file, run the simpropcompiler.exe tool, which is in the SDK\Core Utiliites Kit\SimProp folder. This is a command-line tool, so open a command window, navigate to the SDK\Core Utiliites Kit\SimProp folder, then enter the following command:
> Simpropcompiler 2spb –symbols C:\Program Files\Microsoft Games\Microsoft Flight Simulator X\propdefs\*.xml yourMission.xml yourMission.spb
Note that file extensions are required for both the input and output filenames. To simply validate the xml file without creating any output file, change the keyword 2spb to validate.
To get more detailed error reports when there is an error in a mission file, make sure the following entry is in the fsx.cfg file, which is in the Documents and Settings\<username>\Application Data\Microsoft\FSX folder.
[DEBUG]
ReportLoadErrors=1
An action is a declarative way to cause something to happen in the world. Examples of actions are playing a sound file, completing an objective, showing text in the adventure window, failing an engine, completing a goal, etc.
| Property | Description |
| id | Reserved. Do not edit this field. |
| Descr | The name of the action. The system will generate a name such as DialogAction1, simply be appending the number of the next action to the type of action. This name can be edited to help identifiy it further. Make sure though that the name is unique. |
| InstanceId | This is the GUID generated to ensure the object has a unique reference. Do not edit this field |
| Property | Description |
| Generic Action Properties | See description above. |
| ObjectReference |
List of one or more AI objects that are to use the new waypoint list. |
| WaypointList |
List of one or more waypoints that are to become active. |
| Property | Description |
| Generic Action Properties | See description above. |
| ObjectReference |
The list of objects to which the payload adjustment applies. |
| StationIndex |
The index number of the station. |
| AdjustmentType |
One of: Set or Add. |
| Weight | The quantitiy of the adjustment. |
| Units | One of: number, feet, g_force, knots, pounds, percent, boolean, degrees or radians. |
| Property | Description |
| Generic Action Properties | See description above. |
| PayloadName |
The name of the container that becomes the object to be dropped. |
| PayloadCount |
The number of the payload objects that should be attached. |
| ObjectReferenceList |
The objects which are each to get the assigned payload. |
| Property | Description |
| Generic Action Properties | See description above. |
| EffectName |
Filename of special effect. |
| AttachPointName |
The name of the attach point (physical location) of where the effect is to be applied. See the Modeling Tools documentation for information on attach points. |
| ObjectReferenceList |
List of objects that the effect applies to. |
| Property | Description |
| Generic Action Properties | See description above. |
| ObjectType |
The ID of the new object. |
| Property | Description |
| Generic Action Properties | See description above. |
| Count |
Value to be added to the Counter triggers current counter. |
| Triggers |
List of Counter triggers to have their counts incremented. Note that these must be counter triggers, even though the Object Placement Tool lists other trigger types. |
A custom action is used to enable communications between a mission and a SimConnect client application.
| Property | Description |
| Generic Action Properties | See description above. |
| PayloadString |
Text that will be transmitted to the SimConnect client when the action is initiated. The text can be any string that the client might find useful. |
| WaitForCompletion |
Set this to True if a completion message must be received from the SimConnect client, before the mission progresses. Set to False otherwise. |
| Property | Description |
| Generic Action Properties | See description above. |
| Text | The text to appear on the screen. Can be left blank. |
| SoundFileName | The wave file to be rendered by the audio system. The file should be in the \sounds directory of the mission. Can be left blank. |
| DelaySeconds | A delay in seconds after the text and audio are rendered. Can be used to allow time for the user to respond to the dialog, before performing another action. |
| Property | Description |
| Generic Action Properties | See description above. |
| System |
One
of: Engine,
EngineFire, Coolant, OilSystem,
OilLeak, VacuumSystem, Pitot, Static,
ElectricalSystem,
Generator, FuelPump, FuelLeak, APU, APUFire, TurbineIgnition, HydraulicPump, HydraulicLeak, LeftMagneto, RightMagneto, Elevator, LeftAileron, RightAileron, Rudder, RearTail, LeftFlap, RightFlap, LeftWing, LeftWingTip, RightWing, RightWingTip, CenterGear, RightGear, LeftGear, AuxGear, LeftBrake, RightBrake, BrakeSystemHydraulicSource, AltitudeIndicator, AirspeedIndicator, Altimeter, DirectionalGyro, Compass, TurnCoordinator, VSI, ComRadios, NavRadios, ADFRadios, or Transponder. |
| SystemIndex |
If an aircraft has multiple systems (usually applies to engines), enter the index of the system that the failure should apply to. |
| Behavior | One of: Failed, Failing, Burn or Leak. |
| HealthPercent | Enter a value of between 0 (complete failure) and 100 (fully functional). |
| Property | Description |
| Generic Action Properties | See description above. |
| GoalResolution |
Set to completed or failed. |
| Goals |
List of Goal Objects to have their resolution changed. |
| Property | Description |
| Generic Action Properties | See description above. |
| RewardRef |
GUID of the appropriate reward. |
| Property | Description |
| Generic Action Properties | See description above. |
| NewObjectState |
Set to True or False. |
| ObjectReferenceList |
List of objects (AI Object, Scenery, Mission Objects and Triggers) to have their status changed. |
| Property | Description |
| Generic Action Properties | See description above. |
| SoundFileName |
The wave file to be rendered. The file should be in the \sounds directory of the mission. |
| Property | Description |
| Generic Action Properties | See description above. |
| AnimationGUID |
GUID of the animation. |
| LoopAnimation |
Set to True to loop the animation. |
| ObjectReferenceList |
The list of objects that the animation is to apply to. |
The play list action will play the specified music items on the adventure music track. Individual play list items can be set to a random position within the play list.
| Property | Description |
| Generic Action Properties | See description above. |
| PlayListItem |
Play list item object. To enter a play list, double click on the PlayListItem Property Set, this will bring up an Objects dialog and select New, Insert Before or Insert After to add items to the list. Click OK when there are enough items in the list. This list will then appear in the Property Sets box of the Objects tab. Clicking on any one of these items will bring up the properties for each item. |
A playlist item is an audio track that forms part of a playlist action.
| Property | Description |
| id |
Reserved. Do not edit this property. |
| Descr |
The name of the item. The system will generate a name such as PlayListItem1. This name can be edited to help identifiy it further. Make sure though that the name is unique. |
| SoundFileName |
The name of the wave file (typically music track) to be played. |
| RandomizeInList |
Set to True to randomize the playing of this particular track in the playlist. |
A point of interest activation action will change the state of one or more Point of Interest objects. It is very similar to ObjectActivationAction, but also sets the current point of interest to be the one with the lowest cycle order in its list.
| Property | Description |
| Generic Action Properties | See description above. |
| NewObjectState |
Set
to True or False. |
| ObjectReferenceList |
List
of one or more Point of
Interest objects to have their status changed. |
| Property | Description |
| Generic Action Properties | See description above. |
| ProbabilityPercent | The probablity that any action at all will fire. Enter 100 to ensure an action will fire. |
| Actions |
List of actions from which one is chosen at random. |
| Property | Description |
| Generic Action Properties | See description above. |
| Triggers |
List of Timer Triggers to be reset. |
The rumble action is used to initiate rumble in the Universal Controller (typically an XBox controller).
| Property | Description |
| Generic Action Properties | See description above. |
| Intensity | One of: Off, Low, Med, High |
| Duration |
Duration of the rumble in seconds, or fraction of a second. |
A spawn action will create all the new objects (including AI aircraft, scenery, actions and triggers) specified in a Spawn List object. A spawn action that is called mutliple times will create multiple objects.
| Property | Description |
| Generic Action Properties | See description above. |
| SpawnLists |
List of one or more Spawn List objects. |
| Property | Description |
| Generic Action Properties | See description above. |
| DeltaTime |
A positive or negative timer adjustment, in seconds. |
| Triggers |
List of Timer Triggers to have the timer adjustment. |
| Property | Description |
| Descr | The name of the object. The system will generate a name such as Aircraft1 or Ferry1, simply be appending the number of the next object to the type of the object. This name can be edited to help identifiy it further. Make sure though that the name is unique. |
| InstanceId | This is the GUID generated to ensure the object has a unique reference. Do not edit this field |
| ContainerTitle | The make and model of the aircraft, or type of boat or vehicle. This is the title that is listed in the Aircraft Configuration File. |
| ContainerID | An ID number given to this object. This can be used by ChangeObjectTypeAction to change, for example, the user's aircraft from one type to another. |
| IsOnGround | Set to True or False. |
| WorldPosition | Latitude,
longitude, and altitude in feet. For example: N22° 21' 44.68",E114° 1' 15.01",+000000.00 |
| Orientation | Heading, Pitch and Bank. |
| EngineStarted | True or False. |
| IdentificationNumbers | An aircraft identifcation number such as NAA000. Not used for ground vehicles or boats. |
| AIType | One
of: None, Airplane,
Helicopter,
WanderBoat,
GoundVehicle,
FuelTruck,
BaggageCart,
BaggageLoader,
or AirportAmbient. For ships on a course use GroundVehicle. For small boats on the sea or lakes use WanderBoat. Only Airplane and GroundVehicle take objects that can be further specified. |
| GroundVehicleAI | If the AIType is GroundVehicle then clicking on this entry will initiate a GroundVehicleAI object. Expand the entry in the Property Sets box to expose the new objects. |
| AircraftAI | If the AIType is Airplane then clicking on this entry will initiate an AircraftAI object. Expand the entry in the Property Sets box to expose the new objects. |
| Activated | Set to True or False. This can be changed during a mission using the Object Activation action. |
| MDLGuid | Optional. If a model GUID is entered here, it will override the models referenced in the aircraft model.cfg file. |
| LabelMode | One of: UserDefined, On, or Off. If UserDefined is set, the label format will be taken from the user settings in the Settings - Display/Traffic dialog. |
AircraftAI objects are referenced by AI
Objects.
| Property | Description |
| Unit_Mode |
One of: Sleep, Zombie, Waypoint, Takeoff, Landing, Taxi, Working, Waiting |
| GroundCruiseSpeed | Ground speed in knots. |
| GroundTurnSpeed | Turning speed in knots. |
| GroundTurnTime | Time in seconds to make a 90 degree turn. A recommended minimum turn time is 0.5 seconds. |
| WaypointList |
WaypointList object. |
| Schedule | Used internally only, for saving flight/mission information. |
| TakeofAI |
Provide this object only if the AircraftAIState is set to SIMPLE_TAKEOFF. |
| LandingAI |
Provide this object only if the AircraftAIState is set to SIMPLE_LANDING. |
| TaxiAI |
Provide this object only if the AircraftAIState is set to SIMPLE_TAXI. |
| ICAOIdent | Airport ID, such as PAFA. |
| AircraftAIState | One of: SIMPLE_FLIGHT, SIMPLE_TAXI, SIMPLE_LANDING, or SIMPLE_TAKEOFF. |
| MaxBank | The maximum bank angle the aircraft should make, in degrees. |
| WaypointTouchDistance | The distance in meters from a waypoint that is acceptable as having reached the waypoint. |
| PatternEntry | One of: Downwind, Base, or Straight_In. |
Takeoff AI objects are referenced by AircraftAI objects.
| Property | Description |
| AITakeoffMode |
One of: None, Init, Start_Rolling, Rolling, or Airborne. |
Landing AI objects are referenced by AircraftAI objects.
| Property | Description |
| InitialFlaps |
A value between 0.0 (for no flaps) and 1.0 (flaps fully extended). |
| ThresholdLLA |
Latitude
Longitude and Altitude in feet, of the splot that the aircraft should try to land on. For example: |
| RunwayLength |
|
| RunwayAlt |
|
| RunwayHeading |
|
| ApproachSlope | |
| InitialAlt | |
| MaxInterceptAngle |
Taxi AI objects are referenced by AircraftAI objects.
| Property | Description |
| NextWaypoint |
The index in the taxi route of the next waypoint. |
| CurrentWaypoint |
The index in the taxi route of the current waypoint. |
| CurrentWaypointL |
Current waypoint latitude longitude and altitude in feet. |
| PrevWaypoint |
The index in the taxi route of the previous waypoint, or -1 if there is no previous waypoint. |
| Destination |
Destination latitude longitude and altitude in feet. |
| HoldClearPoint |
|
| HoldShortPoint |
|
| HoldFlags |
|
| HoldStartTime | |
| HasRunwayHeading | |
| RunwayHeading | |
| IsPushingBack | |
| PassOnComing |
Ground vehicle AI objects are for those land or sea vehicles which are to follow a course. The course is made up of a series of waypoints.
Ground vehicle AI objects are referenced by AI Objects.
| Property | Description |
| GroundCruiseSpeed | Ground speed in knots. |
| GroundTurnSpeed | Turning speed in knots. |
| GroundTurnTime | Time in seconds to make a 90 degree turn. A recommended minimum turn time is 0.5 seconds. |
| WaypointList |
WaypointList object.Click on WaypointList in the Property Sets box to open up the properties for a WaypointList object. |
| Property | Description |
| Waypoint |
List of one or more Waypoint objects. Click on this entry to open up the Object dialog to add individual waypoints. |
| WrapWaypoints |
Set to True if, after reaching the last waypoint, the first waypoint should become the next in the list. |
| CurrentWaypoint |
The index of the waypoint the AI object is currently aiming for. |
| BackupToFirst |
Set to True if the aircraft should backup to the first waypoint. |
| Property | Description |
| Descr |
The name of the waypoint. The system will generate a name such as Waypoint1. This name can be edited to help identifiy it further. Make sure though that the name is unique. |
| InstanceID |
This is the GUID generated to ensure the object has a unique reference. Do not edit this field |
| SpeedKnots |
The desired speed in knots for the object when it passes the waypoint. |
| WaypointID |
An ID number for the waypoint. |
| WorldPosition | Latitude,
longitude, and altitude in feet. For example: N22° 21' 44.68",E114° 1' 15.01",+000000.00 |
| AltitudeIsAGL | Set to True if the alititude is above ground level, set to False if the altitude is above mean sea level. Note that the Align function of the tool does not preserve this setting correctly. |
| Property | Descrption |
| id | Reserved. Do not edit this field. |
| Descr | The name of the object. The system will generate a name such as RectangleArea1, simply be appending the number of the next object to the type of the object. This name can be edited to help identifiy it further. Make sure though that the name is unique. |
| InstanceId | This is the GUID generated to ensure the object has a unique reference. Do not edit this field |
| Length | Length of the box in meters. |
| Width | Width of the box in meters. |
| Height | Height of the box in meters. |
| Orientation | Heading, Pitch and Bank, or orientations about the three axis, in degrees. |
| Rendered | Set to True if the bounding box is to be rendered on the screen. |
| AttachedWorldPosition | An optional Attached World Position object. This fixes the area definition to a specific point. Leave the AttachedWorldObject blank in this case. |
| AttachedWorldObject | An optional Attached World object. This enables the area definition to be attached to a moving object. Leave the AttachedWorldPosition blank in this case. |
| Property | Description |
| Descr | The name of the group object. The system will generate a name such as Group1, simply be appending the number of the next group object the word Group. This name can be edited to help identifiy it further. Make sure though that the name is unique. |
| WorldPosition | Latitude,
longitude, and altitude in feet. For example: N22° 21' 44.68",E114° 1' 15.01",+000000.00 |
| GroupedObjects | List of objects in the group. |
| Property | Description |
| Generic Action Properties | See description above. |
| Activated | Set to True or False. This can be changed during a mission using the Object Activation action. |
| AttachedWorldPosition | An optional Attached World Position object. This fixes the camera to a specific point. Leave the AttachedWorldObject blank in this case. |
| AttachedWorldObject | An optional Attached World object. This enables the camera to be attached to a moving object. Leave the AttachedWorldPosition blank in this case. |
| ObjectReference |
This object the camera is looking at. |
| Property | Description |
| WorldPosition |
Latitude,
longitude, and altitude in feet. For example: N22° 21' 44.68",E114° 1' 15.01",+000000.00 |
| AltitudeIsAGL |
Set to True if the alititude is above ground level, set to False if the altitude is above mean sea level. |
| Property | Description |
| ObjectReference |
The object that is to be attached to. |
| OffsetXYZ |
Four floating point values, containing an offset from the center of the ObjectReference object in the x,y and z directions. The fourth float is unused. |
| Property | Description |
| Generic Action Properties | See description above. |
| Condition |
Clicking on this will load up the Conditional Editor, to apply conditions to the activation of this mission object. |
| UseTargetPosition |
Set to True or False. True indicates that the camera will try to keep the AttachedWorldObject, if one is set, in view. |
| AttachedWorldPosition | An optional Attached World Position object.This fixes the view controller to a specific point. Leave the AttachedWorldObject blank in this case. |
| AttachedWorldObjects | An optional Attached World object. This enables the view controller to be attached to a moving object. Leave the AttachedWorldPosition blank in this case. |
| Activated |
Set to True or False. This can be changed during a mission using the Object Activation action. |
| ViewCloseDelay | A delay in seconds that will occur before the camera shuts down, in the event that the AttachedWorldObject, if one is set, is removed. |
| CameraDistance | The distance in meters the camera is away from the AttachedWorldObject, if one is set. |
| CameraOffsetY | The height in meters the camera is away from the AttachedWorldObject, if one is set. |
| CameraPitch | The angle in degrees that the camera is facing. A negtive value indicating a downward view. |
| Property | Description |
| Generic Action Properties | See description above. |
| Activated | Set to True or False. This can be changed during a mission using the Point of Interest Activation action. |
| SelectedModelGuid |
GUID of the model displayed in the scene when the point of interest is selected in the compass. This can be a vertical beam of light, or another suitable object highlighting model. |
| UnselectedModelGuid | GUID of the model displayed in the scene when the point of interest is not selected in the mission compass. A zero GUID will cause nothing to be rendered, which is the default. |
| CurrentSelection | Set to True if you want this object to be the current selection when the mission starts. |
| CycleOrder |
The cycle order is the order in which points of interest are cycled in the mission compass, the lowest number first. |
| TargetName | The name that is to appear on the mission compass when the object is selected in it. |
| MinimumModelScale | The scale factor to be applied when the object is MinimumScaleDistance away from the view camera. |
| MinimumScaleDistance | If the object is closer than the MinimumScaleDistance to the view camera, it will be scaled by MinimumModelScale. |
| MaximumModelScale | Scale factor to be applied when the object is MaximumScaleDistance away from the view camera. |
| MaximumScaleDistance | The distance beyond which the object is scales by MaximumModelScale. |
| AttachedWorldPosition | An optional Attached World Position object.This fixes the highlight pointer to a specific point. Leave the AttachedWorldObject blank in this case. |
| AttachedWorldObject | An optional Attached World object.This enables the highlight pointer to be attached to a moving object. Leave the AttachedWorldPosition blank in this case. |
| Property | Description |
| Generic Action Properties | See description above. Note that RealismOverrides objects do not have an InstanceID. |
| FlyingTips |
One of: User Specified, Enable, or Disable. |
| CrashBehavior |
One of: User Specified, AutoRecover, ResetFlight or EndFlight. |
| FlightRealism | One of: User Specified, Enforced, or Relaxed. |
| ATCMenuDisabled | Set to True to disable the ATC menu. |
| UnlimitedFuel | One of: User Specified, Limited, or Unlimited. |
| AircraftLabels | One of: User Specified, Enabled, or Disabled. |
A RidgeLift object is used to simulate the effect of a hill slope on the wind.
| Property | Description |
| Generic Action Properties | See description above. Note that RealismOverrides objects do not have an InstanceID. |
| Activated |
Set to True or False. This can be changed during a mission using the Object Activation action. |
| ObjectReference |
A reference to an AreaDefinition object that defines a box that is the bounding area of the ridge lift. It is very important that the heading setting of the AreaDefinition points in the same direction as the slope (to the left in the above diagram). |
| AirObjectModelGuid | An optional model GUID. The model will be rendered within the ridge lift box. |
| ScaleModel | Set to True to if the model should be scaled to match the size of the ridge lift box. Set to False to render the model to its own scale. |
| CoreRateScalar | A scalar value that is applied to the wind in the Core area of the ridge lift. A positive value will provide an updraft, a negative value a downdraft. Typically a positive value such as 0.5 would be entered here. So if the wind speed was 8 m/s, an updraft of 4 m/s would be applied. |
| CoreTurbulence | A variation scalar that is applied to the wind speed. For example, if a value of 0.1 is entered, and the wind speed is 8 m/s, the wind speed in the ridge lift Core area will be randomly varying between 7.2 and 8.8 m/s. |
| SinkRateScalar | A scalar value that is applied to the wind in the Sink area of the ridge lift. A positive value will provide an updraft, a negative value a downdraft. Typically a negative value such as 0.5 would be entered here. So if the wind speed was 8 m/s, an downdraft of 4 m/s would be applied. |
| SinkTurbulence | A variation scalar that is applied to the wind speed. For example, if a value of 0.1 is entered, and the wind speed is 8 m/s, the wind speed in the ridge lift Sink area will be randomly varying between 7.2 and 8.8 m/s. |
| Property | Description |
| Generic Action Properties | See description above. |
| ScenarioType |
Text
to describe the scenario. This is for your own use and does not appear
on the screen. |
| SkillLevel |
One
of:: Beginner,
Intermediate,
Advanced,
or Expert. |
| LocationDescr | Enter a text string that describes the location. |
| DifficultyLevel | An integer determining the order in which the mission will appear after sorting. The lower the number the earlier it will appear in the list. Refer to the difficulty level numbers provided with other missions to determine the appropriate number here. |
| EstimatedTime |
Enter
a text string that estimates how long the mission will take. |
| UncompletedImage | Filename for a bitmap containing the image to appear on the screen in the image list, when the mission has not been completed. Should be 380 pixels wide by 232 pixels in height, either 256 color or 5-6-5 format. Use the Imagetool utility to convert 24 bit bmp files to 5-6-5 format. |
| CompletedImage | Filename for a bitmap containing the image to appear on the screen in the image list, after the mission has been completed at least once. Should be 380 pixels wide by 232 pixels in height, either 256 color or 5-6-5 format. |
| ExitMissionImage | Filename for a bitmap containing the image to appear in the End Mission dialog. Should be 86 pixels wide by 86 pixels in height, either 256 color or 5-6-5 format. |
| MissionBrief | Filename of an HTML file containing the mission briefing. The file can contain images (such as maps) and text describing the stages and goals of the mission. |
| AbbreviatedMissionBrief | Short version of the mission brief, used when the mission is being repeatedly played by the user. |
| SuccessMessage | The message that will be displayed once the mission ends and the user has completed the mission objectives. In this case the UncompletedImage will be replaced by the Completed image in the Missions list. |
| FailureMessage | The message that will be displayed once the mission ends and the user has failed the mission. |
| UserCrashMessage | The message that will be displayed once the mission ends and if the user has crashed. |
| CategoryRef | To set the category GUID in your metadata cut and paste the value out of this Category file. Categories include Tutorial, Just For Fun, Airline Pilot, etc. |
A thermal object can be used to simulate atmospheric effects, including thermals and downdrafts. Refer also to the Weather Systems documentation.
| Property | Description |
| Generic Action Properties | See description above. Note that RealismOverrides objects do not have an InstanceID. |
| Activated |
Set to True or False. This can be changed during a mission using the Object Activation action. |
| ObjectReference |
A reference to an AreaDefinition object that defines a box that is the bounding area of the thermal. Note that this box defines the position of the thermal, including its starting height above the ground, and the height of the thermal. |
| AirObjectModelGuid | An optional model GUID. The model will be rendered within the thermal box. |
| ScaleModel | Set to True to if the model should be scaled to match the size of the thermal box. Set to False to render the model to its own scale. |
| SinkTransitionSize | The width in meters of the transition layer between the Sink and the atmosphere outside of the thermal. Half of the width of this transition will be outside the radius of the Sink layer, and half within. |
| SinkLayerSize | The width in meters of the Sink layer. |
| CoreTransitionSize | The width in meters of the transition layer between the Core and the Sink of the thermal. Half of the width of this transition will be outside the Core, and half within. |
| CoreSize | The radius in meters of the Core of the thermal. |
| BaseHeight | The size of the transition layer, in meters, at the base of the thermal. The default is 50m. This is not the height of the thermal above the ground. |
| TopHeight | The size of the transition layer, in meters, at the top of the thermal. The default is 50m. This is not the height of the thermal. |
| SinkRate | The lift value, in meters per second, within the Sink layer. A positive value will provide an updraft, a negative value a downdraft. |
| SinkTurbulence | A variation in meters per second that is applied to the SinkRate. For example, if a value of 1.5 is entered, and the SinkRate is -3 m/s, the actual sink rate applied will be randomly varying between -1.5 m/s and -4.5 m/s. |
| CoreRate | The lift value, in meters per second, within the Core layer. A positive value will provide an updraft, a negative value a downdraft. |
| CoreTurbulence | A variation in meters per second that is applied to the CoreRate. For example, if a value of 1.5 is entered, and the CoreRate is 5 m/s, the actual core rate applied will be randomly varying between 3.5 m/s and 6.5 m/s. |
| Property | Description |
| Descr | The name of the scenery object. The system will generate a name based on the type of object, simply be appending the number of the next scenery object to the name of the scenery. This name can be edited to help identifiy it further. Make sure though that the name is unique. |
| WorldPosition | Latitude,
longitude, and altitude in feet. For example: N22° 21' 44.68",E114° 1' 15.01",+000000.00 |
| Orientation | Heading, Pitch and Bank, or orientations about the three axis, in degrees. |
| MDLGuid | GUID of the object model, from the list of Library Objects. |
| AltitudeIsAGL | Set to True if the alititude in WorldPosition is above ground level, set to False if the altitude is above mean sea level. |
| Scale | A scaling factor can be applied to the model. The default is 1.000 (no scaling). |
| ImageComplexity | The minimum scenery complexity setting the user must have set in order for this object to be rendered. One of: VerySparse, Sparse, Normal, Dense, VeryDense, ExtremelyDense. |
| Effect | Reserved for internal use, when saving off a mission/flight file. |
| ModelAnimation | Reserved for internal use, when saving off a mission/flight file. |
| Activated | Set to True or False. This can be changed during a mission using the Object Activation action. |
Mobile scenery objects can be added to the world, to appear only when the
mission is being undertaken. Mobile scenery objects take the following
properties:
| Property | Description |
| InstanceID |
This is the GUID generated to ensure the object has a unique reference. Do not edit this field |
| Activated | Set to True or False. This can be changed during a mission using the Object Activation action. |
| ModelID | GUID of the object model. |
| WorldPosition | Latitude,
longitude, and altitude in feet. For example: N22° 21' 44.68",E114° 1' 15.01",+000000.00 |
| Orientation | Heading, Pitch and Bank, or orientations about the three axis, in degrees. |
| IsOnGround | True or False. |
| SpeedKnots | The speed of the scenery object, in knots. |
| MSOWaypointController | An MSOWaypointController object. |
The MSO (Moving Scenery Object) waypoint controller has the following properties.
| Property | Description |
| AccelKnots |
The accelertion that will always be used to increase or decrease the speed of the scenery object, in knots per second. |
| GroundCruiseSpeed | Ground speed in knots. |
| GroundTurnSpeed | Turning speed in knots. |
| GroundTurnTime | Time in seconds to make a 90 degree turn. A recommended minimum turn time is 0.5 seconds. |
| WaypointList | A Waypoint object list. |
A spawn list is a list of objects (AI aircraft, scenery objects, triggers, and actions) that should only appear in the mission when a certain stage in the mission has been reached. Spawn lists are initiated by Spawn actions. If the spawn action is called more than once, then multiple objects are created.
| Property | Description |
| id | Reserved. Do not edit this field. |
| Descr | The name of the spawn list. The system will generate a name such as SpawnList1. This name can be edited to help identifiy it further. Make sure though that the name is unique. |
| InstanceId | This is the GUID generated to ensure the object has a unique reference. Do not edit this field |
| Objects | The list of objects to be created. Click on Property Set for the Objects to bring up the list of objects in the Property Sets box. |
| Property | Description |
| id | Reserved. Do not edit this field. |
| Descr | The name of the trigger. The system will generate a name such as AirportLandingTrigger1, simply be appending the number of the next trigger to the type of trigger. This name can be edited to help identifiy it further. Make sure though that the name is unique. |
| InstanceId | This is the GUID generated to ensure the object has a unique reference. Do not edit this field |
| Activated | Set to True or False. This value can be changed during the mission with the Object activation action. |
| Latched | This will be False at the start of a mission and set to True when the trigger fires. Do not edit this property. |
| OneShot | Set to True if the trigger should only fire once during the mission. Note a few triggers do not contain this property, these are noted in the descriptions for those triggers. |
| Actions | List of one or more actions to initiate when the trigger is fired. Note a few triggers do not contain this property, these are noted in the descriptions for those triggers. |
| Property | Description |
| Generic Trigger Properties |
See description above. |
| AirportIdent | The airport identification code, such as KSEA for SeaTac International. |
| RunwayFilter | A RunwayFilter object. Click on the AirportLandingTrigger entry in the Property Sets box to show the RunwayFilter entry, and click on the RunwayFilter to bring up its properties. |
| LandingType |
One of: FullStop, TouchDown or Any. |
A runway filter object can be used to specify exactly which runway an aircraft is to land on.
| Property | Description |
| RunwayNumber |
Runway number, leave as 0 if any runway is acceptable. Runway numbers can be from 0 to 36, or one of: North, NorthEast, East, SouthEast, South, SouthWest, West or NorthWest. |
| RunwayDesignator |
One of: None, Left, Right, Center, Water, A, or B. |
| Property | Description |
| Generic Trigger
Properties |
See description above. |
| Areas | List of areas which are to fire the trigger. These areas are defined as Area Definition Objects. If no areas are defined, the user can land anywhere and the trigger will fire. |
| LandingType |
One of: FullStop, TouchDown or Any. |
A counter trigger will fire when it is counter reaches a specified limit. The counter is incremented by Count Actions.
| Property | Description |
| Generic Trigger
Properties |
See description above. |
| StartCount |
Integer indicating the count to start at. |
| StopCount |
Integer indicating when the count stops and the trigger fires. |
| Counter |
The current value of the counter. |
A menu prompt trigger will create a menu of options for the user. For some missions this can be as simple as the option to continue, and the option to turn back.
| Property | Description |
| Generic Trigger
Properties |
See description above. There is no Actions property for a Menu Prompt trigger. |
| Text |
The text to precede the list of menu options. The maximum length of this text is equivalent to 37 "M"s. |
| MenuItem |
A list of menu items.Clicking on the MenuItem Property Set will bring up the Objects dialog. Click New to add as many menu items as you need. The menu items will appear in the Property Sets box of the Objects tab of the main Object Placement Tool dialog, and clicking on them will bring up their properties. |
Menu item objects form the options for a Menu Prompt trigger.
| Property | Description |
| Descr |
The name of the menu item. The system will generate a name such as MenuItem1. This name can be edited to help identifiy it further. Make sure though that the name is unique. |
| Text |
The text for the menu item. The maximum length of this text is equivalent to 40 "M"s. |
| Actions |
The list of actions to perform if the menu item is selected by the user. |
| Property | Description |
| Generic Trigger
Properties |
See description above. |
| AirportIdent |
The airport identification code, such as KSEA for SeaTac International. |
| Property | Description |
| Generic Trigger
Properties |
See description above. Property triggers are only ever fired once, and do not have a OneShot property value. |
| Condition |
One
or more conditions, created using the Condtional Editor, which can be a
list of logical AND, or a list of
logical OR, conditions. Click on the Property Set for Condition to
bring up the Conditional Editor dialog. |
| Property | Description |
| Generic Trigger
Properties |
See description above. The proximity trigger does not include the Actions property, as greater flexibility is provided by additional properties. |
| ObjectFilter |
This can be one of: User, Reference or Anything. The default is User, which means only the user aircraft can fire the trigger. If it is set to Reference, then only the objects listed for OnEnterFilter and OnExitFilter can fire the trigger. If it is set to Anything then any aircraft can fire the trigger. If it is set to User or Anything then OnEnterFilter and OnExitFilter are ignored. |
| OnEnterActions |
List of actions to be triggered when a specified object enters the box, and the OnEnterConditions are met. |
| OnEnterCondition | List of conditions that must be met for the OnEnterActions to be initiiated. |
| OnEnterFilter | List of objects that will fire the OnEnterActions on entering the box, if the OnEnterConditions are met. |
| OnExitActions |
List of actions to be triggered when a specified object leaves the box, if the OnExitConditions are met. |
| OnExitCondition | List of conditions that must be met for the OnExitActions to be initiated. |
| OnExitFilter | List of objects that will fire the OnExitActions on leaving the box, if the OnExitConditions are met. |
| Areas | List of one or more 3D box areas that the trigger applies to. These are set up as AreaDefinition objects. |
If a proximity trigger has its OneShot property set to True, and it has on-enter and on-exit actions (or on-enter and on-exit conditions) the trigger will deactivate itself on the first set of actions. So in other words, when the on-enter actions fire, the proximity trigger will be deactivated and the on-exit actions will never fire.
So if you are going to use both on-enter and on-exit actions or conditions, or any combination, you must set the trigger so that OneShot is set to False.
| Property | Description |
| Generic Trigger
Properties |
See description above. |
| CurrentTime |
Current amount of time, in seconds, left before the trigger fires. Do not set this property. |
| StartTime |
The time, in seconds, when the timer is to start. |
| StopTime |
The time, in seconds, when the timer is to stop, and fire any actions linked to the trigger. |
| OnScreenTimer |
Set to True if an onscreen timer is to be rendered. Note that there can only be one onscreen timer (so if a new one is opened, it will replace any existing one). |
| Property | Description |
| id | Reserved. Do not edit this field. |
| Descr | The name of the goal. The system will generate a name such as Goal1. This name can be edited to help identifiy it further. Make sure though that the name is unique. |
| InstanceId | This is the GUID generated to ensure the object has a unique reference. Do not edit this field |
| Activated | Set to True or False.This can be changed during a mission using the Goal Resolution action. |
| GoalState | One of: pending, completed, or failed. |
| Text | The text that will appear in the End Mission dialog, along with the final GoalState. |
| Order | The order in which the goals are to appear in the End Mission dialog, starting with 0 for the first. |
A disabled airport will not be involved in any AI traffic, either as a starting point or a destination.
| Property | Description |
| AirportIdent |
The airport identification code, such as KSEA for SeaTac International. |
© 2006 Microsoft Corporation. All rights reserved.
~~@~~