From 9764b58089dcc12f2e7706767ec14e6db09ae8e0 Mon Sep 17 00:00:00 2001 From: CraftBukkit/Spigot Date: Wed, 12 May 2021 17:20:27 +1000 Subject: [PATCH] #831: Reload unloaded main worlds correctly By: Kermina Awad --- .../main/java/org/bukkit/craftbukkit/CraftServer.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/paper-server/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/paper-server/src/main/java/org/bukkit/craftbukkit/CraftServer.java index 985b7115f8..030d933475 100644 --- a/paper-server/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/paper-server/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1031,7 +1031,15 @@ public final class CraftServer implements Server { chunkgenerator = worlddimension.c(); } - ResourceKey worldKey = ResourceKey.a(IRegistry.L, new MinecraftKey(name.toLowerCase(java.util.Locale.ENGLISH))); + ResourceKey worldKey; + String levelName = this.getServer().getDedicatedServerProperties().levelName; + if (name.equals(levelName + "_nether")) { + worldKey = net.minecraft.world.level.World.THE_NETHER; + } else if (name.equals(levelName + "_the_end")) { + worldKey = net.minecraft.world.level.World.THE_END; + } else { + worldKey = ResourceKey.a(IRegistry.L, new MinecraftKey(name.toLowerCase(java.util.Locale.ENGLISH))); + } WorldServer internal = (WorldServer) new WorldServer(console, console.executorService, worldSession, worlddata, worldKey, dimensionmanager, getServer().worldLoadListenerFactory.create(11), chunkgenerator, worlddata.getGeneratorSettings().isDebugWorld(), j, creator.environment() == Environment.NORMAL ? list : ImmutableList.of(), true, creator.environment(), generator);