Skip to main content

A savegame parsing package for Satisfactory.

Project description

Satisfactory Save Library

A library to parse and edit save games of the game Satisfactory by Coffee Stain Studios.

Install

pip install satisfactory-save

Usage

import satisfactory_save as s

# Load a save game
save = s.SaveGame('test.sav')

# Store a save game
save.save('test_edit.sav')

# Get save header, e.g., SessionName
print(save.mSaveHeader.SessionName)

A save game could be seen as mainly consisting of objects stored in several levels. Each object is of a specific class, which is identified by a class name, e.g., a foundation is of the class /Game/FactoryGame/Buildable/Building/Foundation/Build_Foundation_8x4_01.Build_Foundation_8x4_01_C. For further details about the save game structure, please refer to the detailed documentation here.

To access the save objects, the following methods exist:

# List of objects of the main level (including buildings)
save.mPersistentAndRuntimeData.SaveObjects

# List of other level save objects
for i in range(len(save.mPerLevelDataMap)):
    level_name = save.mPerLevelDataMap.Keys[i]
    level_objects = save.mPerLevelDataMap.Values[i].SaveObjects

# Unified list of all objects
save.allSaveObjects()

To access the objects by class name, the following methods exist:

save.isObjectClass('/Class/Name')
save.getObjectsByClass('/Class/Name')

To access the objects by path name, the following methods exist:

save.isObjectPath('Path_Name')
save.getObjectsByPath('Path_Name')

Objects can be added and removed to a save game:

# Add object, a level must be provided, -1 refers to the main level
save.addObject(object, level=-1)

# Remove object from save game
save.removeObject(object)

Adding and removing objects is computationally expensive because internal structures are rebuilt every time. To overcome this limitation, an interface to add or remove lists of objects exists:

save.addObjects(objects, level=-1)
save.removeObjects(objects)

For more details about creating objects and adding properties, some examples are available here.

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

satisfactory_save-0.10.0.tar.gz (1.0 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

satisfactory_save-0.10.0-cp314-cp314t-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.14tWindows x86-64

satisfactory_save-0.10.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

satisfactory_save-0.10.0-cp314-cp314-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.14Windows x86-64

satisfactory_save-0.10.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

satisfactory_save-0.10.0-cp313-cp313-win_amd64.whl (999.2 kB view details)

Uploaded CPython 3.13Windows x86-64

satisfactory_save-0.10.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

satisfactory_save-0.10.0-cp312-cp312-win_amd64.whl (999.1 kB view details)

Uploaded CPython 3.12Windows x86-64

satisfactory_save-0.10.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

satisfactory_save-0.10.0-cp311-cp311-win_amd64.whl (984.9 kB view details)

Uploaded CPython 3.11Windows x86-64

satisfactory_save-0.10.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

satisfactory_save-0.10.0-cp310-cp310-win_amd64.whl (983.4 kB view details)

Uploaded CPython 3.10Windows x86-64

satisfactory_save-0.10.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

satisfactory_save-0.10.0-cp39-cp39-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.9Windows x86-64

satisfactory_save-0.10.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

File details

Details for the file satisfactory_save-0.10.0.tar.gz.

File metadata

  • Download URL: satisfactory_save-0.10.0.tar.gz
  • Upload date:
  • Size: 1.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for satisfactory_save-0.10.0.tar.gz
Algorithm Hash digest
SHA256 79b5bac28c9bbecd79b5df1760a73d387c2fff6e5c0c5692dea7adc27a0f9001
MD5 d8330f638e75820f526ce35b3573504e
BLAKE2b-256 f7a7662cc23c6787cdc68e3dda90e09e29499b6a073d2ad1bc5cccb15611f268

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfactory_save-0.10.0.tar.gz:

Publisher: python.yml on moritz-h/satisfactory-3d-map

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file satisfactory_save-0.10.0-cp314-cp314t-win_amd64.whl.

File metadata

File hashes

Hashes for satisfactory_save-0.10.0-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 221228624ef4b031669ea9541a773027632a4b670465e7b65d9d46082f7e1aee
MD5 aa54c28b49008f9e44e2a1daf5d6deba
BLAKE2b-256 a7207015b00ad55f094821187c3a6ee47548d77beb5610f1c7abcd4e75f65bff

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfactory_save-0.10.0-cp314-cp314t-win_amd64.whl:

Publisher: python.yml on moritz-h/satisfactory-3d-map

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file satisfactory_save-0.10.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for satisfactory_save-0.10.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 369f35b07e294e5ab41dfb95d62c0d50f9326f4bc1836e96e2a1ed6f725cda72
MD5 3a86e35fae3fb439d27a545ec9212dc7
BLAKE2b-256 e9a493f350117a43e06fb1710753f6a71b6dade56a5d4f11b1a4113edc6fda3f

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfactory_save-0.10.0-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python.yml on moritz-h/satisfactory-3d-map

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file satisfactory_save-0.10.0-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for satisfactory_save-0.10.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 81b00ef5a0cab3d3f5d7e5a166bb6ef69e7bad9f6e1203aff8de3df09082c726
MD5 ab6cf45fe640ff98d57bccd7ceb53f33
BLAKE2b-256 def53fc86bceceb43042e523835d4f30e0fc73b881c8e43a6a4fc3e70fea3b12

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfactory_save-0.10.0-cp314-cp314-win_amd64.whl:

Publisher: python.yml on moritz-h/satisfactory-3d-map

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file satisfactory_save-0.10.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for satisfactory_save-0.10.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6a90b91e5d419ab6e10ffd1ee9314767ac8b36dd00f465bf6c8c801e4639ca6c
MD5 59975a71921d52b0ad4a5a540771a190
BLAKE2b-256 65ca4b8613553d89ec935995b7bda973ee41a4d1ca95e162055ec55f31a6ec73

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfactory_save-0.10.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python.yml on moritz-h/satisfactory-3d-map

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file satisfactory_save-0.10.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for satisfactory_save-0.10.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 c1bdab2ea3ffdc7cc4b060ba63829f52245f9ed7e49d83cdf8af989044329cea
MD5 1a300b63989e0122332462f3ed7e8d03
BLAKE2b-256 61bd098a1926b05065c1bc78fae04620003b49678db5f2e3faaea2d08d83bb21

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfactory_save-0.10.0-cp313-cp313-win_amd64.whl:

Publisher: python.yml on moritz-h/satisfactory-3d-map

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file satisfactory_save-0.10.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for satisfactory_save-0.10.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c0ff4fbf4e4ef778c24781dd071639ed36de1810e1b21ac9a816e6d04c6598ff
MD5 676cb46f87522491a802ea6df2c7726c
BLAKE2b-256 892bc8f97345d50276707d3c01a536bcc74befc1320a876c7f676cba70c3d542

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfactory_save-0.10.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python.yml on moritz-h/satisfactory-3d-map

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file satisfactory_save-0.10.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for satisfactory_save-0.10.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 fa33efe2022ee268a568ca4c7474a5bcf0656514e7e28d3d7ba17a6ca48fd578
MD5 c1863cf0f6d20f0274a834e9c2e68dae
BLAKE2b-256 87d26b59d98ace798e86da363a4fd1042205e43bcc25ebc0ffa04b2de6ce6729

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfactory_save-0.10.0-cp312-cp312-win_amd64.whl:

Publisher: python.yml on moritz-h/satisfactory-3d-map

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file satisfactory_save-0.10.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for satisfactory_save-0.10.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8c339e9ec5f57427136bae760287c67773b4885ac1e4550a028f7f2875c5ab41
MD5 4985398946f23ffe3e892fa28cf6cf17
BLAKE2b-256 62fcb0675e5f727792664d51cea3b8542c90eb277b060f70c8f4fb9b2aca69b6

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfactory_save-0.10.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python.yml on moritz-h/satisfactory-3d-map

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file satisfactory_save-0.10.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for satisfactory_save-0.10.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 3451732bcc7ee6a50b655b056b28795c3d1ebe5f1d43626e6e569570f4c08c8a
MD5 249728b2cfe60c7c281b54ec205cc05f
BLAKE2b-256 6849a0ebf0143a021b99854b66e9683d8d644019e5d96bb8aff1dd416f2199c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfactory_save-0.10.0-cp311-cp311-win_amd64.whl:

Publisher: python.yml on moritz-h/satisfactory-3d-map

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file satisfactory_save-0.10.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for satisfactory_save-0.10.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 abca425177d463598b57f87a47380ed9cec512e66ffc27add2f82be2c464846c
MD5 2a8673a7b742e0585fb620e92f458275
BLAKE2b-256 9bb90f265af781843d958a9aac300f1361d8ebc57971eb1230499a7a830b661f

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfactory_save-0.10.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python.yml on moritz-h/satisfactory-3d-map

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file satisfactory_save-0.10.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for satisfactory_save-0.10.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 17b978d1f980a402470073f8edc487a2795e2cd7257cbcb2847d667763a962d2
MD5 c6dd749dd855df7ca38a7ad48d425a02
BLAKE2b-256 e08059b6e40985815cee4d97f0fd65498a003de04fc57559a1f195c5d7ff839e

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfactory_save-0.10.0-cp310-cp310-win_amd64.whl:

Publisher: python.yml on moritz-h/satisfactory-3d-map

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file satisfactory_save-0.10.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for satisfactory_save-0.10.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 316f62105a5fb8f6b4c1bcf20cf75165ea52389956dd5b2b2fb86578bdc75a1a
MD5 e2c943cc9f3369918443b8bd5d703f08
BLAKE2b-256 80868e545f94873cffd15b0388b5839770c787a86fa68736e765244b02e29700

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfactory_save-0.10.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python.yml on moritz-h/satisfactory-3d-map

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file satisfactory_save-0.10.0-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for satisfactory_save-0.10.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 89e443c90d4353ea97f263d5501f94ed5af5453e74ae9e3b03c53032bf14108d
MD5 6c9df6c3394226e6216224d6419fb428
BLAKE2b-256 b47e5e2c140865d4e32a1f8b5d065b60f500010bc9291524622b21bd076b01b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfactory_save-0.10.0-cp39-cp39-win_amd64.whl:

Publisher: python.yml on moritz-h/satisfactory-3d-map

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file satisfactory_save-0.10.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for satisfactory_save-0.10.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d219de143296d025df0ce6281e7e6b70bba2f9142c763539cdb7df66faffc86c
MD5 4fc7cd5c14f8138177a3358de162ef87
BLAKE2b-256 43aee167c9e107ae397b99cecfd42b23f12206b6651c467fc0586aa4281f2197

See more details on using hashes here.

Provenance

The following attestation bundles were made for satisfactory_save-0.10.0-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: python.yml on moritz-h/satisfactory-3d-map

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page