Luohuayu / CatServer

高性能和高兼容性的1.12.2/1.16.5/1.18.2版本Forge+Bukkit+Spigot服务端 (A high performance and high compatibility 1.12.2/1.16.5/1.18.2 version Forge+Bukkit+Spigot server)
https://catmc.org
GNU Lesser General Public License v3.0
1.98k stars 211 forks source link

[1.16.5] NPE 崩溃: Cannot invoke "net.minecraft.block.PortalInfo.putCB(...) #641

Closed NattoCB closed 1 year ago

NattoCB commented 1 year ago

运行环境

Minecraft版本(1.12.2/1.16.5/1.18.2): 1.16.5 构建版本(从/version指令获取): ee53094b Oct 7, 2022 4:11 AM 相关模组/插件: 无MOD,插件仅安装了 mcbbs 的 yum 插件管理器、Multiverse-Core

描述这个BUG 简要栈追踪信息:

java.lang.NullPointerException: Cannot invoke "net.minecraft.block.PortalInfo.putCB(net.minecraft.world.server.ServerWorld, org.bukkit.craftbukkit.v1_16_R3.event.CraftPortalEvent)" because the return value of "net.minecraftforge.common.util.ITeleporter.getPortalInfo(net.minecraft.entity.Entity, net.minecraft.world.server.ServerWorld, java.util.function.Function)" is null
    at net.minecraft.entity.Entity.changeDimension(Entity.java:2557) ~[?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
    at net.minecraft.entity.Entity.func_241206_a_(Entity.java:2538) ~[?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
    at net.minecraft.entity.Entity.func_213284_aV(Entity.java:2145) ~[?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
    at net.minecraft.entity.Entity.postTick(Entity.java:514) ~[?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
    at net.minecraft.world.server.ServerWorld.func_217479_a(ServerWorld.java:757) ~[?:?] {re:classloading,pl:runtimedistcleaner:A}
    at net.minecraft.world.World.func_217390_a(World.java:808) ~[?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
    at net.minecraft.world.server.ServerWorld.func_72835_b(ServerWorld.java:529) ~[?:?] {re:classloading,pl:runtimedistcleaner:A}
    at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:1052) ~[?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
    at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:336) ~[?:?] {re:classloading,pl:accesstransformer:B}
    at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:944) ~[?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
    at net.minecraft.server.MinecraftServer.func_240802_v_(MinecraftServer.java:777) ~[?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
    at net.minecraft.server.MinecraftServer.func_240783_a_(MinecraftServer.java:265) ~[?:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A}
    at java.lang.Thread.run(Thread.java:833) [?:?] {}

完整报告: PasteBin报告

问题描述: 创造模式下对着箱子点了鼠标中键,崩溃重启后箱子及周遭所有箱子、熔炉内的物品被清空 (可能是崩溃前未及时存档导致的) 印象里箱子内有一个带有物品的潜影盒,背包里也携带了同样的 带有物品的潜影盒 此外,栈追踪信息显示是地狱门相关的BUG,的确远处有个地狱门,但和我挺远的,看起来和玩家实体产生不了什么关系。但不排除是地狱门生成其他实体时导致的NPE。

导致的问题 崩溃

复现方法 见描述