Page 1 of 1

Stack assembly machines

Posted: Sun Jul 23, 2017 1:06 pm
by burner
TL;DR
Factory what does not mess economy but produce things at stacks to increase sleeping timer and decrease cpu usage.
What ?
I tested this https://mods.factorio.com/mods/Emmote/I ... y_Research and it helps to ups at my mega factory.
Also when my factory is idle it will give 45UPS instead of running state 20UPS.
So idea is that assembly machines and furnaces what produce full stacks of items but time to make one stack is still (stack size * one item producing time) That way it will not cause any effect to game economy. Also heavy lifting insterters what can lift full stack but it can take much longer to lift it will go that same category.
Why ?
- Reduce calculations at each entity uptade when most of entitys are most of time at timer wait.
- Low hang fruit for ups optimization without messing game economy
- Yes I know that it will cause more cache miss but at least by stack inserter tests what I did it will sill help to ups.

Re: Stack assembly machines

Posted: Sun Jul 23, 2017 2:01 pm
by Sneaker2
I like the idea.

I just wonder how this should be implmented, cause if inserters can grab whole stacks, should assemblers be able to process those stacks as well, or should stacks be converted back into single items inside the assmbler again?
I myself had a suggestion, which would require the assembler to aknowledge multiple recipies for a single product (f.e.: green circuits could be made from copper wire and iron plates, but also from copper wires and iron plate stacks )( blue circuits needing sulfuric acid from intake > product or sulfuric acid barrels > product + empty barrel )

I guess these changes arent that small, so I wonder how the devs would react to this. It would also probably mean that you would need to be able to select if there should be stacks as product or single items for whatever reason. Or single items could be feed into an assembler which would produce such stacks and vice versa (similar to fluids in barrels, just without an empty barrel as packaging).

So I wonder where this might go.

Re: Stack assembly machines

Posted: Sun Jul 23, 2017 8:18 pm
by Jap2.0
The thing is, the only reason to do this would be to help UPS. It would be tedious to replace all your assembly machines (I don't think it's viable for early game), and the only people who are having UPS problems are those who build megabases (and more optimizations are coming in 0.16, so even less people will have problems). According to Steam, less than 1% of people have produced 20 million green circuits in all their factories combined, and we can assume that some many people have done that without building megabases that tax their UPS. Furthermore, I think it would be difficult to balance with size and cost compared to smaller assemblers.

Re: Stack assembly machines

Posted: Mon Jul 24, 2017 5:38 pm
by burner
Jap, yes it can be that true fans of factorio is small group. But anyway probably they are also people who get new players? And we speak about quite simple trick here. Anyway if you are worried that this kind assembly machine is not attractive enough that can be solved with 2 ways. a) how about just putting that to settings. So if it not part of game play or economy then it can be part of "other settings". b) it it is still that original idea of next level factory then it can also give some advantage. Maybe more module slots?


Sneaker. Idea is just that as same way that currently one green card need 3 copper cable. It just request 200*3 copper cables at once and produce 200 green cards at once. If that feels too extreme it can be example capped to 50 so it will request 150 copper cable at once and produce 50 green cards at once. So it will not need any logic changes to outside of that machine. That machine only multiply receipt inputs and outputs and production time with multiplier.

Re: Stack assembly machines

Posted: Mon Jul 24, 2017 5:47 pm
by burner
Jap2.0 wrote:The thing is, the only reason to do this would be to help UPS. It would be tedious to replace all your assembly machines (I don't think it's viable for early game), and the only people who are having UPS problems are those who build megabases (and more optimizations are coming in 0.16, so even less people will have problems). According to Steam, less than 1% of people have produced 20 million green circuits in all their factories combined, and we can assume that some many people have done that without building megabases that tax their UPS. Furthermore, I think it would be difficult to balance with size and cost compared to smaller assemblers.
Oh and you forgot one thing on that 20 million. If you look achievements it will not show real situation. With mega factory with friends you need manually slow down your server with game.speed to get rid of lag. That is counted as lua command and it will cause achievement disable. So it does not give any kind real statistics about mega factories.

Re: Stack assembly machines

Posted: Mon Jul 24, 2017 10:36 pm
by Jap2.0
Hmm, maybe. More module slots would be a good idea to make it have a use outside of UPS. It would have to be quite expensive, and maybe have a larger tile size (4x4 or 5x5 maybe?), to be balanced.

Also: if you had a it make, say, 100 gears at a time, would it take 50 seconds or 0.5?

Re: Stack assembly machines

Posted: Tue Jul 25, 2017 10:33 pm
by burner
Currently assembly machine 1,2 and 3 take all same space. Only price is different. So suggest to continue that same line that footprint is same but cost is higher. actually currently even assembly machine 3 is cheap as soap when you build mega factory. So if it is targetted more for mega factories it can be significantly more expensive.

About time. Currently one gear take 0.5 second so if that machine make 100 gears at once it will take 50 seconds to do it without modules. Well assembly machine 3 gives currently 1.25x carfting speed so probably that need also at least that if it is more expensive. As I earlier say it can be also just game setting if it does not affect for economy. But another hand higher tier machine with extra cost & module places can give more fun that just checkbox at settings.

Re: Stack assembly machines

Posted: Wed Jul 26, 2017 9:11 am
by Engimage
Maybe it would be a good idea to let assembler choose a batch size (the number of recipe cycles it will produce). It would benefit beaconed setups for recipes with low production times (like 0.5 sec) and will increase input/output buffer size accordingly as well as effect UPS.

Re: Stack assembly machines

Posted: Wed Jul 26, 2017 2:30 pm
by burner
PacifyerGrey wrote:Maybe it would be a good idea to let assembler choose a batch size (the number of recipe cycles it will produce). It would benefit beaconed setups for recipes with low production times (like 0.5 sec) and will increase input/output buffer size accordingly as well as effect UPS.
I also think that first that how about simulation contains that kind optimization that when entity update time goes too long it will automatically start "cheat" and calculate things at patches. That most probably will work but problem is that it can cause unpredictable problems. Example you make super cool circuit network what works fine and everything is great and ice cream taste good. One day everything just randomly blow up because your automation is not designed to work with stacks. That can make your ice cream to taste s* and ruin whole day. I hit to that kind problem with stack inserter capacity bonus. Some of things just stop working. They was fixable with limiting max stack size. But it was good reminder that how important it is that everything is predictable and user decide how they work. Naturally when I research that bonus by my self it is my own fault. But if engine change stack size just by ups it will cause problems.

Re: Stack assembly machines

Posted: Wed Jul 26, 2017 4:44 pm
by Tekky
Related threads:

viewtopic.php?f=80&t=19343 Boxing / Packaging / Container / Cargobox : Pre-Filling
viewtopic.php?f=80&t=25685 Higher Volume Conveyor (transport whole stacks)