Colossal Chests

Colossal Chests

26M Downloads

Opening a Chest in Spectator causes 3 different bugs.

nullKomplex opened this issue ยท 2 comments

commented

So there are two use cases and three bugs.

  1. I can confirm that: Opening a Colossal Chest successfully in Spectator mode triggers the animation and sound for all nearby players, as if the chest was opened normally.
  2. Opening too big of a Colossal Chest disconnects you for too large of a packet. Honestly I expected this behavior and am only reporting this for (I really can't think of the word I wanted to use here, sorry). I cannot confirm by myself if the first bug triggered with this one. If necessary I can recruit some help.
  3. Opening a small enough Colossal Chest causes your entire survival inventory to be overwritten with contents from the Colossal Chest. The chest itself does not lose any items, they are simply duplicated. It is the same items every time and it replaces all 4 bars of my inventory. I have confirmed the first bug triggers with this one.

All 3 only occur when right clicking the Core or an Interface while in Spectator mode.

Versions:

Exact versions of the following mods, not just latest.

  • This mod: ColossalChests-1.12.2-1.6.9
  • CyclopsCore: CyclopsCore-1.12.2-0.11.5
  • Minecraft: 1.12.2
  • Forge: 14.23.2.2632

This is on a server running ATM 5.9.1

The actual error for disconnect:
Internal Exception: io.netty.handler.codex.DecoderException: java.io.IOException: Packet 0/20 (SPackectWindowItems) was larger than I expected, found 135692 bytes extra whilst reading packet 20
with log:
https://pastebin.com/rbafQLsj

Let me know if you need any more information.

commented

Thanks for reporting!

commented

It looks like gui handling in spectator mode is hardcoded in MC, and Forge does not provide any hooks to change that behaviour. So in order to fix this, a Forge PR will have to be submitted. I'll look into this when I have time, but as spectator mode is used rarely compared to survival mode, I'll give this a lower priority.