Sophisticated Storage

Sophisticated Storage

36M Downloads

Limited Barrels temporarily not accepting items after game start-up

dragonkid828 opened this issue · 21 comments

commented

I thought this was just a visual bug at first, but it seems that after starting the game up, the numbers on the limited barrels don't show up, and then the barrel won't accept items from cables/nodes/etc until they're updated manually (one item withdrawn and put back will suffice). Even after block update, it still requires the items previously not accepted by the nodes to be manually put into the drawers sometimes. Seems to only be an issue with the compression upgrade, though. Perhaps specifically the two slot barrels with compression upgrades because I have a three slot one that works fine without being updated.

Initial load appearance (Note: all two slot barrels have compression upgrades)
Image

Printer has items inside, refusing to be moved into the barrels
Image

Updated the inventory slots by removing one from the nether quartz and copper barrels
Image

Copper has moved into the barrel by itself this time, however, sometimes it requires me to manually move them over and the laser nodes underneath won't move them on their own
Image

All slots/barrels updated
Image

Some items won't be moved and had to be manually moved into the chests by double right clicking the storage controller
Image

commented

Alright, but that doesn't really make much sense, the only thing that change does is that simulated inserts don't try to insert into empty slots in limited barrels. But there are no simulated (nor real for that matter) inserts happening when barrel with compression upgrade loads. So that seems to me more like it was coincidence that it worked and it's likely some load order that's happening there (like the additional recipes sometimes have enough time to get added before the barrel loads and sometimes they don't and thus the barrel doesn't consider them). Anyway need to test this out with custom recipes and see if I am resetting cache correctly after every custom recipe load.

commented

I can't really speak specifically to the compression aspect of it; I didn't test that specifically.

I specifically tested the following surrounding inserting items into a locked, empty limited barrel slot:

  • place a limited barrel (II or higher) and locked it
  • manually deposited an item into the barrel (i.e. iron ingot) and then removed it
    • barrel is now empty, still locked, but has one slot locked to iron ingots
  • placed a Modern Industrialization (or Mekanism) furnace next to the barrel, configured the machine to auto-export to the barrel-side
  • smelted iron ore into iron ingots, but they refused to insert into the empty barrel while locked (despite having a slot locked to the ingots themselves)
    • ingots would only insert when:
      1. barrel was unlocked (in which ingots only inserted into first available slot, not the previously assigned one)
      2. ingots were already present in the (locked) barrel
    • removing the ingots from the furnaces to any non-hotbar slot, they can still be inserted into the barrel by double-clicking the reserved barrel slot even when the barrel is empty

I hope that adds some clarity to my specific testing. To repeat the compression upgrade issue specifically, I will have to test that later.

commented

I may have misunderstood the original bug slightly and this may instead be a related but distinct bug.

Do let me know @P3pp3rF1y if I should file a new issue over on Core for this.

commented

I am guessing that this was caused by barrels and the compression upgrades in them trying to access their recipes very early in the world start and because of caching I am doing it was too early for that. I have made a change since this report to have the caching ready as soon as possible and this issue should be resolved with the latest versions of core / storage. If you can retest and let me know it's resolved that would be great.

commented

I updated both mods (to Soph Core 1.2.34.925 and Soph Storage 1.3.18.1095) and the issue still seems to be present. If there's any more information I can provide, feel free to let me know and thank you for your help with this.

commented

I would love to be able to recreate as I have one other report of something like this which I wasn't able to recreate even with the same pack. However maybe the modpack name / list of the mods that you have in yours would help. Also if there's any error in your log or potentially something about reloading recipes or similar.

commented

The modpack is Sky Factory 5, and I did add a few mods to the pack (AE2WTLib, MEGACells and AEInfinityBooster) but I'm unsure how those could affect it. Here is a link to my log from booting up. I didn't really see anything noteworthy, but I'm not exactly well versed with code. It's weird because some of them work just fine (coal and uranium seem to work and act as intended) but the rest of the compression barrels don't seem to work until interacted with by the player. However, nothing pops up as an error (or anything at all) when initially interacting with the barrels to make them function normally again.

Edit: The coal and uranium might be due to AE2 pulling from the barrel for auto-crafting and refreshing it?

commented

Wanted to just chime in quickly that I'm having the same issue with ATM10 v2.42 (Core v1.3.13.922 and Storage v1.4.7.1094), in case that's another scenario to attempt to reproduce it in (if you haven't already). Locked barrels refusing to accept items pushed into them (confirmed at least with Modern Industrialization and EnderIO blocks so far) unless the locked slot actually has items in it. Going to try the updated mods (per suggestion here soon when I have a few minutes to update my server. Will report back sooner than later if that has made a difference.

Unnecessary details: I love the cosmetics/function of the limited barrels but am having to crutch it for now with Functional Storage.

commented

Still seeing the behavior with Core v1.3.19.935 and Storage v1.4.12.1103. Also confirming I can't push things in with even a hopper (nor the MI machines as indicated before).

Here is a link to debug.log if that helps.

EDIT: Double-clicking the empty, locked slot will still push items from your inventory directly into it without consequence. It seems to only occur with blocks pushing items in.

commented

If it's any help, Core v1.3.2.900 and Storage 1.4.0.1079 were the last versions of the mods (from ATM10 v2.40) that were functioning properly before the regression occurred.

commented

@biochemie that may be helpful but just briefly looking at the changes that immediately followed these versions I don't see anything that could have an effect on this functionality. Are you say that you tested with 1.3.3 and 1.4.1 and it didn't work with those versions or you tested with the later versions mentioned above so the bug would be somewhere in range of 1.3.3 - 1.3.13 and 1.4.1 - 1.4.7?

commented

@P3pp3rF1y:
Core 1.3.2.900 + Storage 1.4.0.1079 — barrels working as expected (this was ATM10 v2.40)
Core 1.3.13.922 + Storage 1.4.7.1094 — barrels not working as expected (this was ATM10 v2.42)
Core 1.3.19.935 + Storage 1.4.12.1103 — barrels not working as expected (this was ATM10 v2.42 having updated just SophCore and SophStorage)

you tested with the later versions mentioned above so the bug would be somewhere in range of 1.3.3 - 1.3.13 and 1.4.1 - 1.4.7?

So yes, what you said there…arose between those versions.

commented

@P3pp3rF1y So I was just taking a quick look through commits, and found this one: a3e5de8.

I tested Core 1.3.2 and Storage 1.4.0: still working with ATM10 v2.40
I tested Core 1.3.3 and storage 1.4.0: functionality broken with ATM10 v2.40 (manually updated Core alone to 1.3.3)

I'm assuming it's related to the change in src/main/java/net/p3pp3rf1y/sophisticatedcore/inventory/InventoryHandlerSlotTracker.java?

commented

I was trying to recreate this and was able to recreate the issue with counts not appearing after reload but hoppers / pipes were still able to push items into the barrels. Also I fixed the missing counts issue separately and updating to the latest version of the mods fixed it here as well. Could you confirm this is fixed for you with the latest build?

commented

I've had the same issues @biochemie in addition to the bug that I described, to clarify.

commented

https://github.com/user-attachments/assets/449239bf-ace8-47f6-8796-3cecf608ef08
This still seems to happen with Storage 1.4.26 and Core 1.3.32 (on 1.21.1). Had some problems trying to reliably reproduce it in single player, but it has been happening on my server consistently after every daily restart (the video is from the server, and there was nothing new in server console during this clip). Have not had any issue with item counts though, either on the current version or before. All the limited barrels are locked and the relevant ones have compression upgrades, and it seems that each barrel needs to be interacted with directly before it resumes accepting items, rather than through the controller.

commented

@VersilPerihelion Thanks for reporting this. Based on this info / video I found out that there was a bug in simulated inserts in combination with compression upgrade when inserted item's slot was empty behind the scenes - on the backend the compression upgrade keeps the stacks compressed as much as possible so if you add 9 ingots it compresses them into a block and the ingot slot is actually empty.
This caused hopper to fail it's simulated insert when it was trying if it can insert into the iron ingot slot in your case.

Just released a new version that fixes this issue.

commented

This is still an issue in the current build (Core 1.20.1-1.2.47.958, Storage 1.20.1-1.3.33.1128), but as others have mentioned, it only happens when running it in a modpack. I haven't been able to narrow down any exact mod that's causing the issue unfortunately, but I do have some more information after a lot of testing:

After exiting and re-entering the game, containers will only accept (non-manual) input into empty slots. Items deposited using a hopper or other machine will not stack with any items that were there before the relog. This will happen to ANY Sophisticated Storage container, not just the Limited Barrel. Unless this is a related but separate issue (in which case, my apologies), the Compression Upgrade doesn't seem to be the problem.

Attached is an example of this happening. I'm using a Hopper and Storage Controller here, but it happens regardless of input method as long as you're not depositing the items yourself.
https://github.com/user-attachments/assets/d3cc636a-d3d5-40ff-9e49-73baeef4c886

commented

This is still an issue in the current build (Core 1.20.1-1.2.47.958, Storage 1.20.1-1.3.33.1128), but as others have mentioned, it only happens when running it in a modpack. I haven't been able to narrow down any exact mod that's causing the issue unfortunately, but I do have some more information after a lot of testing:

After exiting and re-entering the game, containers will only accept (non-manual) input into empty slots. Items deposited using a hopper or other machine will not stack with any items that were there before the relog. This will happen to ANY Sophisticated Storage container, not just the Limited Barrel. Unless this is a related but separate issue (in which case, my apologies), the Compression Upgrade doesn't seem to be the problem.

Attached is an example of this happening. I'm using a Hopper and Storage Controller here, but it happens regardless of input method as long as you're not depositing the items yourself. https://github.com/user-attachments/assets/d3cc636a-d3d5-40ff-9e49-73baeef4c886

@petthepetra what I see in that video looks like a problem with a mod attaching nbt to items making them different from the ones already in the storage. Do you by any chance have Origins or CustomNPCs mods in the pack, those are known to do this.

commented

@petthepetra what I see in that video looks like a problem with a mod attaching nbt to items making them different from the ones already in the storage. Do you by any chance have Origins or CustomNPCs mods in the pack, those are known to do this.

Yes, I just checked and disabling Origins immediately fixed the issue, even for newly created items that never touch the player's inventory. I apologize for butting into this thread, it appears this is a separate issue on Origins' end. A bit unfortunate, as the forge version of that mod is no longer being maintained.

commented

I was trying to recreate this and was able to recreate the issue with counts not appearing after reload but hoppers / pipes were still able to push items into the barrels. Also I fixed the missing counts issue separately and updating to the latest version of the mods fixed it here as well. Could you confirm this is fixed for you with the latest build?

Sorry @P3pp3rF1y, been busy lately. I'll try to test that out later today and get you feedback after. :)