diff --git a/gradle.properties b/gradle.properties index 524c1fd51..f543ecb30 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ group=com.lokamc.slice version=1.20.1-R0.1-SNAPSHOT mcVersion=1.20.1 -paperRef=517f8fbbac2467fb24fa87d6bd56ce5c1b9bc972 +paperRef=29d1c7b60244bb002d29a5dcfc9c995019f550ab org.gradle.caching=true org.gradle.parallel=true diff --git a/patches/server/0002-Set-BlockData-without-light-updates.patch b/patches/server/0002-Set-BlockData-without-light-updates.patch index e4afa2ed7..fcafa6608 100644 --- a/patches/server/0002-Set-BlockData-without-light-updates.patch +++ b/patches/server/0002-Set-BlockData-without-light-updates.patch @@ -27,10 +27,10 @@ index 877498729c66de9aa6a27c9148f7494d7895615c..63959d7f15c682c2935f872d50de03fd return false; } else { diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index f39ab10c5b0b8d86b579a5b683491204c51db70b..00c5dc8781bc9d893db8e180eb541108ae01c956 100644 +index 773bfdd3ed457a352b5329f280c0d10297d579ba..c7ee934d4f890bc86596d36079ffed5050133b47 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -514,12 +514,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -598,12 +598,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable { } @Override @@ -46,7 +46,7 @@ index f39ab10c5b0b8d86b579a5b683491204c51db70b..00c5dc8781bc9d893db8e180eb541108 // CraftBukkit start - tree generation if (this.captureTreeGeneration) { // Paper start -@@ -710,7 +710,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -794,7 +794,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { Block.dropResources(iblockdata, this, pos, tileentity, breakingEntity, ItemStack.EMPTY); } @@ -90,7 +90,7 @@ index fdd9c61b7248e92dbcbec91cd6fe4c6310bba237..2f2197236d9ba64b62510df923378b02 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java b/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java -index e2a3510cb2208f9cd4fc92d022ff5055a4cced45..b0dc1e87e034f428bcce67e563db79a8d803fd04 100644 +index bf2cd1eb04c10b8422ddca8efd397290bf58ea4d..30dcafc3ebcb5ab230a5622a0108aa3d7e3c4ead 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java @@ -286,7 +286,7 @@ public abstract class CraftRegionAccessor implements RegionAccessor { @@ -103,7 +103,7 @@ index e2a3510cb2208f9cd4fc92d022ff5055a4cced45..b0dc1e87e034f428bcce67e563db79a8 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java -index 5401ab9f8f6ce12e1c5368dbc3acc78a250b3822..243b5823ea99eefd812134b5c80d4d3c9f008499 100644 +index f3ac362b7b65a5273ff5fdad1d8065c5f654a53a..2c60ae8b5adb60c49712327bda3c2666778fd729 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java @@ -187,15 +187,20 @@ public class CraftBlock implements Block { diff --git a/patches/server/0003-Add-BlockDestroyedByNeighborEvent.patch b/patches/server/0003-Add-BlockDestroyedByNeighborEvent.patch index d480de32e..dc726d594 100644 --- a/patches/server/0003-Add-BlockDestroyedByNeighborEvent.patch +++ b/patches/server/0003-Add-BlockDestroyedByNeighborEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add BlockDestroyedByNeighborEvent diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index 9a17193c9fe26c9c0390906b4c1f9d619ccba249..df2a4449bdc00eb936bf219807d401fc99663926 100644 +index 618ab9a2903f6d4139acd4aaa2e6db0a26e88ba9..ec94d787f227c373637e6bb5f38260d978fe14df 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java @@ -419,6 +419,7 @@ public class ServerPlayerGameMode { @@ -37,7 +37,7 @@ index 879cc823d56625867eb73bb621db6a13f40ad81c..2b3b1c5ccdf58ee9b46d404cfa3790d0 if (!(item instanceof BucketItem/* || item instanceof SolidBucketItem*/)) { // if not bucket // Paper - capture block states for snow buckets world.captureBlockStates = true; diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 00c5dc8781bc9d893db8e180eb541108ae01c956..46cfd6deda1bb4c98987e79c27633c327d3b0227 100644 +index c7ee934d4f890bc86596d36079ffed5050133b47..1d17c6471449fe4f4fd2bae6bc8a9c500fb0c96f 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -184,6 +184,27 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -68,7 +68,7 @@ index 00c5dc8781bc9d893db8e180eb541108ae01c956..46cfd6deda1bb4c98987e79c27633c32 // Paper start - fix and optimise world upgrading // copied from below public static ResourceKey getDimensionKey(DimensionType manager) { -@@ -664,6 +685,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -748,6 +769,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { if (!this.preventPoiUpdated) { this.onBlockStateChange(blockposition, iblockdata1, iblockdata2); } @@ -76,7 +76,7 @@ index 00c5dc8781bc9d893db8e180eb541108ae01c956..46cfd6deda1bb4c98987e79c27633c32 // CraftBukkit end } } -@@ -685,6 +707,17 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -769,6 +791,17 @@ public abstract class Level implements LevelAccessor, AutoCloseable { if (iblockdata.isAir()) { return false; } else { diff --git a/patches/server/0020-PlayerLoadStatsEvent.patch b/patches/server/0020-PlayerLoadStatsEvent.patch index 61a04676d..e690411ba 100644 --- a/patches/server/0020-PlayerLoadStatsEvent.patch +++ b/patches/server/0020-PlayerLoadStatsEvent.patch @@ -18,7 +18,7 @@ index 97c6f1c622af02b3761b23a4d3a67b385e45ea84..7f059a71d25170e8e3215c7d91ab7927 } diff --git a/src/main/java/net/minecraft/stats/ServerStatsCounter.java b/src/main/java/net/minecraft/stats/ServerStatsCounter.java -index 8afd9b785fb8734255e3ea926b8375bb9cae60be..5a0ccc7e08ecba5dc62c02195c5f87c22ea6d122 100644 +index 8afd9b785fb8734255e3ea926b8375bb9cae60be..9bd42eac43f068df8f7f49249bb47840d87d799a 100644 --- a/src/main/java/net/minecraft/stats/ServerStatsCounter.java +++ b/src/main/java/net/minecraft/stats/ServerStatsCounter.java @@ -45,7 +45,7 @@ public class ServerStatsCounter extends StatsCounter { @@ -30,12 +30,11 @@ index 8afd9b785fb8734255e3ea926b8375bb9cae60be..5a0ccc7e08ecba5dc62c02195c5f87c2 this.server = server; this.file = file; // Spigot start -@@ -55,7 +55,14 @@ public class ServerStatsCounter extends StatsCounter { +@@ -55,7 +55,13 @@ public class ServerStatsCounter extends StatsCounter { this.stats.put( wrapper, entry.getValue().intValue() ); } // Spigot end - if (file.isFile()) { -+ + // Slice start - If event supplies stats, use it. Otherwise just load from disk as usual + com.destroystokyo.paper.event.player.PlayerLoadStatsEvent event = new com.destroystokyo.paper.event.player.PlayerLoadStatsEvent(uuid); + org.bukkit.Bukkit.getPluginManager().callEvent(event); @@ -46,7 +45,7 @@ index 8afd9b785fb8734255e3ea926b8375bb9cae60be..5a0ccc7e08ecba5dc62c02195c5f87c2 try { this.parseLocal(server.getFixerUpper(), FileUtils.readFileToString(file)); } catch (IOException ioexception) { -@@ -103,46 +110,8 @@ public class ServerStatsCounter extends StatsCounter { +@@ -103,46 +109,8 @@ public class ServerStatsCounter extends StatsCounter { if (!jsonelement.isJsonNull()) { CompoundTag nbttagcompound = ServerStatsCounter.fromJson(jsonelement.getAsJsonObject()); @@ -95,7 +94,7 @@ index 8afd9b785fb8734255e3ea926b8375bb9cae60be..5a0ccc7e08ecba5dc62c02195c5f87c2 } ServerStatsCounter.LOGGER.error("Unable to parse Stat data from {}", this.file); -@@ -167,6 +136,48 @@ public class ServerStatsCounter extends StatsCounter { +@@ -167,6 +135,48 @@ public class ServerStatsCounter extends StatsCounter { } diff --git a/patches/server/0030-Shared-Data-Storage.patch b/patches/server/0030-Shared-Data-Storage.patch index 19968666c..7dc749d36 100644 --- a/patches/server/0030-Shared-Data-Storage.patch +++ b/patches/server/0030-Shared-Data-Storage.patch @@ -5,14 +5,14 @@ Subject: [PATCH] Shared Data Storage diff --git a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java -index 019d3bbd78fb0b06861979d223915fedb6c99442..89ec08d2550084c1456ce885c71d1e5d121df19d 100644 +index 3bc7230ca62ebe3426da293e436a962bb0134f85..a812bd61e0352023cfd44e62a9cf722616ba4358 100644 --- a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java +++ b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java -@@ -316,6 +316,7 @@ public class GlobalConfiguration extends ConfigurationPart { - public boolean useAlternativeLuckFormula = false; +@@ -318,6 +318,7 @@ public class GlobalConfiguration extends ConfigurationPart { public boolean useDimensionTypeForCustomSpawners = false; public boolean strictAdvancementDimensionCheck = false; -+ public String sharedDataFolder = ""; + public IntOr.Default compressionLevel = IntOr.Default.USE_DEFAULT; ++ public String sharedDataFolder = ""; // Slice } public BlockUpdates blockUpdates; diff --git a/patches/server/0031-Equipment-Packet-Caching.patch b/patches/server/0031-Equipment-Packet-Caching.patch index ee8a44f74..0a4265748 100644 --- a/patches/server/0031-Equipment-Packet-Caching.patch +++ b/patches/server/0031-Equipment-Packet-Caching.patch @@ -59,7 +59,7 @@ index a514a1f26e439b5959093488ec9905fec327a404..0ac580f3cf8f95025992420702d67ad5 // CraftBukkit start - MC-109346: Fix for nonsensical head yaw diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index b7c9876eaff4365d136a9af20c1a5845b3094336..a5165d76d8495242708093f7e4449f6f67386ad7 100644 +index 836c007db96b115a0f7a869649e9ed4738920093..b6c320554693d1b55a385c45784feb45d7cac757 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -263,6 +263,8 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -182,10 +182,10 @@ index b7c9876eaff4365d136a9af20c1a5845b3094336..a5165d76d8495242708093f7e4449f6f + // Slice end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index f0ce29d21fe9af803ce4e41b8c037b2ec5d1b124..30eebb880d53132d03af656e4662de5566415358 100644 +index b25f5931f836fd4d8695120f0bcb7c52deff8583..68507518df679a354534a82f32a011727ae7cea0 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -1094,4 +1094,14 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -1099,4 +1099,14 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { getHandle().knockback(strength, directionX, directionZ); }; // Paper end diff --git a/patches/server/0037-Change-KeepAlive-interval.patch b/patches/server/0037-Change-KeepAlive-interval.patch new file mode 100644 index 000000000..59a931e25 --- /dev/null +++ b/patches/server/0037-Change-KeepAlive-interval.patch @@ -0,0 +1,19 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Cryptite +Date: Tue, 3 Oct 2023 09:18:59 -0500 +Subject: [PATCH] Change KeepAlive interval + + +diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +index 42e61e55ef45935e1f690eefa56bc36842cdd974..049c1417968d89ba7b6208339e4a812bc72e007b 100644 +--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java ++++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +@@ -409,7 +409,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic + this.disconnect(Component.translatable("disconnect.timeout", new Object[0]), org.bukkit.event.player.PlayerKickEvent.Cause.TIMEOUT); // Paper - kick event cause + } + } else { +- if (elapsedTime >= 15000L) { // 15 seconds ++ if (elapsedTime >= 5000L) { // 15 seconds // Slice -> 5s + this.keepAlivePending = true; + this.keepAliveTime = currentTime; + this.keepAliveChallenge = currentTime;