CortexPE / TeaSpoon

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

[crash server on pmmp 3.9.1] Error: "Call to a member function getDirectionVector() on null" (EXCEPTION) in "plugins/TeaSpoon_dev-279.phar/src/CortexPE/entity/projectile/FishingHook" at line 155 #435

Open teracube opened 4 years ago

teracube commented 4 years ago

my server crash on pmmp 3.9.1 with latest Teaspoon commit problem with Fishing Hook

https://poggit.pmmp.io/r/62431/TeaSpoon_dev-279.phar https://jenkins.pmmp.io/job/PocketMine-MP/1772/artifact/PocketMine-MP.phar

THIS CRASH WAS CAUSED BY A PLUGIN
BAD PLUGIN: TeaSpoon v1.2.0

Code:
[146] 
[147]       if($this->getOwningEntity() === null){
[148]           $ev = new EntityDamageByEntityEvent($this, $entityHit, EntityDamageEvent::CAUSE_PROJECTILE, $damage);
[149]       }else{
[150]           $ev = new EntityDamageByChildEntityEvent($this->getOwningEntity(), $this, $entityHit, EntityDamageEvent::CAUSE_PROJECTILE, $damage);
[151]       }
[152] 
[153]       $entityHit->attack($ev);
[154] 
[155]       $entityHit->setMotion($this->getOwningEntity()->getDirectionVector()->multiply(-0.3)->add(0, 0.3, 0));
[156] 
[157]       $this->isCollided = true;
[158]       $this->flagForDespawn();
[159]   }
[160] 
[161]   public function getResultDamage(): int{
[162]       return 1;
[163]   }
[164] }

Backtrace:
#0 src/pocketmine/entity/projectile/Projectile(252): CortexPE\entity\projectile\FishingHook->onHitEntity(object pocketmine\Player, object pocketmine\math\RayTraceResult)
#1 src/pocketmine/entity/Entity(1472): pocketmine\entity\projectile\Projectile->move(double 0, double -0.28525, double 0)
#2 plugins/TeaSpoon_dev-279.phar/src/CortexPE/entity/projectile/FishingHook(72): pocketmine\entity\Entity->onUpdate(integer 1153032)
#3 src/pocketmine/level/Level(848): CortexPE\entity\projectile\FishingHook->onUpdate(integer 1153032)
#4 src/pocketmine/level/Level(786): pocketmine\level\Level->actuallyDoTick(integer 1153032)
#5 src/pocketmine/Server(2445): pocketmine\level\Level->doTick(integer 1153032)
#6 src/pocketmine/Server(2576): pocketmine\Server->checkTickUpdates(integer 1153032, double 1563216544.6957)
#7 src/pocketmine/Server(2345): pocketmine\Server->tick()
#8 src/pocketmine/Server(2205): pocketmine\Server->tickProcessor()
#9 src/pocketmine/Server(1784): pocketmine\Server->start()
#10 src/pocketmine/PocketMine(274): pocketmine\Server->__construct(object BaseClassLoader, object pocketmine\utils\MainLogger, string[34] /home/teracube/, string[42] /home/teracube/plugins/)
#11 (1): require(string[89] phar:///home/teracube/PocketMine-MP.phar/src/pocketmine/Pocke)

PocketMine-MP version: 3.9.1 [Protocol 361]
Git commit: aaa01bb6f87082fc4cf4c251c06f1a590d886f2e
uname -a: Linux g1 4.5.0-0.bpo.2-amd64 #1 SMP Debian 4.5.4-1~bpo8+1 (2016-05-13) x86_64
PHP Version: 7.3.5
Zend version: 3.3.5
OS : Linux, linux
2019-07-15 [20:49:04] [Server thread/CRITICAL]: Error: "Call to a member function getDirectionVector() on null" (EXCEPTION) in "plugins/TeaSpoon_dev-279.phar/src/CortexPE/entity/projectile/FishingHook" at line 155
2019-07-15 [20:49:04] [Server thread/DEBUG]: #0 src/pocketmine/entity/projectile/Projectile(252): CortexPE\entity\projectile\FishingHook->onHitEntity(object pocketmine\Player, object pocketmine\math\RayTraceResult)
2019-07-15 [20:49:04] [Server thread/DEBUG]: #1 src/pocketmine/entity/Entity(1472): pocketmine\entity\projectile\Projectile->move(double 0, double -0.28525, double 0)
2019-07-15 [20:49:04] [Server thread/DEBUG]: #2 plugins/TeaSpoon_dev-279.phar/src/CortexPE/entity/projectile/FishingHook(72): pocketmine\entity\Entity->onUpdate(integer 1153032)
2019-07-15 [20:49:04] [Server thread/DEBUG]: #3 src/pocketmine/level/Level(848): CortexPE\entity\projectile\FishingHook->onUpdate(integer 1153032)
2019-07-15 [20:49:04] [Server thread/DEBUG]: #4 src/pocketmine/level/Level(786): pocketmine\level\Level->actuallyDoTick(integer 1153032)
2019-07-15 [20:49:04] [Server thread/DEBUG]: #5 src/pocketmine/Server(2445): pocketmine\level\Level->doTick(integer 1153032)
2019-07-15 [20:49:04] [Server thread/DEBUG]: #6 src/pocketmine/Server(2576): pocketmine\Server->checkTickUpdates(integer 1153032, double 1563216544.6957)
2019-07-15 [20:49:04] [Server thread/DEBUG]: #7 src/pocketmine/Server(2345): pocketmine\Server->tick()
2019-07-15 [20:49:04] [Server thread/DEBUG]: #8 src/pocketmine/Server(2205): pocketmine\Server->tickProcessor()
2019-07-15 [20:49:04] [Server thread/DEBUG]: #9 src/pocketmine/Server(1784): pocketmine\Server->start()
2019-07-15 [20:49:04] [Server thread/DEBUG]: #10 src/pocketmine/PocketMine(274): pocketmine\Server->__construct(object BaseClassLoader, object pocketmine\utils\MainLogger, string[34] /home/teracube/, string[42] /home/teracube/plugins/)
2019-07-15 [20:49:04] [Server thread/DEBUG]: #11 (1): require(string[89] phar:///home/teracube/PocketMine-MP.phar/src/pocketmine/Pocke)
2019-07-15 [20:49:04] [Server thread/EMERGENCY]: An unrecoverable error has occurred and the server has crashed. Creating a crash dump
2019-07-15 [20:49:04] [Server thread/EMERGENCY]: Please upload the "/home/teracube/crashdumps/Mon_Jul_15-20.49.04-CEST_2019.log" file to the Crash Archive and submit the link to the Bug Reporting page. Give as much info as you can.
TDMidkwhatisxd commented 4 years ago

Just remove fishing hook function :))

teracube commented 4 years ago

rip fishing hook :<

Le mercredi 17 juillet 2019, TDMidkwhatisxd notifications@github.com a écrit :

Just remove fishing hook function :))

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/CortexPE/TeaSpoon/issues/435?email_source=notifications&email_token=AHDPZFEEJIUQROL55N7EJSDP724SFA5CNFSM4IDZ445KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD2DGCZY#issuecomment-512123239, or mute the thread https://github.com/notifications/unsubscribe-auth/AHDPZFDPPVRPAKIAM2WNJM3P724SFANCNFSM4IDZ445A .