/MSFSLayoutGenerator

A drag-and-drop application for updating layout.json files in Microsoft Flight Simulator (2020) packages.

Primary LanguageC#MIT LicenseMIT

MSFS Layout Generator

A drag-and-drop application for updating layout.json files in Microsoft Flight Simulator (2020) packages.

Q&A

Q. What is a layout.json?

A. The Virtual File System (VFS) in Microsoft Flight Simulator relies on a layout.json file in the root of each package to determine which files it is allowed to load, and to perform a basic file integrity check.

Q. What does this application do?

A. The application will create/update a layout.json with all current files in the layout.json file's folder and subfolders. The following information is included with each file entry:

  • File path relative to layout.json (including extension)
  • Size (in bytes)
  • Last modified time (represented as a File Time)

The layout.json files generated by this application should be identical to those generated by Microsoft Flight Simulator. (Note: File order may vary, but shouldn't impact functionality of packages)

Q. Who is this application for?

A. This application will benefit anyone who creates packages by hand rather than using the Project Editor in Developer Mode. Livery artists in particular may find this useful, as adding each texture to layout.json manually can be tedious.

Requirements

  • Windows 10 (x64)
  • .NET Framework 4.7.2

Usage

  1. Download the latest release from this repository and place the executable in a convenient location on your PC.
  2. Drag any file named "layout.json" onto the exe.
  3. Launch Microsoft Flight Simulator and check out your changes.

Notes

  • The existing data in a layout.json will be overwritten/replaced when running the file through this application.
  • The application will only write to files named "layout.json" to avoid accidentally modifying unrelated files.
  • layout.json paths relative to the folder where the application is running are supported. For example, the application can run from the Desktop, and update a layout.json inside a folder named "ExampleFolder" that is also on the Desktop by providing the layout.json path as follows:
C:\Users\Example\Desktop\MSFSLayoutGenerator.exe ExampleFolder\layout.json
  • The application will accept a variable number of arguments, allowing multiple layout.json files to be updated at once. Each argument should contain the absolute or relative path of a layout.json to update. Example:
MSFSLayoutGenerator.exe "G:\MSFS\Community\example-package-1\layout.json" "G:\MSFS\Community\example-package-2\layout.json"

Feedback

Please submit any problems or suggestions to the Issues section of this repository.