THE PACKAGE TOOL
The package tool is a tool specifically created for Microsoft Flight Simulator to compile various assets and convert them into ready-to-use add-on packages. It also performs validation on some assets, to make sure that Microsoft Flight Simulator receives what it expects when trying add the package to the sim. The package tool functionality is invoked automatically when using the Developer Mode tools, but it can also be invoked outside of the game by calling the fspackagetool.exe
executable located in the following folder:
<SDK_Root>\Tools\bin\
The package tool is able to build several types of assets, including (but not limited to):
- Scenery
BGL
files (from XML) - Single
SPB
files (from XML) - Art projects (model libraries)
- SimObjects
- Missions
- Material libraries
The package tool uses XML Files to describe the different packages and assets to build. The 3 main components when using the package tool are:
- Projects
- Packages
- AssetGroups
These concepts are explained in more detail on the following page:
To get specification information on how to write the XML files used by the tool, please see here:
The fspackagetool.exe
can be invoked with various parameters following this syntax:
fspackagetool <path to project .xml> [-outputdir <output directory>] [-tempdir <temp directory>] [-rebuild] [-mirroring] [-forcesteam]
The parameters available are:
-outputdir <output directory>
: Specify parent of directory containing output packages (default is the parent directory of the project .xml file).-tempdir <temp directory>
: Specify parent of directory containing temporary build artifacts (default is the parent directory of the project .xml file)-rebuild
: Force redoing all file conversions-mirroring
: Enable mirroring. Files in the output directory that do not match a compiled target will be deleted-forcesteam
: Force using the Steam version of the game to build the package. This is only necessary to specify if you have both the Microsoft Store and Steam versions installed on your computer. If that is the case and you don't use this option, the Microsoft Store version will be used.-outputtoseparateconsole
: This will make theFlightSimulator.exe
output go to the Microsoft Flight Simulator console instead of to theFsPackagetool.exe
console (this replicates previous behaviour before changes were made to the tool).-nopause
: This will prevent theFlightSimulator.exe
from pausing at the end and waiting for the user to press a key.