Code Monkey home page Code Monkey logo

msfslayoutgenerator's Introduction

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)

Additionally, if a package contains a manifest.json and the total_package_size property is present, the value will be updated to reflect the package's current total file size in bytes.

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.

msfslayoutgenerator's People

Contributors

hughesmdflyer4 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.