Updated-NoCheatPlus / NoCheatPlus

Anti-cheating plugin for Minecraft (1.5-1.20, Bukkit/Spigot)
https://ci.codemc.io/job/Updated-NoCheatPlus/job/Updated-NoCheatPlus/
GNU General Public License v3.0
479 stars 98 forks source link

[bug][folia] Thread Region Scheduler Thread #2 failed main thread check: Cannot read world asynchronously #302

Open cgw2023 opened 1 year ago

cgw2023 commented 1 year ago

Complete output of the ncp version command (please prefer text here)

21:26:14 INFO: »Version information«

21:26:14 INFO: git-Folia-"fa018cc" ~MC: 1.20.1~ 21:26:14 INFO: Detected: 1.20.1

21:26:14 INFO: Plugin: 3.17.1-SNAPSHOT-Updated-b164 21:26:14 INFO: MCAccess: 1.13-1.19|? / Bukkit-API

21:26:14 INFO: blocks: BlocksMC1_4, BlocksMC1_5, BlocksMC1_6_1, BlocksMC1_7_2, BlocksMC1_8, BlocksMC1_9, BlocksMC1_10, BlocksMC1_11, BlocksMC1_12, BlocksMC1_13, BlocksMC1_14, BlocksMC1_15, BlocksMC1_16, BlocksMC1_17, BlocksMC1_19, BlocksMC1_20, MCAccessBukkitModern 21:26:14 INFO: checks: FastConsume, Gutenberg, HotFixFallingBlockPortalEnter 21:26:14 INFO: defaults: pvpKnockBackVelocity

AllViolations~NCP~ 1.0, ViolationFrequency~NCP~ 1.0 21:26:14 INFO: »Related Plugins« 21:26:14 INFO: ViaVersion v4.7.0

Short description of the issue and how to reproduce (is it random / always happens / side conditions ?)

error occur, unknown reason


[04:16:42] [Region Scheduler Thread #0/ERROR]: Thread Region Scheduler Thread #0 failed main thread check: Cannot read world asynchronously
java.lang.Throwable: null
    at io.papermc.paper.util.TickThread.ensureTickThread(TickThread.java:57) ~[folia-1.20.1.jar:git-Folia-"fa018cc"]
    at org.bukkit.craftbukkit.v1_20_R1.block.CraftBlock.getNMS(CraftBlock.java:84) ~[folia-1.20.1.jar:git-Folia-"fa018cc"]
    at org.bukkit.craftbukkit.v1_20_R1.block.CraftBlock.getBlockData(CraftBlock.java:179) ~[folia-1.20.1.jar:git-Folia-"fa018cc"]
    at fr.neatmonster.nocheatplus.utilities.map.BlockProperties.isWaterlogged(BlockProperties.java:3549) ~[NoCheatPlus.jar:?]
    at fr.neatmonster.nocheatplus.utilities.location.RichBoundsLocation.isInWaterLogged(RichBoundsLocation.java:693) ~[NoCheatPlus.jar:?]
    at fr.neatmonster.nocheatplus.utilities.location.RichBoundsLocation.isInLiquid(RichBoundsLocation.java:705) ~[NoCheatPlus.jar:?]
    at fr.neatmonster.nocheatplus.checks.moving.model.LocationData.setExtraProperties(LocationData.java:96) ~[NoCheatPlus.jar:?]
    at fr.neatmonster.nocheatplus.checks.moving.model.MoveData.setExtraProperties(MoveData.java:222) ~[NoCheatPlus.jar:?]
    at fr.neatmonster.nocheatplus.checks.moving.util.MovingUtil.prepareFullCheck(MovingUtil.java:502) ~[NoCheatPlus.jar:?]
    at fr.neatmonster.nocheatplus.checks.moving.MovingListener.checkPlayerMove(MovingListener.java:1034) ~[NoCheatPlus.jar:?]
    at fr.neatmonster.nocheatplus.checks.moving.MovingListener.onPlayerMove(MovingListener.java:571) ~[NoCheatPlus.jar:?]
    at jdk.internal.reflect.GeneratedMethodAccessor26.invoke(Unknown Source) ~[?:?]
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
    at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?]
    at fr.neatmonster.nocheatplus.event.mini.MultiListenerRegistry$AutoListener.onEvent(MultiListenerRegistry.java:82) ~[NoCheatPlus.jar:?]
    at fr.neatmonster.nocheatplus.event.mini.MiniListenerNode.onEvent(MiniListenerNode.java:157) ~[NoCheatPlus.jar:?]
    at fr.neatmonster.nocheatplus.event.mini.EventRegistryBukkit$4.execute(EventRegistryBukkit.java:124) ~[NoCheatPlus.jar:?]
    at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:77) ~[folia-api-1.20.1-R0.1-SNAPSHOT.jar:git-Folia-"fa018cc"]
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[folia-api-1.20.1-R0.1-SNAPSHOT.jar:?]
    at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:54) ~[folia-1.20.1.jar:git-Folia-"fa018cc"]
    at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:126) ~[folia-1.20.1.jar:git-Folia-"fa018cc"]
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:615) ~[folia-api-1.20.1-R0.1-SNAPSHOT.jar:?]
    at net.minecraft.server.network.ServerGamePacketListenerImpl.handleMovePlayer(ServerGamePacketListenerImpl.java:1634) ~[?:?]
    at net.minecraft.network.protocol.game.ServerboundMovePlayerPacket.handle(ServerboundMovePlayerPacket.java:29) ~[?:?]
    at net.minecraft.network.protocol.game.ServerboundMovePlayerPacket$PosRot.handle(ServerboundMovePlayerPacket.java:88) ~[?:?]
    at net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$0(PacketUtils.java:52) ~[?:?]
    at net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$1(PacketUtils.java:75) ~[?:?]
    at io.papermc.paper.threadedregions.EntityScheduler.executeTick(EntityScheduler.java:173) ~[folia-1.20.1.jar:git-Folia-"fa018cc"]
    at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1524) ~[folia-1.20.1.jar:git-Folia-"fa018cc"]
    at io.papermc.paper.threadedregions.TickRegions$ConcreteRegionTickHandle.tickRegion(TickRegions.java:360) ~[folia-1.20.1.jar:git-Folia-"fa018cc"]
    at io.papermc.paper.threadedregions.TickRegionScheduler$RegionScheduleHandle.runTick(TickRegionScheduler.java:385) ~[folia-1.20.1.jar:git-Folia-"fa018cc"]
    at ca.spottedleaf.concurrentutil.scheduler.SchedulerThreadPool$TickThreadRunner.run(SchedulerThreadPool.java:525) ~[folia-1.20.1.jar:git-Folia-"fa018cc"]
    at java.lang.Thread.run(Thread.java:833) ~[?:?]

Have you made any (noteworthy) changes to the default configuration of NCP?

no change, default NCP config

Do you run any other special plugins that affect game mechanics next to NC+ (skills, machines, adding/changing blocks, other anti-cheating)?

no change

Provide additional information: for bypasses, vulnerabilities and reproducible issues, we request a debug log. Use GitHub gists or PasteBin or similar for errors and huge logs, or attach a (zip-) file here.

log https://mclo.gs/LrJ6lRW

xKumorio commented 1 year ago

[22:01:09 ERROR]: [NoCheatPlus] JoinLeaveListener(fr.neatmonster.nocheatplus.checks.moving.MovingListener) generated an exception (join): NullPointerException [22:01:09 ERROR]: [NoCheatPlus] java.lang.NullPointerException: World must not be null. NoCheatPlus (2).jar//fr.neatmonster.nocheatplus.utilities.location.LocUtil.testWorld(LocUtil.java:241) NoCheatPlus (2).jar//fr.neatmonster.nocheatplus.utilities.location.LocUtil.clone(LocUtil.java:143) NoCheatPlus (2).jar//fr.neatmonster.nocheatplus.checks.moving.MovingData.setSetBack(MovingData.java:713) NoCheatPlus (2).jar//fr.neatmonster.nocheatplus.checks.moving.MovingListener.dataOnJoin(MovingListener.java:2465) NoCheatPlus (2).jar//fr.neatmonster.nocheatplus.checks.moving.MovingListener.playerJoins(MovingListener.java:2429) NoCheatPlus (2).jar//fr.neatmonster.nocheatplus.NoCheatPlus.onJoinLow(NoCheatPlus.java:1352) NoCheatPlus (2).jar//fr.neatmonster.nocheatplus.NoCheatPlus.access$700(NoCheatPlus.java:153) NoCheatPlus (2).jar//fr.neatmonster.nocheatplus.NoCheatPlus$3.onPlayerJoinLow(NoCheatPlus.java:1298) jdk.internal.reflect.GeneratedMethodAccessor81.invoke(Unknown Source) java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) java.base/java.lang.reflect.Method.invoke(Method.java:568) NoCheatPlus (2).jar//fr.neatmonster.nocheatplus.event.mini.MultiListenerRegistry$AutoListener.onEvent(MultiListenerRegistry.java:82) NoCheatPlus (2).jar//fr.neatmonster.nocheatplus.event.mini.MiniListenerNode.onEvent(MiniListenerNode.java:157) NoCheatPlus (2).jar//fr.neatmonster.nocheatplus.event.mini.EventRegistryBukkit$4.execute(EventRegistryBukkit.java:124) co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:77) org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:54) io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:126) org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:615) net.minecraft.server.players.PlayerList.placeNewPlayer(PlayerList.java:419) net.minecraft.server.network.ServerLoginPacketListenerImpl.lambda$handleAcceptedLogin$1(ServerLoginPacketListenerImpl.java:204) io.papermc.paper.threadedregions.RegionizedTaskQueue$PrioritisedQueue$ChunkBasedPriorityTask.executeInternal(RegionizedTaskQueue.java:504) io.papermc.paper.threadedregions.RegionizedTaskQueue$PrioritisedQueue.executeTask(RegionizedTaskQueue.java:434) io.papermc.paper.threadedregions.RegionizedTaskQueue$RegionTaskQueueData.drainTasks(RegionizedTaskQueue.java:263) net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1514) io.papermc.paper.threadedregions.TickRegions$ConcreteRegionTickHandle.tickRegion(TickRegions.java:360) io.papermc.paper.threadedregions.TickRegionScheduler$RegionScheduleHandle.runTick(TickRegionScheduler.java:385) ca.spottedleaf.concurrentutil.scheduler.SchedulerThreadPool$TickThreadRunner.run(SchedulerThreadPool.java:525) java.base/java.lang.Thread.run(Thread.java:833)