diff --git a/patches/server/Rewrite-chunk-system.patch b/patches/server/Rewrite-chunk-system.patch
index 7fbc9048b2..eae1fc8b26 100644
--- a/patches/server/Rewrite-chunk-system.patch
+++ b/patches/server/Rewrite-chunk-system.patch
@@ -21521,7 +21521,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
 +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
 @@ -0,0 +0,0 @@ public final class CraftServer implements Server {
-         // Paper end
+         // Paper - Put world into worldlist before initing the world; move up
  
          this.getServer().prepareLevels(internal.getChunkSource().chunkMap.progressListener, internal);
 -        internal.entityManager.tick(); // SPIGOT-6526: Load pending entities so they are available to the API
diff --git a/patches/server/WorldCreator-keepSpawnLoaded.patch b/patches/server/WorldCreator-keepSpawnLoaded.patch
index 26f73796d0..1804860942 100644
--- a/patches/server/WorldCreator-keepSpawnLoaded.patch
+++ b/patches/server/WorldCreator-keepSpawnLoaded.patch
@@ -9,17 +9,11 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
 +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
 @@ -0,0 +0,0 @@ public final class CraftServer implements Server {
-         internal.setSpawnSettings(true, true);
-         // Paper - Put world into worldlist before initing the world; move up
- 
-+        // Paper start
-+        if (creator.keepSpawnLoaded().toBooleanOrElse(internal.getWorld().getKeepSpawnInMemory())) {
-+            GameRules.IntegerValue rule = internal.getGameRules().getRule(GameRules.RULE_SPAWN_CHUNK_RADIUS);
-+            rule.deserialize("0");
-+            rule.onChanged(internal);
-+        }
-+        // Paper end
-+
-         this.getServer().prepareLevels(internal.getChunkSource().chunkMap.progressListener, internal);
-         internal.entityManager.tick(); // SPIGOT-6526: Load pending entities so they are available to the API
+         }
  
+         // If set to not keep spawn in memory (changed from default) then adjust rule accordingly
+-        if (!creator.keepSpawnInMemory()) {
++        if (creator.keepSpawnLoaded() == net.kyori.adventure.util.TriState.FALSE) { // Paper
+             worlddata.getGameRules().getRule(GameRules.RULE_SPAWN_CHUNK_RADIUS).set(0, null);
+         }
+         ServerLevel internal = (ServerLevel) new ServerLevel(this.console, this.console.executor, worldSession, worlddata, worldKey, worlddimension, this.getServer().progressListenerFactory.create(worlddata.getGameRules().getInt(GameRules.RULE_SPAWN_CHUNK_RADIUS)),