<SimMission.FlowStateAction>

Flowstates are used to define the different parts of a mission or freeflight such as the introduction, the aircraft approach, or a flyby of a POI. Within flow states, you have "flow events" which are the special actions that control specifc in-sim actions, such as enabling the VFR map, pausing the simulation, and changing the camera. You can also use flowstates to start animated intros and and outros using RTC Cameras. You can find examples of these uses in the different bushtrips, landing challenges, and freeflights available in the simulation.

 

This element is used as part of the XML file used to generate a mission. Full information on this file can be found here:

The element also has the following attributes:

 

Attribute Description Type Required
InstanceId The unique ID for the flow state action, as a GUID enclosed in {}. String Yes
VRDependency When set to TRUE, this sets the flow action as being VR dependent. Default is FALSE. Bool No

 

This element can also contain any of the following sub-elements, sometimes multiple times: <Descr>, <FlowStateName><AutoStateSwitchEnabled>, <StayInStateAfterEndTeleportActions>, <IsFirstStateInTimeline>, <TrafficAircraftStateName>, <ATCAircraftStateName>, <AvailableInTimeLine>, <IsFirstStateInTimeline>, <FromSpawn>, <SpawnFlowEvents>, <SpawnActions>, <TeleportFlowEvents>, <TeleportActions>, <IntroFlowEvents>, <IntroActions>, <StartFlowEvents>, <StartActions>, <PauseOnStart>, <EndFlowEvents>, <EndActions>, <FirstState>, <NextState />, <Immediate><SimMission.ObjectReference />, <EndStateOnEvent>, <EndChecklistActions>.

 

 

<FlowStateName>

With this sub-element of the main <SimMission.FlowStateAction> you can define what kind of flow state it is that you are creating. The name can be any one of the following constants and will be used as the flow state reference:

 

Constant Description Use Case
INTRO   General
OUTRO  
BRIEFING  
INTRO_PLANE  
REPLAY  
JOINPLANE  
SPECTATOR  
WAITING  
TELEPORTTOSTATE  
PREFLIGHT_GATE  

Flight Stages

(Used in Freeflight)

PREFLIGHT_PUSHBACK  
PREFLIGHT_TAXI  
PREFLIGHT_HOLDSHORT  
FLIGHT_RUNWAY  
FLIGHT_INITIAL_CLIMB  
FLIGHT_CLIMB  
FLIGHT_CRUISE  
FLIGHT_DESCENT  
LANDING_APPROACH  
LANDING_FINAL  
LANDING_TOUCHDOWN  
LANDING_GROUNDROLL  
LANDING_TAXI  
LANDING_GATE  
LANDING_REST  
FREEFLIGHT   Activities
BUSHTRIP  
LANDINGCHALLENGE  
RACE_BASE  

Reno Races

RACE_LOWALTITUDE  
RACE_REDBULL  
RACE_RENO  
RACE_CRASHED_OR_DISQUALIFIED  
RACE_LOBBY_BASE  
RACE_LOBBY_REDBULL  
RACE_WAIT  
RACE_WAIT_PLAYERS_LOADING  
RACE_WAIT_PLAYERS_FINISHED  
RACE_WAIT_OPENING_RTC  
RACE_WAIT_OPENING_RTC_EDITION  
RACE_FINISH  
QUALIFICATIONS_BASE  
QUALIFICATIONS_RENO  
QUALIFICATIONS_WAIT_OPENING_RTC  
QUALIFICATIONS_WAIT_PLAYERS_FINISHED  
QUALIFICATIONS_FINISH  
RENO_MENU_INTRO  
RENO_MENU_GAMEMODE  
RENO_MENU_QUICK_BASE  
RENO_MENU_QUICK_CATEGORY  
RENO_MENU_QUICK_PLANE  
RENO_MENU_QUICK_SEARCHMATCH  
RENO_MENU_QUICK_WAITREADY  
RENO_MENU_PRIVATE_BASE  
RENO_MENU_PRIVATE_WAIT_SERVER  
RENO_MENU_PRIVATE_CATEGORY  
RENO_MENU_PRIVATE_PLANE  
RENO_MENU_PRIVATE_WAITREADY  
RENO_MENU_SOLO_BASE  
RENO_MENU_SOLO_CATEGORY  
RENO_MENU_SOLO_PLANE  
RENO_MENU_SOLO_SETTINGS  

 

 

<AutoStateSwitchEnabled>

This sub-element can be either TRUE or FALSE (it is TRUE by default or when omitted from the XML). When TRUE it signifies that automatic changing of the flow states is enabled.

 

 

<TrafficAircraftStateName>

This element is used to set the state of the aircraft AI. This should be something appropriate to the type of flow state, as defined using <FlowStateName>. For example, if your mission starts in the air, your flow state would be FLIGHT_CRUISE, so your aircraft AI would be set to STATE_ENROUTE_AS_FILED, for example. The aircraft state can be any of the following strings:

 

Constant Description
WAIT_INIT_CONFIRM  
SLEEP  
FILE_FLIGHT_PLAN  
SUPPORT_PREFLIGHT  
IFR_CLEARANCE  
PUSH_BACK_BEGIN  
PUSH_BACK_CONTINUE  
ENGINE_START  
PRE_TAXI_FOR_TAKEOFF  
TAXI_FOR_TAKEOFF  
TAXI_ONTO_RUNWAY  
TAKEOFF  
TOUCH_AND_GO_DEPARTURE  
ENROUTE_AS_FILED  
TRAFFIC_PATTERN  
LANDING  
LANDING_ROLLOUT  
GO_AROUND  
TAXI_TO_PARKING  
ENGINE_SHUTDOWN  
SUPPORT_POSTFLIGHT  
TAXI_TO_REFUEL  
SIMPLE_FLIGHT  
SIMPLE_TAXI  
SIMPLE_LANDING  
SIMPLE_TAKEOFF  
WAIT_FOR_ENGINE_START  
TAXI_HOLDSHORT  
FLY_UNTIL_NEXT_EVENT  
WAIT_FOR_ENGINE_SHUTDOWN  

 

 

<ATCAircraftStateName>

This element is used to set the state of the ATC aircraft. This should be something appropriate to the type of flow state, as defined using <FlowStateName>. The ATC state can be any of the enum strings available for the equivalent FLT parameter AcState.

 

 

<IsFirstStateInTimeline>

This sub-element can be either TRUE or FALSE (it is FALSE by default or when omitted from the XML). When TRUE it signifies that the state is the first one in the timeline.

 

 

<AvailableInTimeLine>

This sub-element can be either TRUE or FALSE (it is TRUE by default or when omitted from the XML). When TRUE it signifies that the state will be available in the timeline.

 

 

<FromSpawn>

This sub-element can be either TRUE or FALSE (it is FALSE by default or omitted from the XML). When TRUE it signifies that the state starts when the plane is spawned during loading.

 

 

<SpawnFlowEvents>

This element should contain one or more <FlowEvent /> sub-elements. These events will happen at the end of the spawn first frame in a flow state.

 

 

<SpawnActions>

This container element is used to define one or more <SimMission.ObjectReference /> elements as the action(s) to be performed at the end of the spawn first frame in flow state. This element may have the following sub-elements: <SimMission.ObjectReference /><Immediate><CurrentActionIndex>.

 

This element has the following attribute:

Attribute Description Type Required
id The ID of the spawn actions list. String No

 

 

<TeleportFlowEvents>

This element should contain one or more <FlowEvent /> sub-elements. These events will happen as soon as the mission has finished loading, just before the user aircraft is teleported into position for the start of the mission.

 

 

<TeleportActions>

This container element is used to define one or more <SimMission.ObjectReference /> elements as the action(s) to be triggered as soon as the mission has finished loading, just before the user aircraft is teleported into position for the start of the mission. This element may have the following sub-elements: <SimMission.ObjectReference /><Immediate><CurrentActionIndex>.

 

This element has the following attribute:

Attribute Description Type Required
id The ID of the teleport actions list. String No

 

 

<StayInStateAfterEndTeleportActions>

This sub-element can be either TRUE or FALSE (it is FALSE by default or omitted from the XML). When TRUE it signifies the flow should stay in the current state after the end of the aircraft teleport.

 

 

<IntroFlowEvents>

This element should contain one or more <FlowEvent /> sub-elements. These events will happen after the events performed by the initial teleport.

 

 

<IntroActions>

This container element is used to define one or more <SimMission.ObjectReference /> elements as the action(s) to be triggered after the actions performed by the initial teleport. This element may have the following sub-elements: <SimMission.ObjectReference /><Immediate><CurrentActionIndex>.

 

This element has the following attribute:

Attribute Description Type Required
id The ID of the intro actions list. String No

 

 

<StartFlowEvents>

This element should contain one or more <FlowEvent /> sub-elements. These events will happen the moment that the user presses the Ready to fly button at the start of a mission.

 

 

<StartActions>

This container element is used to define one or more <SimMission.ObjectReference /> elements as the action(s) to be triggered the moment that the user presses the Ready to fly button at the start of a mission. This element may have the following sub-elements: <SimMission.ObjectReference /><Immediate><CurrentActionIndex>.

 

This element has the following attribute:

Attribute Description Type Required
id The ID of the start actions list. String No

 

 

<PauseOnStart>

This element is a sub-element of <SimMission.FlowStateAction>. When set to True, it will cause the simulation to be paused when the flow event is first started. The default value is False.

 

 

<EndFlowEvents>

This element is a sub-element of <SimMission.FlowStateAction> and is a container element for one or more of the <FlowEvent /> sub-element. These events will be triggered on the end of the current flow event.

 

 

<FirstState>

This sub-element can be either TRUE or FALSE (it is FALSE by default or omitted from the XML). When TRUE it signifies that the state is the first state in the mission flow. 

 

 

<NextState />

This sub-element can be used to tell the mission which state to move on to after the current one is finished. It is a self-closing element and has the following parameters:

 

Attribute Description Type Required
id The unique identifier of the state to move on to, as defined using <FlowStateName>. String Yes
InstanceId The unique ID to reference this state action, as a GUID enclosed in {}. String Yes

 

Note that you may define several <SimMission.FlowStateAction> in a single mission XML file and then have the mission move between them using the <NextState /> element.

 

 

<EndStateOnEvent>

This sub-element can be used to tell the mission to end the current state if this event has been triggered. It is a self-closing element and has the following parameters:

 

Attribute Description Type Required
id The unique identifier of the event to use as the end trigger, as defined using <FlowStateName>. String Yes
InstanceId The unique ID to reference this state action, as a GUID enclosed in {}. String Yes

 

 

<EndChecklistActions>

This container element is used to define one or more <SimMission.ObjectReference /> elements as the action(s) to be triggered when the flow state checklist has been finished. This element may have the following sub-elements: <SimMission.ObjectReference /><Immediate><CurrentActionIndex>.

 

This element has the following attribute:

Attribute Description Type Required
id The ID of the checklist end actions list. String No