My friend and I routinely have conversations about factory design.
His ideal factory ships every ore in its raw state to a single building, which can then move the ore to different floors/sections for processing. He goes further than most and separates each product into its own “room”, so all steel bars are made in one room then shipped to the steel beam and steel pipe rooms. Importantly the factory should be designed so that you can “infinitely” expand a room if you need more of that resource.
I prefer what I call “microfactories”, where each component is created in a small, independent factory and the result is shipped to a main repository for builder use and for the space elevator construction. If you need modular frames, for example, you would find a group of ores and build a small factory on it and build every sub-component you can in it. Ideally, it would not rely on any other microfactory’s outputs, but sometimes that’s easier said than done. Often I will have a small cluster of microfactories all dedicated to shipping their output to a final microfactory for processing.
So what do you all use?
Note: He claims his design is more analogous to microservices (from software architecture) than mine, and that mine is something apparently called “pirate architecture”. I think he’s out of his mind on that one.
Is “Flying Spaghetti Monster” a valid answer?
That depends, is it a metaphor for factory
Yes. One that is in the air and just a mess of conveyor belts.
I’ve only ended up with frozen chunks of spaghetti monster so far
And the horribly irradiated factory of my first save. That one is pretty fucking hilarious though
So I’ll throw in that there’s a performance hit for huge factories. The game chunks the world state, it’s why your frame rate goes up when you walk to a new area. A huge mega factory in one area will limit you in that area, and it will start to feel sluggish later on. Separating your factories across multiple areas helps because it will spread the load across the CPUs cores, and it will feel faster. Your gpu will also be happier to not need to render everything
I think if I make that argument he’s going to just reference the fact that we both have very powerful computers. Although he’s never experienced auto-save hell yet, so maybe when that starts happening he’ll see the light
Yeah we made that argument too, and we upgraded the server to the top of the line AMD and it still chugged. It’s an incremental thing, it doesn’t change the fact that you’re still in one chunk, so you’re entire factory is still just on one core. Spreading out means you’ll spread the load out too. What’s the point of all of those cores if most will sit idle?
Plus when you hit 500 hours in a factory the entire world becomes a mega factory anyway. Eventually what you thought was a mega factory just is one of many of those factories. Oil processing alone for me can span the entirety of the Gold Coast if i really want to maximize it.
I got halfway through the post before I realized it wasn’t about over-engineering a Java application.
Half of our arguments stem from how to interpret the analogy…
I did both… never could settle on one or the other.
But finding areas suited to intermediate components (such as oil to plastics, fuel byproducts, etc in one area) then using trains to send them to be used in more complicated factories was fun.
So extraction to intermediate for some things across the map and then all those shipped to a mega factory for larger and final products could be a compromise
For our shared world I capitulated and we’re doing a megafactory, but I put my foot down and said I will not allow power (coal/oil/nuclear) to enter the factory. I had to draw a line somewhere and it makes no sense to me to not have your power dialed in to perfection
I created stackable blueprints that include a specific type of building, for example constructors. They have an input and output on the ground and i can build them higher and higher as long as the belt is fast enough to push in and out the materials.
By doing that i normally have one or more towers for each component, similar to your mentioned microservice architecture.
On the ground i connect these towers to build the downstream components, essentially creating your mentioned microfactories out of the towers/microservices. Perhaps Manyfactories is a better name, as it’s somewhere in-between micro and mono.
It’s fast, scalable throughout the research tiers and pretty enough for my own standards.
I wonder if there’s a correlation between a love of blueprints and a preference towards closer together infrastructure. Because my friend also loves blueprints, but I generally don’t like them.
I always tell him he’s like King Neptune and I’m Spongebob. He’s shuffling out gigafactories in minutes and I’m here tucking in my conveyor belts and reading them stories. Each one is a special snowflake to me
During my first playthrough I eventually came to the conclusion that I’ll never progress much further if i keep building every small item one by one. I do not have much time to play the game, so blueprints came in handy. Since then I have never looked back.
You’re totally right though, there are many ways to play the game and they are all enjoyable. I bet there’s even players roleplaying a nomadic, explorative playstyle.
This makes me think of the analogy in systems administration of “pets vs cattle”
Exact same strategy here. There’s a lot of ways to decorate towers too which is great.
If on-site production
reducesincreases stack size of a raw material by a considerable margin I will do that, which means basically everything except aluminium (I did the math… I think). All those products are then shipped to the main factory to add to the chaos.Raw unit throughput per minute is also a major consideration for me… I never ship silica, much better to ship the raw quartz
I suppose I’d call what I do a “mill and factory” architecture which seems to be similar to yours.
I’ll find a resource site - take for example the infamous now-nerfed cliff in the west Northern Forest, and I’ll put an iron mill there that does everything from smelting up to, say, reinforced plates or modular frames. Same with steel mills, refineries etc.
These will feed a small number of major centralized factories. One that I’m in the process of building the 1.0 version of now is always located in the southern Rocky Desert that I call the Desert Automated Manufacturing Node…In my Update 5 playthrough I amused myself by giving all my facilities rude names with technical sounding acronyms, and the DAMN stuck. I still call it that. It’s the mid-game factory, it makes motors, crystal oscillators, heavy mod frames, circuit boards, AI limiters, high-speed connectors, computers and supercomputers. Big factory that takes up most of the big empty section of the biome. It, along with the late game (radio control units, turbomotors etc.) and now the quantum process factories will ship goods to the Project Assembly Tower where the space elevator lives.
My nuclear power plant is as self-contained as possible; I don’t like pulling from main production to feed power so it gets a whole weird mishmash factory unto itself. This ended up being the only successful sushi belt in my last playthrough, as I needed several kinds of things in fairly small amounts.
I first determine the part I need, look at the map and find a group of nodes that can support the part, then build a microfactory. Basic parts then get sent to larger factories that have assemblers/manufacturers. The exception to this rule is that screws for any factory are made on-site until I find enough recipes to remove them from my production chain. I also tend to stay away from iron/copper/limestone impure nodes (using only normal/pure) until power is no longer a concern.
All factories are visited by train and collect a residual amount that is then sent to the HUB and joining warehouse for my personal needs (one-stop shop).
You’ve described my ideal scenario, but my friend just doesn’t understand me… thankfully you do
I first went into Satisfactory with the same mindset: megafactory with rooms for everything, but scaling and space requirement quickly became an issue. I’ve diverged from this mindset, especially since in early game (with tiers unlocked, recipes undiscovered), refactoring the flow of production and logistics is pretty much guaranteed, which leads to undoing all of your hard work. The philosophy of wu wei applies here.
If you are in the end-game, I guess you could create a megafactory, but at that point, I think FICSIT would say that really isn’t efficient or practical and more for aesthetical reasons.
I start with a flying spaghetti monster off a cliffside and then try to graduate to microfactories to conserve CPU load, especially once I make the shift to refineries.
I used to be at your extreme where I would have huge microfactories building e.g. screws and train them all over the place. I was also at your friend’s extreme at one point, doing only a single item on each floor, ending up building as high as the top of the space elevator.
The last playthrough before 1.0 dropped (and the one before it), I have adopted more of a hybrid approach where the only micro factories I tend to build are aluminum, oil processing, and energy production… plastic/rubber, coal plants, fuel processing, turbo fuel, etc.
Then I train it to the megafactory. I also haul in all raw resources except the ones mentioned. The hybrid approach I am liking is to smelt on floor 1, constructors on floor 2, assemblers on floor 3, etc. So I mix things on different floors. It makes it harder to manage, so I have to keep the megafactory smaller. Then I go build another megafactory somewhere else.
In theory I like micro factory design for how neat and tidy it can be. I’m a really disorganized person though and in practice I make a monolithic mess lol
Strip mall. Everything has it’s own little store, with the back area where new stock arrives. Even has a nice multi lane road going the middle.
I think I get closer to what you’re describing in most builds. Small buildings on a flat foundation surface high above the ground, where all the “shipments” come from a lower level so all the conveyor belts are hidden. Kind of like when you build a computer and stuff all the extra cords onto the side of the case out of sight.
The strip mall is modular as well, done in the blueprint maker, so they are crazy easy to stack and expand.
On our shared server there’s a big emphasis on anesthetics so I usually build relatively small independent standing factories - but sometimes these factories will do something like bringing smelted iron ingots into modular frames while as other times they’ll just be focused on a single step.
I think the microservice approach is more likely to be vulnerable to unbalanced ratios if that’s a thing you care about - having a belt of iron feeding into a full balanced chain to produce frames is easier to balance once and never worry about again.
Microfactories connected by train
As a developer, this is clearly the micro services architecture, where a mega factory is clearly a monolith
I very much lean towards the microfactory approach - locate a cluster of resources within reasonable belting/piping distances, design a factory which can consume the cluster’s entire production of the limiting resource (clocking others to match) to make 1 output or maybe 2, then provide that output to the rail network. Some production chains make it easier to have certain inputs taken from the rail network.
Within one of these factories, items are refined further for each floor they ascend but I rarely enforce a 1 product/floor rule - in particular I find it convenient with many Assembler/Manufacturer recipes to have an input that is directly fed from a single Constructor using clock speed to match production with consumption. This usually means each microfactory underclocks its most power hungry buildings a fair bit which keeps their consumption moderate. Each microfactory ideally has a single priority power switch to turn off its entire production chain if its consumption is becoming a problem and I set up a priority sequence for them.