Digging through the Cargo Mission XML file there is a section that calculates the “Airline Procedures” score - here’s the section:
<SimMission.Calculator id="Airline procedure calculator" InstanceId="{6CA45158-2C65-42BA-8A68-6A894BC49991}">
<SimBase.Descr>Airline procedure calculator</SimBase.Descr>
<WorldBase.Activated>true</WorldBase.Activated>
<CalculatorFormula> (X:ProcedureTotalScore) </CalculatorFormula>
<CalculatorParameterList>
<FormulaParameter NameInFormula="ProcedureTotalScore" StartValue="0" />
<FormulaParameter NameInFormula="ValidationRef_ContactNewCenter" StartValue="0" />
<FormulaParameter NameInFormula="ValidationRef_ContactTower" StartValue="0" />
<FormulaParameter NameInFormula="ValidationRef_ContactApproach" StartValue="0" />
<FormulaParameter NameInFormula="RequestFlightFollowing" OnActivatedValue="0" />
<FormulaParameter NameInFormula="SquawkAcknowledged" OnActivatedValue="0" />
<FormulaParameter NameInFormula="RadarContactAcknowledged" OnActivatedValue="0" />
<FormulaParameter NameInFormula="FullStopAcknowledge" StartValue="0" />
<FormulaParameter NameInFormula="FullStopOnGoing" StartValue="0" />
<FormulaParameter NameInFormula="RunWayInsightOnGoing" StartValue="0" />
<FormulaParameter NameInFormula="ContactApproachOnGoing" StartValue="0" />
<FormulaParameter NameInFormula="RadioContactClimb" StartValue="0" />
<FormulaParameter NameInFormula="ATCClearedPushBack" StartValue="0" />
<FormulaParameter NameInFormula="ATCclearedIFROnGoing" StartValue="0" />
<FormulaParameter NameInFormula="ATCAcknowledgeIFROnGoing" StartValue="0" />
<FormulaParameter NameInFormula="ATCclearedIFR" StartValue="0" />
<FormulaParameter NameInFormula="StopPushBack" StartValue="0" />
<FormulaParameter NameInFormula="IFRCanceled" StartValue="0" />
<FormulaParameter NameInFormula="ATCclearedApproachOnGoing" StartValue="0" />
<FormulaParameter NameInFormula="AcknowledgeClearedApproach" StartValue="0" />
<FormulaParameter NameInFormula="TowerContact" StartValue="0" />
<FormulaParameter NameInFormula="PatternEntryAccepted" StartValue="0" />
<FormulaParameter NameInFormula="ATCclearedApproach" StartValue="0" />
<FormulaParameter NameInFormula="AnnounceFinal" StartValue="0" />
<FormulaParameter NameInFormula="ATCclearedLandingOnGoing" StartValue="0" />
<FormulaParameter NameInFormula="ATCclearedGateOnGoing" StartValue="0" />
</CalculatorParameterList>
</SimMission.Calculator>
So those appear to be the graded parameters during career cargo flights. The file also contains references to the grading criteria that measure each of those items but without access to the decoded files that contain the code I can’t say exactly how they’re graded but there are some clues - here is the section that appears to measure the initial “Radio Contact” after takeoff…which I assume is triggered after takeoff on climbout:
<SimMission.ExecuteListAction id="RadioContactClimbAction" InstanceId="{0ACD298B-7669-4636-A019-D875CD42C534}">
<SimBase.Descr>RadioContactClimbAction</SimBase.Descr>
<Immediate>false</Immediate>
<Actions>
<WorldBase.ObjectReference id="Pause_3s" InstanceId="{12357B3B-571F-4F2E-9664-91CC099BDBAD}" />
<WorldBase.ObjectReference id="DeActivate Step : Contact radio center" InstanceId="{4D037ADC-5851-47AC-B1CA-D8F66EF1F4EE}" />
<WorldBase.ObjectReference id="DeActivate Step :Request Flight Following" InstanceId="{C303A2A9-EFB2-42FA-8AE6-BF155C8EE410}" />
</Actions>
</SimMission.ExecuteListAction>
<SimMission.ExecuteRPNAction id="RadioContactClimb" InstanceId="{032AE737-9996-4D2F-AD63-83BD5EE2ACA9}">
<SimBase.Descr>RadioContactClimb</SimBase.Descr>
<RPNCode> 1 (>X:RadioContactClimb) </RPNCode>
<WorldBase.ObjectReferenceList>
<ObjectReference id="Airline procedure calculator" InstanceId="{6CA45158-2C65-42BA-8A68-6A894BC49991}" />
</WorldBase.ObjectReferenceList>
</SimMission.ExecuteRPNAction>
So that appears that this action triggers and gives a pass to either the “contact center” or “request flight following” action by deactivating their flags after about a 3 second delay from the trigger point. The next section appears to flag that successful completion of this step is a graded item for “airline procedures” - passing a RPN code of 1 for RadioContactClimb.
What I haven’t found yet is the “script” that the mission grading follows…announce taxi, announce takeoff, request flight following, request IFR, announce position on arrival, announce on final, announce taxi to parking…and the additional steps for IFR flights. Once we have that script we can map out the graded process for career missions.
Why isn’t this faster - well all the files are hidden behind the streamed virtual file system and are encrypted.