Issue type:
Short description:
Since #112 seems to be occurring sporadically for some people, we need a better solution for this.
Because this approach is unsuitable for when there are a few very large items (tags) existing in the system.
One solution is to adaptively fill buffers, and keep track of the buffer size by inspecting the tag size, like in Colossal Chests:
https://github.com/CyclopsMC/ColossalChests/blob/master-1.21-lts/loader-common/src/main/java/org/cyclops/colossalchests/inventory/container/ContainerColossalChest.java#L233-L276
We could even consider abstracting some of that logic to CyclopsCore (such as getTagSize).
Issue type:
Short description:
Since #112 seems to be occurring sporadically for some people, we need a better solution for this.
Because this approach is unsuitable for when there are a few very large items (tags) existing in the system.
One solution is to adaptively fill buffers, and keep track of the buffer size by inspecting the tag size, like in Colossal Chests:
https://github.com/CyclopsMC/ColossalChests/blob/master-1.21-lts/loader-common/src/main/java/org/cyclops/colossalchests/inventory/container/ContainerColossalChest.java#L233-L276
We could even consider abstracting some of that logic to CyclopsCore (such as
getTagSize).