diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..206a264 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,21 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "type": "java", + "name": "Debug (Launch) - Current File", + "request": "launch", + "mainClass": "${file}" + }, + { + "type": "java", + "name": "Debug (Attach)", + "request": "attach", + "hostName": "localhost", + "port": 25566 + } + ] +} \ No newline at end of file diff --git a/pom.xml b/pom.xml index 5ca428a..9a73529 100644 --- a/pom.xml +++ b/pom.xml @@ -41,7 +41,7 @@ UTF-8 - 8 - 8 + 11 + 11 \ No newline at end of file diff --git a/src/main/java/ca/recrown/islandsurvivalcraft/IslandSurvivalCraft.java b/src/main/java/ca/recrown/islandsurvivalcraft/IslandSurvivalCraft.java index b6bf396..190c4f0 100644 --- a/src/main/java/ca/recrown/islandsurvivalcraft/IslandSurvivalCraft.java +++ b/src/main/java/ca/recrown/islandsurvivalcraft/IslandSurvivalCraft.java @@ -4,7 +4,6 @@ import org.bukkit.generator.ChunkGenerator; import org.bukkit.plugin.java.JavaPlugin; import ca.recrown.islandsurvivalcraft.world.IslandSurvivalCraftChunkGenerator; -import ca.recrown.islandsurvivalcraft.world.IslandWorldGenerator; import ca.recrown.islandsurvivalcraft.world.generation.BiomePerIslandGenerator; public class IslandSurvivalCraft extends JavaPlugin { diff --git a/src/main/java/ca/recrown/islandsurvivalcraft/pathfinding/DepthFirstSearch.java b/src/main/java/ca/recrown/islandsurvivalcraft/pathfinding/DepthFirstSearch.java index 344c3ba..2433db2 100644 --- a/src/main/java/ca/recrown/islandsurvivalcraft/pathfinding/DepthFirstSearch.java +++ b/src/main/java/ca/recrown/islandsurvivalcraft/pathfinding/DepthFirstSearch.java @@ -6,6 +6,8 @@ import java.util.Objects; import java.util.PriorityQueue; import java.util.Queue; +import org.apache.commons.lang.NullArgumentException; + public class DepthFirstSearch { private Queue queue; private CoordinateValidatable validatable; @@ -48,6 +50,9 @@ public class DepthFirstSearch { } public boolean buildPathToEndNode() { + if (validatable == null) throw new IllegalStateException("Need to set a validator."); + if (startNode == null) throw new IllegalStateException("Need to set the starting position."); + queue = new PriorityQueue<>(); checkedNodes.clear(); Node begin = startNode; @@ -83,6 +88,10 @@ public class DepthFirstSearch { * @return */ public boolean findTarget(CoordinateTargetValidatable targetValidator) { + if (validatable == null) throw new IllegalStateException("Need to set a validator."); + if (targetValidator == null) throw new NullArgumentException("targetValidator"); + if (startNode == null) throw new IllegalStateException("Need to set the starting position."); + queue = new LinkedList<>(); checkedNodes.clear(); Node begin = startNode; @@ -127,6 +136,7 @@ public class DepthFirstSearch { public int compareTo(Node o) { return Math.round(distanceToGoal(endNode) - o.distanceToGoal(endNode)); } + public float distanceToGoal(Node goal) { float distanceX = goal.x - this.x; diff --git a/src/main/java/ca/recrown/islandsurvivalcraft/world/IslandWorldGenerator.java b/src/main/java/ca/recrown/islandsurvivalcraft/world/IslandWorldGenerator.java index eec0cc2..58c8f02 100644 --- a/src/main/java/ca/recrown/islandsurvivalcraft/world/IslandWorldGenerator.java +++ b/src/main/java/ca/recrown/islandsurvivalcraft/world/IslandWorldGenerator.java @@ -4,11 +4,13 @@ import java.util.Random; import org.bukkit.Material; import org.bukkit.World; +import org.bukkit.block.Biome; import org.bukkit.generator.ChunkGenerator.BiomeGrid; import org.bukkit.generator.ChunkGenerator.ChunkData; import ca.recrown.islandsurvivalcraft.world.generation.BedrockGenerator; import ca.recrown.islandsurvivalcraft.world.generation.IslandBiomeGenerator; +import ca.recrown.islandsurvivalcraft.world.shaders.WorldHeightShader; /** * A world generator. @@ -18,31 +20,45 @@ public class IslandWorldGenerator { private final BedrockGenerator bedrockGenerator; private final BiomeSelector biomeSelector; private final IslandBiomeGenerator biomeGenerator; - + private final WorldHeightShader heightShader; + public final World world; public final IslandWorldBaseTerrainMap islandMapGenerator; public final Random random; - public IslandWorldGenerator(World world, IslandBiomeGenerator generator, Random random) { + public IslandWorldGenerator(World world, IslandBiomeGenerator islandBiomeGenerator, Random random) { this.world = world; this.maxHeight = world.getMaxHeight(); this.random = random; this.biomeSelector = new BiomeSelector(random); this.bedrockGenerator = new BedrockGenerator(random); this.islandMapGenerator = new IslandWorldBaseTerrainMap(random, world.getSeaLevel(), 4); - this.biomeGenerator = generator; + this.biomeGenerator = islandBiomeGenerator; + this.heightShader = new WorldHeightShader(world.getSeed(), islandMapGenerator); biomeSelector.initialize(); + islandBiomeGenerator.initialize(world, islandMapGenerator, biomeSelector); } public void GenerateChunk(int chunkX, int chunkZ, int localX, int localZ, ChunkData chunk, BiomeGrid biomeGrid) { int worldX = 16 * chunkX + localX; int worldZ = 16 * chunkZ + localZ; + //gets the bedrock. + int bedrockHeight = bedrockGenerator.getBedrockHeight(worldX, worldZ); //Sets the biome. - biomeGenerator.GenerateBiome(chunkX, chunkZ, localX, localZ, biomeGrid); + Biome currentBiome = biomeGenerator.GenerateBiome(chunkX, chunkZ, localX, localZ); + for (int y = 0; y < maxHeight; y++) { + biomeGrid.setBiome(localX, y, localZ, currentBiome); + } - //Sets the bedrock. - int bedrockHeight = bedrockGenerator.getBedrockHeight(worldX, worldZ); + //get height shader. + int height = heightShader.getAltitude(worldX, worldZ, currentBiome); + + + //set general shape + chunk.setRegion(localX, 0, localZ, localX, height, localZ, Material.BEDROCK); + + //set bedrock last chunk.setRegion(localX, 0, localZ, localX, bedrockHeight, localZ, Material.BEDROCK); } } \ No newline at end of file diff --git a/src/main/java/ca/recrown/islandsurvivalcraft/world/generation/BedrockGenerator.java b/src/main/java/ca/recrown/islandsurvivalcraft/world/generation/BedrockGenerator.java index bc9d833..68087d0 100644 --- a/src/main/java/ca/recrown/islandsurvivalcraft/world/generation/BedrockGenerator.java +++ b/src/main/java/ca/recrown/islandsurvivalcraft/world/generation/BedrockGenerator.java @@ -5,13 +5,11 @@ import java.util.Random; import org.bukkit.util.noise.SimplexOctaveGenerator; public class BedrockGenerator { - private Random random; private SimplexOctaveGenerator noiseGenerator; private final int maxBedrockHeight = 5; private final int minBedrockHeight = 1; public BedrockGenerator(Random random) { - this.random = random; noiseGenerator = new SimplexOctaveGenerator(random, 8); noiseGenerator.setScale(0.1D); } diff --git a/src/main/java/ca/recrown/islandsurvivalcraft/world/generation/BiomePerIslandGenerator.java b/src/main/java/ca/recrown/islandsurvivalcraft/world/generation/BiomePerIslandGenerator.java index 167eb0d..362fda0 100644 --- a/src/main/java/ca/recrown/islandsurvivalcraft/world/generation/BiomePerIslandGenerator.java +++ b/src/main/java/ca/recrown/islandsurvivalcraft/world/generation/BiomePerIslandGenerator.java @@ -2,7 +2,6 @@ package ca.recrown.islandsurvivalcraft.world.generation; import org.bukkit.World; import org.bukkit.block.Biome; -import org.bukkit.generator.ChunkGenerator.BiomeGrid; import ca.recrown.islandsurvivalcraft.pathfinding.CoordinateTargetValidatable; import ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch; @@ -14,19 +13,14 @@ public class BiomePerIslandGenerator implements IslandBiomeGenerator, Coordinate private IslandWorldBaseTerrainMap islandLocator; private BiomeSelector biomeSelector; private TemperatureMapGenerator temperatureMapGenerator; - private int buildHeight; private World world; private DepthFirstSearch dfs; private Biome mainBiome; private Biome shoreBiome; private float temperature; - private BiomeGrid currentBiomeGrid; - private int currentChunkX, currentChunkZ; - public BiomePerIslandGenerator() { this.temperatureMapGenerator = new TemperatureMapGenerator(); - dfs = new DepthFirstSearch(islandLocator); } @Override @@ -37,7 +31,7 @@ public class BiomePerIslandGenerator implements IslandBiomeGenerator, Coordinate this.biomeSelector = biomeSelector; this.world = world; this.temperatureMapGenerator.setSeed(world.getSeed()); - this.buildHeight = world.getMaxHeight(); + dfs = new DepthFirstSearch(islandLocator); } @Override @@ -52,32 +46,18 @@ public class BiomePerIslandGenerator implements IslandBiomeGenerator, Coordinate if (mainBiome != null && shoreBiome != null) { return true; } - } else if (x/16 == currentChunkX && y/16 == currentChunkZ) { - int localX = x - (currentChunkX * 16); - int localZ = y - (currentChunkZ * 16); - Biome foundBiome = currentBiomeGrid.getBiome(localX, 0, localZ); - if (islandLocator.isShore(x, y)) { - shoreBiome = foundBiome; - } else { - mainBiome = foundBiome; - } - if (mainBiome != null && shoreBiome != null) { - return true; - } } return false; } @Override - public void GenerateBiome(int chunkX, int chunkZ, int localX, int localZ, BiomeGrid biomeGrid) { + public Biome GenerateBiome(int chunkX, int chunkZ, int localX, int localZ) { int worldX = chunkX * 16 + localX; int worldZ = chunkZ * 16 + localZ; if (islandLocator.isIsland(worldX, worldZ)) { if (mainBiome == null && shoreBiome == null) { - this.currentBiomeGrid = biomeGrid; - this.currentChunkX = chunkX; - this.currentChunkZ = chunkZ; + dfs.setStartPosition(worldX, worldZ); if (!dfs.findTarget(this)) { temperature = temperatureMapGenerator.getTemperature(worldX, worldZ); mainBiome = biomeSelector.getLandBiome(temperature); @@ -96,10 +76,7 @@ public class BiomePerIslandGenerator implements IslandBiomeGenerator, Coordinate } else if (islandLocator.isShore(worldX, worldZ)) { designatedBiome = shoreBiome; } - - for (int y = 0; y < buildHeight; y++) { - biomeGrid.setBiome(localX, y, localZ, designatedBiome); - } + return designatedBiome; } @Override diff --git a/src/main/java/ca/recrown/islandsurvivalcraft/world/generation/IslandBiomeGenerator.java b/src/main/java/ca/recrown/islandsurvivalcraft/world/generation/IslandBiomeGenerator.java index f9465e3..b5f4d51 100644 --- a/src/main/java/ca/recrown/islandsurvivalcraft/world/generation/IslandBiomeGenerator.java +++ b/src/main/java/ca/recrown/islandsurvivalcraft/world/generation/IslandBiomeGenerator.java @@ -2,13 +2,12 @@ package ca.recrown.islandsurvivalcraft.world.generation; import org.bukkit.World; import org.bukkit.block.Biome; -import org.bukkit.generator.ChunkGenerator.BiomeGrid; import ca.recrown.islandsurvivalcraft.world.BiomeSelector; import ca.recrown.islandsurvivalcraft.world.IslandWorldBaseTerrainMap; public interface IslandBiomeGenerator { - public void initialize(World world, IslandWorldBaseTerrainMap mapGenerator, BiomeSelector biome); - public void GenerateBiome(int chunkX, int chunkZ, int localX, int localZ, BiomeGrid biomeGrid); + public void initialize(World world, IslandWorldBaseTerrainMap mapGenerator, BiomeSelector biomeSelector); + public Biome GenerateBiome(int chunkX, int chunkZ, int localX, int localZ); public IslandBiomeGenerator getInstance(); } diff --git a/src/main/java/ca/recrown/islandsurvivalcraft/world/shapers/WorldHeightShader.java b/src/main/java/ca/recrown/islandsurvivalcraft/world/shaders/WorldHeightShader.java similarity index 97% rename from src/main/java/ca/recrown/islandsurvivalcraft/world/shapers/WorldHeightShader.java rename to src/main/java/ca/recrown/islandsurvivalcraft/world/shaders/WorldHeightShader.java index 347c952..b411f1d 100644 --- a/src/main/java/ca/recrown/islandsurvivalcraft/world/shapers/WorldHeightShader.java +++ b/src/main/java/ca/recrown/islandsurvivalcraft/world/shaders/WorldHeightShader.java @@ -1,4 +1,4 @@ -package ca.recrown.islandsurvivalcraft.world.shapers; +package ca.recrown.islandsurvivalcraft.world.shaders; import java.util.Random; diff --git a/src/test/java/ca/recrown/islandsurvivalcraft/pathfinding/DepthFirstSearchTest.java b/src/test/java/ca/recrown/islandsurvivalcraft/pathfinding/DepthFirstSearchTest.java index 52271d3..5699c31 100644 --- a/src/test/java/ca/recrown/islandsurvivalcraft/pathfinding/DepthFirstSearchTest.java +++ b/src/test/java/ca/recrown/islandsurvivalcraft/pathfinding/DepthFirstSearchTest.java @@ -139,9 +139,9 @@ public class DepthFirstSearchTest { @Test public void testDFSFindEndNodeMapDValid() { Validator validator = new Validator(mapD); + dfs = new DepthFirstSearch(validator); dfs.setValidatable(validator); dfs.setStartPosition(0, 0); - assertTrue(dfs.findTarget(validator)); assertEquals(0, dfs.getEndX()); assertEquals(3, dfs.getEndY()); @@ -150,6 +150,7 @@ public class DepthFirstSearchTest { @Test public void testDFSFindEndNodeMapEInvalid() { Validator validator = new Validator(mapE); + dfs = new DepthFirstSearch(); dfs.setValidatable(validator); dfs.setStartPosition(0, 0); diff --git a/test-server/crash-reports/crash-2020-04-21_20.26.41-server.txt b/test-server/crash-reports/crash-2020-04-21_20.26.41-server.txt new file mode 100644 index 0000000..c707481 --- /dev/null +++ b/test-server/crash-reports/crash-2020-04-21_20.26.41-server.txt @@ -0,0 +1,127 @@ +---- Minecraft Crash Report ---- +// Daisy, daisy... + +Time: 21/04/20 8:26 PM +Description: Exception generating new chunk + +java.lang.NullPointerException: Exception generating new chunk + at ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch$Node.distanceToGoal(DepthFirstSearch.java:144) + at ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch$Node.compareTo(DepthFirstSearch.java:140) + at ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch$Node.compareTo(DepthFirstSearch.java:1) + at java.util.HashMap.compareComparables(Unknown Source) + at java.util.HashMap$TreeNode.treeify(Unknown Source) + at java.util.HashMap.treeifyBin(Unknown Source) + at java.util.HashMap.putVal(Unknown Source) + at java.util.HashMap.put(Unknown Source) + at java.util.HashSet.add(Unknown Source) + at ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch.findTarget(DepthFirstSearch.java:110) + at ca.recrown.islandsurvivalcraft.world.generation.BiomePerIslandGenerator.GenerateBiome(BiomePerIslandGenerator.java:61) + at ca.recrown.islandsurvivalcraft.world.IslandWorldGenerator.GenerateChunk(IslandWorldGenerator.java:49) + at ca.recrown.islandsurvivalcraft.world.IslandSurvivalCraftChunkGenerator.generateChunkData(IslandSurvivalCraftChunkGenerator.java:24) + at org.bukkit.craftbukkit.v1_15_R1.generator.CustomChunkGenerator.buildBase(CustomChunkGenerator.java:137) + at net.minecraft.server.v1_15_R1.ChunkStatus.lambda$static$6(ChunkStatus.java:51) + at net.minecraft.server.v1_15_R1.ChunkStatus$d.doWork(ChunkStatus.java:243) + at net.minecraft.server.v1_15_R1.ChunkStatus.a(ChunkStatus.java:187) + at net.minecraft.server.v1_15_R1.PlayerChunkMap.lambda$null$23(PlayerChunkMap.java:836) + at com.mojang.datafixers.util.Either$Left.map(Either.java:38) + at net.minecraft.server.v1_15_R1.PlayerChunkMap.lambda$b$25(PlayerChunkMap.java:834) + at java.util.concurrent.CompletableFuture.uniCompose(Unknown Source) + at java.util.concurrent.CompletableFuture$UniCompose.tryFire(Unknown Source) + at java.util.concurrent.CompletableFuture$Completion.run(Unknown Source) + at net.minecraft.server.v1_15_R1.ChunkTaskQueueSorter.b(SourceFile:58) + at net.minecraft.server.v1_15_R1.ThreadedMailbox.e(ThreadedMailbox.java:78) + at net.minecraft.server.v1_15_R1.ThreadedMailbox.a(ThreadedMailbox.java:120) + at net.minecraft.server.v1_15_R1.ThreadedMailbox.run(ThreadedMailbox.java:86) + at java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(Unknown Source) + at java.util.concurrent.ForkJoinTask.doExec(Unknown Source) + at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(Unknown Source) + at java.util.concurrent.ForkJoinPool.runWorker(Unknown Source) + at java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source) + + +A detailed walkthrough of the error, its code path and all known details is as follows: +--------------------------------------------------------------------------------------- + +-- Head -- +Thread: Server thread +Stacktrace: + at ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch$Node.distanceToGoal(DepthFirstSearch.java:144) + at ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch$Node.compareTo(DepthFirstSearch.java:140) + at ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch$Node.compareTo(DepthFirstSearch.java:1) + at java.util.HashMap.compareComparables(Unknown Source) + at java.util.HashMap$TreeNode.treeify(Unknown Source) + at java.util.HashMap.treeifyBin(Unknown Source) + at java.util.HashMap.putVal(Unknown Source) + at java.util.HashMap.put(Unknown Source) + at java.util.HashSet.add(Unknown Source) + at ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch.findTarget(DepthFirstSearch.java:110) + at ca.recrown.islandsurvivalcraft.world.generation.BiomePerIslandGenerator.GenerateBiome(BiomePerIslandGenerator.java:61) + at ca.recrown.islandsurvivalcraft.world.IslandWorldGenerator.GenerateChunk(IslandWorldGenerator.java:49) + at ca.recrown.islandsurvivalcraft.world.IslandSurvivalCraftChunkGenerator.generateChunkData(IslandSurvivalCraftChunkGenerator.java:24) + at org.bukkit.craftbukkit.v1_15_R1.generator.CustomChunkGenerator.buildBase(CustomChunkGenerator.java:137) + at net.minecraft.server.v1_15_R1.ChunkStatus.lambda$static$6(ChunkStatus.java:51) + at net.minecraft.server.v1_15_R1.ChunkStatus$d.doWork(ChunkStatus.java:243) + at net.minecraft.server.v1_15_R1.ChunkStatus.a(ChunkStatus.java:187) + +-- Chunk to be generated -- +Details: + Location: 10,-1 + Position hash: -4294967286 + Generator: org.bukkit.craftbukkit.v1_15_R1.generator.CustomChunkGenerator@5218ff41 +Stacktrace: + at net.minecraft.server.v1_15_R1.PlayerChunkMap.lambda$null$23(PlayerChunkMap.java:836) + at com.mojang.datafixers.util.Either$Left.map(Either.java:38) + at net.minecraft.server.v1_15_R1.PlayerChunkMap.lambda$b$25(PlayerChunkMap.java:834) + at java.util.concurrent.CompletableFuture.uniCompose(Unknown Source) + at java.util.concurrent.CompletableFuture$UniCompose.tryFire(Unknown Source) + at java.util.concurrent.CompletableFuture$Completion.run(Unknown Source) + at net.minecraft.server.v1_15_R1.ChunkTaskQueueSorter.b(SourceFile:58) + at net.minecraft.server.v1_15_R1.ThreadedMailbox.e(ThreadedMailbox.java:78) + at net.minecraft.server.v1_15_R1.ThreadedMailbox.a(ThreadedMailbox.java:120) + at net.minecraft.server.v1_15_R1.ThreadedMailbox.run(ThreadedMailbox.java:86) + +-- Affected level -- +Details: + All players: 0 total; [] + Chunk stats: ServerChunkCache: 529 + Level dimension: minecraft:overworld + Level name: world + Level seed: 535141436571902658 + Level generator: ID 00 - default, ver 1. Features enabled: true + Level generator options: {} + Level spawn location: World: (168,64,-8), Chunk: (at 8,4,8 in 10,-1; contains blocks 160,0,-16 to 175,255,-1), Region: (0,-1; contains chunks 0,-32 to 31,-1, blocks 0,0,-512 to 511,255,-1) + Level time: 0 game time, 0 day time + Known server brands: + Level was modded: false + Level storage version: 0x00000 - Unknown? + Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false) + Level game mode: Game mode: survival (ID 0). Hardcore: false. Cheats: false +Stacktrace: + at net.minecraft.server.v1_15_R1.MinecraftServer.initWorld(MinecraftServer.java:517) + at net.minecraft.server.v1_15_R1.MinecraftServer.a(MinecraftServer.java:458) + at net.minecraft.server.v1_15_R1.DedicatedServer.init(DedicatedServer.java:298) + at net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:908) + at java.lang.Thread.run(Unknown Source) + +-- System Details -- +Details: + Minecraft Version: 1.15.2 + Minecraft Version ID: 1.15.2 + Operating System: Windows 10 (amd64) version 10.0 + Java Version: 1.8.0_241, Oracle Corporation + Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation + Memory: 476363768 bytes (454 MB) / 747110400 bytes (712 MB) up to 954728448 bytes (910 MB) + CPUs: 8 + JVM Flags: 2 total; -Xms512M -Xmx1G + CraftBukkit Information: + Running: Paper version git-Paper-195 (MC: 1.15.2) (Implementing API version 1.15.2-R0.1-SNAPSHOT) true + Plugins: { WorldEdit v7.1.0;8e55131 com.sk89q.worldedit.bukkit.WorldEditPlugin [], WorldGeneratorApi v0.4 nl.rutgerkok.worldgeneratorapi.internal.WorldGeneratorApiImpl [Rutger Kok], WorldGuard v7.0.2-SNAPSHOT;bf2593e com.sk89q.worldguard.bukkit.WorldGuardPlugin [], IslandSurvivalCraft v1.0.0 ca.recrown.islandsurvivalcraft.IslandSurvivalCraft [],} + Warnings: DEFAULT + Reload Count: 0 + Threads: { RUNNABLE Server-Worker-5: [java.lang.Thread.dumpThreads(Native Method), java.lang.Thread.getAllStackTraces(Unknown Source), org.bukkit.craftbukkit.v1_15_R1.CraftCrashReport.call(CraftCrashReport.java:33), net.minecraft.server.v1_15_R1.CrashReportSystemDetails.a(SourceFile:79), net.minecraft.server.v1_15_R1.CrashReport.i(CrashReport.java:71), net.minecraft.server.v1_15_R1.CrashReport.(CrashReport.java:35), net.minecraft.server.v1_15_R1.CrashReport.a(CrashReport.java:270), net.minecraft.server.v1_15_R1.PlayerChunkMap.lambda$null$23(PlayerChunkMap.java:843), net.minecraft.server.v1_15_R1.PlayerChunkMap$$Lambda$3001/1019412414.apply(Unknown Source), com.mojang.datafixers.util.Either$Left.map(Either.java:38), net.minecraft.server.v1_15_R1.PlayerChunkMap.lambda$b$25(PlayerChunkMap.java:834), net.minecraft.server.v1_15_R1.PlayerChunkMap$$Lambda$2986/488181785.apply(Unknown Source), java.util.concurrent.CompletableFuture.uniCompose(Unknown Source), java.util.concurrent.CompletableFuture$UniCompose.tryFire(Unknown Source), java.util.concurrent.CompletableFuture$Completion.run(Unknown Source), net.minecraft.server.v1_15_R1.ChunkTaskQueueSorter.b(SourceFile:58), net.minecraft.server.v1_15_R1.ChunkTaskQueueSorter$$Lambda$2999/1127285042.run(Unknown Source), net.minecraft.server.v1_15_R1.ThreadedMailbox.e(ThreadedMailbox.java:78), net.minecraft.server.v1_15_R1.ThreadedMailbox.a(ThreadedMailbox.java:120), net.minecraft.server.v1_15_R1.ThreadedMailbox.run(ThreadedMailbox.java:86), java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(Unknown Source), java.util.concurrent.ForkJoinTask.doExec(Unknown Source), java.util.concurrent.ForkJoinPool$WorkQueue.runTask(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], TIMED_WAITING ObjectCleanerThread: [java.lang.Object.wait(Native Method), java.lang.ref.ReferenceQueue.remove(Unknown Source), io.netty.util.internal.ObjectCleaner$1.run(ObjectCleaner.java:54), io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30), java.lang.Thread.run(Unknown Source)], WAITING Paper Async Chunk Task Thread #0: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], WAITING Paper Async Task Handler Thread - 0: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source), java.util.concurrent.LinkedBlockingQueue.take(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING Craft Scheduler Thread - 1: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], WAITING Paper Async Chunk Task Thread #1: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], TIMED_WAITING WorldEdit Session Manager: [java.lang.Object.wait(Native Method), java.util.TimerThread.mainLoop(Unknown Source), java.util.TimerThread.run(Unknown Source)], WAITING Server-Worker-6: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], TIMED_WAITING Timer-1: [java.lang.Object.wait(Native Method), java.util.TimerThread.mainLoop(Unknown Source), java.util.TimerThread.run(Unknown Source)], RUNNABLE Attach Listener: [], WAITING Server-Worker-4: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], WAITING Paper RegionFile IO Thread: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], RUNNABLE DestroyJavaVM: [], WAITING Paper Async Chunk Urgent Task Thread: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], WAITING Paper Async Chunk Task Thread #2: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], TIMED_WAITING Timer-0: [java.lang.Object.wait(Native Method), java.util.TimerThread.mainLoop(Unknown Source), java.util.TimerThread.run(Unknown Source)], WAITING Paper Async Chunk Task Thread #3: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], RUNNABLE Signal Dispatcher: [], RUNNABLE WindowsStreamPump: [org.fusesource.jansi.internal.Kernel32.WaitForSingleObject(Native Method), org.fusesource.jansi.internal.WindowsSupport.readConsoleInput(WindowsSupport.java:97), org.jline.terminal.impl.jansi.win.JansiWinSysTerminal.processConsoleInput(JansiWinSysTerminal.java:112), org.jline.terminal.impl.AbstractWindowsTerminal.pump(AbstractWindowsTerminal.java:458), org.jline.terminal.impl.AbstractWindowsTerminal$$Lambda$12/1457263953.run(Unknown Source), java.lang.Thread.run(Unknown Source)], WAITING Paper Async Chunk Task Thread #6: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], WAITING Reference Handler: [java.lang.Object.wait(Native Method), java.lang.Object.wait(Unknown Source), java.lang.ref.Reference.tryHandlePending(Unknown Source), java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)], TIMED_WAITING Log4j2-TF-1-AsyncLogger[AsyncContext@18b4aac2]-1: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source), com.lmax.disruptor.TimeoutBlockingWaitStrategy.waitFor(TimeoutBlockingWaitStrategy.java:38), com.lmax.disruptor.ProcessingSequenceBarrier.waitFor(ProcessingSequenceBarrier.java:56), com.lmax.disruptor.BatchEventProcessor.processEvents(BatchEventProcessor.java:159), com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:125), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], WAITING Finalizer: [java.lang.Object.wait(Native Method), java.lang.ref.ReferenceQueue.remove(Unknown Source), java.lang.ref.ReferenceQueue.remove(Unknown Source), java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)], TIMED_WAITING Craft Scheduler Thread - 2: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], RUNNABLE Netty Server IO #0: [sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method), sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(Unknown Source), sun.nio.ch.WindowsSelectorImpl$SubSelector.access$400(Unknown Source), sun.nio.ch.WindowsSelectorImpl.doSelect(Unknown Source), sun.nio.ch.SelectorImpl.lockAndDoSelect(Unknown Source), sun.nio.ch.SelectorImpl.select(Unknown Source), io.netty.channel.nio.SelectedSelectionKeySetSelector.select(SelectedSelectionKeySetSelector.java:62), io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:756), io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:411), io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884), java.lang.Thread.run(Unknown Source)], TIMED_WAITING Craft Scheduler Thread - 3: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], WAITING Paper Async Chunk Task Thread #4: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], TIMED_WAITING Craft Scheduler Thread - 0: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING Server thread: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), net.minecraft.server.v1_15_R1.IAsyncTaskHandler.bl(IAsyncTaskHandler.java:131), net.minecraft.server.v1_15_R1.IAsyncTaskHandler.awaitTasks(IAsyncTaskHandler.java:120), net.minecraft.server.v1_15_R1.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:405), net.minecraft.server.v1_15_R1.World.getChunkAt(World.java:325), net.minecraft.server.v1_15_R1.IWorldReader.getChunkAt(IWorldReader.java:87), net.minecraft.server.v1_15_R1.World.getChunkAt(World.java:270), net.minecraft.server.v1_15_R1.WorldProviderNormal.a(WorldProviderNormal.java:170), net.minecraft.server.v1_15_R1.WorldProviderNormal.a(WorldProviderNormal.java:149), net.minecraft.server.v1_15_R1.WorldServer.a(WorldServer.java:938), net.minecraft.server.v1_15_R1.MinecraftServer.initWorld(MinecraftServer.java:507), net.minecraft.server.v1_15_R1.MinecraftServer.a(MinecraftServer.java:458), net.minecraft.server.v1_15_R1.DedicatedServer.init(DedicatedServer.java:298), net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:908), java.lang.Thread.run(Unknown Source)], TIMED_WAITING Server Infinisleeper: [java.lang.Thread.sleep(Native Method), net.minecraft.server.v1_15_R1.DedicatedServer$1.run(DedicatedServer.java:72)], WAITING Snooper Timer: [java.lang.Object.wait(Native Method), java.lang.Object.wait(Unknown Source), java.util.TimerThread.mainLoop(Unknown Source), java.util.TimerThread.run(Unknown Source)], TIMED_WAITING Server-Worker-3: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], WAITING Server-Worker-2: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], WAITING Server-Worker-1: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], TIMED_WAITING Paper Watchdog Thread: [java.lang.Thread.sleep(Native Method), org.spigotmc.WatchdogThread.run(WatchdogThread.java:164)], TIMED_WAITING Server console handler: [java.lang.Object.wait(Native Method), org.jline.utils.NonBlockingPumpReader.wait(NonBlockingPumpReader.java:55), org.jline.utils.NonBlockingPumpReader.read(NonBlockingPumpReader.java:101), org.jline.utils.NonBlockingReader.read(NonBlockingReader.java:57), org.jline.keymap.BindingReader.readCharacter(BindingReader.java:133), org.jline.keymap.BindingReader.readBinding(BindingReader.java:110), org.jline.keymap.BindingReader.readBinding(BindingReader.java:61), org.jline.reader.impl.LineReaderImpl.doReadBinding(LineReaderImpl.java:848), org.jline.reader.impl.LineReaderImpl.readBinding(LineReaderImpl.java:868), org.jline.reader.impl.LineReaderImpl.readLine(LineReaderImpl.java:575), org.jline.reader.impl.LineReaderImpl.readLine(LineReaderImpl.java:418), net.minecrell.terminalconsole.SimpleTerminalConsole.readCommands(SimpleTerminalConsole.java:158), net.minecrell.terminalconsole.SimpleTerminalConsole.start(SimpleTerminalConsole.java:141), net.minecraft.server.v1_15_R1.DedicatedServer$2.run(DedicatedServer.java:90)], WAITING Paper Async Chunk Task Thread #5: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)],} + + Force Loaded Chunks: { world: {},} + Player Count: 0 / 20; [] + Data Packs: vanilla, file/bukkit + Is Modded: Definitely; Server brand changed to 'Paper' + Type: Dedicated Server (map_server.txt) \ No newline at end of file diff --git a/test-server/crash-reports/crash-2020-04-21_20.30.37-server.txt b/test-server/crash-reports/crash-2020-04-21_20.30.37-server.txt new file mode 100644 index 0000000..50abd2e --- /dev/null +++ b/test-server/crash-reports/crash-2020-04-21_20.30.37-server.txt @@ -0,0 +1,127 @@ +---- Minecraft Crash Report ---- +// There are four lights! + +Time: 21/04/20 8:30 PM +Description: Exception generating new chunk + +java.lang.NullPointerException: Exception generating new chunk + at ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch$Node.distanceToGoal(DepthFirstSearch.java:144) + at ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch$Node.compareTo(DepthFirstSearch.java:140) + at ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch$Node.compareTo(DepthFirstSearch.java:1) + at java.util.HashMap.compareComparables(Unknown Source) + at java.util.HashMap$TreeNode.treeify(Unknown Source) + at java.util.HashMap.treeifyBin(Unknown Source) + at java.util.HashMap.putVal(Unknown Source) + at java.util.HashMap.put(Unknown Source) + at java.util.HashSet.add(Unknown Source) + at ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch.findTarget(DepthFirstSearch.java:110) + at ca.recrown.islandsurvivalcraft.world.generation.BiomePerIslandGenerator.GenerateBiome(BiomePerIslandGenerator.java:61) + at ca.recrown.islandsurvivalcraft.world.IslandWorldGenerator.GenerateChunk(IslandWorldGenerator.java:49) + at ca.recrown.islandsurvivalcraft.world.IslandSurvivalCraftChunkGenerator.generateChunkData(IslandSurvivalCraftChunkGenerator.java:24) + at org.bukkit.craftbukkit.v1_15_R1.generator.CustomChunkGenerator.buildBase(CustomChunkGenerator.java:137) + at net.minecraft.server.v1_15_R1.ChunkStatus.lambda$static$6(ChunkStatus.java:51) + at net.minecraft.server.v1_15_R1.ChunkStatus$d.doWork(ChunkStatus.java:243) + at net.minecraft.server.v1_15_R1.ChunkStatus.a(ChunkStatus.java:187) + at net.minecraft.server.v1_15_R1.PlayerChunkMap.lambda$null$23(PlayerChunkMap.java:836) + at com.mojang.datafixers.util.Either$Left.map(Either.java:38) + at net.minecraft.server.v1_15_R1.PlayerChunkMap.lambda$b$25(PlayerChunkMap.java:834) + at java.util.concurrent.CompletableFuture.uniCompose(Unknown Source) + at java.util.concurrent.CompletableFuture$UniCompose.tryFire(Unknown Source) + at java.util.concurrent.CompletableFuture$Completion.run(Unknown Source) + at net.minecraft.server.v1_15_R1.ChunkTaskQueueSorter.b(SourceFile:58) + at net.minecraft.server.v1_15_R1.ThreadedMailbox.e(ThreadedMailbox.java:78) + at net.minecraft.server.v1_15_R1.ThreadedMailbox.a(ThreadedMailbox.java:120) + at net.minecraft.server.v1_15_R1.ThreadedMailbox.run(ThreadedMailbox.java:86) + at java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(Unknown Source) + at java.util.concurrent.ForkJoinTask.doExec(Unknown Source) + at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(Unknown Source) + at java.util.concurrent.ForkJoinPool.runWorker(Unknown Source) + at java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source) + + +A detailed walkthrough of the error, its code path and all known details is as follows: +--------------------------------------------------------------------------------------- + +-- Head -- +Thread: Server thread +Stacktrace: + at ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch$Node.distanceToGoal(DepthFirstSearch.java:144) + at ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch$Node.compareTo(DepthFirstSearch.java:140) + at ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch$Node.compareTo(DepthFirstSearch.java:1) + at java.util.HashMap.compareComparables(Unknown Source) + at java.util.HashMap$TreeNode.treeify(Unknown Source) + at java.util.HashMap.treeifyBin(Unknown Source) + at java.util.HashMap.putVal(Unknown Source) + at java.util.HashMap.put(Unknown Source) + at java.util.HashSet.add(Unknown Source) + at ca.recrown.islandsurvivalcraft.pathfinding.DepthFirstSearch.findTarget(DepthFirstSearch.java:110) + at ca.recrown.islandsurvivalcraft.world.generation.BiomePerIslandGenerator.GenerateBiome(BiomePerIslandGenerator.java:61) + at ca.recrown.islandsurvivalcraft.world.IslandWorldGenerator.GenerateChunk(IslandWorldGenerator.java:49) + at ca.recrown.islandsurvivalcraft.world.IslandSurvivalCraftChunkGenerator.generateChunkData(IslandSurvivalCraftChunkGenerator.java:24) + at org.bukkit.craftbukkit.v1_15_R1.generator.CustomChunkGenerator.buildBase(CustomChunkGenerator.java:137) + at net.minecraft.server.v1_15_R1.ChunkStatus.lambda$static$6(ChunkStatus.java:51) + at net.minecraft.server.v1_15_R1.ChunkStatus$d.doWork(ChunkStatus.java:243) + at net.minecraft.server.v1_15_R1.ChunkStatus.a(ChunkStatus.java:187) + +-- Chunk to be generated -- +Details: + Location: -12,-8 + Position hash: -30064771084 + Generator: org.bukkit.craftbukkit.v1_15_R1.generator.CustomChunkGenerator@18c45b2c +Stacktrace: + at net.minecraft.server.v1_15_R1.PlayerChunkMap.lambda$null$23(PlayerChunkMap.java:836) + at com.mojang.datafixers.util.Either$Left.map(Either.java:38) + at net.minecraft.server.v1_15_R1.PlayerChunkMap.lambda$b$25(PlayerChunkMap.java:834) + at java.util.concurrent.CompletableFuture.uniCompose(Unknown Source) + at java.util.concurrent.CompletableFuture$UniCompose.tryFire(Unknown Source) + at java.util.concurrent.CompletableFuture$Completion.run(Unknown Source) + at net.minecraft.server.v1_15_R1.ChunkTaskQueueSorter.b(SourceFile:58) + at net.minecraft.server.v1_15_R1.ThreadedMailbox.e(ThreadedMailbox.java:78) + at net.minecraft.server.v1_15_R1.ThreadedMailbox.a(ThreadedMailbox.java:120) + at net.minecraft.server.v1_15_R1.ThreadedMailbox.run(ThreadedMailbox.java:86) + +-- Affected level -- +Details: + All players: 0 total; [] + Chunk stats: ServerChunkCache: 529 + Level dimension: minecraft:overworld + Level name: world + Level seed: 1958093391717230933 + Level generator: ID 00 - default, ver 1. Features enabled: true + Level generator options: {} + Level spawn location: World: (-184,64,-120), Chunk: (at 8,4,8 in -12,-8; contains blocks -192,0,-128 to -177,255,-113), Region: (-1,-1; contains chunks -32,-32 to -1,-1, blocks -512,0,-512 to -1,255,-1) + Level time: 0 game time, 0 day time + Known server brands: + Level was modded: false + Level storage version: 0x00000 - Unknown? + Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false) + Level game mode: Game mode: survival (ID 0). Hardcore: false. Cheats: false +Stacktrace: + at net.minecraft.server.v1_15_R1.MinecraftServer.initWorld(MinecraftServer.java:517) + at net.minecraft.server.v1_15_R1.MinecraftServer.a(MinecraftServer.java:458) + at net.minecraft.server.v1_15_R1.DedicatedServer.init(DedicatedServer.java:298) + at net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:908) + at java.lang.Thread.run(Unknown Source) + +-- System Details -- +Details: + Minecraft Version: 1.15.2 + Minecraft Version ID: 1.15.2 + Operating System: Windows 10 (amd64) version 10.0 + Java Version: 1.8.0_241, Oracle Corporation + Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation + Memory: 384442320 bytes (366 MB) / 694157312 bytes (662 MB) up to 954728448 bytes (910 MB) + CPUs: 8 + JVM Flags: 2 total; -Xms512M -Xmx1G + CraftBukkit Information: + Running: Paper version git-Paper-195 (MC: 1.15.2) (Implementing API version 1.15.2-R0.1-SNAPSHOT) true + Plugins: { WorldEdit v7.1.0;8e55131 com.sk89q.worldedit.bukkit.WorldEditPlugin [], WorldGeneratorApi v0.4 nl.rutgerkok.worldgeneratorapi.internal.WorldGeneratorApiImpl [Rutger Kok], WorldGuard v7.0.2-SNAPSHOT;bf2593e com.sk89q.worldguard.bukkit.WorldGuardPlugin [], IslandSurvivalCraft v1.0.0 ca.recrown.islandsurvivalcraft.IslandSurvivalCraft [],} + Warnings: DEFAULT + Reload Count: 0 + Threads: { WAITING Paper Async Chunk Urgent Task Thread: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], WAITING Server-Worker-1: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], WAITING Reference Handler: [java.lang.Object.wait(Native Method), java.lang.Object.wait(Unknown Source), java.lang.ref.Reference.tryHandlePending(Unknown Source), java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)], WAITING Snooper Timer: [java.lang.Object.wait(Native Method), java.lang.Object.wait(Unknown Source), java.util.TimerThread.mainLoop(Unknown Source), java.util.TimerThread.run(Unknown Source)], TIMED_WAITING Timer-0: [java.lang.Object.wait(Native Method), java.util.TimerThread.mainLoop(Unknown Source), java.util.TimerThread.run(Unknown Source)], TIMED_WAITING Server thread: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), net.minecraft.server.v1_15_R1.IAsyncTaskHandler.bl(IAsyncTaskHandler.java:131), net.minecraft.server.v1_15_R1.IAsyncTaskHandler.awaitTasks(IAsyncTaskHandler.java:120), net.minecraft.server.v1_15_R1.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:405), net.minecraft.server.v1_15_R1.World.getChunkAt(World.java:325), net.minecraft.server.v1_15_R1.IWorldReader.getChunkAt(IWorldReader.java:87), net.minecraft.server.v1_15_R1.World.getChunkAt(World.java:270), net.minecraft.server.v1_15_R1.WorldProviderNormal.a(WorldProviderNormal.java:170), net.minecraft.server.v1_15_R1.WorldProviderNormal.a(WorldProviderNormal.java:149), net.minecraft.server.v1_15_R1.WorldServer.a(WorldServer.java:938), net.minecraft.server.v1_15_R1.MinecraftServer.initWorld(MinecraftServer.java:507), net.minecraft.server.v1_15_R1.MinecraftServer.a(MinecraftServer.java:458), net.minecraft.server.v1_15_R1.DedicatedServer.init(DedicatedServer.java:298), net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:908), java.lang.Thread.run(Unknown Source)], TIMED_WAITING Timer-1: [java.lang.Object.wait(Native Method), java.util.TimerThread.mainLoop(Unknown Source), java.util.TimerThread.run(Unknown Source)], WAITING Server-Worker-4: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], WAITING Server-Worker-6: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], WAITING Paper Async Chunk Task Thread #6: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], TIMED_WAITING Log4j2-TF-1-AsyncLogger[AsyncContext@18b4aac2]-1: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source), com.lmax.disruptor.TimeoutBlockingWaitStrategy.waitFor(TimeoutBlockingWaitStrategy.java:38), com.lmax.disruptor.ProcessingSequenceBarrier.waitFor(ProcessingSequenceBarrier.java:56), com.lmax.disruptor.BatchEventProcessor.processEvents(BatchEventProcessor.java:159), com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:125), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], RUNNABLE Netty Server IO #0: [sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method), sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(Unknown Source), sun.nio.ch.WindowsSelectorImpl$SubSelector.access$400(Unknown Source), sun.nio.ch.WindowsSelectorImpl.doSelect(Unknown Source), sun.nio.ch.SelectorImpl.lockAndDoSelect(Unknown Source), sun.nio.ch.SelectorImpl.select(Unknown Source), io.netty.channel.nio.SelectedSelectionKeySetSelector.select(SelectedSelectionKeySetSelector.java:62), io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:756), io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:411), io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884), java.lang.Thread.run(Unknown Source)], TIMED_WAITING Server console handler: [java.lang.Object.wait(Native Method), org.jline.utils.NonBlockingPumpReader.wait(NonBlockingPumpReader.java:55), org.jline.utils.NonBlockingPumpReader.read(NonBlockingPumpReader.java:101), org.jline.utils.NonBlockingReader.read(NonBlockingReader.java:57), org.jline.keymap.BindingReader.readCharacter(BindingReader.java:133), org.jline.keymap.BindingReader.readBinding(BindingReader.java:110), org.jline.keymap.BindingReader.readBinding(BindingReader.java:61), org.jline.reader.impl.LineReaderImpl.doReadBinding(LineReaderImpl.java:848), org.jline.reader.impl.LineReaderImpl.readBinding(LineReaderImpl.java:868), org.jline.reader.impl.LineReaderImpl.readLine(LineReaderImpl.java:575), org.jline.reader.impl.LineReaderImpl.readLine(LineReaderImpl.java:418), net.minecrell.terminalconsole.SimpleTerminalConsole.readCommands(SimpleTerminalConsole.java:158), net.minecrell.terminalconsole.SimpleTerminalConsole.start(SimpleTerminalConsole.java:141), net.minecraft.server.v1_15_R1.DedicatedServer$2.run(DedicatedServer.java:90)], WAITING Paper Async Task Handler Thread - 0: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source), java.util.concurrent.LinkedBlockingQueue.take(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], RUNNABLE WindowsStreamPump: [org.fusesource.jansi.internal.Kernel32.WaitForSingleObject(Native Method), org.fusesource.jansi.internal.WindowsSupport.readConsoleInput(WindowsSupport.java:97), org.jline.terminal.impl.jansi.win.JansiWinSysTerminal.processConsoleInput(JansiWinSysTerminal.java:112), org.jline.terminal.impl.AbstractWindowsTerminal.pump(AbstractWindowsTerminal.java:458), org.jline.terminal.impl.AbstractWindowsTerminal$$Lambda$12/1457263953.run(Unknown Source), java.lang.Thread.run(Unknown Source)], RUNNABLE DestroyJavaVM: [], TIMED_WAITING WorldEdit Session Manager: [java.lang.Object.wait(Native Method), java.util.TimerThread.mainLoop(Unknown Source), java.util.TimerThread.run(Unknown Source)], TIMED_WAITING Craft Scheduler Thread - 0: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], RUNNABLE Server-Worker-5: [java.lang.Thread.dumpThreads(Native Method), java.lang.Thread.getAllStackTraces(Unknown Source), org.bukkit.craftbukkit.v1_15_R1.CraftCrashReport.call(CraftCrashReport.java:33), net.minecraft.server.v1_15_R1.CrashReportSystemDetails.a(SourceFile:79), net.minecraft.server.v1_15_R1.CrashReport.i(CrashReport.java:71), net.minecraft.server.v1_15_R1.CrashReport.(CrashReport.java:35), net.minecraft.server.v1_15_R1.CrashReport.a(CrashReport.java:270), net.minecraft.server.v1_15_R1.PlayerChunkMap.lambda$null$23(PlayerChunkMap.java:843), net.minecraft.server.v1_15_R1.PlayerChunkMap$$Lambda$3001/734324597.apply(Unknown Source), com.mojang.datafixers.util.Either$Left.map(Either.java:38), net.minecraft.server.v1_15_R1.PlayerChunkMap.lambda$b$25(PlayerChunkMap.java:834), net.minecraft.server.v1_15_R1.PlayerChunkMap$$Lambda$2987/1408627542.apply(Unknown Source), java.util.concurrent.CompletableFuture.uniCompose(Unknown Source), java.util.concurrent.CompletableFuture$UniCompose.tryFire(Unknown Source), java.util.concurrent.CompletableFuture$Completion.run(Unknown Source), net.minecraft.server.v1_15_R1.ChunkTaskQueueSorter.b(SourceFile:58), net.minecraft.server.v1_15_R1.ChunkTaskQueueSorter$$Lambda$3000/1478265604.run(Unknown Source), net.minecraft.server.v1_15_R1.ThreadedMailbox.e(ThreadedMailbox.java:78), net.minecraft.server.v1_15_R1.ThreadedMailbox.a(ThreadedMailbox.java:120), net.minecraft.server.v1_15_R1.ThreadedMailbox.run(ThreadedMailbox.java:86), java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(Unknown Source), java.util.concurrent.ForkJoinTask.doExec(Unknown Source), java.util.concurrent.ForkJoinPool$WorkQueue.runTask(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], TIMED_WAITING Craft Scheduler Thread - 2: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], WAITING Server-Worker-2: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], RUNNABLE Attach Listener: [], TIMED_WAITING Paper Watchdog Thread: [java.lang.Thread.sleep(Native Method), org.spigotmc.WatchdogThread.run(WatchdogThread.java:164)], TIMED_WAITING Server Infinisleeper: [java.lang.Thread.sleep(Native Method), net.minecraft.server.v1_15_R1.DedicatedServer$1.run(DedicatedServer.java:72)], WAITING Paper Async Chunk Task Thread #2: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], TIMED_WAITING Craft Scheduler Thread - 1: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], WAITING Paper Async Chunk Task Thread #3: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], TIMED_WAITING Craft Scheduler Thread - 3: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(Unknown Source), java.util.concurrent.SynchronousQueue$TransferStack.transfer(Unknown Source), java.util.concurrent.SynchronousQueue.poll(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], WAITING Paper Async Chunk Task Thread #0: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], RUNNABLE Signal Dispatcher: [], TIMED_WAITING ObjectCleanerThread: [java.lang.Object.wait(Native Method), java.lang.ref.ReferenceQueue.remove(Unknown Source), io.netty.util.internal.ObjectCleaner$1.run(ObjectCleaner.java:54), io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30), java.lang.Thread.run(Unknown Source)], WAITING Paper Async Chunk Task Thread #1: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], WAITING Paper Async Chunk Task Thread #4: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], WAITING Paper RegionFile IO Thread: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], WAITING Server-Worker-3: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], WAITING Finalizer: [java.lang.Object.wait(Native Method), java.lang.ref.ReferenceQueue.remove(Unknown Source), java.lang.ref.ReferenceQueue.remove(Unknown Source), java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)], WAITING Paper Async Chunk Task Thread #5: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)],} + + Force Loaded Chunks: { world: {},} + Player Count: 0 / 20; [] + Data Packs: vanilla, file/bukkit + Is Modded: Definitely; Server brand changed to 'Paper' + Type: Dedicated Server (map_server.txt) \ No newline at end of file diff --git a/test-server/crash-reports/crash-2020-04-21_20.36.24-server.txt b/test-server/crash-reports/crash-2020-04-21_20.36.24-server.txt new file mode 100644 index 0000000..789ae7e --- /dev/null +++ b/test-server/crash-reports/crash-2020-04-21_20.36.24-server.txt @@ -0,0 +1,110 @@ +---- Minecraft Crash Report ---- +// Don't do that. + +Time: 21/04/20 8:36 PM +Description: Exception generating new chunk + +java.lang.OutOfMemoryError: GC overhead limit exceeded + at java.lang.Long.valueOf(Unknown Source) + at com.destroystokyo.paper.io.PaperFileIOThread.getPendingWrite(PaperFileIOThread.java:155) + at net.minecraft.server.v1_15_R1.PlayerChunkMap.getChunkStatusOnDisk(PlayerChunkMap.java:1297) + at org.bukkit.craftbukkit.v1_15_R1.CraftWorld.isChunkGenerated(CraftWorld.java:430) + at org.bukkit.craftbukkit.v1_15_R1.CraftWorld.lambda$isChunkGenerated$2(CraftWorld.java:419) + at org.bukkit.craftbukkit.v1_15_R1.CraftWorld$$Lambda$3022/832167034.get(Unknown Source) + at java.util.concurrent.CompletableFuture$AsyncSupply.run(Unknown Source) + at net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeTask(IAsyncTaskHandler.java:136) + at net.minecraft.server.v1_15_R1.ChunkProviderServer$a.executeTask(ChunkProviderServer.java:920) + at net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeNext(IAsyncTaskHandler.java:109) + at net.minecraft.server.v1_15_R1.ChunkProviderServer$a.executeNext(ChunkProviderServer.java:966) + at net.minecraft.server.v1_15_R1.IAsyncTaskHandler.awaitTasks(IAsyncTaskHandler.java:119) + at net.minecraft.server.v1_15_R1.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:405) + at net.minecraft.server.v1_15_R1.World.getChunkAt(World.java:325) + at net.minecraft.server.v1_15_R1.IWorldReader.getChunkAt(IWorldReader.java:87) + at net.minecraft.server.v1_15_R1.World.getChunkAt(World.java:270) + at net.minecraft.server.v1_15_R1.WorldProviderNormal.a(WorldProviderNormal.java:170) + at net.minecraft.server.v1_15_R1.WorldProviderNormal.a(WorldProviderNormal.java:149) + at net.minecraft.server.v1_15_R1.WorldServer.a(WorldServer.java:938) + at net.minecraft.server.v1_15_R1.MinecraftServer.initWorld(MinecraftServer.java:507) + at net.minecraft.server.v1_15_R1.MinecraftServer.a(MinecraftServer.java:458) + at net.minecraft.server.v1_15_R1.DedicatedServer.init(DedicatedServer.java:298) + at net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:908) + at java.lang.Thread.run(Unknown Source) + + +A detailed walkthrough of the error, its code path and all known details is as follows: +--------------------------------------------------------------------------------------- + +-- Head -- +Thread: Server thread +Stacktrace: + at java.lang.Long.valueOf(Unknown Source) + at com.destroystokyo.paper.io.PaperFileIOThread.getPendingWrite(PaperFileIOThread.java:155) + at net.minecraft.server.v1_15_R1.PlayerChunkMap.getChunkStatusOnDisk(PlayerChunkMap.java:1297) + at org.bukkit.craftbukkit.v1_15_R1.CraftWorld.isChunkGenerated(CraftWorld.java:430) + at org.bukkit.craftbukkit.v1_15_R1.CraftWorld.lambda$isChunkGenerated$2(CraftWorld.java:419) + at org.bukkit.craftbukkit.v1_15_R1.CraftWorld$$Lambda$3022/832167034.get(Unknown Source) + at java.util.concurrent.CompletableFuture$AsyncSupply.run(Unknown Source) + at net.minecraft.server.v1_15_R1.IAsyncTaskHandler.executeTask(IAsyncTaskHandler.java:136) + at net.minecraft.server.v1_15_R1.ChunkProviderServer$a.executeTask(ChunkProviderServer.java:920) + +-- Chunk to be generated -- +Details: + Location: -7,-16 + Position hash: -64424509447 + Generator: org.bukkit.craftbukkit.v1_15_R1.generator.CustomChunkGenerator@44b8dbf9 +Stacktrace: + at net.minecraft.server.v1_15_R1.PlayerChunkMap.lambda$null$23(PlayerChunkMap.java:844) + at com.mojang.datafixers.util.Either$Left.map(Either.java:38) + at net.minecraft.server.v1_15_R1.PlayerChunkMap.lambda$b$25(PlayerChunkMap.java:834) + at java.util.concurrent.CompletableFuture.uniCompose(Unknown Source) + at java.util.concurrent.CompletableFuture$UniCompose.tryFire(Unknown Source) + at java.util.concurrent.CompletableFuture$Completion.run(Unknown Source) + at net.minecraft.server.v1_15_R1.ChunkTaskQueueSorter.b(SourceFile:58) + at net.minecraft.server.v1_15_R1.ThreadedMailbox.e(ThreadedMailbox.java:78) + at net.minecraft.server.v1_15_R1.ThreadedMailbox.a(ThreadedMailbox.java:120) + at net.minecraft.server.v1_15_R1.ThreadedMailbox.run(ThreadedMailbox.java:86) + at java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(Unknown Source) + at java.util.concurrent.ForkJoinTask.doExec(Unknown Source) + at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(Unknown Source) + at java.util.concurrent.ForkJoinPool.runWorker(Unknown Source) + at java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source) + +-- Affected level -- +Details: + All players: 0 total; [] + Chunk stats: ServerChunkCache: 529 + Level dimension: minecraft:overworld + Level name: world + Level seed: 6773576814985582412 + Level generator: ID 00 - default, ver 1. Features enabled: true + Level generator options: {} + Level spawn location: World: (-104,64,-248), Chunk: (at 8,4,8 in -7,-16; contains blocks -112,0,-256 to -97,255,-241), Region: (-1,-1; contains chunks -32,-32 to -1,-1, blocks -512,0,-512 to -1,255,-1) + Level time: 0 game time, 0 day time + Known server brands: + Level was modded: false + Level storage version: 0x00000 - Unknown? + Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false) + Level game mode: Game mode: survival (ID 0). Hardcore: false. Cheats: false + +-- System Details -- +Details: + Minecraft Version: 1.15.2 + Minecraft Version ID: 1.15.2 + Operating System: Windows 10 (amd64) version 10.0 + Java Version: 1.8.0_241, Oracle Corporation + Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation + Memory: 120559768 bytes (114 MB) / 954728448 bytes (910 MB) up to 954728448 bytes (910 MB) + CPUs: 8 + JVM Flags: 2 total; -Xms512M -Xmx1G + CraftBukkit Information: + Running: Paper version git-Paper-195 (MC: 1.15.2) (Implementing API version 1.15.2-R0.1-SNAPSHOT) true + Plugins: { WorldEdit v7.1.0;8e55131 com.sk89q.worldedit.bukkit.WorldEditPlugin [], WorldGeneratorApi v0.4 nl.rutgerkok.worldgeneratorapi.internal.WorldGeneratorApiImpl [Rutger Kok], WorldGuard v7.0.2-SNAPSHOT;bf2593e com.sk89q.worldguard.bukkit.WorldGuardPlugin [], IslandSurvivalCraft v1.0.0 ca.recrown.islandsurvivalcraft.IslandSurvivalCraft [],} + Warnings: DEFAULT + Reload Count: 0 + Threads: { WAITING Finalizer: [java.lang.Object.wait(Native Method), java.lang.ref.ReferenceQueue.remove(Unknown Source), java.lang.ref.ReferenceQueue.remove(Unknown Source), java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)], TIMED_WAITING Server Infinisleeper: [java.lang.Thread.sleep(Native Method), net.minecraft.server.v1_15_R1.DedicatedServer$1.run(DedicatedServer.java:72)], TIMED_WAITING ObjectCleanerThread: [java.lang.Object.wait(Native Method), java.lang.ref.ReferenceQueue.remove(Unknown Source), io.netty.util.internal.ObjectCleaner$1.run(ObjectCleaner.java:54), io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30), java.lang.Thread.run(Unknown Source)], TIMED_WAITING Server-Worker-4: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], RUNNABLE Server-Worker-1: [java.lang.Thread.dumpThreads(Native Method), java.lang.Thread.getAllStackTraces(Unknown Source), org.bukkit.craftbukkit.v1_15_R1.CraftCrashReport.call(CraftCrashReport.java:33), net.minecraft.server.v1_15_R1.CrashReportSystemDetails.a(SourceFile:79), net.minecraft.server.v1_15_R1.CrashReport.i(CrashReport.java:71), net.minecraft.server.v1_15_R1.CrashReport.(CrashReport.java:35), net.minecraft.server.v1_15_R1.CrashReport.a(CrashReport.java:270), net.minecraft.server.v1_15_R1.PlayerChunkMap.lambda$null$23(PlayerChunkMap.java:843), net.minecraft.server.v1_15_R1.PlayerChunkMap$$Lambda$3017/481480684.apply(Unknown Source), com.mojang.datafixers.util.Either$Left.map(Either.java:38), net.minecraft.server.v1_15_R1.PlayerChunkMap.lambda$b$25(PlayerChunkMap.java:834), net.minecraft.server.v1_15_R1.PlayerChunkMap$$Lambda$3002/1851150231.apply(Unknown Source), java.util.concurrent.CompletableFuture.uniCompose(Unknown Source), java.util.concurrent.CompletableFuture$UniCompose.tryFire(Unknown Source), java.util.concurrent.CompletableFuture$Completion.run(Unknown Source), net.minecraft.server.v1_15_R1.ChunkTaskQueueSorter.b(SourceFile:58), net.minecraft.server.v1_15_R1.ChunkTaskQueueSorter$$Lambda$3015/1606259377.run(Unknown Source), net.minecraft.server.v1_15_R1.ThreadedMailbox.e(ThreadedMailbox.java:78), net.minecraft.server.v1_15_R1.ThreadedMailbox.a(ThreadedMailbox.java:120), net.minecraft.server.v1_15_R1.ThreadedMailbox.run(ThreadedMailbox.java:86), java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(Unknown Source), java.util.concurrent.ForkJoinTask.doExec(Unknown Source), java.util.concurrent.ForkJoinPool$WorkQueue.runTask(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], WAITING Paper Async Task Handler Thread - 0: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source), java.util.concurrent.LinkedBlockingQueue.take(Unknown Source), java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], TIMED_WAITING Timer-0: [java.lang.Object.wait(Native Method), java.util.TimerThread.mainLoop(Unknown Source), java.util.TimerThread.run(Unknown Source)], WAITING Paper Async Chunk Task Thread #3: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], TIMED_WAITING WorldEdit Session Manager: [java.lang.Object.wait(Native Method), java.util.TimerThread.mainLoop(Unknown Source), java.util.TimerThread.run(Unknown Source)], WAITING Paper Async Chunk Urgent Task Thread: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], WAITING Snooper Timer: [java.lang.Object.wait(Native Method), java.lang.Object.wait(Unknown Source), java.util.TimerThread.mainLoop(Unknown Source), java.util.TimerThread.run(Unknown Source)], WAITING Reference Handler: [java.lang.Object.wait(Native Method), java.lang.Object.wait(Unknown Source), java.lang.ref.Reference.tryHandlePending(Unknown Source), java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)], TIMED_WAITING Server thread: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), net.minecraft.server.v1_15_R1.IAsyncTaskHandler.bl(IAsyncTaskHandler.java:131), net.minecraft.server.v1_15_R1.IAsyncTaskHandler.awaitTasks(IAsyncTaskHandler.java:120), net.minecraft.server.v1_15_R1.ChunkProviderServer.getChunkAt(ChunkProviderServer.java:405), net.minecraft.server.v1_15_R1.World.getChunkAt(World.java:325), net.minecraft.server.v1_15_R1.IWorldReader.getChunkAt(IWorldReader.java:87), net.minecraft.server.v1_15_R1.World.getChunkAt(World.java:270), net.minecraft.server.v1_15_R1.WorldProviderNormal.a(WorldProviderNormal.java:170), net.minecraft.server.v1_15_R1.WorldProviderNormal.a(WorldProviderNormal.java:149), net.minecraft.server.v1_15_R1.WorldServer.a(WorldServer.java:938), net.minecraft.server.v1_15_R1.MinecraftServer.initWorld(MinecraftServer.java:507), net.minecraft.server.v1_15_R1.MinecraftServer.a(MinecraftServer.java:458), net.minecraft.server.v1_15_R1.DedicatedServer.init(DedicatedServer.java:298), net.minecraft.server.v1_15_R1.MinecraftServer.run(MinecraftServer.java:908), java.lang.Thread.run(Unknown Source)], TIMED_WAITING Timer-1: [java.lang.Object.wait(Native Method), java.util.TimerThread.mainLoop(Unknown Source), java.util.TimerThread.run(Unknown Source)], WAITING Paper Async Chunk Task Thread #5: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], WAITING Paper Async Chunk Task Thread #1: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], RUNNABLE DestroyJavaVM: [], WAITING Server-Worker-2: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], RUNNABLE WindowsStreamPump: [org.fusesource.jansi.internal.Kernel32.WaitForSingleObject(Native Method), org.fusesource.jansi.internal.WindowsSupport.readConsoleInput(WindowsSupport.java:97), org.jline.terminal.impl.jansi.win.JansiWinSysTerminal.processConsoleInput(JansiWinSysTerminal.java:112), org.jline.terminal.impl.AbstractWindowsTerminal.pump(AbstractWindowsTerminal.java:458), org.jline.terminal.impl.AbstractWindowsTerminal$$Lambda$12/1457263953.run(Unknown Source), java.lang.Thread.run(Unknown Source)], RUNNABLE Netty Server IO #0: [sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method), sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(Unknown Source), sun.nio.ch.WindowsSelectorImpl$SubSelector.access$400(Unknown Source), sun.nio.ch.WindowsSelectorImpl.doSelect(Unknown Source), sun.nio.ch.SelectorImpl.lockAndDoSelect(Unknown Source), sun.nio.ch.SelectorImpl.select(Unknown Source), io.netty.channel.nio.SelectedSelectionKeySetSelector.select(SelectedSelectionKeySetSelector.java:62), io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:756), io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:411), io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884), java.lang.Thread.run(Unknown Source)], WAITING Server-Worker-3: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], TIMED_WAITING Server console handler: [java.lang.Object.wait(Native Method), org.jline.utils.NonBlockingPumpReader.wait(NonBlockingPumpReader.java:55), org.jline.utils.NonBlockingPumpReader.read(NonBlockingPumpReader.java:101), org.jline.utils.NonBlockingReader.read(NonBlockingReader.java:57), org.jline.keymap.BindingReader.readCharacter(BindingReader.java:133), org.jline.keymap.BindingReader.readBinding(BindingReader.java:110), org.jline.keymap.BindingReader.readBinding(BindingReader.java:61), org.jline.reader.impl.LineReaderImpl.doReadBinding(LineReaderImpl.java:848), org.jline.reader.impl.LineReaderImpl.readBinding(LineReaderImpl.java:868), org.jline.reader.impl.LineReaderImpl.readLine(LineReaderImpl.java:575), org.jline.reader.impl.LineReaderImpl.readLine(LineReaderImpl.java:418), net.minecrell.terminalconsole.SimpleTerminalConsole.readCommands(SimpleTerminalConsole.java:158), net.minecrell.terminalconsole.SimpleTerminalConsole.start(SimpleTerminalConsole.java:141), net.minecraft.server.v1_15_R1.DedicatedServer$2.run(DedicatedServer.java:90)], WAITING Paper Async Chunk Task Thread #6: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], WAITING Paper Async Chunk Task Thread #2: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], WAITING Paper RegionFile IO Thread: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], WAITING Server-Worker-6: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.ForkJoinPool.awaitWork(Unknown Source), java.util.concurrent.ForkJoinPool.runWorker(Unknown Source), java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)], WAITING Paper Async Chunk Task Thread #0: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], RUNNABLE Attach Listener: [], WAITING Paper Async Chunk Task Thread #4: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.park(Unknown Source), com.destroystokyo.paper.io.QueueExecutorThread.run(QueueExecutorThread.java:84)], TIMED_WAITING Paper Watchdog Thread: [java.lang.Thread.sleep(Native Method), org.spigotmc.WatchdogThread.run(WatchdogThread.java:164)], TIMED_WAITING Log4j2-TF-1-AsyncLogger[AsyncContext@18b4aac2]-1: [sun.misc.Unsafe.park(Native Method), java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source), java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source), com.lmax.disruptor.TimeoutBlockingWaitStrategy.waitFor(TimeoutBlockingWaitStrategy.java:38), com.lmax.disruptor.ProcessingSequenceBarrier.waitFor(ProcessingSequenceBarrier.java:56), com.lmax.disruptor.BatchEventProcessor.processEvents(BatchEventProcessor.java:159), com.lmax.disruptor.BatchEventProcessor.run(BatchEventProcessor.java:125), java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source), java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source), java.lang.Thread.run(Unknown Source)], RUNNABLE Signal Dispatcher: [],} + + Force Loaded Chunks: { world: {},} + Player Count: 0 / 20; [] + Data Packs: vanilla, file/bukkit + Is Modded: Definitely; Server brand changed to 'Paper' + Type: Dedicated Server (map_server.txt) \ No newline at end of file diff --git a/test-server/server.properties b/test-server/server.properties index 7609f29..ac48c4e 100644 --- a/test-server/server.properties +++ b/test-server/server.properties @@ -1,5 +1,5 @@ #Minecraft server properties -#Sun Apr 19 03:21:17 CDT 2020 +#Tue Apr 21 20:37:39 CDT 2020 spawn-protection=16 max-tick-time=60000 query.port=25565 diff --git a/test-server/start.bat b/test-server/start.bat index 980ed97..5641aaf 100644 --- a/test-server/start.bat +++ b/test-server/start.bat @@ -4,5 +4,5 @@ del /s /f /q world >nul 2>&1 ECHO "Attempting to copy plugin jar to plugins folder" COPY "..\target\IslandSurvivalCraft-1.0.0.jar" "plugins\IslandSurvivalCraft-1.0.0.jar" >nul ECHO "Starting server..." -java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=4711 -Xms512M -Xmx1G -jar paper-195.jar nogui +java -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=25566 -Xms512M -Xmx1G -jar paper-195.jar nogui pause \ No newline at end of file diff --git a/test-server/start.sh b/test-server/start.sh index 9ccc0e4..6f1695a 100644 --- a/test-server/start.sh +++ b/test-server/start.sh @@ -3,5 +3,5 @@ rm -rf world echo "Attempting to copy plugin jar to plugins folder" cp "..\target\IslandSurvivalCraft-1.0.0.jar" "plugins\IslandSurvivalCraft-1.0.0.jar" echo "Starting server..." -java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=4711 -Xms512M -Xmx1G -jar paper-195.jar nogui +java -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=25566 -Xms512M -Xmx1G -jar paper-195.jar nogui pause \ No newline at end of file