pmmp / PocketMine-MP

A server software for Minecraft: Bedrock Edition in PHP
https://pmmp.io
GNU Lesser General Public License v3.0
3.24k stars 1.52k forks source link

Lose item on crafting grid #4315

Closed leolee3914 closed 3 years ago

leolee3914 commented 3 years ago

Issue description

Use 512 planks to craft 64 chests

Steps to reproduce the issue

  1. get 512 planks
  2. right click the crafting table
  3. put 8 sets of planks to crafting table
  4. press shift to craft the chests and you will be kicked from the server
  5. join the server and check your inventory

OS and versions

Plugins

Crashdump, backtrace or other files

Video: https://youtu.be/-SM08c-F3bk Server console: https://pastebin.com/JKWLnY0F image

dktapps commented 3 years ago

Duplicate of #3954

leolee3914 commented 3 years ago

I think this is not a duplicate issue. Before I open this issue, I have read the previous issue. They don't mention that items will be lost.

dktapps commented 3 years ago

The underlying issue remains the same.

leolee3914 commented 3 years ago

I reproduced the issue with other methods, and this method will not cause "Too many packets in a single batch".

  1. put any stuff to crafting grid (2x2 or 3x3)
  2. keep the inventory opening and close the minecraft
  3. join the server and check your inventory

Game version: PE

leolee3914 commented 3 years ago
    function pq ( PlayerQuitEvent $e ) {
        $e->getPlayer()->doCloseInventory();
    }

Using a plugin with above code can solve this issue. So this is not a duplicate issue.