Files
2026-03-23 19:15:24 +01:00

40 lines
1.5 KiB
Markdown

+++
title = "Quickfacts - Intro"
date = 2026-04-01
description = "An introduction to my Quickfacts project"
draft = true
[taxonomies]
categories = ["Programming"]
tags = ["Factorio", "Rust", "Quickfacts"]
[extra]
toc = true
+++
A small introduction to my ongoing quickfacts project.
A set of tools/progams to automatically analyze factorio blueprints, basically the LLVM of factorio.
I have to no idea if this will ever work to a good degree or how far I will get, but I want to share this journey and document my ideas and approaches.
<!-- more -->
# Motivation
I love playing factorio and I especially love optimizing my builds and going down the rabbit hole on analyzing blueprints.
However given my interest in analysis of computer programs and formal methods, I thought why not combine them, because if you squint with your eyes these problems look very similar.
At the end of this road, I would love to have a website, where I can paste a blueprint I am interested in, select/configure an analysis and then get the results.
# Analysis Goals
- Determine the output rate given a fixed input rates (and how much of the input is actually being consumed)
- Check how well a belt-balancer works
- Highlight bottlenecks in a setup
# Known Limitations
- Any form of circuit networks/logic
- Trains
- Spoilage (for now)
# Approach
I am going to develop a rough mathematical/formal model for factorio and its' semantics.
Then I hope to do something similar to data-flow analysis and essentially express all the logic and analysis as a set of mathematical steps/functions to apply.