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

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.12.tar.gz (11.0 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.12-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: drawscape_factorio-0.12.tar.gz
  • Upload date:
  • Size: 11.0 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.12.tar.gz
Algorithm Hash digest
SHA256 fa3bb7d54655dad390f4b074691edd3070afea84da9f86c7bf9ff152d06c6c12
MD5 5c858f1ee3dbadc3c5bec076b48ac54e
BLAKE2b-256 c806c332ed096dbb4bc5f90391f4d18bd1695e963c9a3064669532402f822989

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for drawscape_factorio-0.12-py3-none-any.whl
Algorithm Hash digest
SHA256 3d4eb895aad193636c3c928db34f33ed29e231f848a762828cc6649e529d60a3
MD5 901d05dabae308cda1ebdd3baf844e5d
BLAKE2b-256 5144b4c6066cc06c4c04f54e9324a9a6b65a9b5419742b1a1ac177e616a4ee1a

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