From a6f7132cded8daefd5b3dca42267518e4fc2b30f Mon Sep 17 00:00:00 2001 From: Dreeam <61569423+Dreeam-qwq@users.noreply.github.com> Date: Mon, 29 Jul 2024 22:48:25 +0800 Subject: [PATCH] Updated Upstream (Paper) Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@dcbd99d Fix Owen's typos (#11179) PaperMC/Paper@f82bea6 Add argument for FinePosition to brig API (#11094) PaperMC/Paper@694b120 Remove Entity tracker field PaperMC/Paper@f774787 Copy missed changes to chunk system from Folia PaperMC/Paper@50bdfc3 Null check tracker in Entity#resendPossiblyDesyncedEntityData PaperMC/Paper@3234b20 Do not allow chunk unloading outside of the regular tick loop PaperMC/Paper@0246a9d Add mob bucket items to item id to entity map in DataConverter --- gradle.properties | 2 +- .../server/0011-Remove-vanilla-profiler.patch | 28 +++++++++---------- ...reams-and-iterators-from-range-check.patch | 6 ++-- .../0030-Reduce-entity-allocations.patch | 4 +-- .../0035-Optimize-entity-coordinate-key.patch | 4 +-- .../server/0067-Optimize-sun-burn-tick.patch | 4 +-- ...Skip-entity-move-if-movement-is-zero.patch | 4 +-- ...nnecessary-mob-spawning-computations.patch | 10 +++---- 8 files changed, 31 insertions(+), 31 deletions(-) diff --git a/gradle.properties b/gradle.properties index a9ed3f9..cad31a3 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ group=org.galemc.gale version=1.21-R0.1-SNAPSHOT mcVersion=1.21 -paperRef=66165f712a99e02d383dc393b09aac565ea27540 +paperRef=0246a9da86a923e68d079eeceaeabdf750ee630d org.gradle.caching=false org.gradle.parallel=true diff --git a/patches/server/0011-Remove-vanilla-profiler.patch b/patches/server/0011-Remove-vanilla-profiler.patch index a57351f..266608c 100644 --- a/patches/server/0011-Remove-vanilla-profiler.patch +++ b/patches/server/0011-Remove-vanilla-profiler.patch @@ -620,7 +620,7 @@ index 8306edb6fb28e90ba4b432a07131e063daa70507..8538024c6345e79d08643e2d68ca1465 public SampleLogger getTickTimeLogger() { return this.tickTimeLogger; diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index d85cbcc06b35d5a3467d7d1c81c9f09c1a8db175..bfb5a1ffec9a01b86f65a577bbd4d2927f9718b0 100644 +index 1e0a6e5a3c907ab55ee6f2780a7d43bd455f2b7b..9f062c88fb5838a294b43ae254c945dca493dd55 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -65,7 +65,6 @@ import net.minecraft.server.network.ServerPlayerConnection; @@ -649,7 +649,7 @@ index d85cbcc06b35d5a3467d7d1c81c9f09c1a8db175..bfb5a1ffec9a01b86f65a577bbd4d292 public boolean hasWork() { diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java -index 8a0b00d645e4cf2ca96ec7e8ebc6ef726a0ab8b0..406bd21684664db07cb0f541e619cc5f51070b7a 100644 +index dcb5651d1d9b10b40430fb2f713beedf68336704..3b3684d202e460a80b3e6e97afbaa4c84c4e3b3b 100644 --- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java +++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java @@ -22,7 +22,6 @@ import net.minecraft.network.protocol.Packet; @@ -660,10 +660,10 @@ index 8a0b00d645e4cf2ca96ec7e8ebc6ef726a0ab8b0..406bd21684664db07cb0f541e619cc5f import net.minecraft.util.thread.BlockableEventLoop; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.ai.village.poi.PoiManager; -@@ -380,19 +379,15 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon - +@@ -381,19 +380,15 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon // CraftBukkit start - modelled on below public void purgeUnload() { + if (true) return; // Paper - rewrite chunk system - this.level.getProfiler().push("purge"); this.distanceManager.purgeStaleTickets(); this.runDistanceManagerUpdates(); @@ -680,7 +680,7 @@ index 8a0b00d645e4cf2ca96ec7e8ebc6ef726a0ab8b0..406bd21684664db07cb0f541e619cc5f this.level.timings.doChunkMap.startTiming(); // Spigot if (this.level.tickRateManager().runsNormally() || !tickChunks || this.level.spigotConfig.unloadFrozenChunks) { // Spigot this.distanceManager.purgeStaleTickets(); -@@ -400,7 +395,6 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon +@@ -401,7 +396,6 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon this.runDistanceManagerUpdates(); this.level.timings.doChunkMap.stopTiming(); // Spigot @@ -688,7 +688,7 @@ index 8a0b00d645e4cf2ca96ec7e8ebc6ef726a0ab8b0..406bd21684664db07cb0f541e619cc5f if (tickChunks) { this.level.timings.chunks.startTiming(); // Paper - timings ((ca.spottedleaf.moonrise.patches.chunk_system.level.ChunkSystemServerLevel)this.level).moonrise$getPlayerChunkLoader().tick(); // Paper - rewrite chunk system -@@ -410,10 +404,8 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon +@@ -411,10 +405,8 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon } this.level.timings.doChunkUnload.startTiming(); // Spigot @@ -699,7 +699,7 @@ index 8a0b00d645e4cf2ca96ec7e8ebc6ef726a0ab8b0..406bd21684664db07cb0f541e619cc5f this.clearCache(); } -@@ -424,10 +416,6 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon +@@ -425,10 +417,6 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon this.lastInhabitedUpdate = i; if (!this.level.isDebug()) { @@ -710,7 +710,7 @@ index 8a0b00d645e4cf2ca96ec7e8ebc6ef726a0ab8b0..406bd21684664db07cb0f541e619cc5f // Paper start - chunk tick iteration optimisations List list; { -@@ -453,7 +441,6 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon +@@ -454,7 +442,6 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon // Paper - chunk tick iteration optimisations if (this.level.tickRateManager().runsNormally()) { @@ -718,7 +718,7 @@ index 8a0b00d645e4cf2ca96ec7e8ebc6ef726a0ab8b0..406bd21684664db07cb0f541e619cc5f this.level.timings.countNaturalMobs.startTiming(); // Paper - timings int k = this.distanceManager.getNaturalSpawnChunkCount(); // Paper start - Optional per player mob spawns -@@ -482,7 +469,6 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon +@@ -483,7 +470,6 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon this.level.timings.countNaturalMobs.stopTiming(); // Paper - timings this.lastSpawnState = spawnercreature_d; @@ -726,7 +726,7 @@ index 8a0b00d645e4cf2ca96ec7e8ebc6ef726a0ab8b0..406bd21684664db07cb0f541e619cc5f boolean flag = this.level.getGameRules().getBoolean(GameRules.RULE_DOMOBSPAWNING) && !this.level.players().isEmpty(); // CraftBukkit if (!this.level.paperConfig().entities.spawning.perPlayerMobSpawns) Util.shuffle(list, this.level.random); // Paper - per player mob spawns - do not need this when per-player is enabled -@@ -522,7 +508,6 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon +@@ -523,7 +509,6 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon } this.level.timings.chunkTicks.stopTiming(); // Paper @@ -734,7 +734,7 @@ index 8a0b00d645e4cf2ca96ec7e8ebc6ef726a0ab8b0..406bd21684664db07cb0f541e619cc5f if (flag) { try (co.aikar.timings.Timing ignored = this.level.timings.miscMobSpawning.startTiming()) { // Paper - timings this.level.tickCustomSpawners(this.spawnEnemies, this.spawnFriendlies); -@@ -530,7 +515,6 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon +@@ -531,7 +516,6 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon } } @@ -742,7 +742,7 @@ index 8a0b00d645e4cf2ca96ec7e8ebc6ef726a0ab8b0..406bd21684664db07cb0f541e619cc5f // Paper start - chunk tick iteration optimisations this.level.timings.broadcastChunkUpdates.startTiming(); // Paper - timing { -@@ -548,8 +532,6 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon +@@ -549,8 +533,6 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon } this.level.timings.broadcastChunkUpdates.stopTiming(); // Paper - timing // Paper end - chunk tick iteration optimisations @@ -751,7 +751,7 @@ index 8a0b00d645e4cf2ca96ec7e8ebc6ef726a0ab8b0..406bd21684664db07cb0f541e619cc5f } } -@@ -730,7 +712,6 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon +@@ -731,7 +713,6 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon @Override protected void doRunTask(Runnable task) { @@ -1120,7 +1120,7 @@ index 298e3eddd600f0b2e48ce2d4080cf68adff59a3a..6b3c57fc1231cd37e17a58137bb78411 protected abstract T prepare(ResourceManager manager, ProfilerFiller profiler); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 1f7594e22f0f08ae110ef9b42f15119358aa5723..e4751a821d73bcf6dad22abb6fc5ab394953029f 100644 +index 490ee48346395fcbaf2eb0151e9248f18974fea6..676490a66fd2c0b82302432bb5eba1334af6e524 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -858,7 +858,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess diff --git a/patches/server/0028-Remove-streams-and-iterators-from-range-check.patch b/patches/server/0028-Remove-streams-and-iterators-from-range-check.patch index 14f7f27..63fdcf2 100644 --- a/patches/server/0028-Remove-streams-and-iterators-from-range-check.patch +++ b/patches/server/0028-Remove-streams-and-iterators-from-range-check.patch @@ -31,10 +31,10 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index bfb5a1ffec9a01b86f65a577bbd4d2927f9718b0..caa295231c7d4573dca04eefcceedd2d067cc903 100644 +index 9f062c88fb5838a294b43ae254c945dca493dd55..0cca7c79ced15f9edf03f9593a78e2f155247c4d 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -1275,8 +1275,30 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1274,8 +1274,30 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider return ChunkMap.this.level.getServer().getScaledTrackingDistance(initialDistance); } @@ -65,7 +65,7 @@ index bfb5a1ffec9a01b86f65a577bbd4d2927f9718b0..caa295231c7d4573dca04eefcceedd2d Iterator iterator = this.entity.getIndirectPassengers().iterator(); while (iterator.hasNext()) { -@@ -1288,6 +1310,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1287,6 +1309,9 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider i = j; } } diff --git a/patches/server/0030-Reduce-entity-allocations.patch b/patches/server/0030-Reduce-entity-allocations.patch index 818349e..bbad618 100644 --- a/patches/server/0030-Reduce-entity-allocations.patch +++ b/patches/server/0030-Reduce-entity-allocations.patch @@ -31,10 +31,10 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index e4751a821d73bcf6dad22abb6fc5ab394953029f..a0ed1ffbf07edeb4d7f08316855376488b99940b 100644 +index 676490a66fd2c0b82302432bb5eba1334af6e524..2d3552ed0772d7bd7777b85879c10ca83c4baf37 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -446,6 +446,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -445,6 +445,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return this.originWorld; } // Paper end - Entity origin API diff --git a/patches/server/0035-Optimize-entity-coordinate-key.patch b/patches/server/0035-Optimize-entity-coordinate-key.patch index 8025a51..b9e6c8d 100644 --- a/patches/server/0035-Optimize-entity-coordinate-key.patch +++ b/patches/server/0035-Optimize-entity-coordinate-key.patch @@ -35,10 +35,10 @@ index 31b92bd48828cbea25b44a9f0f96886347aa1ae6..036c1a287db04c0191e5f84b027ea68d public static long getChunkKey(final ChunkPos pos) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index dfc1f3b3097430f1553b0a0b03d7be3863d14c11..00cbaf9518ca7a400489471e8151d02843fd59a4 100644 +index 7349dee46483632cffa88d11694e2cd3a6fad911..8e79c569eb6b49382d1335ab8a247506db6afe95 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -316,7 +316,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -315,7 +315,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public double yo; public double zo; private Vec3 position; diff --git a/patches/server/0067-Optimize-sun-burn-tick.patch b/patches/server/0067-Optimize-sun-burn-tick.patch index 0839a7f..4a5a776 100644 --- a/patches/server/0067-Optimize-sun-burn-tick.patch +++ b/patches/server/0067-Optimize-sun-burn-tick.patch @@ -13,10 +13,10 @@ As part of: JettPack (https://gitlab.com/Titaniumtown/JettPack) Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html) diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 00cbaf9518ca7a400489471e8151d02843fd59a4..05ab615451df6d85af426ca7035d26861988dc27 100644 +index 8e79c569eb6b49382d1335ab8a247506db6afe95..8fe992f191819f828ebc5c1986572569a09d52a9 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -315,7 +315,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -314,7 +314,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public double xo; public double yo; public double zo; diff --git a/patches/server/0083-Skip-entity-move-if-movement-is-zero.patch b/patches/server/0083-Skip-entity-move-if-movement-is-zero.patch index 557457f..c5c2657 100644 --- a/patches/server/0083-Skip-entity-move-if-movement-is-zero.patch +++ b/patches/server/0083-Skip-entity-move-if-movement-is-zero.patch @@ -13,10 +13,10 @@ As part of: VMP (https://github.com/RelativityMC/VMP-fabric) Licensed under: MIT (https://opensource.org/licenses/MIT) diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 05ab615451df6d85af426ca7035d26861988dc27..f5708e511611ec64430336f8247526b4a0a062aa 100644 +index 8fe992f191819f828ebc5c1986572569a09d52a9..d507da667083632b58967122d34bd1089f398d68 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -324,6 +324,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -323,6 +323,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public float yRotO; public float xRotO; private AABB bb; diff --git a/patches/server/0101-Skip-unnecessary-mob-spawning-computations.patch b/patches/server/0101-Skip-unnecessary-mob-spawning-computations.patch index c4c3843..b4d75e3 100644 --- a/patches/server/0101-Skip-unnecessary-mob-spawning-computations.patch +++ b/patches/server/0101-Skip-unnecessary-mob-spawning-computations.patch @@ -13,10 +13,10 @@ As part of: MultiPaper (https://github.com/MultiPaper/MultiPaper) Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html) diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java -index 406bd21684664db07cb0f541e619cc5f51070b7a..d2750fb7efbe8c1c77d4cb57f6ceec4fd968e326 100644 +index 3b3684d202e460a80b3e6e97afbaa4c84c4e3b3b..9fd7b17b7806636777de40abb9963ce770a97d15 100644 --- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java +++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java -@@ -441,11 +441,16 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon +@@ -442,11 +442,16 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon // Paper - chunk tick iteration optimisations if (this.level.tickRateManager().runsNormally()) { @@ -34,7 +34,7 @@ index 406bd21684664db07cb0f541e619cc5f51070b7a..d2750fb7efbe8c1c77d4cb57f6ceec4f if ((this.spawnFriendlies || this.spawnEnemies) && this.level.paperConfig().entities.spawning.perPlayerMobSpawns) { // don't count mobs when animals and monsters are disabled // re-set mob counts for (ServerPlayer player : this.level.players) { -@@ -469,7 +474,11 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon +@@ -470,7 +475,11 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon this.level.timings.countNaturalMobs.stopTiming(); // Paper - timings this.lastSpawnState = spawnercreature_d; @@ -47,7 +47,7 @@ index 406bd21684664db07cb0f541e619cc5f51070b7a..d2750fb7efbe8c1c77d4cb57f6ceec4f if (!this.level.paperConfig().entities.spawning.perPlayerMobSpawns) Util.shuffle(list, this.level.random); // Paper - per player mob spawns - do not need this when per-player is enabled // Paper start - PlayerNaturallySpawnCreaturesEvent -@@ -492,7 +501,7 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon +@@ -493,7 +502,7 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon if (true && this.chunkMap.anyPlayerCloseEnoughForSpawning(chunkcoordintpair)) { // Paper - rewrite chunk system chunk1.incrementInhabitedTime(j); @@ -56,7 +56,7 @@ index 406bd21684664db07cb0f541e619cc5f51070b7a..d2750fb7efbe8c1c77d4cb57f6ceec4f NaturalSpawner.spawnForChunk(this.level, chunk1, spawnercreature_d, this.spawnFriendlies, this.spawnEnemies, flag1); } -@@ -535,6 +544,20 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon +@@ -536,6 +545,20 @@ public class ServerChunkCache extends ChunkSource implements ca.spottedleaf.moon } }