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

IMG_6588 IMG_6620
IMG_6635 IMG_6576
IMG_6635 IMG_6635

Dev

conda env update --file environment.yml --prune  
conda activate drawscape_factorio

Distribution Cheat Sheet

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

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.5.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.15.5-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: drawscape_factorio-0.15.5.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.15.5.tar.gz
Algorithm Hash digest
SHA256 959c9df74d4e7b529dc832d76a7b321668c3b2a3b9059a862073975e6523d595
MD5 21457fe60970d77d49b32dc09d7d89f7
BLAKE2b-256 47106b5c5c2a0fa6a73ad875e5b0b3d8a851e2ac608fad358b898e7a46546f21

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for drawscape_factorio-0.15.5-py3-none-any.whl
Algorithm Hash digest
SHA256 ca7ea04e4724cf9841ec0c4f174e1480f0e94899a523c853f19615afbba87d4a
MD5 635e330a32ef3b6d40a35654d638fa03
BLAKE2b-256 fe85a93303608533401436959570038610ee8d5942ab20986098b80d36f48fef

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