GregTechCEu / GregTech-Modern

GregTech CE Unofficial for modern versions
GNU Lesser General Public License v3.0
272 stars 163 forks source link

Inputting too many items into an input bus breaks multiblock machines. #1546

Closed NovaEnby closed 1 month ago

NovaEnby commented 3 months ago

Checked for existing issues

Tested latest version

GregTech CEu Version

1.3.0

Recipe Viewer Installed

JEI

Environment

Singleplayer

Cross-Mod Interaction

Yes

Other Installed Mods

ATM9

Expected Behavior

Expected multiblock machines to craft using all items placed into the input bus.

Actual Behavior

Multiblock machines craft with most of the inputs, but will leave some items behind in the input buses, even if those items can be used for a craft.

Example: In this craft, Niobium Titanium and HSS-G ingots were left behind in the input bus despite the fact that they can be turned into fine wire in the Large Wire Factory.

image

Steps to Reproduce

The bug appears to happen when too many items (probably somewhere in the thousands) are inserted into an input bus. This only seems to happen with extremely large autocrafts, because my Refined Storage crafters input all of the items into the bus at once.

Additional Information

The bug is not caused by programmed circuit conflicts (you can see that distinct buses are on in the attached screenshot). It's not exclusive to the Wire Factory--I've also had it occur in the ALCR, Large Mixing Vessel, Large Circuit Assembling Facility, and Large Assembling Factory.

NovaEnby commented 3 months ago

ok after further testing parallelization seems to have something to do with it, when i turn off my parallel control hatch the wiremill starts working again. gonna test if this will help with other machines with multiple input items in their recipes

ivanpu commented 2 months ago

I've noticed this before too, although on an older version: Sky-Greg pack, GT 1.1.4.a

What I've had experimentally found, is that if "recipe cost per tick (probably after overclocking calculation)" multiplied by the "maximum parallelization" is greater than the multiblock's EU rating - then the recipe will not work.

Edit: Checked now in game - both those recipes use 30 EU/t, which is almost a full amper in any overclocking. If the formula I've stated above is the actual design, then I see 2 options to better parallelize them:

  1. Multi-amper hatches (more EU without raising a tier)
  2. Alternative recipe - extrude ingot into "1x wire" (180 EU/t, but 35% of amper) and then process in wiremill (7 EU/t, 22% of amper)

Edit2: The math doesn't makes sence. My 30 EU/t observation fails on Rubber Sheets in the extractor...

YoungOnionMC commented 1 month ago

fixed in #1850