mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-20 18:07:43 +01:00
Updated Upstream (Paper & Pufferfish)
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@753bf2c Update paperweight to 1.3.5 PaperMC/Paper@15b6b3d Add StructuresLocateEvent as replacement for StructureLocateEvent (#7524) PaperMC/Paper@c09365a Fix deadlock on watchdog crash (#7535) PaperMC/Paper@719daa8 Updated Upstream (CraftBukkit) PaperMC/Paper@b9f26bb Add printPaperVersion task PaperMC/Paper@63aa4d3 Clarify exception messages for invalid view distances (#7510) Pufferfish Changes: pufferfish-gg/Pufferfish@a786526 Updated Upstream (Paper) pufferfish-gg/Pufferfish@e0075db 1.18.2 - Updated Upstream (Paper)
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
group = org.purpurmc.purpur
|
group = org.purpurmc.purpur
|
||||||
version = 1.18.2-R0.1-SNAPSHOT
|
version = 1.18.2-R0.1-SNAPSHOT
|
||||||
|
|
||||||
paperCommit = d33cdcf2e6ee53b28cabe99f417c7995bd9b7bc3
|
paperCommit = 63aa4d33194cae156d1bed840868336cda6bc52b
|
||||||
|
|
||||||
org.gradle.caching = true
|
org.gradle.caching = true
|
||||||
org.gradle.parallel = true
|
org.gradle.parallel = true
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ You should have received a copy of the GNU General Public License
|
|||||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
diff --git a/build.gradle.kts b/build.gradle.kts
|
diff --git a/build.gradle.kts b/build.gradle.kts
|
||||||
index 4beb35d1e5b013395f5df101e843f41c2ce174ad..27c18ced1ce6d38c9cd05eb4269f25a9d6520030 100644
|
index 4beb35d1e5b013395f5df101e843f41c2ce174ad..ecb65e75d19d2f7b72410c89251e56566b7b6dc0 100644
|
||||||
--- a/build.gradle.kts
|
--- a/build.gradle.kts
|
||||||
+++ b/build.gradle.kts
|
+++ b/build.gradle.kts
|
||||||
@@ -18,8 +18,12 @@ repositories {
|
@@ -18,8 +18,12 @@ repositories {
|
||||||
@@ -31,7 +31,7 @@ index 4beb35d1e5b013395f5df101e843f41c2ce174ad..27c18ced1ce6d38c9cd05eb4269f25a9
|
|||||||
- implementation(project(":paper-mojangapi"))
|
- implementation(project(":paper-mojangapi"))
|
||||||
+ implementation(project(":pufferfish-api")) // Pufferfish // Paper
|
+ implementation(project(":pufferfish-api")) // Pufferfish // Paper
|
||||||
+ // Pufferfish start
|
+ // Pufferfish start
|
||||||
+ implementation("io.papermc.paper:paper-mojangapi:1.18.1-R0.1-SNAPSHOT") {
|
+ implementation("io.papermc.paper:paper-mojangapi:1.18.2-R0.1-SNAPSHOT") {
|
||||||
+ exclude("io.papermc.paper", "paper-api")
|
+ exclude("io.papermc.paper", "paper-api")
|
||||||
+ }
|
+ }
|
||||||
+ // Pufferfish end
|
+ // Pufferfish end
|
||||||
@@ -555,7 +555,7 @@ index 0000000000000000000000000000000000000000..a7f297ebb569f7c1f205e967ca485be7
|
|||||||
+}
|
+}
|
||||||
diff --git a/src/main/java/gg/pufferfish/pufferfish/PufferfishCommand.java b/src/main/java/gg/pufferfish/pufferfish/PufferfishCommand.java
|
diff --git a/src/main/java/gg/pufferfish/pufferfish/PufferfishCommand.java b/src/main/java/gg/pufferfish/pufferfish/PufferfishCommand.java
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000000000000000000000000000000000000..020368da69b9a492155f6de6297f74732f4ab6ea
|
index 0000000000000000000000000000000000000000..e164237e749bcc43466d4ed7aeada5ab9fddf8a6
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/src/main/java/gg/pufferfish/pufferfish/PufferfishCommand.java
|
+++ b/src/main/java/gg/pufferfish/pufferfish/PufferfishCommand.java
|
||||||
@@ -0,0 +1,68 @@
|
@@ -0,0 +1,68 @@
|
||||||
@@ -629,7 +629,7 @@ index 0000000000000000000000000000000000000000..020368da69b9a492155f6de6297f7473
|
|||||||
+}
|
+}
|
||||||
diff --git a/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java b/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java
|
diff --git a/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java b/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000000000000000000000000000000000000..56330536c52fa327ef89d7a08e72557c6633c8bb
|
index 0000000000000000000000000000000000000000..cd03fed32807fd943fdeee8571c1648b8bd567d0
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java
|
+++ b/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java
|
||||||
@@ -0,0 +1,291 @@
|
@@ -0,0 +1,291 @@
|
||||||
@@ -948,7 +948,7 @@ index 0000000000000000000000000000000000000000..53f2df00c6809618a9ee3d2ea72e85e8
|
|||||||
+}
|
+}
|
||||||
diff --git a/src/main/java/gg/pufferfish/pufferfish/PufferfishVersionFetcher.java b/src/main/java/gg/pufferfish/pufferfish/PufferfishVersionFetcher.java
|
diff --git a/src/main/java/gg/pufferfish/pufferfish/PufferfishVersionFetcher.java b/src/main/java/gg/pufferfish/pufferfish/PufferfishVersionFetcher.java
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000000000000000000000000000000000000..adafc4fd661cf080b004b86c3eaed231a0133101
|
index 0000000000000000000000000000000000000000..461022af9ad85fe00329678f0f61d684d291c628
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/src/main/java/gg/pufferfish/pufferfish/PufferfishVersionFetcher.java
|
+++ b/src/main/java/gg/pufferfish/pufferfish/PufferfishVersionFetcher.java
|
||||||
@@ -0,0 +1,136 @@
|
@@ -0,0 +1,136 @@
|
||||||
@@ -1784,7 +1784,7 @@ index 0000000000000000000000000000000000000000..db15d3fbe2b65fc8035573f5fdbea382
|
|||||||
+}
|
+}
|
||||||
diff --git a/src/main/java/gg/pufferfish/pufferfish/sentry/PufferfishSentryAppender.java b/src/main/java/gg/pufferfish/pufferfish/sentry/PufferfishSentryAppender.java
|
diff --git a/src/main/java/gg/pufferfish/pufferfish/sentry/PufferfishSentryAppender.java b/src/main/java/gg/pufferfish/pufferfish/sentry/PufferfishSentryAppender.java
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000000000000000000000000000000000000..731ef11c7a025ae95ed8a757b530d834733d0621
|
index 0000000000000000000000000000000000000000..d04a8a4336566dbe6e1b9ec0d574cff43e003fa8
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/src/main/java/gg/pufferfish/pufferfish/sentry/PufferfishSentryAppender.java
|
+++ b/src/main/java/gg/pufferfish/pufferfish/sentry/PufferfishSentryAppender.java
|
||||||
@@ -0,0 +1,135 @@
|
@@ -0,0 +1,135 @@
|
||||||
@@ -1925,7 +1925,7 @@ index 0000000000000000000000000000000000000000..731ef11c7a025ae95ed8a757b530d834
|
|||||||
+}
|
+}
|
||||||
diff --git a/src/main/java/gg/pufferfish/pufferfish/sentry/SentryManager.java b/src/main/java/gg/pufferfish/pufferfish/sentry/SentryManager.java
|
diff --git a/src/main/java/gg/pufferfish/pufferfish/sentry/SentryManager.java b/src/main/java/gg/pufferfish/pufferfish/sentry/SentryManager.java
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000000000000000000000000000000000000..1b29210ad0bbb4ada150f23357f0c80d331c996d
|
index 0000000000000000000000000000000000000000..b011abbeb80b42de6be3785e47c7ba3c0f6dc161
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/src/main/java/gg/pufferfish/pufferfish/sentry/SentryManager.java
|
+++ b/src/main/java/gg/pufferfish/pufferfish/sentry/SentryManager.java
|
||||||
@@ -0,0 +1,40 @@
|
@@ -0,0 +1,40 @@
|
||||||
@@ -1971,7 +1971,7 @@ index 0000000000000000000000000000000000000000..1b29210ad0bbb4ada150f23357f0c80d
|
|||||||
+}
|
+}
|
||||||
diff --git a/src/main/java/gg/pufferfish/pufferfish/util/AsyncExecutor.java b/src/main/java/gg/pufferfish/pufferfish/util/AsyncExecutor.java
|
diff --git a/src/main/java/gg/pufferfish/pufferfish/util/AsyncExecutor.java b/src/main/java/gg/pufferfish/pufferfish/util/AsyncExecutor.java
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000000000000000000000000000000000000..9d6dc2c80945bec9bea74714c657c7a2e0bdde9e
|
index 0000000000000000000000000000000000000000..0772fbc77a198b3571b4ed1e8cc85e90ccd6e38a
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/src/main/java/gg/pufferfish/pufferfish/util/AsyncExecutor.java
|
+++ b/src/main/java/gg/pufferfish/pufferfish/util/AsyncExecutor.java
|
||||||
@@ -0,0 +1,51 @@
|
@@ -0,0 +1,51 @@
|
||||||
@@ -2028,7 +2028,7 @@ index 0000000000000000000000000000000000000000..9d6dc2c80945bec9bea74714c657c7a2
|
|||||||
+}
|
+}
|
||||||
diff --git a/src/main/java/gg/pufferfish/pufferfish/util/AsyncPlayerAreaMap.java b/src/main/java/gg/pufferfish/pufferfish/util/AsyncPlayerAreaMap.java
|
diff --git a/src/main/java/gg/pufferfish/pufferfish/util/AsyncPlayerAreaMap.java b/src/main/java/gg/pufferfish/pufferfish/util/AsyncPlayerAreaMap.java
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000000000000000000000000000000000000..fdcb62d12164024a5f354d60cc863821a18d1b2a
|
index 0000000000000000000000000000000000000000..a93ee99c2399def1e221260547a3e6bce2d621fa
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/src/main/java/gg/pufferfish/pufferfish/util/AsyncPlayerAreaMap.java
|
+++ b/src/main/java/gg/pufferfish/pufferfish/util/AsyncPlayerAreaMap.java
|
||||||
@@ -0,0 +1,31 @@
|
@@ -0,0 +1,31 @@
|
||||||
@@ -2091,7 +2091,7 @@ index 0000000000000000000000000000000000000000..c1929840254a3e6d721816f4a20415be
|
|||||||
+}
|
+}
|
||||||
diff --git a/src/main/java/gg/pufferfish/pufferfish/util/Long2ObjectOpenHashMapWrapper.java b/src/main/java/gg/pufferfish/pufferfish/util/Long2ObjectOpenHashMapWrapper.java
|
diff --git a/src/main/java/gg/pufferfish/pufferfish/util/Long2ObjectOpenHashMapWrapper.java b/src/main/java/gg/pufferfish/pufferfish/util/Long2ObjectOpenHashMapWrapper.java
|
||||||
new file mode 100644
|
new file mode 100644
|
||||||
index 0000000000000000000000000000000000000000..facd55463d44cb7e3d2ca6892982f5497b8dded1
|
index 0000000000000000000000000000000000000000..42cdc43d6b739973a0944f502089757247ee6c61
|
||||||
--- /dev/null
|
--- /dev/null
|
||||||
+++ b/src/main/java/gg/pufferfish/pufferfish/util/Long2ObjectOpenHashMapWrapper.java
|
+++ b/src/main/java/gg/pufferfish/pufferfish/util/Long2ObjectOpenHashMapWrapper.java
|
||||||
@@ -0,0 +1,40 @@
|
@@ -0,0 +1,40 @@
|
||||||
@@ -2149,19 +2149,19 @@ index 7bddc7517356cc74104dcc5c7c55522a53f2596f..d6a57cdad2c92521a800cb18d060d9d6
|
|||||||
|
|
||||||
public static long getCoordinateKey(final ChunkPos pair) {
|
public static long getCoordinateKey(final ChunkPos pair) {
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 3a9c27ece0ad18b2c4686164766794c56fcea268..9bd03a9ca4d1a5332738b943493c2b7bb339b698 100644
|
index 07c382f30ed3736ed15b5b71f48dc4a1de958242..a6d8f128ac1c2eacf662ee40a04275d45d6754ca 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -310,6 +310,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -311,6 +311,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
|
|
||||||
public volatile Thread shutdownThread; // Paper
|
public volatile Thread shutdownThread; // Paper
|
||||||
public volatile boolean abnormalExit = false; // Paper
|
public volatile boolean abnormalExit = false; // Paper
|
||||||
+
|
|
||||||
+ public gg.pufferfish.pufferfish.util.AsyncExecutor mobSpawnExecutor = new gg.pufferfish.pufferfish.util.AsyncExecutor("MobSpawning", () -> true); // Pufferfish - optimize mob spawning
|
|
||||||
|
|
||||||
|
+ public gg.pufferfish.pufferfish.util.AsyncExecutor mobSpawnExecutor = new gg.pufferfish.pufferfish.util.AsyncExecutor("MobSpawning", () -> true); // Pufferfish - optimize mob spawning
|
||||||
|
+
|
||||||
public static <S extends MinecraftServer> S spin(Function<Thread, S> serverFactory) {
|
public static <S extends MinecraftServer> S spin(Function<Thread, S> serverFactory) {
|
||||||
AtomicReference<S> atomicreference = new AtomicReference();
|
AtomicReference<S> atomicreference = new AtomicReference();
|
||||||
@@ -1685,7 +1687,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
Thread thread = new Thread(() -> {
|
||||||
|
@@ -1683,7 +1685,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
|
|
||||||
@DontObfuscate
|
@DontObfuscate
|
||||||
public String getServerModName() {
|
public String getServerModName() {
|
||||||
@@ -2170,7 +2170,7 @@ index 3a9c27ece0ad18b2c4686164766794c56fcea268..9bd03a9ca4d1a5332738b943493c2b7b
|
|||||||
}
|
}
|
||||||
|
|
||||||
public SystemReport fillSystemReport(SystemReport details) {
|
public SystemReport fillSystemReport(SystemReport details) {
|
||||||
@@ -2243,6 +2245,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -2242,6 +2244,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
}
|
}
|
||||||
|
|
||||||
public ProfilerFiller getProfiler() {
|
public ProfilerFiller getProfiler() {
|
||||||
@@ -2252,19 +2252,19 @@ index edc6235288f0843608dae4552e05915e4067cbf2..d13b53c5497cece27ce06d43401e4f3b
|
|||||||
return this.scaledRange(i);
|
return this.scaledRange(i);
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||||
index 5793154c0deca7fc570bbe858c6bea0d640db941..f33ae29fd86fbfb2a94748fbf9515e3b4ae01753 100644
|
index 5793154c0deca7fc570bbe858c6bea0d640db941..7b855e53b3730ad82bdef5b5d06baa4e4eee5b42 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
--- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java
|
||||||
@@ -74,6 +74,9 @@ public class ServerChunkCache extends ChunkSource {
|
@@ -75,6 +75,9 @@ public class ServerChunkCache extends ChunkSource {
|
||||||
final it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap<LevelChunk> loadedChunkMap = new it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap<>(8192, 0.5f);
|
|
||||||
|
|
||||||
private final LevelChunk[] lastLoadedChunks = new LevelChunk[4 * 4];
|
private final LevelChunk[] lastLoadedChunks = new LevelChunk[4 * 4];
|
||||||
+
|
|
||||||
+ public boolean firstRunSpawnCounts = true; // Pufferfish
|
+ public boolean firstRunSpawnCounts = true; // Pufferfish
|
||||||
+ public final java.util.concurrent.atomic.AtomicBoolean _pufferfish_spawnCountsReady = new java.util.concurrent.atomic.AtomicBoolean(false); // Pufferfish - optimize countmobs
|
+ public final java.util.concurrent.atomic.AtomicBoolean _pufferfish_spawnCountsReady = new java.util.concurrent.atomic.AtomicBoolean(false); // Pufferfish - optimize countmobs
|
||||||
|
+
|
||||||
private static int getChunkCacheKey(int x, int z) {
|
private static int getChunkCacheKey(int x, int z) {
|
||||||
return x & 3 | ((z & 3) << 2);
|
return x & 3 | ((z & 3) << 2);
|
||||||
|
}
|
||||||
@@ -969,6 +972,7 @@ public class ServerChunkCache extends ChunkSource {
|
@@ -969,6 +972,7 @@ public class ServerChunkCache extends ChunkSource {
|
||||||
ProfilerFiller gameprofilerfiller = this.level.getProfiler();
|
ProfilerFiller gameprofilerfiller = this.level.getProfiler();
|
||||||
|
|
||||||
@@ -2368,7 +2368,7 @@ index 1092ba200a945d8d70e48f956535f56e2743302d..937a93d134dc986fe23e5676d58f7619
|
|||||||
this.wasOnGround = this.entity.isOnGround();
|
this.wasOnGround = this.entity.isOnGround();
|
||||||
this.teleportDelay = 0;
|
this.teleportDelay = 0;
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
index b5b56d4549e97abbbe9e91d881b9bca8428f1eec..ce0787be675a1dedec626ae25ffd5bf5ff6a7d69 100644
|
index b5b56d4549e97abbbe9e91d881b9bca8428f1eec..5e9ad7c828a196e6fe85bb3e32aa23b95c83b39d 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
@@ -670,7 +670,20 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
@@ -670,7 +670,20 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||||
@@ -2420,7 +2420,7 @@ index b5b56d4549e97abbbe9e91d881b9bca8428f1eec..ce0787be675a1dedec626ae25ffd5bf5
|
|||||||
|
|
||||||
gameprofilerfiller.popPush("iceandsnow");
|
gameprofilerfiller.popPush("iceandsnow");
|
||||||
- if (!this.paperConfig.disableIceAndSnow && this.random.nextInt(16) == 0) { // Paper - Disable ice and snow
|
- if (!this.paperConfig.disableIceAndSnow && this.random.nextInt(16) == 0) { // Paper - Disable ice and snow
|
||||||
+ if (!this.paperConfig.disableIceAndSnow && (this.currentIceAndSnowTick++ & 15) == 0) { // Paper - Disable ice and snow // Pufferfish - optimize further random ticking
|
+ if (!this.paperConfig.disableIceAndSnow && (this.currentIceAndSnowTick++ & 15) == 0) { // Paper - Disable ice and snow // Paper - optimise random ticking // Pufferfish - optimize further random ticking
|
||||||
// Paper start - optimise chunk ticking
|
// Paper start - optimise chunk ticking
|
||||||
this.getRandomBlockPosition(j, 0, k, 15, blockposition);
|
this.getRandomBlockPosition(j, 0, k, 15, blockposition);
|
||||||
int normalY = chunk.getHeight(Heightmap.Types.MOTION_BLOCKING, blockposition.getX() & 15, blockposition.getZ() & 15) + 1;
|
int normalY = chunk.getHeight(Heightmap.Types.MOTION_BLOCKING, blockposition.getX() & 15, blockposition.getZ() & 15) + 1;
|
||||||
@@ -2549,7 +2549,7 @@ index 7437f01ca8f416e2c9150250e324af4725a4efb6..7ac51dbfce18a2bc52faa7a915abeccc
|
|||||||
int LARGE_MAX_STACK_SIZE = 64;
|
int LARGE_MAX_STACK_SIZE = 64;
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
index 84fce7dccf9232209f939a32acfc3131e62eb27c..59ec3d56e88cf6cee218422481457b944ff25998 100644
|
index 84fce7dccf9232209f939a32acfc3131e62eb27c..c9c444c119a010112d4176f095eee57f0ac888f9 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
@@ -230,7 +230,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
|
@@ -230,7 +230,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
|
||||||
@@ -3389,12 +3389,12 @@ index 798afc145c54306fcf0838d8daef2bdf17763da9..e67d5012bc7af629d05bceb1b1e22162
|
|||||||
final String id;
|
final String id;
|
||||||
private final GameRules.Category category;
|
private final GameRules.Category category;
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
index 160c0f37aa3aaf7598f852acf9bd444f79444c97..d1521394eaf38ab4e3ee55452149458911a3030b 100644
|
index 160c0f37aa3aaf7598f852acf9bd444f79444c97..8026e8ca528071bf80fecb5e96370d1d2ae799db 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||||
@@ -259,6 +259,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
@@ -261,6 +261,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||||
}
|
|
||||||
// Paper end - optimise checkDespawn
|
public abstract ResourceKey<LevelStem> getTypeKey();
|
||||||
|
|
||||||
+ // Pufferfish start - ensure these get inlined
|
+ // Pufferfish start - ensure these get inlined
|
||||||
+ private final int minBuildHeight, minSection, height, maxBuildHeight, maxSection;
|
+ private final int minBuildHeight, minSection, height, maxBuildHeight, maxSection;
|
||||||
@@ -3405,17 +3405,17 @@ index 160c0f37aa3aaf7598f852acf9bd444f79444c97..d1521394eaf38ab4e3ee554521494589
|
|||||||
+ @Override public final int getHeight() { return this.height; }
|
+ @Override public final int getHeight() { return this.height; }
|
||||||
+ // Pufferfish end
|
+ // Pufferfish end
|
||||||
+
|
+
|
||||||
public abstract ResourceKey<LevelStem> getTypeKey();
|
|
||||||
|
|
||||||
protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, Holder<DimensionType> holder, Supplier<ProfilerFiller> supplier, boolean flag, boolean flag1, long i, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.concurrent.Executor executor) { // Paper - Async-Anti-Xray - Pass executor
|
protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, Holder<DimensionType> holder, Supplier<ProfilerFiller> supplier, boolean flag, boolean flag1, long i, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.concurrent.Executor executor) { // Paper - Async-Anti-Xray - Pass executor
|
||||||
|
this.spigotConfig = new org.spigotmc.SpigotWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName()); // Spigot
|
||||||
|
this.paperConfig = new com.destroystokyo.paper.PaperWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName(), this.spigotConfig); // Paper
|
||||||
@@ -279,6 +288,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
@@ -279,6 +288,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||||
this.levelData = worlddatamutable;
|
this.levelData = worlddatamutable;
|
||||||
this.dimensionTypeRegistration = holder;
|
this.dimensionTypeRegistration = holder;
|
||||||
this.dimensionType = (DimensionType) holder.value();
|
this.dimensionType = (DimensionType) holder.value();
|
||||||
+ // Pufferfish start
|
+ // Pufferfish start
|
||||||
+ this.minBuildHeight = this.dimensionType.minY();
|
+ this.minBuildHeight = dimensionType.minY();
|
||||||
+ this.minSection = SectionPos.blockToSectionCoord(this.minBuildHeight);
|
+ this.minSection = SectionPos.blockToSectionCoord(this.minBuildHeight);
|
||||||
+ this.height = this.dimensionType.height();
|
+ this.height = dimensionType.height();
|
||||||
+ this.maxBuildHeight = this.minBuildHeight + this.height;
|
+ this.maxBuildHeight = this.minBuildHeight + this.height;
|
||||||
+ this.maxSection = SectionPos.blockToSectionCoord(this.maxBuildHeight - 1) + 1;
|
+ this.maxSection = SectionPos.blockToSectionCoord(this.maxBuildHeight - 1) + 1;
|
||||||
+ // Pufferfish end
|
+ // Pufferfish end
|
||||||
@@ -3560,10 +3560,47 @@ index 13eded53a64d0f36f8c9bce2077de4f1c1ed2d56..303ad9eab2e0a9b73597ca4ee9d70bea
|
|||||||
return new BlockPos(i, l, j);
|
return new BlockPos(i, l, j);
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/biome/Biome.java b/src/main/java/net/minecraft/world/level/biome/Biome.java
|
diff --git a/src/main/java/net/minecraft/world/level/biome/Biome.java b/src/main/java/net/minecraft/world/level/biome/Biome.java
|
||||||
index 0422d787593cc65aadcae9f7517ec67a52f1f72b..74b446bde17ff023fb19c422d15993fb1f4b3d69 100644
|
index 0422d787593cc65aadcae9f7517ec67a52f1f72b..248da8962a460fe41876bbe8670e8909864b40bc 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/biome/Biome.java
|
--- a/src/main/java/net/minecraft/world/level/biome/Biome.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/biome/Biome.java
|
+++ b/src/main/java/net/minecraft/world/level/biome/Biome.java
|
||||||
@@ -52,14 +52,20 @@ public final class Biome {
|
@@ -37,6 +37,36 @@ import net.minecraft.world.level.material.Fluids;
|
||||||
|
public final class Biome {
|
||||||
|
public static final Codec<Biome> DIRECT_CODEC;
|
||||||
|
public static final Codec<Biome> NETWORK_CODEC;
|
||||||
|
+
|
||||||
|
+ // Pufferfish start - decompile fixes
|
||||||
|
+ static {
|
||||||
|
+ DIRECT_CODEC = RecordCodecBuilder.create((instance) -> {
|
||||||
|
+ return instance.group(Biome.ClimateSettings.CODEC.forGetter((biome) -> {
|
||||||
|
+ return biome.climateSettings;
|
||||||
|
+ }), Biome.BiomeCategory.CODEC.fieldOf("category").forGetter((biome) -> {
|
||||||
|
+ return biome.biomeCategory;
|
||||||
|
+ }), BiomeSpecialEffects.CODEC.fieldOf("effects").forGetter((biome) -> {
|
||||||
|
+ return biome.specialEffects;
|
||||||
|
+ }), BiomeGenerationSettings.CODEC.forGetter((biome) -> {
|
||||||
|
+ return biome.generationSettings;
|
||||||
|
+ }), MobSpawnSettings.CODEC.forGetter((biome) -> {
|
||||||
|
+ return biome.mobSettings;
|
||||||
|
+ })).apply(instance, Biome::new);
|
||||||
|
+ });
|
||||||
|
+ NETWORK_CODEC = RecordCodecBuilder.create((instance) -> {
|
||||||
|
+ return instance.group(Biome.ClimateSettings.CODEC.forGetter((biome) -> {
|
||||||
|
+ return biome.climateSettings;
|
||||||
|
+ }), Biome.BiomeCategory.CODEC.fieldOf("category").forGetter((biome) -> {
|
||||||
|
+ return biome.biomeCategory;
|
||||||
|
+ }), BiomeSpecialEffects.CODEC.fieldOf("effects").forGetter((biome) -> {
|
||||||
|
+ return biome.specialEffects;
|
||||||
|
+ })).apply(instance, (weather, category, effects) -> {
|
||||||
|
+ return new Biome(weather, category, effects, BiomeGenerationSettings.EMPTY, MobSpawnSettings.EMPTY);
|
||||||
|
+ });
|
||||||
|
+ });
|
||||||
|
+ }
|
||||||
|
+ // Pufferfish end
|
||||||
|
+
|
||||||
|
public static final Codec<Holder<Biome>> CODEC = RegistryFileCodec.create(Registry.BIOME_REGISTRY, DIRECT_CODEC);
|
||||||
|
public static final Codec<HolderSet<Biome>> LIST_CODEC = RegistryCodecs.homogeneousList(Registry.BIOME_REGISTRY, DIRECT_CODEC);
|
||||||
|
private static final PerlinSimplexNoise TEMPERATURE_NOISE = new PerlinSimplexNoise(new WorldgenRandom(new LegacyRandomSource(1234L)), ImmutableList.of(0));
|
||||||
|
@@ -52,14 +82,20 @@ public final class Biome {
|
||||||
private final MobSpawnSettings mobSettings;
|
private final MobSpawnSettings mobSettings;
|
||||||
private final Biome.BiomeCategory biomeCategory;
|
private final Biome.BiomeCategory biomeCategory;
|
||||||
private final BiomeSpecialEffects specialEffects;
|
private final BiomeSpecialEffects specialEffects;
|
||||||
@@ -3585,7 +3622,7 @@ index 0422d787593cc65aadcae9f7517ec67a52f1f72b..74b446bde17ff023fb19c422d15993fb
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -101,17 +107,15 @@ public final class Biome {
|
@@ -101,17 +137,15 @@ public final class Biome {
|
||||||
@Deprecated
|
@Deprecated
|
||||||
public float getTemperature(BlockPos blockPos) {
|
public float getTemperature(BlockPos blockPos) {
|
||||||
long l = blockPos.asLong();
|
long l = blockPos.asLong();
|
||||||
@@ -3608,6 +3645,24 @@ index 0422d787593cc65aadcae9f7517ec67a52f1f72b..74b446bde17ff023fb19c422d15993fb
|
|||||||
return g;
|
return g;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -253,6 +287,8 @@ public final class Biome {
|
||||||
|
return biomeEntry.value().getBiomeCategory();
|
||||||
|
}
|
||||||
|
|
||||||
|
+ // Pufferfish - decompile fixes (what the fuck)
|
||||||
|
+ /*
|
||||||
|
static {
|
||||||
|
DIRECT_CODEC = RecordCodecBuilder.create((instance) -> {
|
||||||
|
return instance.group(Biome.ClimateSettings.CODEC.forGetter((biome) -> {
|
||||||
|
@@ -279,6 +315,8 @@ public final class Biome {
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
+ */
|
||||||
|
+ // Pufferfish end
|
||||||
|
|
||||||
|
public static class BiomeBuilder {
|
||||||
|
@Nullable
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/block/entity/ChestBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/ChestBlockEntity.java
|
diff --git a/src/main/java/net/minecraft/world/level/block/entity/ChestBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/ChestBlockEntity.java
|
||||||
index e56f7d76b501dab7d549efd2fafd514a9625c24e..066f43deb5df6f79428eb0f325c2abfb31ea9254 100644
|
index e56f7d76b501dab7d549efd2fafd514a9625c24e..066f43deb5df6f79428eb0f325c2abfb31ea9254 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/block/entity/ChestBlockEntity.java
|
--- a/src/main/java/net/minecraft/world/level/block/entity/ChestBlockEntity.java
|
||||||
@@ -3852,20 +3907,18 @@ index d4ce71d98c5071cd3567c772a0853ca86550bad5..5d91f00e81864a981ca457fc4fa88f01
|
|||||||
|
|
||||||
public org.bukkit.Chunk bukkitChunk;
|
public org.bukkit.Chunk bukkitChunk;
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java
|
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java
|
||||||
index b11ad90c0956ac1b8ee069fa3f4553a2b4ce88e9..a32a90056acf37150b90f2941ce5b87b6ca8d162 100644
|
index b11ad90c0956ac1b8ee069fa3f4553a2b4ce88e9..d69fe40d3af983144999963ec25b32500237e515 100644
|
||||||
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java
|
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java
|
||||||
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java
|
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java
|
||||||
@@ -26,6 +26,9 @@ public class LevelChunkSection {
|
@@ -26,6 +26,7 @@ public class LevelChunkSection {
|
||||||
private short tickingFluidCount;
|
private short tickingFluidCount;
|
||||||
public final PalettedContainer<BlockState> states;
|
public final PalettedContainer<BlockState> states;
|
||||||
private final PalettedContainer<Holder<Biome>> biomes;
|
private final PalettedContainer<Holder<Biome>> biomes;
|
||||||
+ // Pufferfish start
|
+ public short fluidStateCount; // Pufferfish
|
||||||
+ public short fluidStateCount;
|
|
||||||
+ // Pufferfish end
|
|
||||||
public final com.destroystokyo.paper.util.maplist.IBlockDataList tickingList = new com.destroystokyo.paper.util.maplist.IBlockDataList(); // Paper
|
public final com.destroystokyo.paper.util.maplist.IBlockDataList tickingList = new com.destroystokyo.paper.util.maplist.IBlockDataList(); // Paper
|
||||||
|
|
||||||
public LevelChunkSection(int chunkPos, PalettedContainer<BlockState> blockStateContainer, PalettedContainer<Holder<Biome>> biomeContainer) {
|
public LevelChunkSection(int chunkPos, PalettedContainer<BlockState> blockStateContainer, PalettedContainer<Holder<Biome>> biomeContainer) {
|
||||||
@@ -196,6 +199,7 @@ public class LevelChunkSection {
|
@@ -196,6 +197,7 @@ public class LevelChunkSection {
|
||||||
|
|
||||||
if (!fluid.isEmpty()) {
|
if (!fluid.isEmpty()) {
|
||||||
--this.tickingFluidCount;
|
--this.tickingFluidCount;
|
||||||
@@ -3873,7 +3926,7 @@ index b11ad90c0956ac1b8ee069fa3f4553a2b4ce88e9..a32a90056acf37150b90f2941ce5b87b
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!state.isAir()) {
|
if (!state.isAir()) {
|
||||||
@@ -210,6 +214,7 @@ public class LevelChunkSection {
|
@@ -210,6 +212,7 @@ public class LevelChunkSection {
|
||||||
|
|
||||||
if (!fluid1.isEmpty()) {
|
if (!fluid1.isEmpty()) {
|
||||||
++this.tickingFluidCount;
|
++this.tickingFluidCount;
|
||||||
@@ -3881,7 +3934,7 @@ index b11ad90c0956ac1b8ee069fa3f4553a2b4ce88e9..a32a90056acf37150b90f2941ce5b87b
|
|||||||
}
|
}
|
||||||
|
|
||||||
this.updateKnownBlockInfo(x | (z << 4) | (y << 8), iblockdata1, state); // Paper
|
this.updateKnownBlockInfo(x | (z << 4) | (y << 8), iblockdata1, state); // Paper
|
||||||
@@ -258,6 +263,7 @@ public class LevelChunkSection {
|
@@ -258,6 +261,7 @@ public class LevelChunkSection {
|
||||||
if (fluid.isRandomlyTicking()) {
|
if (fluid.isRandomlyTicking()) {
|
||||||
this.tickingFluidCount = (short) (this.tickingFluidCount + 1);
|
this.tickingFluidCount = (short) (this.tickingFluidCount + 1);
|
||||||
}
|
}
|
||||||
@@ -4035,44 +4088,53 @@ index 05b64f2730bfe836bd1d72dcfccd9f536908a099..d33af84300db18ea2b71dba2c9ed4339
|
|||||||
|
|
||||||
public boolean hasParam(LootContextParam<?> parameter) {
|
public boolean hasParam(LootContextParam<?> parameter) {
|
||||||
diff --git a/src/main/java/net/minecraft/world/phys/shapes/EntityCollisionContext.java b/src/main/java/net/minecraft/world/phys/shapes/EntityCollisionContext.java
|
diff --git a/src/main/java/net/minecraft/world/phys/shapes/EntityCollisionContext.java b/src/main/java/net/minecraft/world/phys/shapes/EntityCollisionContext.java
|
||||||
index b1992ed5136cc7dcf04219868b94b3c37ae36b4b..7d494a050d1dac79c7bae5a7464fccabfdc6066d 100644
|
index b1992ed5136cc7dcf04219868b94b3c37ae36b4b..5b5339cba819368f4d6b7eaf404fa59bca4c0518 100644
|
||||||
--- a/src/main/java/net/minecraft/world/phys/shapes/EntityCollisionContext.java
|
--- a/src/main/java/net/minecraft/world/phys/shapes/EntityCollisionContext.java
|
||||||
+++ b/src/main/java/net/minecraft/world/phys/shapes/EntityCollisionContext.java
|
+++ b/src/main/java/net/minecraft/world/phys/shapes/EntityCollisionContext.java
|
||||||
@@ -19,47 +19,68 @@ public class EntityCollisionContext implements CollisionContext {
|
@@ -19,47 +19,66 @@ public class EntityCollisionContext implements CollisionContext {
|
||||||
return defaultValue;
|
return defaultValue;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
- private final boolean descending;
|
||||||
|
- private final double entityBottom;
|
||||||
|
- private final ItemStack heldItem;
|
||||||
|
- private final Predicate<FluidState> canStandOnFluid;
|
||||||
+ // Pufferfish start - remove these and pray no plugin uses them
|
+ // Pufferfish start - remove these and pray no plugin uses them
|
||||||
+ /*
|
+ // private final boolean descending;
|
||||||
private final boolean descending;
|
+ // private final double entityBottom;
|
||||||
private final double entityBottom;
|
+ // private final ItemStack heldItem;
|
||||||
private final ItemStack heldItem;
|
+ // private final Predicate<FluidState> canStandOnFluid;
|
||||||
private final Predicate<FluidState> canStandOnFluid;
|
+ // Pufferfish end
|
||||||
+ */
|
|
||||||
@Nullable
|
@Nullable
|
||||||
private final Entity entity;
|
private final Entity entity;
|
||||||
|
|
||||||
protected EntityCollisionContext(boolean descending, double minY, ItemStack heldItem, Predicate<FluidState> walkOnFluidPredicate, @Nullable Entity entity) {
|
protected EntityCollisionContext(boolean descending, double minY, ItemStack heldItem, Predicate<FluidState> walkOnFluidPredicate, @Nullable Entity entity) {
|
||||||
+ /*
|
- this.descending = descending;
|
||||||
this.descending = descending;
|
- this.entityBottom = minY;
|
||||||
this.entityBottom = minY;
|
- this.heldItem = heldItem;
|
||||||
this.heldItem = heldItem;
|
- this.canStandOnFluid = walkOnFluidPredicate;
|
||||||
this.canStandOnFluid = walkOnFluidPredicate;
|
+ // Pufferfish start - remove these
|
||||||
+ */
|
+ // this.descending = descending;
|
||||||
|
+ // this.entityBottom = minY;
|
||||||
|
+ // this.heldItem = heldItem;
|
||||||
|
+ // this.canStandOnFluid = walkOnFluidPredicate;
|
||||||
|
+ // Pufferfish end
|
||||||
this.entity = entity;
|
this.entity = entity;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** @deprecated */
|
/** @deprecated */
|
||||||
@Deprecated
|
@Deprecated
|
||||||
protected EntityCollisionContext(Entity entity) {
|
protected EntityCollisionContext(Entity entity) {
|
||||||
+ /*
|
- this(entity.isDescending(), entity.getY(), entity instanceof LivingEntity ? ((LivingEntity)entity).getMainHandItem() : ItemStack.EMPTY, entity instanceof LivingEntity ? ((LivingEntity)entity)::canStandOnFluid : (fluidState) -> {
|
||||||
this(entity.isDescending(), entity.getY(), entity instanceof LivingEntity ? ((LivingEntity)entity).getMainHandItem() : ItemStack.EMPTY, entity instanceof LivingEntity ? ((LivingEntity)entity)::canStandOnFluid : (fluidState) -> {
|
- return false;
|
||||||
return false;
|
- }, entity);
|
||||||
}, entity);
|
+ // Pufferfish start - remove this
|
||||||
+ */
|
+ // this(entity.isDescending(), entity.getY(), entity instanceof LivingEntity ? ((LivingEntity)entity).getMainHandItem() : ItemStack.EMPTY, entity instanceof LivingEntity ? ((LivingEntity)entity)::canStandOnFluid : (fluidState) -> {
|
||||||
|
+ // return false;
|
||||||
|
+ // }, entity);
|
||||||
|
+ // Pufferfish end
|
||||||
+ this.entity = entity;
|
+ this.entity = entity;
|
||||||
}
|
}
|
||||||
+ // Pufferfish end
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isHoldingItem(Item item) {
|
public boolean isHoldingItem(Item item) {
|
||||||
@@ -4112,7 +4174,7 @@ index b1992ed5136cc7dcf04219868b94b3c37ae36b4b..7d494a050d1dac79c7bae5a7464fccab
|
|||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
index 5a6290e5d7b82dbc069d159ea53292e4dbc94d03..118b9aed39dfaa3780905bb38738ba8b131fc0e4 100644
|
index 7343bd96a4a15f4abc081e565175db8df930a470..cc88eb1247bafb65999e1ca5624c87b038b27866 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
@@ -248,7 +248,7 @@ import javax.annotation.Nullable; // Paper
|
@@ -248,7 +248,7 @@ import javax.annotation.Nullable; // Paper
|
||||||
@@ -4186,7 +4248,7 @@ index 909b2c98e7a9117d2f737245e4661792ffafb744..0d9e2b3728f9ab500bd5e44702718535
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||||
index d50661d29608e2e805c24a9eb3dd5ce72134a14e..8197dc85f5b8d5965c2f8edacc853fc7f7daf22c 100644
|
index 41e7ca100073052b99c82fa6a82f8168e0135499..7e06f263cf618b82f77101ef86d819d5dc37a24e 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||||
@@ -430,7 +430,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
@@ -430,7 +430,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Rebrand
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/build.gradle.kts b/build.gradle.kts
|
diff --git a/build.gradle.kts b/build.gradle.kts
|
||||||
index 27c18ced1ce6d38c9cd05eb4269f25a9d6520030..58948319c004d89a90052d061f9c9293375b9c88 100644
|
index ecb65e75d19d2f7b72410c89251e56566b7b6dc0..bd5d784ad6fb9786e03bd614baa40954b9fe6090 100644
|
||||||
--- a/build.gradle.kts
|
--- a/build.gradle.kts
|
||||||
+++ b/build.gradle.kts
|
+++ b/build.gradle.kts
|
||||||
@@ -18,7 +18,7 @@ repositories {
|
@@ -18,7 +18,7 @@ repositories {
|
||||||
@@ -15,7 +15,7 @@ index 27c18ced1ce6d38c9cd05eb4269f25a9d6520030..58948319c004d89a90052d061f9c9293
|
|||||||
- implementation(project(":pufferfish-api")) // Pufferfish // Paper
|
- implementation(project(":pufferfish-api")) // Pufferfish // Paper
|
||||||
+ implementation(project(":purpur-api")) // Pufferfish // Paper // Purpur
|
+ implementation(project(":purpur-api")) // Pufferfish // Paper // Purpur
|
||||||
// Pufferfish start
|
// Pufferfish start
|
||||||
implementation("io.papermc.paper:paper-mojangapi:1.18.1-R0.1-SNAPSHOT") {
|
implementation("io.papermc.paper:paper-mojangapi:1.18.2-R0.1-SNAPSHOT") {
|
||||||
exclude("io.papermc.paper", "paper-api")
|
exclude("io.papermc.paper", "paper-api")
|
||||||
@@ -54,6 +54,8 @@ dependencies {
|
@@ -54,6 +54,8 @@ dependencies {
|
||||||
isTransitive = false
|
isTransitive = false
|
||||||
@@ -167,10 +167,10 @@ index 1a859fef0848cf23a672012e9764965ae1c07ec5..14ed740609b14242c2a8d377a78b2f71
|
|||||||
stringbuilder.append(CrashReport.getErrorComment());
|
stringbuilder.append(CrashReport.getErrorComment());
|
||||||
stringbuilder.append("\n\n");
|
stringbuilder.append("\n\n");
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 9bd03a9ca4d1a5332738b943493c2b7bb339b698..631e2e9bee442a185b3423594e9065e39458bba6 100644
|
index a6d8f128ac1c2eacf662ee40a04275d45d6754ca..4633f75991dc5e261fb96bd707cca7bf304fcc13 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -960,7 +960,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -958,7 +958,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
shutdownThread = Thread.currentThread();
|
shutdownThread = Thread.currentThread();
|
||||||
org.spigotmc.WatchdogThread.doStop(); // Paper
|
org.spigotmc.WatchdogThread.doStop(); // Paper
|
||||||
if (!isSameThread()) {
|
if (!isSameThread()) {
|
||||||
@@ -179,7 +179,7 @@ index 9bd03a9ca4d1a5332738b943493c2b7bb339b698..631e2e9bee442a185b3423594e9065e3
|
|||||||
while (this.getRunningThread().isAlive()) {
|
while (this.getRunningThread().isAlive()) {
|
||||||
this.getRunningThread().stop();
|
this.getRunningThread().stop();
|
||||||
try {
|
try {
|
||||||
@@ -1687,7 +1687,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1685,7 +1685,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
|
|
||||||
@DontObfuscate
|
@DontObfuscate
|
||||||
public String getServerModName() {
|
public String getServerModName() {
|
||||||
@@ -221,7 +221,7 @@ index 303b70f0433ff49a3bee2a0d92c41f01aec38bee..5e9fc979daced5dad9977ab12ea019f4
|
|||||||
|
|
||||||
private static final int DEFAULT_SIZE_THRESHOLD = 1024 * 8;
|
private static final int DEFAULT_SIZE_THRESHOLD = 1024 * 8;
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
index 118b9aed39dfaa3780905bb38738ba8b131fc0e4..4bc37e48600d830a9cdc379428fcd82c9d9639d4 100644
|
index cc88eb1247bafb65999e1ca5624c87b038b27866..0c4140890198d68901c1045e9259b866ef027272 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
@@ -248,7 +248,7 @@ import javax.annotation.Nullable; // Paper
|
@@ -248,7 +248,7 @@ import javax.annotation.Nullable; // Paper
|
||||||
@@ -287,7 +287,7 @@ index cdefb2025eedea7e204d70d568adaf1c1ec4c03c..d1526ed7197b883e1d1f07baf285bf5e
|
|||||||
// (async tasks must live with race-conditions if they attempt to cancel between these few lines of code)
|
// (async tasks must live with race-conditions if they attempt to cancel between these few lines of code)
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||||
index 8197dc85f5b8d5965c2f8edacc853fc7f7daf22c..3c749451057e7e8d66b7822a01701242ba6068af 100644
|
index 7e06f263cf618b82f77101ef86d819d5dc37a24e..9d974b535c03ff06f7f01cdd17dc700e3a3f150e 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java
|
||||||
@@ -430,7 +430,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
@@ -430,7 +430,7 @@ public final class CraftMagicNumbers implements UnsafeValues {
|
||||||
|
|||||||
@@ -22,10 +22,10 @@ index 8c79f66abd42e9c9875e8877c6dd82b5e3cfa184..2841469748bc308f690aaeb34fe05cb2
|
|||||||
super(x, y, z);
|
super(x, y, z);
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 2f24119ed147b7952f671dbac21d05cf38960cc0..0fec369bd64aeebebf5702a15090982b32dcd7a7 100644
|
index 4633f75991dc5e261fb96bd707cca7bf304fcc13..40ec9dc096f292707bfe93dde0bc727dbff4de88 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1565,6 +1565,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1563,6 +1563,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
ServerLevel worldserver = (ServerLevel) iterator.next();
|
ServerLevel worldserver = (ServerLevel) iterator.next();
|
||||||
worldserver.hasPhysicsEvent = org.bukkit.event.block.BlockPhysicsEvent.getHandlerList().getRegisteredListeners().length > 0; // Paper
|
worldserver.hasPhysicsEvent = org.bukkit.event.block.BlockPhysicsEvent.getHandlerList().getRegisteredListeners().length > 0; // Paper
|
||||||
worldserver.hasEntityMoveEvent = io.papermc.paper.event.entity.EntityMoveEvent.getHandlerList().getRegisteredListeners().length > 0; // Paper
|
worldserver.hasEntityMoveEvent = io.papermc.paper.event.entity.EntityMoveEvent.getHandlerList().getRegisteredListeners().length > 0; // Paper
|
||||||
@@ -34,7 +34,7 @@ index 2f24119ed147b7952f671dbac21d05cf38960cc0..0fec369bd64aeebebf5702a15090982b
|
|||||||
|
|
||||||
this.profiler.push(() -> {
|
this.profiler.push(() -> {
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
index a154761eecb4911f8b646cccbb9b713e0fcc693e..291ec6d665daf222150f05ccdf759b8166a718a9 100644
|
index 5e9ad7c828a196e6fe85bb3e32aa23b95c83b39d..25d66a6d717c21602318e23f417658c2aeebeb18 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
@@ -212,6 +212,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
@@ -212,6 +212,7 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||||
@@ -79,7 +79,7 @@ index 353848667006bc386fe5d3fceb61ac58be20a941..d61e30e19c1144a3610f92028c047e0f
|
|||||||
if ((entity instanceof Bucketable && entity instanceof LivingEntity && origItem != null && origItem.asItem() == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelected() == null || ServerGamePacketListenerImpl.this.player.getInventory().getSelected().getItem() != origItem)) {
|
if ((entity instanceof Bucketable && entity instanceof LivingEntity && origItem != null && origItem.asItem() == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelected() == null || ServerGamePacketListenerImpl.this.player.getInventory().getSelected().getItem() != origItem)) {
|
||||||
ServerGamePacketListenerImpl.this.send(new ClientboundAddMobPacket((LivingEntity) entity));
|
ServerGamePacketListenerImpl.this.send(new ClientboundAddMobPacket((LivingEntity) entity));
|
||||||
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
index 8e7d8482f44799d2df6ebea380dc4ff47fd66c3d..b630e2a4decc750474f4c9dc6669ecb420a9ceaf 100644
|
index 3522b7b81eae07ac010c5f9fd056210ff80d5b7d..a798d5ea72bc06395e27199c57be86b407311e50 100644
|
||||||
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
--- a/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
|
||||||
@@ -300,7 +300,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
|
@@ -300,7 +300,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, i
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Configurable server mod name
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 0fec369bd64aeebebf5702a15090982b32dcd7a7..e741c1b1d34d85c69cde76f43283728219c188ff 100644
|
index 40ec9dc096f292707bfe93dde0bc727dbff4de88..3290702916f6ee8dca3d5a79ddad90b1db3d76a0 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1688,7 +1688,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1686,7 +1686,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
|
|
||||||
@DontObfuscate
|
@DontObfuscate
|
||||||
public String getServerModName() {
|
public String getServerModName() {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Lagging threshold
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index e741c1b1d34d85c69cde76f43283728219c188ff..e0e9d76519738a74ab30df077150967e0175ea59 100644
|
index 3290702916f6ee8dca3d5a79ddad90b1db3d76a0..b9b95ccd4a1041008b54d6cd0293ea220bdcac8d 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -304,6 +304,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -304,6 +304,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
@@ -16,7 +16,7 @@ index e741c1b1d34d85c69cde76f43283728219c188ff..e0e9d76519738a74ab30df077150967e
|
|||||||
public final SlackActivityAccountant slackActivityAccountant = new SlackActivityAccountant();
|
public final SlackActivityAccountant slackActivityAccountant = new SlackActivityAccountant();
|
||||||
// Spigot end
|
// Spigot end
|
||||||
public static long currentTickLong = 0L; // Paper
|
public static long currentTickLong = 0L; // Paper
|
||||||
@@ -1205,6 +1206,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1203,6 +1204,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
this.recentTps[1] = tps5.getAverage();
|
this.recentTps[1] = tps5.getAverage();
|
||||||
this.recentTps[2] = tps15.getAverage();
|
this.recentTps[2] = tps15.getAverage();
|
||||||
// Paper end
|
// Paper end
|
||||||
@@ -25,7 +25,7 @@ index e741c1b1d34d85c69cde76f43283728219c188ff..e0e9d76519738a74ab30df077150967e
|
|||||||
}
|
}
|
||||||
// Spigot end
|
// Spigot end
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
index 36776ee4e143b1198a88bf08fd4ba2d2116fe1d1..1f9009ede5df807808a7e9e1f8a70ab5a135baa7 100644
|
index be5dd98b305fb83cbb344f80c045720c3cb900cf..571cbb2a811c2ce7459db48a1d648e86fd0448d3 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
@@ -2859,5 +2859,10 @@ public final class CraftServer implements Server {
|
@@ -2859,5 +2859,10 @@ public final class CraftServer implements Server {
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Configurable TPS Catchup
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index e0e9d76519738a74ab30df077150967e0175ea59..67e888a41da7dc3bf47a5698ec251b135bd59426 100644
|
index b9b95ccd4a1041008b54d6cd0293ea220bdcac8d..4956c82877a9b2b89ef626260e3abf1523f7d7fe 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1224,7 +1224,13 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1222,7 +1222,13 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
this.tickServer(this::haveTime);
|
this.tickServer(this::haveTime);
|
||||||
this.profiler.popPush("nextTickWait");
|
this.profiler.popPush("nextTickWait");
|
||||||
this.mayHaveDelayedTasks = true;
|
this.mayHaveDelayedTasks = true;
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ index fa56cd09102a89692b42f1d14257990508c5c720..f9251183df72ddc56662fd3f02acf216
|
|||||||
setListData(vector);
|
setListData(vector);
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 67e888a41da7dc3bf47a5698ec251b135bd59426..4708f7b2cdbd9e73c98f3dab464964b7b3d1accb 100644
|
index 4956c82877a9b2b89ef626260e3abf1523f7d7fe..4f227401e17419f0ed4344b38aeb7f86d99ba3b5 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -303,7 +303,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -303,7 +303,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
@@ -39,7 +39,7 @@ index 67e888a41da7dc3bf47a5698ec251b135bd59426..4708f7b2cdbd9e73c98f3dab464964b7
|
|||||||
public boolean lagging = false; // Purpur
|
public boolean lagging = false; // Purpur
|
||||||
public final SlackActivityAccountant slackActivityAccountant = new SlackActivityAccountant();
|
public final SlackActivityAccountant slackActivityAccountant = new SlackActivityAccountant();
|
||||||
// Spigot end
|
// Spigot end
|
||||||
@@ -1108,6 +1108,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1106,6 +1106,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
private static final long MAX_CATCHUP_BUFFER = TICK_TIME * TPS * 60L;
|
private static final long MAX_CATCHUP_BUFFER = TICK_TIME * TPS * 60L;
|
||||||
private long lastTick = 0;
|
private long lastTick = 0;
|
||||||
private long catchupTime = 0;
|
private long catchupTime = 0;
|
||||||
@@ -47,7 +47,7 @@ index 67e888a41da7dc3bf47a5698ec251b135bd59426..4708f7b2cdbd9e73c98f3dab464964b7
|
|||||||
public final RollingAverage tps1 = new RollingAverage(60);
|
public final RollingAverage tps1 = new RollingAverage(60);
|
||||||
public final RollingAverage tps5 = new RollingAverage(60 * 5);
|
public final RollingAverage tps5 = new RollingAverage(60 * 5);
|
||||||
public final RollingAverage tps15 = new RollingAverage(60 * 15);
|
public final RollingAverage tps15 = new RollingAverage(60 * 15);
|
||||||
@@ -1198,13 +1199,17 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1196,13 +1197,17 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
{
|
{
|
||||||
final long diff = curTime - tickSection;
|
final long diff = curTime - tickSection;
|
||||||
java.math.BigDecimal currentTps = TPS_BASE.divide(new java.math.BigDecimal(diff), 30, java.math.RoundingMode.HALF_UP);
|
java.math.BigDecimal currentTps = TPS_BASE.divide(new java.math.BigDecimal(diff), 30, java.math.RoundingMode.HALF_UP);
|
||||||
@@ -69,7 +69,7 @@ index 67e888a41da7dc3bf47a5698ec251b135bd59426..4708f7b2cdbd9e73c98f3dab464964b7
|
|||||||
lagging = recentTps[0] < org.purpurmc.purpur.PurpurConfig.laggingThreshold; // Purpur
|
lagging = recentTps[0] < org.purpurmc.purpur.PurpurConfig.laggingThreshold; // Purpur
|
||||||
tickSection = curTime;
|
tickSection = curTime;
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
index 1f9009ede5df807808a7e9e1f8a70ab5a135baa7..4eb628e3102d16a63a586fadb83af28ccef5cbcb 100644
|
index 571cbb2a811c2ce7459db48a1d648e86fd0448d3..5fa7f70be550cb6d314b713263886c5dd59f7917 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||||
@@ -2636,6 +2636,7 @@ public final class CraftServer implements Server {
|
@@ -2636,6 +2636,7 @@ public final class CraftServer implements Server {
|
||||||
|
|||||||
@@ -18,10 +18,10 @@ index 689ad22925b2561f7c8db961743eb1f821dbb25f..fa3c960992cc240161817e54659d83fe
|
|||||||
public ClientboundSetTimePacket(long time, long timeOfDay, boolean doDaylightCycle) {
|
public ClientboundSetTimePacket(long time, long timeOfDay, boolean doDaylightCycle) {
|
||||||
this.gameTime = time % 192000; // Paper - fix guardian beam
|
this.gameTime = time % 192000; // Paper - fix guardian beam
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 4708f7b2cdbd9e73c98f3dab464964b7b3d1accb..d3add7aab3127845c68b44a6443b5165cf074367 100644
|
index 4f227401e17419f0ed4344b38aeb7f86d99ba3b5..53b27a29e44d5e6afb78871fd36ca573237e6d8b 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1561,7 +1561,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1559,7 +1559,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
long worldTime = world.getGameTime();
|
long worldTime = world.getGameTime();
|
||||||
final ClientboundSetTimePacket worldPacket = new ClientboundSetTimePacket(worldTime, dayTime, doDaylight);
|
final ClientboundSetTimePacket worldPacket = new ClientboundSetTimePacket(worldTime, dayTime, doDaylight);
|
||||||
for (Player entityhuman : world.players()) {
|
for (Player entityhuman : world.players()) {
|
||||||
@@ -31,7 +31,7 @@ index 4708f7b2cdbd9e73c98f3dab464964b7b3d1accb..d3add7aab3127845c68b44a6443b5165
|
|||||||
}
|
}
|
||||||
ServerPlayer entityplayer = (ServerPlayer) entityhuman;
|
ServerPlayer entityplayer = (ServerPlayer) entityhuman;
|
||||||
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
index c2481006511217c1677dbb2bab01b40c2d8233ee..fef7565a9f64a8630e8bce20ea423f70b0ffa48e 100644
|
index 770284a45385e64ad08b918f54e52777c98b8fd1..33e5d641781a5aaeb401167d67518f524380a6a6 100644
|
||||||
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
|
||||||
@@ -202,6 +202,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
@@ -202,6 +202,8 @@ public class ServerLevel extends Level implements WorldGenLevel {
|
||||||
|
|||||||
@@ -17,10 +17,10 @@ index 362fd34016b83ba346a43abb6acf38d887918437..c137f5299e4a9e2f33aeef77818c62c3
|
|||||||
|
|
||||||
if (environment.includeIntegrated) {
|
if (environment.includeIntegrated) {
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index d9b0c98fef7aa7cba549bc76b6340b1100dc545a..f61d0b666a6d8a4dd184303068755ea666307d17 100644
|
index 53b27a29e44d5e6afb78871fd36ca573237e6d8b..2b344ddae29a578664888df853b5c48c728c4d50 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1082,6 +1082,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1080,6 +1080,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
this.safeShutdown(flag, false);
|
this.safeShutdown(flag, false);
|
||||||
}
|
}
|
||||||
public void safeShutdown(boolean flag, boolean isRestarting) {
|
public void safeShutdown(boolean flag, boolean isRestarting) {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Subject: [PATCH] UPnP Port Forwarding
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 6f2354856052e348942cc2a42cb6f364bfccc9c6..13f7389e9d26940e7a6ffcdc2c266b26cd5c7319 100644
|
index 061828c358924efa6119e2bdf813e478c10b77a0..73993468c880906e6d7f03b5ba3cb2318f433d57 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -309,6 +309,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -309,6 +309,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
@@ -16,7 +16,7 @@ index 6f2354856052e348942cc2a42cb6f364bfccc9c6..13f7389e9d26940e7a6ffcdc2c266b26
|
|||||||
|
|
||||||
public volatile Thread shutdownThread; // Paper
|
public volatile Thread shutdownThread; // Paper
|
||||||
public volatile boolean abnormalExit = false; // Paper
|
public volatile boolean abnormalExit = false; // Paper
|
||||||
@@ -974,6 +975,14 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -972,6 +973,14 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
MinecraftServer.LOGGER.info("Stopping server");
|
MinecraftServer.LOGGER.info("Stopping server");
|
||||||
MinecraftTimings.stopServer(); // Paper
|
MinecraftTimings.stopServer(); // Paper
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Give bee counts in beehives to Purpur clients
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
index 13f7389e9d26940e7a6ffcdc2c266b26cd5c7319..25ad2d70a91ce127fbd96ff649939f9acfdb923e 100644
|
index 73993468c880906e6d7f03b5ba3cb2318f433d57..1980bee459e8b0db7800903229aead69d6ceb21a 100644
|
||||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1093,6 +1093,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1091,6 +1091,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
}
|
}
|
||||||
public void safeShutdown(boolean flag, boolean isRestarting) {
|
public void safeShutdown(boolean flag, boolean isRestarting) {
|
||||||
org.purpurmc.purpur.task.BossBarTask.stopAll(); // Purpur
|
org.purpurmc.purpur.task.BossBarTask.stopAll(); // Purpur
|
||||||
|
|||||||
@@ -1,77 +0,0 @@
|
|||||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
||||||
From: BillyGalbreath <Blake.Galbreath@Gmail.com>
|
|
||||||
Date: Tue, 1 Mar 2022 17:03:44 -0600
|
|
||||||
Subject: [PATCH] Fix compile errors
|
|
||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/world/level/biome/Biome.java b/src/main/java/net/minecraft/world/level/biome/Biome.java
|
|
||||||
index 74b446bde17ff023fb19c422d15993fb1f4b3d69..e23d835557b02a1a882cfc8ae59e7d767e5ffe12 100644
|
|
||||||
--- a/src/main/java/net/minecraft/world/level/biome/Biome.java
|
|
||||||
+++ b/src/main/java/net/minecraft/world/level/biome/Biome.java
|
|
||||||
@@ -37,6 +37,32 @@ import net.minecraft.world.level.material.Fluids;
|
|
||||||
public final class Biome {
|
|
||||||
public static final Codec<Biome> DIRECT_CODEC;
|
|
||||||
public static final Codec<Biome> NETWORK_CODEC;
|
|
||||||
+ static {
|
|
||||||
+ DIRECT_CODEC = RecordCodecBuilder.create((instance) -> {
|
|
||||||
+ return instance.group(Biome.ClimateSettings.CODEC.forGetter((biome) -> {
|
|
||||||
+ return biome.climateSettings;
|
|
||||||
+ }), Biome.BiomeCategory.CODEC.fieldOf("category").forGetter((biome) -> {
|
|
||||||
+ return biome.biomeCategory;
|
|
||||||
+ }), BiomeSpecialEffects.CODEC.fieldOf("effects").forGetter((biome) -> {
|
|
||||||
+ return biome.specialEffects;
|
|
||||||
+ }), BiomeGenerationSettings.CODEC.forGetter((biome) -> {
|
|
||||||
+ return biome.generationSettings;
|
|
||||||
+ }), MobSpawnSettings.CODEC.forGetter((biome) -> {
|
|
||||||
+ return biome.mobSettings;
|
|
||||||
+ })).apply(instance, Biome::new);
|
|
||||||
+ });
|
|
||||||
+ NETWORK_CODEC = RecordCodecBuilder.create((instance) -> {
|
|
||||||
+ return instance.group(Biome.ClimateSettings.CODEC.forGetter((biome) -> {
|
|
||||||
+ return biome.climateSettings;
|
|
||||||
+ }), Biome.BiomeCategory.CODEC.fieldOf("category").forGetter((biome) -> {
|
|
||||||
+ return biome.biomeCategory;
|
|
||||||
+ }), BiomeSpecialEffects.CODEC.fieldOf("effects").forGetter((biome) -> {
|
|
||||||
+ return biome.specialEffects;
|
|
||||||
+ })).apply(instance, (weather, category, effects) -> {
|
|
||||||
+ return new Biome(weather, category, effects, BiomeGenerationSettings.EMPTY, MobSpawnSettings.EMPTY);
|
|
||||||
+ });
|
|
||||||
+ });
|
|
||||||
+ }
|
|
||||||
public static final Codec<Holder<Biome>> CODEC = RegistryFileCodec.create(Registry.BIOME_REGISTRY, DIRECT_CODEC);
|
|
||||||
public static final Codec<HolderSet<Biome>> LIST_CODEC = RegistryCodecs.homogeneousList(Registry.BIOME_REGISTRY, DIRECT_CODEC);
|
|
||||||
private static final PerlinSimplexNoise TEMPERATURE_NOISE = new PerlinSimplexNoise(new WorldgenRandom(new LegacyRandomSource(1234L)), ImmutableList.of(0));
|
|
||||||
@@ -257,33 +283,6 @@ public final class Biome {
|
|
||||||
return biomeEntry.value().getBiomeCategory();
|
|
||||||
}
|
|
||||||
|
|
||||||
- static {
|
|
||||||
- DIRECT_CODEC = RecordCodecBuilder.create((instance) -> {
|
|
||||||
- return instance.group(Biome.ClimateSettings.CODEC.forGetter((biome) -> {
|
|
||||||
- return biome.climateSettings;
|
|
||||||
- }), Biome.BiomeCategory.CODEC.fieldOf("category").forGetter((biome) -> {
|
|
||||||
- return biome.biomeCategory;
|
|
||||||
- }), BiomeSpecialEffects.CODEC.fieldOf("effects").forGetter((biome) -> {
|
|
||||||
- return biome.specialEffects;
|
|
||||||
- }), BiomeGenerationSettings.CODEC.forGetter((biome) -> {
|
|
||||||
- return biome.generationSettings;
|
|
||||||
- }), MobSpawnSettings.CODEC.forGetter((biome) -> {
|
|
||||||
- return biome.mobSettings;
|
|
||||||
- })).apply(instance, Biome::new);
|
|
||||||
- });
|
|
||||||
- NETWORK_CODEC = RecordCodecBuilder.create((instance) -> {
|
|
||||||
- return instance.group(Biome.ClimateSettings.CODEC.forGetter((biome) -> {
|
|
||||||
- return biome.climateSettings;
|
|
||||||
- }), Biome.BiomeCategory.CODEC.fieldOf("category").forGetter((biome) -> {
|
|
||||||
- return biome.biomeCategory;
|
|
||||||
- }), BiomeSpecialEffects.CODEC.fieldOf("effects").forGetter((biome) -> {
|
|
||||||
- return biome.specialEffects;
|
|
||||||
- })).apply(instance, (weather, category, effects) -> {
|
|
||||||
- return new Biome(weather, category, effects, BiomeGenerationSettings.EMPTY, MobSpawnSettings.EMPTY);
|
|
||||||
- });
|
|
||||||
- });
|
|
||||||
- }
|
|
||||||
-
|
|
||||||
public static class BiomeBuilder {
|
|
||||||
@Nullable
|
|
||||||
private Biome.Precipitation precipitation;
|
|
||||||
Reference in New Issue
Block a user