Note
The current main branch contains WIP changes for porting the code to factorio 2.0.
For the latest 1.1 compatible version see the factorio-1.1.109 tag.
Collection of crates that help with deserializing and serializing Factorio blueprint strings, prototype and locale dumps and mod settings.
End goal is to build a blueprint renderer that properly supports blueprints with modded entities by first loading a prototype dump and then rendering the blueprint.
blueprint: blueprint string (de)serializingfactorio_api: internal factorio mod portal apifactorio_datastage: reimplementation of factorio's datastages for loading mods (called settings & prototype stage in the data lifecycle)locale: locale dump (de)serializingmod_util: mod settings (de)serializing (.jsonand.datfiles), mod list (de)serializing, dependency resolving, property tree (de)serializing (binary format only) and accessing mod filesprototypes: prototype (de)serializing & renderingtypes: generic type (de)serializing, sprite loading, layering, merging, ...serde_helper: util functions for deserialized defaults & serialization skip conditionsscanner: the actual rendering tool that connects everything
Warning
There are no stability guarantees as of now.
Consider all of this to be unstable!
The prerelease part of the version number for the types, prototypes and factorio_datastage crates matches the corresponding factorio version they target.
Since the other parts are either only documented on the wiki (for example blueprint string format and mod settings file format) or not explicitly documented at all there is no factorio engine version to use for these crates.
See scanner's readme for more information.