Factory Planner


This mod allows you to plan your production in advance, specifying the recipes and machines that make up each assembly line. It provides powerful features that are fast and intuitive to use, so you can focus on actually building your factory.

Utilities
4 months ago
0.17 - 1.1
209K

i Matrix Solver Changes

11 months ago

So I am now aware the matrix solver is probably not adjustable, but depending on the interface with it, some of these might be feasible.

UI - In the popup, give details on the ranges for each possible resource, if it will increase or decrease, and specifically let you choose one of those. I don't mind producing extra petroleum, but I can't exactly consume more of it since I have zero.
Linearly Dependent - When this goes off from you selecting the "Wrong" unrestricted items, you can't unselect that last unrestricted item, but must either remove recipes or or turn the matrix solver off, which removes any void recipes or previously chosen unrestricted items.
Also, I would prefer being able to have a list of those recipes and be able to say "I prefer Recipe A over Recipe B, use A as much as you can then switch to B" or something like that.
Isolation. Subfactories, currently, are mere organization tools. They only make things look nicer, by hiding complexity, but don't actually act as seperate subfactories. Suggestion that the inside of a subfactory is treated entirely like a encapsulating class, such that its insides are completely blackboxed to any higher level factory. So for instance, you put a Koverox process in there, matrix solver on, and it figures out the loop. You go back up a level, and it just treats that subfactory as a "virtual recipe" which consumes 2 depleted uranium to make 1 enriched uranium.
Locking. Allow recipes to be "Locked" such that the matrix solver can't touch them, but has to work around them. As far as it is concerned, a locked "Gear" recipe just adds a demand to the system of producing 2 iron and consuming 1 gear.
Minimax. - Instead of absolute values of whatever, have ranges. All resources are +- infinite by default, but if you demand an output, it defaults to a minimum value given, You can lock that by adding a max. Inputs are the same, where you are inputing at least this amount. The matrix solver then runs inside those constraints, which you can narrow down until it is trapped at one chosen solution.

10 months ago
(updated 10 months ago)

Appreciate all the suggestions Rana. These all sound like good ideas. I have a big solver rewrite planned at some point, and I'll let these ideas flow into that for sure. Especially treating subfloors as their own black box would be a big improvement for sure.