A KSP SFS savefile parser
Project description
sfsutils
A KSP SFS savefile parser
Install
pip install sfsutils
Usage
Example:
import sfsutils
data = sfsutils.parse_savefile("saves/persistent.sfs")
# edit data
sfsutils.writeout_savefile(data, destination_file="saves/edited.sfs")
All documentation is in the docstrings of each function.
Available functions are (see docstrings for more info):
- parse_savefile - Parses an SFS file from stream or file
- writeout_savefile - Writes out the parsed data back into the SFS format
Notes
The parsing order of this library is deterministic, but note that this guarantee is provided by Python dictionaries sorting keys by the order of insertion (this is the case since Python 3.6).
There is a Cython implementation of this module. With the Cython implementation, parsing is about 4x as fast, and serialisation is about 2x as fast. The Cython backend will automatically be built and selected if Cython is installed along with a working C compiler at the time when this library is installed. If Cython is not available or the build otherwise fails, the pure Python backend will be installed instead.
The backend in use can be checked with sfsutils.BACKEND (possible values: "Python", "Cython").
License
GPLV3
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file sfsutils-1.1.1.tar.gz
.
File metadata
- Download URL: sfsutils-1.1.1.tar.gz
- Upload date:
- Size: 18.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 367b962822a247a39757231075ff6cae54cd8abbfe2c54d1c78a5d751769c9bd |
|
MD5 | 55dfd7dcc33bd7ee4eef0cdb72bb91a8 |
|
BLAKE2b-256 | 8accecc867474da9ccfad942f0ecf6088e69ae5ad17613da572de892e1f76575 |