[2.0.52] output full - ingredient shortage

Bugs that are actually features.
tegirvaru
Burner Inserter
Burner Inserter
Posts: 5
Joined: Sun Nov 10, 2024 11:17 pm
Contact:

[2.0.52] output full - ingredient shortage

Post by tegirvaru »

space age. i have noticed that when i am direct inserting items, the machine that is waiting to insert the item never picks up enough of its own ingredients (even though they are available). the slot shows that the ingredient is empty but because the machine is "output full" the inserter doesnt grab the ingredient it is out of. but when the machine finally outputs, the inserters then wake up and decide to grab more items. there shouldnt be any pause or empty slots at all. (screenshot example of supercapacitor maker--cycling between short holmium plates and short batteries).

i have several recycle examples in this save (lab and normal fulgora--using editor). that all do the same thing, some with direct insertion and some with grabbing from belt, some where the recycler shoves the items in directly (which is the best result because it does it even when the slot is super full, so never is short). but for some reason, when "output full" there is often an "ingredient shortage" right after. i checked forum and see a lot of similar examples from v1.1... not sure what the outcome was.

105131 says resolved in 2.0 but was about fuel.
101501 was about shortage, but with a mod and related to fluids.
96457 similar but dealing with speed change and modules.
Attachments
SpaceAge02c-directinsertionwaits.zip
(14.27 MiB) Downloaded 17 times
427520_20250525173907_1.png
427520_20250525173907_1.png (3.1 MiB) Viewed 489 times
tegirvaru
Burner Inserter
Burner Inserter
Posts: 5
Joined: Sun Nov 10, 2024 11:17 pm
Contact:

Re: [2.0.52] output full - ingredient shortage

Post by tegirvaru »

i was watching nilaus just now and noticed this same thing, here is the clip. his is way faster than mine though.

https://www.twitch.tv/nilaus/clip/FastR ... 2YgUDdZdH-
User avatar
boskid
Factorio Staff
Factorio Staff
Posts: 3941
Joined: Thu Dec 14, 2017 6:56 pm
Contact:

Re: [2.0.52] output full - ingredient shortage

Post by boskid »

From the description i am 95% certain this is a Not a bug.

In the center of the behavior you are noticing is the assembling machine logic, which starts crafting whenever it has ingredients. In early stage when playing you may notice that when assembler is placed and you insert a stack of iron plates to craft gears, the assembler continues crafting even when the output is way past the usual threshold, and it is because assembler does not care about its own output being at the threshold. This means when you manually feed stack of ingredients, it will continue crafting as long as output slots are not at their max allowed size.

When inserters are involved in all of this, the observable behavior changes slightly because we do not want inserters to keep inserting ingredients until the input stacks are full - there should be only a handful of ingredients to start crafting. There is also another expectation with those, usually you do not want a huge amount of products to pile up inside of such assembler. Since assembler will start crafting as soon as it has all ingredients because of the non automated case, the only way to stop producing so output is not overflown, inserters have to be asked to stop insertng items.

All you are observing is basically this tight coordinated loop of inserter stopping inserting ingredients because assembler said it does not want ingredients inserted because output is already full. When the output drops below certain threshold, input inserters wake up and there is a latency because those inserters need to grab items, swing towards the assembler and then insert.

If those inserters would be allowed to insert more ingredients, then assembler would produce more products overflowing the output and breaching the output full condition. The only way this could be fixed is by splitting this large feedback loop (inserter -> assembler ingredients -> assembler products -> inserter) into 2 smaller feedback loops: first would be inserters inserting based only on the ingredient slots being not full and second loop being assemblers not producing when output is full. This behavior would however break the manual case where you put a stack of iron plates into an assembler because it would not keep craftng but instead it would just stop crafting as soon it accumulates handful of products.
tinker9
Long Handed Inserter
Long Handed Inserter
Posts: 67
Joined: Sat Nov 09, 2024 4:51 am
Contact:

Re: [2.0.52] output full - ingredient shortage

Post by tinker9 »

So, to be clear, the solution is to have enough fast inserters to remove all the products?
(Does adding more/faster ingredient inserters also help?)
Rseding91
Factorio Staff
Factorio Staff
Posts: 15676
Joined: Wed Jun 11, 2014 5:23 am
Contact:

Re: [2.0.52] output full - ingredient shortage

Post by Rseding91 »

Yes, you want to remove the product as fast as it's made and it will continue to craft more. If you don't, then that's a signal to the engine that you don't actually need the products as fast as the machine can run and it will stop and wait for them to be removed.
If you want to get ahold of me I'm almost always on Discord.
Post Reply

Return to “Not a bug”