Socket
Socket
Sign inDemoInstall

satisfactory-json

Package Overview
Dependencies
Maintainers
1
Versions
63
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

satisfactory-json

Convert Satisfactory save files to JSON and back


Version published
Weekly downloads
0
Maintainers
1
Weekly downloads
 
Created
Source

satisfactory-json

Library to convert from Satisfactory save files to a JSON format and back.

Usage

import { SaveGame, sav2json, json2sav } from 'satisfactory-json';

const saveFileData: Buffer;
// convert sav -> json
const saveGame: SaveGame = sav2json(saveFileData);
// convert json -> sav
const saveData: string = json2sav(saveGame);

Notes

Stability

This package follows the Semantic Versioning schema. As the major and minor version are still 0 the JSON this package creates cannot yet be considered stable and will probably change with every version. Progress towards a stable JSON interface can be observed at milestone 0.1.0. As Satisfactory itself is still in Early Access the save file format will also probably change in breaking ways with each new game update.

What does the preprocessor do?

The goal was to achieve bidirectional transformations from Archive to the variable as in the Unreal code. This is useful, because binary data has to be read in the same way it was written, so writing that code once saves the effort to keep the two functions in sync.

ar << property.name;

Problem is, TypeScript passes parameters by value and not by reference. The only way to be able to read or write to a variable seems to be to pass an object and a key to a variable in it:

ar.transformString(property, 'name');

By using strings as key we lose the most important feature of TypeScript, the Type Safety. So I wrote a preprocessor that converts the following code to the code above before sending it t the TypeScript compiler so that we can have the best of both worlds.

ar.transformString(property.name);

FAQs

Package last updated on 07 Aug 2019

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc