diff --git a/paper-server/build.gradle.kts b/paper-server/build.gradle.kts index f1474cf164..c7de525bb4 100644 --- a/paper-server/build.gradle.kts +++ b/paper-server/build.gradle.kts @@ -17,7 +17,7 @@ plugins { val paperMavenPublicUrl = "https://repo.papermc.io/repository/maven-public/" dependencies { - mache("io.papermc:mache:1.21.8+build.1") + mache("io.papermc:mache:1.21.8+build.2") paperclip("io.papermc:paperclip:3.0.3") testRuntimeOnly("org.junit.platform:junit-platform-launcher") } diff --git a/paper-server/patches/features/0016-Moonrise-optimisation-patches.patch b/paper-server/patches/features/0016-Moonrise-optimisation-patches.patch index 7ffb36f5f0..41c2668e92 100644 --- a/paper-server/patches/features/0016-Moonrise-optimisation-patches.patch +++ b/paper-server/patches/features/0016-Moonrise-optimisation-patches.patch @@ -23714,7 +23714,7 @@ index 0000000000000000000000000000000000000000..8424cf9d4617b4732d44cc460d25b044 + +} diff --git a/net/minecraft/core/Direction.java b/net/minecraft/core/Direction.java -index 2028c2a1613b36629dab2c8e36689af329596f09..63fd7b45750430b565d599337d3112cbaa7e7550 100644 +index bd484ca965fe7131c11bb2ccb1f22a06b6287c13..e2c34aa1e5796be1f38fdd50b6ba2066f1f2d2f3 100644 --- a/net/minecraft/core/Direction.java +++ b/net/minecraft/core/Direction.java @@ -28,7 +28,7 @@ import org.joml.Quaternionf; @@ -25822,7 +25822,7 @@ index 3faf1b5556c55f3468182f75b2dbff4aaa3aae3a..61692c07dfb75ca0c19f603aafc96c08 public void updatePlayers(List playersList) { diff --git a/net/minecraft/server/level/DistanceManager.java b/net/minecraft/server/level/DistanceManager.java -index 342fc6485a6051acf6a936f73f2340014e051257..fd3d0f6cb53bc8b6186f0d86575f21007b2c20ed 100644 +index 88d698b195e1d05ec913873bcd7a139790e1a57d..50bc5b940812432bc472e5b272582efb8bbfc7a7 100644 --- a/net/minecraft/server/level/DistanceManager.java +++ b/net/minecraft/server/level/DistanceManager.java @@ -30,30 +30,63 @@ import net.minecraft.world.level.TicketStorage; @@ -25904,7 +25904,7 @@ index 342fc6485a6051acf6a936f73f2340014e051257..fd3d0f6cb53bc8b6186f0d86575f2100 @Nullable @@ -63,64 +96,15 @@ public abstract class DistanceManager { - protected abstract ChunkHolder updateChunkScheduling(long chunkPos, int i, @Nullable ChunkHolder newLevel, int holder); + protected abstract ChunkHolder updateChunkScheduling(long chunkPos, int newLevel, @Nullable ChunkHolder holder, int oldLevel); public boolean runAllUpdates(ChunkMap chunkMap) { - this.naturalSpawnChunkCounter.runAllUpdates(); @@ -28728,7 +28728,7 @@ index 8cc5c0716392ba06501542ff5cbe71ee43979e5d..09fd99c9cbd23b5f3c899bfb00c9b896 + // Paper end - block counting } diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index 7ece48c7c2e875eafa5a223b34b99c2ed9f3a8b8..813064b4d135c34cf76437a0f26546a8863abf85 100644 +index 7f4c5c40b1d16595f41fb97633036491861427a4..f148e7ecf00a406f4de36b11641fb6bfbe1f5eec 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java @@ -147,7 +147,7 @@ import net.minecraft.world.waypoints.WaypointTransmitter; @@ -29856,7 +29856,7 @@ index 300f3ed58109219d97846082941b860585f66fed..9175a7e4e6076626cb46144c5858c2f2 // Paper start - Affects Spawning API diff --git a/net/minecraft/world/level/Level.java b/net/minecraft/world/level/Level.java -index 1eb8cb187d33510a4e99d229e721a2e7db4012ad..f286dd9996590e5d448ca809c34b6f640203e274 100644 +index a05ffa5356a56385cbb62e054028b208022577bb..2707fc5e0d0a63df51c9176ab52e341ca4529489 100644 --- a/net/minecraft/world/level/Level.java +++ b/net/minecraft/world/level/Level.java @@ -81,6 +81,7 @@ import net.minecraft.world.level.storage.LevelData; @@ -31220,7 +31220,7 @@ index 677780bf473f56a4083b984e1eb75b74f7716540..07e4025ca6c9c31905db2e6921138a0d } diff --git a/net/minecraft/world/level/TicketStorage.java b/net/minecraft/world/level/TicketStorage.java -index ac9d453df4bfa3cc50f1909e0d425e5ba98e6d75..d2eafa1df04806d88baa76c1edc2c8cc6a5b30d8 100644 +index 6ec30e5d15f00f2552c60332c3e189f99d214212..d8a48e05b1045772caad012a51aef3d5b2b337b0 100644 --- a/net/minecraft/world/level/TicketStorage.java +++ b/net/minecraft/world/level/TicketStorage.java @@ -29,7 +29,7 @@ import net.minecraft.world.level.saveddata.SavedData; @@ -32266,7 +32266,7 @@ index d1ae452f0aa96c36afe8b7ecddd3e06b06165878..182c14b660f8860bed627eed4e01fd40 public static ProblemReporter.PathElement problemPath(ChunkPos pos) { diff --git a/net/minecraft/world/level/chunk/ChunkGenerator.java b/net/minecraft/world/level/chunk/ChunkGenerator.java -index 842f633a1e74ec9e405922bb40469c5d04d8f6e7..857aa6e29b57a0a8eea4d7c14971b9dde59bb0d0 100644 +index 111e451fa3b5d093ab4ce9a4f7848e85b6d9c514..854578c7880dc124980142941ee471072668c8e2 100644 --- a/net/minecraft/world/level/chunk/ChunkGenerator.java +++ b/net/minecraft/world/level/chunk/ChunkGenerator.java @@ -116,7 +116,7 @@ public abstract class ChunkGenerator { @@ -35282,7 +35282,7 @@ index ac1488875537421b74f0c491c9b7a40e75539c92..9eb27eb8d6dcaad6ce02f8ce4546acc2 public OffsetDoubleList(DoubleList delegate, double offset) { this.delegate = delegate; diff --git a/net/minecraft/world/phys/shapes/Shapes.java b/net/minecraft/world/phys/shapes/Shapes.java -index e6038bbe8513e434daa9ea10bfa817afef0445db..ef3897b88c99bd3f0681ad1747dd77041add821c 100644 +index 52fc7db45bb0eb427a484f5b13b82878930b55c3..3205cc111b1165cd98705bb70d65c858961abc33 100644 --- a/net/minecraft/world/phys/shapes/Shapes.java +++ b/net/minecraft/world/phys/shapes/Shapes.java @@ -22,9 +22,15 @@ public final class Shapes { diff --git a/paper-server/patches/sources/net/minecraft/world/level/TicketStorage.java.patch b/paper-server/patches/sources/net/minecraft/world/level/TicketStorage.java.patch index 0085bb153a..81711c9d1d 100644 --- a/paper-server/patches/sources/net/minecraft/world/level/TicketStorage.java.patch +++ b/paper-server/patches/sources/net/minecraft/world/level/TicketStorage.java.patch @@ -20,7 +20,7 @@ public void removeTicketIf(BiPredicate biPredicate, @Nullable Long2ObjectOpenHashMap> map) { @@ -378,4 +_,19 @@ public interface ChunkUpdated { - void update(long chunkPos, int i, boolean ticketLevel); + void update(long chunkPos, int ticketLevel, boolean isDecreasing); } + // Paper start + public boolean addPluginRegionTicket(final ChunkPos pos, final org.bukkit.plugin.Plugin value) { diff --git a/paper-server/patches/sources/net/minecraft/world/level/levelgen/structure/placement/StructurePlacement.java.patch b/paper-server/patches/sources/net/minecraft/world/level/levelgen/structure/placement/StructurePlacement.java.patch index 4179d67574..609e256c40 100644 --- a/paper-server/patches/sources/net/minecraft/world/level/levelgen/structure/placement/StructurePlacement.java.patch +++ b/paper-server/patches/sources/net/minecraft/world/level/levelgen/structure/placement/StructurePlacement.java.patch @@ -76,8 +76,8 @@ @FunctionalInterface public interface FrequencyReducer { -- boolean shouldGenerate(long levelSeed, int i, int salt, int regionX, float regionZ); -+ boolean shouldGenerate(long levelSeed, int i, int salt, int regionX, float regionZ, @org.jetbrains.annotations.Nullable Integer saltOverride); // Paper - Add missing structure set seed configs +- boolean shouldGenerate(long levelSeed, int salt, int regionX, int regionZ, float probability); ++ boolean shouldGenerate(long levelSeed, int salt, int regionX, int regionZ, float probability, @org.jetbrains.annotations.Nullable Integer saltOverride); // Paper - Add missing structure set seed configs } public static enum FrequencyReductionMethod implements StringRepresentable {