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

Dev

conda activate drawscape_factorio

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.4.tar.gz (11.1 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.4-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: drawscape_factorio-0.15.4.tar.gz
  • Upload date:
  • Size: 11.1 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.4.tar.gz
Algorithm Hash digest
SHA256 f798e979333ecd86b972b451390a6870cd812efb96590f6bb33560271b362657
MD5 7a13af00f9d2bae58208ffce70deee39
BLAKE2b-256 724728d0caf6d9b6ecf9f9807c7e8e88b4f97e6bcae214f35b5f1a2ef9ee8736

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for drawscape_factorio-0.15.4-py3-none-any.whl
Algorithm Hash digest
SHA256 83fc5628faaf48ba9e7c961e3720d9466a90a54873beaf47df00dde80740c94b
MD5 8085401db1e342b62631af278c0f24f1
BLAKE2b-256 3d9340d67e67ce89e1460d75eb538faab8525a19cef018382c5a4a45f0499515

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