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/*0.14*

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.1.5.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.1.5-py3-none-any.whl (8.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: drawscape_factorio-0.1.5.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.1.5.tar.gz
Algorithm Hash digest
SHA256 4033100f5c1e474b021ea2eb4d0c4f62e007fe8a3430cddfe23a8f3f9e68315f
MD5 c4a22ebf09bdc098e064223f1ed82296
BLAKE2b-256 e9ac6fd3543d9085f2cfd3b246fd9deb48fa25b03b95996df2dc863f272dc61d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for drawscape_factorio-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 46b9738daa2f276237c3b14fbdce2637330e6c5daebad745cb64bd65cf1f9732
MD5 6ae96fbe449f5a8e9b5ad578796c6a12
BLAKE2b-256 ff173fddd8359254aaf20cc65bb152b83e84fb150e3186916642840b26148d03

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