Its not all possible with XML, but most thinks.
The origin of every aircraft is the
*-set.xml file and it is allways located in the main directory of the aircraft.
If you read this file, you will find
<sim>…</sim>. Thats the main layer and it include some special-tags for other staff:
<flight-model> stipulate the FDM (Flight Dynamic Model): YaSim, JSBsim, etc…
<aero> tells the FDM the name of the file that the FDM should load (the aero dynamic behavior of the aircraft)
and so on.
There can also be some
include=… parameter. This include the named file exactly on this position.
This enables us to split all information over more smaller files.
XML-files can load AC-file (3d models). In the AC-file are only the models build up of some or many objects.
In the XML-file we can write animation and bind it to the named objects or apply effects on it.
And there are other XML-files that contains calculations, known as filters.
This XML-files are also specified in the
*-set.xml or a XML-file that 'include' it.
You can fint it under
<sim><systems><autopilot>… or
<sim><systems><property-rule>….
The difference is, that filters loaded as <autopilot> run with 120Hz, so they will 120 times per seconds calculated.
The filter loaded as <property-rule> will be calculated only once per frame.
It can be that the
*-set.xml file also has a
<nasal>…</nasal> layer (outside of <sim>).
In this layer, you can load nasal scripts.
All in all, the XML-files define the property-tree in-sim. You can define new properties, assign values to it or load filters that continuously calculate new values for it.
So the most files that you will find in a aircraft directory are XML, AC, nasal and texture files like PNG and WAV sound files.
~~~ EDIT ~~~
In case of the G109 the electrical system is managed by a nasal script.
Open the file
Nasal/g109-electrical.nas and scroll to line 255:
- Code: Select all
# Radio
load += 6.0;
There is only the load, but the voltage will not be set.
I changed it to this:
- Code: Select all
# Radio
setprop("/systems/electrical/outputs/comm", main_bus_volts);
setprop("/systems/electrical/outputs/nav", main_bus_volts);
setprop("/systems/electrical/outputs/dme", main_bus_volts);
setprop("/systems/electrical/outputs/adf", main_bus_volts);
setprop("/systems/electrical/outputs/transponder", main_bus_volts);
load += 6.0;
This lines give voltage on the radios as soon as the battery or alternator comes on line.