No description
  • Rust 99.5%
  • Nix 0.5%
Find a file
2025-12-31 22:14:20 +01:00
factorio-blueprint Add serialization of unknown misc data for station name 2025-12-29 21:40:14 +01:00
factorio-blueprint-generator Add more tests for distributor 2025-12-31 22:14:20 +01:00
factorio-cli Add Linear Layouter 2025-12-31 00:54:24 +01:00
factorio-core Add Linear Layouter 2025-12-31 00:54:24 +01:00
factorio-generate-factory-graph Fix bug in distributor 2025-12-30 18:18:36 +01:00
factorio-graph Fix warnings and wrong powerpolse in AssemblingLine 2025-12-28 14:21:16 +01:00
factorio-layout Add Linear Layouter 2025-12-31 00:54:24 +01:00
factorio-pathfinding Add factorio-cli and clean up dependencies 2025-12-28 16:06:21 +01:00
factorio-raw Add factorio-cli and clean up dependencies 2025-12-28 16:06:21 +01:00
.gitignore Make crafting information accessible 2025-12-23 22:15:55 +01:00
build.rs Added crafting machine information extraction 2025-12-24 14:04:41 +01:00
Cargo.lock Add more tests for distributor 2025-12-31 22:14:20 +01:00
Cargo.toml Add factorio-cli and clean up dependencies 2025-12-28 16:06:21 +01:00
flake.lock Add flake.nix 2025-03-11 22:27:43 +01:00
flake.nix Add flake.nix 2025-03-11 22:27:43 +01:00
README.md Initial factory specification 2025-12-25 22:17:49 +01:00
rust-toolchain.toml Add flake.nix 2025-03-11 22:27:43 +01:00

Factorio Blueprint

This project consists of multiple parts:

  • Brute forcing small belt layouts
  • Generating parameterized production lines
  • Parsing and Generating blueprint strings
  • Layout blocks into a factory

Factory Specification

Factory Graph

This is the current input format and provided via YAML.

The of parameterized factory is already specified. Belt connections are roughly specified by allowing for generic splitters.

Internal Interfaces

Layout

This interface is responsible to take an Intermediate representation and find a valid layout. Internally this may use a Pathfinder.

The Layout positions is then used to create a blueprint.

Pathfinder

A Pathfinder takes a list of connections and a map with obstacles as an input and tries to find valid belt placements.