occultism icon indicating copy to clipboard operation
occultism copied to clipboard

Can't pull Familiar Rings out of Refined Storage storage

Open FoxySophie opened this issue 6 months ago • 8 comments

Describe the bug When putting a familiar ring which has a familiar inside into a Refined Storage setup it's not possible to pull it out again via a Grid. You have to use an Exporter to get it out. Rings without familiars inside work fine.

To Reproduce Steps to reproduce the behavior:

  1. Craft Familiar Ring and bind a familiar to it, like the Greedy one
  2. Put the ring into a Refined Storage setup
  3. You can no longer pull it out via Grids, only by using an Exporter

Expected behavior Should be able to pull the ring out just like any other item.

Screenshots

https://github.com/user-attachments/assets/d5149390-8ca9-43d8-889a-0249640dcb92

System (please complete the following information):

  • Occultism Version: 1.181.0
  • Refined Storage: v2.0.0-beta.2
  • OS: Windows 10
  • Minecraft Version: 1.21.1
  • Modpack Link and Version, or list of mods: https://modrinth.com/modpack/serene-pioneers-season-2

FoxySophie avatar Jul 05 '25 09:07 FoxySophie

I suspect this is an NBT issue (items with a lot of NBT are not always handled gracefully), or in this case, a data component with a lot of nbt (the captured entity's information). Can you open an issue with refined storage, and link here?

I am not sure if that is something they can fix on their end, or if they need me to do changes on my end, but they might know how to handle it

klikli-dev avatar Jul 07 '25 15:07 klikli-dev

Refined Storage devs are basically saying they can't/won't fix it on their end.

FoxySophie avatar Jul 07 '25 20:07 FoxySophie

I'm not a dev I'm just a guy who has github access

https://refinedmods.com/refined-storage/items-cannot-be-extracted-from-refined-storage.html#_for_mod_developers

Short answer is refined storage uses equals() and hashCode() to figure out what item the client clicked on and tell that to the server. Some mods (a lot of them) don't implement these properly, so when the client says "get me the item with hashcode a3b7892a", the server doesn't see any item like that and so doesn't take anything out

Nodrance avatar Jul 07 '25 20:07 Nodrance

On your end, if you implement those two functions so that the same item always has the same result, things will work

Nodrance avatar Jul 07 '25 20:07 Nodrance

I'm not a dev I'm just a guy who has github access

Sorry for my misunderstanding, and thanks for helping to solve the problem!

FoxySophie avatar Jul 07 '25 20:07 FoxySophie

Thanks a lot @Nodrance , I will check that!

klikli-dev avatar Jul 08 '25 09:07 klikli-dev

hmm, I am using only vanilla data components which implement equals and hashCode correctly (namely, they should correctly handle NBT) ... the question is which part causes the issue

klikli-dev avatar Jul 08 '25 09:07 klikli-dev

Would it be worth referencing other mods with complex nbt that work properly with RS?

ThePixelatedCat avatar Jul 08 '25 11:07 ThePixelatedCat