FoxWorn3365 / Shopkeepers

Add Shopkeepers to your PocketMine-MP world! Allow the creation of simple barter stores between players or create adminshops!
https://poggit.pmmp.io/p/Shopkeepers/
GNU General Public License v3.0
12 stars 5 forks source link

Bug, server crashes. #13

Closed iTzAndrew33212 closed 1 year ago

iTzAndrew33212 commented 1 year ago

Once install new verison #dev51, server crashes on start up, gives no error codes, just server goes into a throttle restart.

Thanks Andrew

FoxWorn3365 commented 1 year ago

Have you checked the crashdumps for an error? And can you send here a screenshot of the console?

iTzAndrew33212 commented 1 year ago

dev52 has loaded and commands are working, but while setting up shop, after placing items in the trade section, the server would crash error code i have received

Jun 28 19:30 [Server] INFO --- End of exception information --- Jun 28 19:30 [Server] INFO #24 pmsrc(11): require(string[94] phar:///jar/pocketmine/pmmp/1.20.0/pmmp5/PocketMine-MP.phar/src/) Jun 28 19:30 [Server] INFO #23 pmsrc/src/PocketMine(357): pocketmine\server() Jun 28 19:30 [Server] INFO #22 pmsrc/src/PocketMine(334): pocketmine\Server->__construct(object pocketmine\thread\ThreadSafeClassLoader#6, object pocketmine\utils\MainLogger#3, string[36] /, string[44] /plugins/) Jun 28 19:30 [Server] INFO #21 pmsrc/src/Server(1063): pocketmine\Server->tickProcessor() Jun 28 19:30 [Server] INFO #20 pmsrc/src/Server(1674): pocketmine\snooze\SleeperHandler->sleepUntil(float 1687977045.8698) Jun 28 19:30 [Server] INFO #19 pmsrc/vendor/pocketmine/snooze/src/SleeperHandler(79): pocketmine\TimeTrackingSleeperHandler->processNotifications() Jun 28 19:30 [Server] INFO #18 pmsrc/src/TimeTrackingSleeperHandler(58): pocketmine\snooze\SleeperHandler->processNotifications() Jun 28 19:30 [Server] INFO #17 pmsrc/vendor/pocketmine/snooze/src/SleeperHandler(120): pocketmine\network\mcpe\raklib\RakLibInterface->pocketmine\network\mcpe\raklib{closure}() Jun 28 19:30 [Server] INFO #16 pmsrc/src/network/mcpe/raklib/RakLibInterface(109): raklib\server\ipc\RakLibToUserThreadMessageReceiver->handle(object pocketmine\network\mcpe\raklib\RakLibInterface#186989) Jun 28 19:30 [Server] INFO #15 pmsrc/vendor/pocketmine/raklib-ipc/src/RakLibToUserThreadMessageReceiver(40): pocketmine\network\mcpe\raklib\RakLibInterface->onPacketReceive(int 0, string[76] .t.,&...F/.RP...,G...L...V}.O.%jk.........I.....q.(......).......HR......\:.) Jun 28 19:30 [Server] INFO #14 pmsrc/src/network/mcpe/raklib/RakLibInterface(217): pocketmine\network\mcpe\NetworkSession->handleEncoded(string[67] ...........y...............[.M....IU........$..............`/....) Jun 28 19:30 [Server] INFO #13 pmsrc/src/network/mcpe/NetworkSession(381): pocketmine\network\mcpe\NetworkSession->handleDataPacket(object pocketmine\network\mcpe\protocol\ItemStackRequestPacket#216970, string[20] ....................) Jun 28 19:30 [Server] INFO #12 pmsrc/src/network/mcpe/NetworkSession(437): pocketmine\network\mcpe\protocol\ItemStackRequestPacket->handle(object pocketmine\network\mcpe\handler\InGamePacketHandler#183317) Jun 28 19:30 [Server] INFO #11 pmsrc/vendor/pocketmine/bedrock-protocol/src/ItemStackRequestPacket(55): pocketmine\network\mcpe\handler\InGamePacketHandler->handleItemStackRequest(object pocketmine\network\mcpe\protocol\ItemStackRequestPacket#216970) Jun 28 19:30 [Server] INFO #10 pmsrc/src/network/mcpe/handler/InGamePacketHandler(611): pocketmine\network\mcpe\handler\InGamePacketHandler->handleSingleItemStackRequest(object pocketmine\network\mcpe\protocol\types\inventory\stackrequest\ItemStackRequest#135361) Jun 28 19:30 [Server] INFO #9 pmsrc/src/network/mcpe/handler/InGamePacketHandler(590): pocketmine\network\mcpe\handler\InGamePacketHandler->executeInventoryTransaction(object pocketmine\inventory\transaction\InventoryTransaction#217052, int -69) Jun 28 19:30 [Server] INFO #8 pmsrc/src/network/mcpe/handler/InGamePacketHandler(373): pocketmine\inventory\transaction\InventoryTransaction->execute() Jun 28 19:30 [Server] INFO #7 pmsrc/src/inventory/transaction/InventoryTransaction(313): pocketmine\inventory\transaction\InventoryTransaction->callExecuteEvent() Jun 28 19:30 [Server] INFO #6 pmsrc/src/inventory/transaction/InventoryTransaction(295): pocketmine\event\Event->call() Jun 28 19:30 [Server] INFO #5 pmsrc/src/event/Event(62): pocketmine\event\RegisteredListener->callEvent(object pocketmine\event\inventory\InventoryTransactionEvent#217882) Jun 28 19:30 [Server] INFO #4 pmsrc/src/event/RegisteredListener(61): FoxWorn3365\Shopkeepers\libs\muqsit\invmenu\InvMenuEventHandler->onInventoryTransaction(object pocketmine\event\inventory\InventoryTransactionEvent#217882) Jun 28 19:30 [Server] INFO #3 plugins/Shopkeepers_dev-52.phar/src/FoxWorn3365/Shopkeepers/libs/muqsit/invmenu/InvMenuEventHandler(75): FoxWorn3365\Shopkeepers\libs\muqsit\invmenu\InvMenu->handleInventoryTransaction(object pocketmine\player\Player#142720, object pocketmine\item\Item#253655, object pocketmine\item\ItemBlock#217924, object pocketmine\inventory\transaction\action\SlotChangeAction#253669, object pocketmine\inventory\transaction\InventoryTransaction#217052) Jun 28 19:30 [Server] INFO #2 plugins/Shopkeepers_dev-52.phar/src/FoxWorn3365/Shopkeepers/libs/muqsit/invmenu/InvMenu(176): FoxWorn3365\Shopkeepers\Menu\InfoMenu->FoxWorn3365\Shopkeepers\Menu{closure}(object FoxWorn3365\Shopkeepers\libs\muqsit\invmenu\transaction\SimpleInvMenuTransaction#217846) Jun 28 19:30 [Server] INFO #1 plugins/Shopkeepers_dev-52.phar/src/FoxWorn3365/Shopkeepers/Menu/InfoMenu(60): FoxWorn3365\Shopkeepers\Menu\ListMenu->create() Jun 28 19:30 [Server] INFO #0 plugins/Shopkeepers_dev-52.phar/src/FoxWorn3365/Shopkeepers/Menu/ListMenu(73): count(object stdClass#217684) Jun 28 19:30 [Server] INFO --- Stack trace --- Jun 28 19:30 [Server] CRITICAL TypeError: "count(): Argument #1 ($value) must be of type Countable|array, stdClass given" (EXCEPTION) in "plugins/Shopkeepers_dev-52.phar/src/FoxWorn3365/Shopkeepers/Menu/ListMenu" at line 73 Jun 28 19:30 [Server] EMERGENCY Crash occurred while handling a packet from session: EmpireBoss007

thanks andrew

FoxWorn3365 commented 1 year ago

Restart your server, the validator will repair the config

iTzAndrew33212 commented 1 year ago

Yes, no more crashes, but when summoning a shop, /sk summon (name) the villager will spawn but they are not pvp protective, when you tap them they die instantly.

FoxWorn3365 commented 1 year ago

Yes, they are PVP protected but because you are the author you can remove the shop with a single hit. Others can't

iTzAndrew33212 commented 1 year ago

after the player taps on the shopkeeper the server crashes, with this error code

Jun 30 10:33 [Server] INFO --- End of exception information --- Jun 30 10:33 [Server] INFO #20 pmsrc(11): require(string[94] phar:///jar/pocketmine/pmmp/1.20.0/pmmp5/PocketMine-MP.phar/src/) Jun 30 10:33 [Server] INFO #19 pmsrc/src/PocketMine(357): pocketmine\server() Jun 30 10:33 [Server] INFO #18 pmsrc/src/PocketMine(334): pocketmine\Server->_construct(object pocketmine\thread\ThreadSafeClassLoader#6, object pocketmine\utils\MainLogger#3, string[36] /, string[44] /plugins/) Jun 30 10:33 [Server] INFO #17 pmsrc/src/Server(1063): pocketmine\Server->tickProcessor() Jun 30 10:33 [Server] INFO #16 pmsrc/src/Server(1674): pocketmine\snooze\SleeperHandler->sleepUntil(float 1688117592.5634) Jun 30 10:33 [Server] INFO #15 pmsrc/vendor/pocketmine/snooze/src/SleeperHandler(79): pocketmine\TimeTrackingSleeperHandler->processNotifications() Jun 30 10:33 [Server] INFO #14 pmsrc/src/TimeTrackingSleeperHandler(58): pocketmine\snooze\SleeperHandler->processNotifications() Jun 30 10:33 [Server] INFO #13 pmsrc/vendor/pocketmine/snooze/src/SleeperHandler(120): pocketmine\network\mcpe\raklib\RakLibInterface->pocketmine\network\mcpe\raklib{closure}() Jun 30 10:33 [Server] INFO #12 pmsrc/src/network/mcpe/raklib/RakLibInterface(109): raklib\server\ipc\RakLibToUserThreadMessageReceiver->handle(object pocketmine\network\mcpe\raklib\RakLibInterface#186878) Jun 30 10:33 [Server] INFO #11 pmsrc/vendor/pocketmine/raklib-ipc/src/RakLibToUserThreadMessageReceiver(40): pocketmine\network\mcpe\raklib\RakLibInterface->onPacketReceive(int 0, string[90] .^..i.q...-v.W...{.S.t....W~5..k..O.Xiw..n..OK.".E....o...NZ~e.^..3..y..P]4R.a.) Jun 30 10:33 [Server] INFO #10 pmsrc/src/network/mcpe/raklib/RakLibInterface(217): pocketmine\network\mcpe\NetworkSession->handleEncoded(string[81] 3.cf.ehecd``8........;..>q._......Y......S.m&0^..q..@.0...6.8.#..o>.Oo...@..&.) Jun 30 10:33 [Server] INFO #9 pmsrc/src/network/mcpe/NetworkSession(381): pocketmine\network\mcpe\NetworkSession->handleDataPacket(object pocketmine\network\mcpe\protocol\InventoryTransactionPacket#141691, string[50] ....-.........k..............Cr=.B..gC"/.C-..B..eC) Jun 30 10:33 [Server] INFO #8 pmsrc/src/network/mcpe/NetworkSession(437): pocketmine\network\mcpe\protocol\InventoryTransactionPacket->handle(object pocketmine\network\mcpe\handler\InGamePacketHandler#175173) Jun 30 10:33 [Server] INFO #7 pmsrc/vendor/pocketmine/bedrock-protocol/src/InventoryTransactionPacket(94): pocketmine\network\mcpe\handler\InGamePacketHandler->handleInventoryTransaction(object pocketmine\network\mcpe\protocol\InventoryTransactionPacket#141691) Jun 30 10:33 [Server] INFO #6 pmsrc/src/network/mcpe/handler/InGamePacketHandler(342): pocketmine\network\mcpe\handler\InGamePacketHandler->handleUseItemOnEntityTransaction(object pocketmine\network\mcpe\protocol\types\inventory\UseItemOnEntityTransactionData#123889) Jun 30 10:33 [Server] INFO #5 pmsrc/src/network/mcpe/handler/InGamePacketHandler(552): pocketmine\player\Player->interactEntity(object FoxWorn3365\Shopkeepers\entity\Shopkeeper#69674, object pocketmine\math\Vector3#128245) Jun 30 10:33 [Server] INFO #4 pmsrc/src/player/Player(1904): pocketmine\event\Event->call() Jun 30 10:33 [Server] INFO #3 pmsrc/src/event/Event(62): pocketmine\event\RegisteredListener->callEvent(object pocketmine\event\player\PlayerEntityInteractEvent#128714) Jun 30 10:33 [Server] INFO #2 pmsrc/src/event/RegisteredListener(61): FoxWorn3365\Shopkeepers\Core->onPlayerEntityInteract(object pocketmine\event\player\PlayerEntityInteractEvent#128714) Jun 30 10:33 [Server] INFO #1 plugins/Shopkeepers_dev-52 (1).phar/src/FoxWorn3365/Shopkeepers/Core(163): FoxWorn3365\Shopkeepers\shop\Manager->send(object pocketmine\player\Player#142410, object FoxWorn3365\Shopkeepers\entity\Shopkeeper#69674) Jun 30 10:33 [Server] INFO #0 plugins/Shopkeepers_dev-52 (1).phar/src/FoxWorn3365/Shopkeepers/shop/Manager(56): FoxWorn3365\Shopkeepers\shop\ElementContainer->add(string[162] 0a0000010005436f756e74010800044e616d6500166d696e6563726166743a69726f6e5f7069636b, string[414] 0a0000010005436f756e741e0800044e616d6500156d696e6563726166743a6d6f6e737465725f65, object stdClass#128219, false) Jun 30 10:33 [Server] INFO --- Stack trace --- Jun 30 10:33 [Server] CRITICAL TypeError: "FoxWorn3365\Shopkeepers\shop\ElementContainer::add(): Argument #3 ($inventory) must be of type array, stdClass given, called in phar:///plugins/Shopkeepers_dev-52 (1).phar/src/FoxWorn3365/Shopkeepers/shop/Manager.php on line 56" (EXCEPTION) in "plugins/Shopkeepers_dev-52 (1).phar/src/FoxWorn3365/Shopkeepers/shop/ElementContainer" at line 34 Jun 30 10:33 [Server] EMERGENCY Crash occurred while handling a packet from session: BusyPEBoss

take care andrew

FoxWorn3365 commented 1 year ago

Oh, just forgot to update the validator with the new shop object (who has the inventory array) so is not auto-repaired. I'm actually on vacation so i can't do much, sorry

iTzAndrew33212 commented 1 year ago

No need to be sorry 😁

Enjoy your vacation

FoxWorn3365 commented 1 year ago

Thanks 😄 Anyways, you can fix it by yourself editing the plugin_data/Shopkeepers/player-name.json file and make the inventory element an array

iTzAndrew33212 commented 1 year ago

Yeah, thats totally fine aha im not really sure what I'm doing.

FoxWorn3365 commented 1 year ago

Updated the validator, should be fixed