CortexPE / TeaSpoon

☕ A PLUGIN to Extend PMMP's Functionality without completely changing it.
GNU Affero General Public License v3.0
144 stars 100 forks source link

SPAWNER - CRITICAL - CRASH #250

Closed notacoderr closed 6 years ago

notacoderr commented 6 years ago

Issue Description

Server crashed .. no further description yet, I just loaded a map with spawner

Crashdump, Backtrace or Other Files

PocketMine-MP Crash Dump Thu May 17 04:28:55 UTC 2018

Error: Cannot set tag at "SpawnCount": tried to overwrite pocketmine\nbt\tag\ShortTag with pocketmine\nbt\tag\IntTag
File: vendor/pocketmine/nbt/src/tag/CompoundTag
Line: 126
Type: RuntimeException

Code:
[117]    * already exists at the offset and the types do not match, an exception will be thrown unless $force is true.
[118]    *
[119]    * @param NamedTag $tag
[120]    * @param bool     $force
[121]    */
[122]   public function setTag(NamedTag $tag, bool $force = \false) : void{
[123]       if(!$force){
[124]           $existing = $this->value[$tag->__name] ?? \null;
[125]           if($existing !== \null and !($tag instanceof $existing)){
[126]               throw new \RuntimeException("Cannot set tag at \"$tag->__name\": tried to overwrite " . \get_class($existing) . " with " . \get_class($tag));
[127]           }
[128]       }
[129]       $this->value[$tag->__name] = $tag;
[130]   }
[131] 
[132]   /**
[133]    * Removes the child tags with the specified names from the CompoundTag. This function accepts a variadic list of
[134]    * strings.
[135]    *
[136]    * @param string[] ...$names

Backtrace:
#0 vendor/pocketmine/nbt/src/tag/CompoundTag(313): pocketmine\nbt\tag\CompoundTag->setTag(pocketmine\nbt\tag\IntTag object, boolean )
#1 TeaSpoon_dev-182.phar/src/CortexPE/tile/MobSpawner(43): pocketmine\nbt\tag\CompoundTag->setInt(string SpawnCount, integer 4)
#2 src/pocketmine/tile/Tile(108): CortexPE\tile\MobSpawner->__construct(pocketmine\level\Level object, pocketmine\nbt\tag\CompoundTag object)
#3 src/pocketmine/level/format/Chunk(749): pocketmine\tile\Tile::createTile(string MobSpawner, pocketmine\level\Level object, pocketmine\nbt\tag\CompoundTag object)
#4 src/pocketmine/level/Level(2693): pocketmine\level\format\Chunk->initChunk(pocketmine\level\Level object)
#5 src/pocketmine/level/Level(2302): pocketmine\level\Level->loadChunk(integer -10, integer 23, boolean 1)
#6 src/pocketmine/level/Level(2962): pocketmine\level\Level->getChunk(integer -10, integer 23, boolean 1)
#7 src/pocketmine/Player(1001): pocketmine\level\Level->populateChunk(integer -10, integer 23)
#8 src/pocketmine/Player(1798): pocketmine\Player->sendNextChunk()
#9 src/pocketmine/Server(2510): pocketmine\Player->checkNetwork()
#10 src/pocketmine/Server(2255): pocketmine\Server->tick()
#11 src/pocketmine/Server(2129): pocketmine\Server->tickProcessor()
#12 src/pocketmine/Server(1712): pocketmine\Server->start()
#13 src/pocketmine/PocketMine(304): pocketmine\Server->__construct(BaseClassLoader object, pocketmine\utils\MainLogger object, string /home/minecraft/multicraft/servers/server32703/, string /home/minecraft/multicraft/servers/server32703/plugins/)
#14 /home/minecraft/multicraft/servers/server32703/custom-php7.2.phar(1): require(string phar:///home/minecraft/multicraft/servers/server32703/custom-php7.2.phar/src/pocketmine/PocketMine.php)

PocketMine-MP version: 1.7dev #986 [Protocol 223; API 3.0.0-ALPHA12]
Git commit: b21572774a198dd2766e2f31a136c81e5354af4f
uname -a: Linux 018d0bf7b7c7 4.9.58-xxxx-std-ipv6-64 #1 SMP Mon Oct 23 11:35:59 CEST 2017 x86_64
PHP Version: 7.2.4
Zend version: 3.2.0
OS : Linux, linux
# Paste the contents of your TeaSpoonDump here ( by running /bugreport ) [can be found at <TeaSpoon Plugin Folder>/dumps/<time>]