Skip to content

Checklist System

Matt Barraud edited this page Oct 16, 2020 · 7 revisions

Main checklist file stored in:

  • \Community\Aircraft_2B_bonanza-g36-improvement-project\SimObjects\Airplanes\Asobo_Bonanza_G36\Checklist\Bonanza_G36_Checklist.xml

Document references the following files:

  • \Official\OneStore\fs-base-aircraft-common\CheckpointsLibrary\Asobo_DefaultCheckpointLibrary.xml
  • \Official\OneStore\asobo-aircraft-bonanza-g36\SimObjects\Airplanes\Asobo_Bonanza_G36\Checklist\Library.xml

Original Document found at:

  • \Official\OneStore\asobo-aircraft-bonanza-g36\SimObjects\Airplanes\Asobo_Bonanza_G36\Checklist\Bonanza_G36_Checklist.xml

The file is split into sections - which are fixed by ASOBO (I think) these are listed as steps. So for the G36 we have:

  1. <Step ChecklistStepId="PREFLIGHT_GATE">
  2. <Step ChecklistStepId="PREFLIGHT_TAXI_OUT">
  3. <Step ChecklistStepId="FLIGHT_RUNWAY">
  4. <Step ChecklistStepId="FLIGHT_TAKEOFF">
  5. <Step ChecklistStepId="FLIGHT_CRUISE">
  6. <Step ChecklistStepId="FLIGHT_DESCENT">
  7. <Step ChecklistStepId="LANDING_APPROACH">
  8. <Step ChecklistStepId="LANDING_TOUCHDOWN">
  9. <Step ChecklistStepId="LANDING_TAXI_IN">
  10. <Step ChecklistStepId="LANDING_GATE">

Within these steps your can create the pages we see in the checklist with: <Page SubjectTT="PAGE NAME">

Each checklist item is opened with <Checkpoint Id="Name of Item">

You can force the camera system to move the view with <ForceCamera name="Switches" /> As much as I can tell the camera name is using the Title ="Pilot" found in the cameras.cfg in \Official\OneStore\asobo-aircraft-bonanza-g36\SimObjects\Airplanes\Asobo_Bonanza_G36\cameras.cfg

You can set the text found at the bottom of the checklist window with a hint with <Clue name="The parking break should be set" />.

The text in the checklist is set with: <CheckpointDesc SubjectTT="Parking Brake" ExpectationTT="Set" />

The checklist system uses test's to check each option.

Each <Test> must have a <TestValue> and a series of <Operator OpType=""> for the system to check against. You can sequence test's in a checklist action using <Sequence SeqType="">; SeqTypes can be 'Ordered', 'Unordered' or in 'Parallel'.

The <Operator OpType=""> can be:

  • GREATER
  • LESS
  • BETWEEN
  • EQUAL
  • LESS_OR_EQUAL
  • OR (You can nest <Operator OpType=""> together in a chain)
  • GREATER_OR_EQUAL
  • NOT
  • AND You can also use Tolerance="1500" within the tag to set a tollerance level - e.g. when setting the throttle.

Once you set the test variables you then put the SimVar you want to check against with a <Val SimVarName=""></>

  • <Val SimVarName="ELECTRICAL MASTER BATTERY:2" Units="Bool" />
  • <Val Value="1" />

You can also use some logical operators to check the SimVars and also check XMLVARs for example the BUS 1 voltages @Frett created.

  • <Val Code="(L:XMLVAR_BUS1_VOLT_INDICATED, volts) (A:ELECTRICAL BATTERY BUS VOLTAGE:2, volts) 21.0 &gt; and" />
  • So this is XMLVAR_BUS1_VOLT_INDICATED >= (Greaterthan and equal to) ELECTRICAL BATTERY BUS VOLTAGE:2

You can get the system to check or automatically complete the item with

  • <Action Copilot="True" Condition="TestValueFalse" SpecialAction="WaitUntilTestValueValidated" />

The condition can be either TestValueFalse or TestValueTrue.

The SpecialAction is set as:

  • WaitUntilTestValueValidated
  • WaitForUserToDoIt
  • WaitForDuration with value="x"

There is also Once="true", and EventID="SET_STARTER1_HELD" EventParam="1" & Code="1 (&gt;L:XMLVAR_Starter_State_IsDown)"

The EventID="SET_STARTER1_HELD" I believe is linked to a animation??? The code= is a logical test.

I am still a little unsure and need to get my head around this...

Finally to highlight an instrument you use

  • <Instrument Id="HTML:AS1000_PFD:Display" />

A full example is:

`<Checkpoint Id="PREFLIGHT_ELEVATOR_TRIM">`
  `<ForceCamera name="Pedestal" />`
  `<Clue name="Trim tabs should be set to 0 or Neutral" />`
  `<CheckpointDesc SubjectTT="Trim Tabs" ExpectationTT="Neutral" />`
  `<Test>`
    `<TestValue>`
      `<Operator OpType="EQUAL" Tolerance="500">`
        `<Val SimVarName="ELEVATOR TRIM INDICATOR" Units="Position 16k" />`
        `<Val Value="0" />`
      `</Operator>`
    `</TestValue>`
    `<Instrument Id="HANDLING_Wheel_ElevatorTrim" />`
    `<Instrument Id="HANDLING_Indicator_ElevatorTrim" />`
    `<Action Copilot="True" Condition="TestValueFalse" Once="true" EventID="ELEVATOR_TRIM_SET" EventParam="0" />`
  `</Test>`
`</Checkpoint>`

To Do

  • Understand what a L: and A: and K: mean
  • Understand where XMLVars are set

SOLVED!

  • Find a list of instrument ID's or where these are referenced
  • Instrument ID's are referenced in the SimObjects/Airplanes/Asobo_Bonanza_G36/model/Bonanza_g36_interior.xml. Each switch/instrument/guage needs to have the line <PART_ID>NAMEOFPART</PART_ID> added into the <useTemplate> section.
Clone this wiki locally