Page 1 of 1

[0.10.12] Assembling machine should accept multiple stacks

Posted: Sun Nov 23, 2014 7:38 am
by Mike Rosoft
Summary: It is not possible to build a "small plane" in an assembling machine, even though it can be selected for building. When a number of required items exceeds a single stack, the machine should accept multiple stacks of the same item.


I am currently playing the fourth mission of the "New Hope" campaign. The mission requires me to build a plane. Turns out, it is not possible to build the plane in an assembling machine (even though it can be selected for building); the machine only accepts a single stack of each item. To build a plane, 120 plastics and 250 advanced circuits are needed; the machine only accepts 100 plastics and 200 advanced circuits. (Initially, I thought this was a limitation of the level 2 assembling machine, and went to invent level 3. Upgrading the machine made no difference.)

I understand that a machine accepts as many items as needed to build two products. If this exceeds a single stack, the machine should accept multiple stacks of a single item. (Alternately, it could simply accumulate items regardless of stack size, but the game always arranges items into stacks - it probably does not make sense to make an exception for an assembling machine.)

Possible solution:
* The required level of assembling machine to build a plane could be increased to 3.
* The maximum number of ingredient stacks in assembling machine 3 could be increased to 8 or more. (This depends on if there are more recipes which exceed the stack size.) Alternately, the machine could simply accept as many stacks of an item as needed, and the limitation would only apply to item types.

Workaround: Collect items from the machine, and build the plane in your inventory.

Re: [0.10.12] Assembling machine should accept multiple stac

Posted: Mon Nov 24, 2014 1:18 am
by bobingabout
There's another issue too... if the assembly machine has multiple stacks of the same item in it, the machine only loads the first stack of that item, and doesn't touch the second.

Furthermore, since you said 120 plastic, and 250 circuits... well, they USED to stack to 128, and 256 before the rounding to 10 based happened. This is more likely a bug introduced because of the rounding than with assembly machines.

Re: [0.10.12] Assembling machine should accept multiple stac

Posted: Mon Nov 24, 2014 1:39 am
by n9103
I think the 10-base stack sizes were around before the 4th campaign map.
Also, perhaps this was intentional, to force the player to hand build the plane?

Re: [0.10.12] Assembling machine should accept multiple stac

Posted: Mon Nov 24, 2014 12:08 pm
by Ledjlale
This limitation brings another bug too :
When we try to assemble item that requierd large stack that touch the limit of one stack (eg: armor MK1 with 100 steel plate), this will block the inserters : There is not enough room for its item. All all the process are blocked.

Re: [0.10.12] Assembling machine should accept multiple stac

Posted: Mon Nov 24, 2014 12:12 pm
by DaveMcW
Assembling machine 3 still needs an upgrade to 5 item slots so it can build refineries and power armor mk 2. ;)

Re: [0.10.12] Assembling machine should accept multiple stac

Posted: Mon Nov 24, 2014 5:40 pm
by bobingabout
DaveMcW wrote:Assembling machine 3 still needs an upgrade to 5 item slots so it can build refineries and power armor mk 2. ;)
I'd say 6, just because... 2, 4, 6. I do this in my assembly machines mod, but it should be in the base game.

Re: [0.10.12] Assembling machine should accept multiple stac

Posted: Tue Nov 25, 2014 1:35 pm
by kovarex
So I changed the assembling machine 3 ingredient slots to 6 and lowred the small plane requirements, this should fix the related problems, so I'm moving this to resolved for the next release.

Re: [0.10.12] Assembling machine should accept multiple stac

Posted: Tue Nov 25, 2014 5:35 pm
by Ledjlale
Maybe this will fix the plane issue if it not reach the limit of stack.
But if it is like my example, it will don't work :
For example
Init : no Items in inserter and his chest, assembling is empty.
1) there is 99 steel plates, 99 blue chips, 49 red engines, 1 alien artefact
2) inserts will feed all items : there is 2 slot free (on 6)
3) we add 5 steel plates in chest
4) inserter will try to put these 5 plates, one slot is takken. there is one left.
5) we do the same with 5 blue chips
6) as 4), no slot are free after that.
7) 5 red engines is added and inserter is blocked because there is no slot left.

This could be resolve by adding a buffer (4 slots + 4 bufferized slots). But 6 is not enough.

The rule will be more like 1, 2 ,4 , 8, 16, 32

Re: [0.10.12] Assembling machine should accept multiple stac

Posted: Tue Nov 25, 2014 5:39 pm
by Ledjlale
By the way, the plane will not be processed too as inserter will try to load twice of the current requierment (and it's the same case of my armor MK1 example)

Re: [0.10.12] Assembling machine should accept multiple stac

Posted: Tue Nov 25, 2014 5:42 pm
by kovarex
But in that case, it is error of the inserter logic and it should be sovled as separate bug (although quite very minor compared to the other crash/desync issues).

Re: [0.10.12] Assembling machine should accept multiple stac

Posted: Tue Nov 25, 2014 8:05 pm
by n9103
Best way (currently) to solve the too many stack items problem is to do a pre-staging of the stacks needed before allowing anything to be inserted.
That means having five chests and triggering them to turn off loading when they reach their stack size, then transferring into the main chest when all the chests have reached their stack size !and! the assembler is empty. Once all the chests are emptied, they can start being loaded again, restarting the cycle.

Re: [0.10.12] Assembling machine should accept multiple stac

Posted: Tue Nov 25, 2014 8:07 pm
by DaveMcW
Nah, best way is to disable stack size bonus by using belts. ;)

Re: [0.10.12] Assembling machine should accept multiple stac

Posted: Tue Nov 25, 2014 8:11 pm
by n9103
I'm pretty sure it's still possible for an inserter to grab an extra item to insert after the machine is full.
If I'm mistaken, then that still leaves the likely scenario of two different inserters that are inserting the same product to end up with one jammed.

Re: [0.10.12] Assembling machine should accept multiple stac

Posted: Tue Nov 25, 2014 9:33 pm
by DaveMcW
n9103 wrote:that still leaves the likely scenario of two different inserters that are inserting the same product to end up with one jammed.
Then use one inserter per belt.

Re: [0.10.12] Assembling machine should accept multiple stac

Posted: Tue Nov 25, 2014 11:07 pm
by Ledjlale
Reducing the upgrade to one by belt is a solution. But you lost the speed : loading 100 items is very long.

Yes, you can simulate the buffer by using chests.
I done something like that, but chests doesn't fill a main chest because it doesn't work in this way :
-You cannot know if the assembler is empty or fill as you cannot connect it with wire
-when the main chest give one item to assembler, the previous inserter will try to fill the main chest. So it's useless.

This is more a main chest that collect all needed component by bots which is split in four next to the assembling machine.

edit: something like that :