Carry On

Carry On

112M Downloads

Player is locked and crashes on join to server when picking up large inventory

BrailleCortex opened this issue · 5 comments

commented

Expected Behavior

Can pick up and place down a large inventory block

Actual Behavior

When attempting to pick up a Quark Storage Crate (Quark block that stores 1,000 items regardless of stack size) filled with ~200 full beehives on a server, I get the following error:
image

Steps to Reproduce

I have not attempted to reproduce this issue, given 1) the large amount of time it would take to create over 200 occupied beehives again, and 2) the wish to not brick another player. However, given the issue, I assume the steps to reproduce would be as follows:

  1. Load versions of mods listed below, possibly needing a server, have not tested
  2. Place large amounts of beehives or other large-NBT items in a crate
  3. Pick the crate up with Carry On

Version of Minecraft, Carry On, Forge

Minecraft 1.16.5
carryon-1.16.5-1.15.5.15
Quark-r2.4-319
Forge 36.2.13

Screenshots encouraged

image
image

commented

A fix to this would be possibly checking if a block about to be carried is too large and not letting it be picked up?

commented

Further note: attempting to join with the bugged player kicks everyone from the server with that message

commented

😳 Yeah I guess checking the size would maybe be possible, but not sure how the size allocation is calculated.

commented

It's been a bit since I thought about this, I should have commented with my solution when I found it, sorry. What I ended up doing was installing this mod clientside:
https://www.curseforge.com/minecraft/mc-mods/randompatches-forge
that increased the NBT packet size. This worked to let me log in and place the crate down without needing any serverside changes. I did not continue testing to see if this worked reliably, but it seems like it would.

commented

I see. I think increasing the packet size on my side is a bit out of scope for carry on. I think this issue occurs so infrequently, that it's probably not a problem if I leave this unchanged.