Sophisticated Storage

Sophisticated Storage

20M Downloads

Ticking Grid: AE2 and Storage Controller

MagisterXero opened this issue ยท 11 comments

commented

Reproduction Steps:
Put down storage controller
Put down netherite barrel (inventory size 180)
Attach storage bus
Import items to fill barrel
Put down second netherite barrel (inventory size 180)

https://pastebin.com/5UKBSSSa

commented

I trust that you had this issue, but those steps don't seem to be enough to recreate - I am trying it with refined storage, but that shouldn't really matter as the issue seems to be in incorrect state in controller which somehow happened. Are you able to recreate exactly like this with brand new blocks in a different location? If not would you remember if there were any additional steps that you took - did you break blocks? did you reload the game? did the game perhaps crash before you did these steps?

commented

I'll double check if I can reproduce it real quick in SSP. I'll get back to you

commented

The above issue with the carry on mod, this is resolved when you place another chest from your inventory rather than from carryon. That is easily reproduceable, it may be related to the ticking grid issue, I'm not sure exactly, since I couldn't get it to crash.

I'm suspecting that the crash was a rogue fluke, but when the server was restarted it would crash each time I logged into the area with the bad chunks.

commented

Can't seem to reproduce that exact error, but I did discover something else that may be related.
The Carry On mod, (I forgot I was placing the barrel using it).
Basically, carry on, most likely, is doing something to the block states when the blocks are being carried around.
This leads to an issue when they are placed back down, where the storage controller doesn't accept them as valid inventories.
Screenshots:
image
image
image
image
image

commented

Update: it's also an issue in RS it seems.
image
image
image

commented

I can see why this doesn't work with carry on - same reason it doesn't work with cardboard boxes from mekanism - basically when the block is placed both of these just load the data so to the block it looks like the chunk it is in was just loaded. And I intentionally don't want to have storage blocks searching for controller every single time they are just loaded into the game as opposed to being placed / broken. That way you would have even standalone storage blocks searching their surroundings every single time they get loaded. So for example if you had 10 barrels there would 60 "let's find a controller" calls made every single time you would be at the right distance to unload and load chunk back in and that despite the fact that those 10 barrels are not connected to any controller and there's no need to check for it.

But I will see if there's a way for me to understand during load of the block if the chunk itself is being loaded or just the block.

commented

The carry on issue isn't actually a huge problem. It does resolve immediately once you place on down from the inventory, it basically resets all the connected inventories, so it's a manageable thing.

I was hoping it would lead to a path where the crash was reproduceable, but I'm not really sure.

commented

just a thought I have on this is try to place down storages in a line from controller, remove one of the middle ones with carry on. Try to replace it as normal block without help of carry on.
Should properly remove the detached blocks from controller and once the block is replace attach them again without any issue inserting into them

commented

I will give it a try as well as there's one scenario that I definitely don't want to be happening - block moved using one of these things retains its link to controller and because of that it would be possible to have storages "connected" to controller even though they are not attached to it or adjacent storages.

commented

Unfortunately, your theory here is right.
Phantom connections take place... lol
image

commented

Fixed in the latest release