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
Auto
IPv4
IPv6

<Scope>

 

Sets the scope for the communication. Note that IPv6 can use any of them, while for Pipe or IPv4, this should be only local or global. Also note that link-local is an IPv6 mechanism for accessing computers on a network that does not involve traversing a router, while unrestricted enables Teredo tunneling.

String:

local
global
link-local
unrestricted

<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