Skip to content

fgardt/factorio-scanner

Repository files navigation

Factorio-Scanner

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.

Building additional tools might also happen along the way (cli tool to edit mod-settings.dat files for example).

Crates

  • blueprint: blueprint string (de)serializing
  • factorio_api: internal factorio mod portal api
  • locale: locale dump (de)serializing
  • mod_util: mod settings (de)serializing (.json and .dat files), mod list (de)serializing, property tree (de)serializing (binary format only)
  • pretty_logging: modified version of pretty_env_logger. Unreleated to factorio but used in other crates.
  • prototypes: prototype (de)serializing & rendering (supports entities, items, fluids and recipes)
  • types: generic type (de)serializing, sprite loading, layering, merging, ...
  • serde_helper: util functions for deserialized defaults & serialization skip conditions
  • scanner: the actual render tool that connects everything

Versions

AT THIS POINT THERE IS NO GUARANTEE ABOUT BREAKING CHANGES.
CONSIDER ALL OF THIS TO BE UNSTABLE!

The prerelease part of the version number for the types and prototypes crates matches their corresponding factorio version.

Since the other crates 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.

Scanner

See scanner's readme for more information.

About

Factorio tools to render and work with blueprint strings, (de)serialize prototype dumps and more

Topics

Resources

License

Stars

Watchers

Forks

Languages