DaPigGuy / PiggyCustomEnchants

An open source custom enchantment plugin for PocketMine-MP
https://piggydocs.aericio.net/PiggyCustomEnchants.html
Apache License 2.0
103 stars 117 forks source link

bug armor duplication after death player #59

Closed teracube closed 7 years ago

teracube commented 7 years ago

Please make sure your issue complies with these guidelines:

General

the armor and stuff duplicate after player death see this video here :

https://drive.google.com/file/d/0B5k6Z5qGmPIUVkNLcm9hbG9aZW8/view?usp=sharing

Version of PiggyCustomEnchants:

PiggyCustomEnchants_dev-86.phar

Steps to Reproduce the Issue

Install : PocketMine-MP 1.7dev-326 + PiggyCustomEnchants_dev-86 show the video : the armor and stuff duplicate after player death

Extra Information

No bug if PiggyCustomEnchants is removed of the server sorry for my bad english

Configuration Server : PocketMine-MP 1.7dev-326: AllSigns 1.0.5; iProtector 3.1.0-3; ChatToDiscord 1.1.0; VoteReward 3.0.2-3; CustomAlerts 1.7.2; essentialsTP 1.2.0-2; Parkour 1.5.6-3; Slapper 1.3.7; PiggyCustomEnchants 1.0.2-2; xyz 1.0.4; AlwaysSpawn 2.2.3-3; BadWordBlocker 1.2.0; PurePerms 1.4.1-2; ItemCasePE 1.2.1; EconomyAPI 5.7.1-3; MagicTelePortal 1.3.2-3; BanItem 2.3.2-2.alpha8; AdvancedKits 5.1.0-4; EconomyShop 2.0.8-5; FactionsPro 1.4.5-5; PureChat 1.4.10-3

Error during video : RuntimeException: "Index invalid or out of range" (EXCEPTION) in "src/pocketmine/inventory/BaseInventory" at line 97

--------------------------------------------------------------------------------------------------------------------------------------------------------------------
2017-10-22 [09:38:06] [Server thread/CRITICAL]: RuntimeException: "Index invalid or out of range" (EXCEPTION) in "src/pocketmine/inventory/BaseInventory" at line 97
2017-10-22 [09:38:06] [Server thread/DEBUG]: #0 src/pocketmine/inventory/transaction/action/SlotChangeAction(78): pocketmine\inventory\BaseInventory->getItem(integer 4)
2017-10-22 [09:38:06] [Server thread/DEBUG]: #1 src/pocketmine/inventory/transaction/InventoryTransaction(125): pocketmine\inventory\transaction\action\SlotChangeAction->isValid(pocketmine\Player object)
2017-10-22 [09:38:06] [Server thread/DEBUG]: #2 src/pocketmine/inventory/transaction/InventoryTransaction(236): pocketmine\inventory\transaction\InventoryTransaction->matchItems(array Array(), array Array())
2017-10-22 [09:38:06] [Server thread/DEBUG]: #3 src/pocketmine/inventory/transaction/InventoryTransaction(258): pocketmine\inventory\transaction\InventoryTransaction->canExecute()
2017-10-22 [09:38:06] [Server thread/DEBUG]: #4 src/pocketmine/Player(2255): pocketmine\inventory\transaction\InventoryTransaction->execute()
2017-10-22 [09:38:06] [Server thread/DEBUG]: #5 src/pocketmine/network/mcpe/PlayerNetworkSessionAdapter(132): pocketmine\Player->handleInventoryTransaction(pocketmine\network\mcpe\protocol\InventoryTransactionPacket object)
2017-10-22 [09:38:06] [Server thread/DEBUG]: #6 src/pocketmine/network/mcpe/protocol/InventoryTransactionPacket(149): pocketmine\network\mcpe\PlayerNetworkSessionAdapter->handleInventoryTransaction(pocketmine\network\mcpe\protocol\InventoryTransactionPacket object)
2017-10-22 [09:38:06] [Server thread/DEBUG]: #7 src/pocketmine/network/mcpe/PlayerNetworkSessionAdapter(92): pocketmine\network\mcpe\protocol\InventoryTransactionPacket->handle(pocketmine\network\mcpe\PlayerNetworkSessionAdapter object)
2017-10-22 [09:38:06] [Server thread/DEBUG]: #8 src/pocketmine/network/mcpe/protocol/BatchPacket(115): pocketmine\network\mcpe\PlayerNetworkSessionAdapter->handleDataPacket(pocketmine\network\mcpe\protocol\InventoryTransactionPacket object)
2017-10-22 [09:38:06] [Server thread/DEBUG]: #9 src/pocketmine/network/mcpe/PlayerNetworkSessionAdapter(92): pocketmine\network\mcpe\protocol\BatchPacket->handle(pocketmine\network\mcpe\PlayerNetworkSessionAdapter object)
2017-10-22 [09:38:06] [Server thread/DEBUG]: #10 src/pocketmine/Player(3012): pocketmine\network\mcpe\PlayerNetworkSessionAdapter->handleDataPacket(pocketmine\network\mcpe\protocol\BatchPacket object)
2017-10-22 [09:38:06] [Server thread/DEBUG]: #11 src/pocketmine/network/mcpe/RakLibInterface(143): pocketmine\Player->handleDataPacket(pocketmine\network\mcpe\protocol\BatchPacket object)
2017-10-22 [09:38:06] [Server thread/DEBUG]: #12 src/raklib/server/ServerHandler(97): pocketmine\network\mcpe\RakLibInterface->handleEncapsulated(string 87.136.15.26:52547, raklib\protocol\EncapsulatedPacket object, integer 0)
2017-10-22 [09:38:06] [Server thread/DEBUG]: #13 src/pocketmine/network/mcpe/RakLibInterface(82): raklib\server\ServerHandler->handlePacket()
2017-10-22 [09:38:06] [Server thread/DEBUG]: #14 src/pocketmine/network/Network(89): pocketmine\network\mcpe\RakLibInterface->process()
2017-10-22 [09:38:06] [Server thread/DEBUG]: #15 src/pocketmine/Server(2497): pocketmine\network\Network->processInterfaces()
2017-10-22 [09:38:06] [Server thread/DEBUG]: #16 src/pocketmine/Server(2253): pocketmine\Server->tick()
2017-10-22 [09:38:06] [Server thread/DEBUG]: #17 src/pocketmine/Server(2132): pocketmine\Server->tickProcessor()
2017-10-22 [09:38:06] [Server thread/DEBUG]: #18 src/pocketmine/Server(1714): pocketmine\Server->start()
2017-10-22 [09:38:06] [Server thread/DEBUG]: #19 src/pocketmine/PocketMine(558): pocketmine\Server->__construct(BaseClassLoader object, pocketmine\utils\MainLogger object, string phar:///home/gsp_1786/g5.hmserv.eu-19153/PocketMine-MP.phar/, string /home/gsp_1786/g5.hmserv.eu-19153/, string /home/gsp_1786/g5.hmserv.eu-19153/plugins/)
2017-10-22 [09:38:06] [Server thread/DEBUG]: #20 /home/gsp_1786/g5.hmserv.eu-19153/PocketMine-MP.phar(1): require(string phar:///home/gsp_1786/g5.hmserv.eu-19153/PocketMine-MP.phar/src/pocketmine/PocketMine.php)
2017-10-22 [09:38:06] [RakLibServer thread/NOTICE]: Blocked 87.136.15.26 for 5 seconds
AffanStarPure commented 7 years ago

I have same this problem when player die on armor equipment still keep on armor equipment when did this problem Soulbound enchanted Duplication

Aericio commented 7 years ago

As the description states, "Soulbound: Keeps item after death (will remove enchantment)"

First of all, can I confirm that when the item is returned, the enchantment Soulbound is removed from the item and that the drop that the killer gets does not have Soulbound either? Thanks.

Haxley commented 7 years ago

I can confirm this bug too. Plugin can only be used on servers that don't allow dropping on death. Otherwise that server will have a critical dupe bug.