Skip to main content

Drawscape Factorio

Project description

image

Drawing a Factorio Base with a Pen Plotter

CLI written in Python to create SVG images from Factorio base data that you can then draw on a pen plotter.

Demo

In case you are wondering what pen plotting is, checkout this video: Pen Plotting Video Demo

Installation

Clone this repository and then run:

pip3 install -e .

Exporting Map Data out of Factorio

Currently using a Factorio MOD called FUE5-Exporter to export all entites on a map in JSON format.

https://github.com/FUE5BASE/FUE5-Exporter

  1. Install the MOD via the Factorio GUI. Search for FUE5
  2. Use MOD to "select" area of the map you want to export. Try to "frame" your seletion to only export the area you want to render.
  3. Find the exported-entities.json file inside your Factorio Application Data
  • For OS X Steam install (~/Library/Application Support/factorio/script-output)
  • Maybe here as well (%APPDATA%/Factorio/script-output)
  1. Copy/Paste they JSON file somewhere else so you can work with it. It will get overwritten if you leave it there.

Usage

drawscape-factorio create --json exported-entities.json
  • --optimize will run vpype commands to prepare the SVG for efficient pen plotting. This will not work unless you already have vpype installed via the command line. https://github.com/abey79/vpype

Themes

Goal being more themes can be implimented that will uniquely render each of the Entity Types. Most likely each theme will be dedicated to a specific pen type and paper size.

Notes

  • I've only tested this on a Mac (OSX)
  • For some reason the FUE5-Exporter mod isn't exporting roads.

Examples

https://github.com/user-attachments/assets/7775d327-aca9-47a2-a217-86d0da47bf09
IMG_6588 IMG_6620
IMG_6635 IMG_6576
IMG_6635 IMG_6635

Distribution

PyPi API saved in ~/.pypirc for auto-atuh

Increment version number each distribution

rm -rf dist/*
python setup.py sdist bdist_wheel
twine upload dist/*

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

drawscape_factorio-0.15.2.tar.gz (11.2 kB view details)

Uploaded Source

Built Distribution

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

drawscape_factorio-0.15.2-py3-none-any.whl (8.1 kB view details)

Uploaded Python 3

File details

Details for the file drawscape_factorio-0.15.2.tar.gz.

File metadata

  • Download URL: drawscape_factorio-0.15.2.tar.gz
  • Upload date:
  • Size: 11.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for drawscape_factorio-0.15.2.tar.gz
Algorithm Hash digest
SHA256 ef57d6f83b96f512479b721a021ccaf503d605eb5700a783bf603921fcefdbdf
MD5 4c5f3919123e3ae468dfbfe43f2bc38f
BLAKE2b-256 be4859f96c7a0b159f1caf3f83abe6b6917716995e5d0580c8c2fb6d6045ac7c

See more details on using hashes here.

File details

Details for the file drawscape_factorio-0.15.2-py3-none-any.whl.

File metadata

File hashes

Hashes for drawscape_factorio-0.15.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3d1f8e53367029abe7160f82ca3f965feba6e3b2caca57e4390a8e2b208da178
MD5 79ddee32399f576e10cb47357f7283b2
BLAKE2b-256 ac09f2b497ac091f32d4e8da8e5f0e1d3d2c112433bacb2386c0b6e056a64a75

See more details on using hashes here.

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