SIMCONNECT XML DEFINITION
IMPORTANT! This section relates to a legacy process intended for use with Microsoft Flight Simulator X. It is still valid for Microsoft Flight Simulator but may be changed or even removed at some time in the future and should only be used for support of legacy add-ons.
The SimConnect.xml
file (which you can get here) contains communication information for the SimConnect server. The default behavior is that three servers are initiated by the system, for local communication using one of each of the three protocols: Pipe, IPv4, and IPv6. These servers do not require entries in the XML file. The SimConnect.xml
file is not needed if this covers the communication requirements. If remote connections are required, then one entry will need to be made in this file to cover each type of remote communication that needs to be supported.
NOTE: The server behavior has changed from previous versions. In Microsoft Flight Simulator, the support for dynamic ports is deprecated (and no ports are written in the registry), and local connections should prioritize the usage of pipes. In the absence of the server config file (SimConnect.xml
) it will be generated automatically, including the default pipe for a backward compatibility port and an additional one dedicated to Microsoft Flight Simulator.
This file would go in the roaming folder for the server, which will be different depending on which source installed Microsoft Flight Simulator:
- Microsoft Store:
C:\Users\<user_name>\AppData\Local\Packages\Microsoft.FlightSimulator_8wekyb3d8bbwe\LocalCache\
- Steam:
C:\Users\<user_name>\AppData\Roaming\Microsoft Flight Simulator\
The SimConnect.xml
should be formatted as follows:
<?xml version="1.0" encoding="UTF-8"?>
<SimBase.Document Type="SimConnect" version="1,0">
<Descr>SimConnect Server Configuration</Descr>
<Filename>SimConnect.xml</Filename>
<SimConnect.Comm>
<Disabled>False</Disabled>
<Descr>Static IP4 port</Descr>
<Protocol>IPv4</Protocol>
<Scope>local</Scope>
<Port>500</Port>
<MaxClients>64</MaxClients>
<MaxRecvSize>41088</MaxRecvSize>
</SimConnect.Comm>
<SimConnect.Comm>
<!-- COMMS DATA -->
</SimConnect.Comm>
<!-- FURTHER COMMS -->
</SimBase.Document>
Here you must include the <SimBase.Document>
element (where the type
attribute should be "SimConnect") and the rest of the XML is comprised of the elements listed on this page.
<Descr>
This element provides a description of the file. It has no attributes and there should only be one of these elements per file.
<Filename>
This element provides the filename for the actual file and should always be "SimConnect.xml
". It has no attributes and there should only be one of these elements per file.
<SimConnect.Comm>
This element is a container element that defines a communications section of the file. It has no attributes and can contain sub-elements listed in the table below. If remote connections are required, then additional <SimConnect.Comm>
sections should be added, one for each protocol or scope that should be supported.
Sub-Element | Description | Type | Required |
---|---|---|---|
<Disabled> |
Set to True to disable SimConnect completely, or False otherwise. | Bool | No |
<Descr> |
Description of the current communications section. | String | |
<Protocol> |
The protocol entered here is the only one this particular server will accept. Note that Auto is accepted for backwards compatibility as synonymous with Pipe . |
String: Pipe |
|
<Scope> |
Sets the scope for the communication. Note that IPv6 can use any of them, while for |
String: local |
|
<Address > |
The server address. This should be copied to the field of the same name in the SimConnect.cfg files for the clients. |
String | |
<Port> |
The server port. This should be copied to the field of the same name in the SimConnect.cfg files for the clients. |
String | |
<MaxClients> |
Define the maximum number of SimConnect clients that can be active at any one time, using this communication section. | Integer | |
<MaxRecvSize> |
The maximum receive packet size, in bytes. The server will disconnect a client that transmits a packet larger than this. | Integer | |
<DisableNagle> |
Set to "True" to disable the Nagle packet sending algorithms, or "False" otherwise. | Bool |