mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-19 01:17:42 +01:00
Updated Upstream (Paper & Pufferfish)
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@2ec04e0 Use correct headerLocation for regionfile initialisation PaperMC/Paper@f23c039 Fix infinite recursion in spawnCategoryForChunk/Position PaperMC/Paper@9940bca API for creating command sender which forwards feedback (#7432) Pufferfish Changes: pufferfish-gg/Pufferfish@d549dda Improve vanilla parity of suffocation patch pufferfish-gg/Pufferfish@17b3430 Updated Upstream (Paper) pufferfish-gg/Pufferfish@bcbaf3e Fix div by zero
This commit is contained in:
@@ -617,10 +617,10 @@ index 0000000000000000000000000000000000000000..020368da69b9a492155f6de6297f7473
|
||||
+}
|
||||
diff --git a/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java b/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..284f9eb542b686833ec54d4de6493d7dac5aa6b8
|
||||
index 0000000000000000000000000000000000000000..889561a6b0cb46405398d94fa071d33d3f02c3df
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java
|
||||
@@ -0,0 +1,266 @@
|
||||
@@ -0,0 +1,275 @@
|
||||
+package gg.pufferfish.pufferfish;
|
||||
+
|
||||
+import java.io.File;
|
||||
@@ -789,6 +789,15 @@ index 0000000000000000000000000000000000000000..284f9eb542b686833ec54d4de6493d7d
|
||||
+ "This can be overridden per-player with the permission pufferfish.usebooks");
|
||||
+ }
|
||||
+
|
||||
+ public static boolean enableSuffocationOptimization;
|
||||
+ private static void suffocationOptimization() {
|
||||
+ enableSuffocationOptimization = getBoolean("enable-suffocation-optimization", true,
|
||||
+ "Optimizes the suffocation check by selectively skipping",
|
||||
+ "the check in a way that still appears vanilla. This should",
|
||||
+ "be left enabled on most servers, but is provided as a",
|
||||
+ "configuration option if the vanilla deviation is undesirable.");
|
||||
+ }
|
||||
+
|
||||
+ public static boolean enableAsyncMobSpawning;
|
||||
+ public static boolean asyncMobSpawningInitialized;
|
||||
+ private static void asyncMobSpawning() {
|
||||
@@ -2728,7 +2737,7 @@ index 419a7e9614af2328ed401fc954196056243a984c..9bc568a2b0df13f55ee8670839b9e6a6
|
||||
public final String id;
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
index 25338fe4cfdc683ca4c01487e166a1649c6f640b..a6681690e1e556440320c492bf2a8e617008baa1 100644
|
||||
index 25338fe4cfdc683ca4c01487e166a1649c6f640b..3236a1dc51c394b784d3f42b78e76bf7c2f69c37 100644
|
||||
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
|
||||
@@ -139,7 +139,6 @@ import org.bukkit.event.entity.EntityTeleportEvent;
|
||||
@@ -2745,7 +2754,7 @@ index 25338fe4cfdc683ca4c01487e166a1649c6f640b..a6681690e1e556440320c492bf2a8e61
|
||||
boolean flag = this instanceof net.minecraft.world.entity.player.Player;
|
||||
-
|
||||
- if (this.isInWall()) {
|
||||
+ if (tickCount % 20 == 0 && couldPossiblyBeHurt(1.0F) && this.isInWall()) { // Pufferfish - optimize suffocation
|
||||
+ if ((!gg.pufferfish.pufferfish.PufferfishConfig.enableSuffocationOptimization || (tickCount % 10 == 0 && couldPossiblyBeHurt(1.0F))) && this.isInWall()) { // Pufferfish - optimize suffocation
|
||||
this.hurt(DamageSource.IN_WALL, 1.0F);
|
||||
} else if (flag && !this.level.getWorldBorder().isWithinBounds(this.getBoundingBox())) {
|
||||
double d0 = this.level.getWorldBorder().getDistanceToBorder(this) + this.level.getWorldBorder().getDamageSafeZone();
|
||||
@@ -3526,7 +3535,7 @@ index 89bc9f452556bafdcd8b76668639ee33c383596e..a98d115b7dccd836fa2c0f50333730db
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/world/level/NaturalSpawner.java b/src/main/java/net/minecraft/world/level/NaturalSpawner.java
|
||||
index c6bddf5e08376f1f254a27fc38647587eefcb00a..4ae9717b9ee77b3c28282e6560fc42081b6188ae 100644
|
||||
index 29b27f31080204c9cf33c9eeb8f48bf7928e0371..656b7e07ce6294f4b56b99b928cf37da41ea167d 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/NaturalSpawner.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/NaturalSpawner.java
|
||||
@@ -431,12 +431,12 @@ public final class NaturalSpawner {
|
||||
@@ -4099,7 +4108,7 @@ index e387de8adc480eac27b58b6f3f0d331ffc4382f1..6dba9d6bb7b81fe176cc0fabbb60b554
|
||||
|
||||
@Nullable
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 54e8f0f367645f3aa8af5b1cb69c39c0cec9381f..868e148e6a8cd85ef89b79ad539dd5f3bce0a7c7 100644
|
||||
index 1a1f5c8f9a049d65043f12374fe694068f7d08cf..4bfae47b8163d2737ba796827be8557166db84d1 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -254,7 +254,7 @@ import javax.annotation.Nullable; // Paper
|
||||
|
||||
@@ -84,7 +84,7 @@ index 9c31e5d653f2027cf5b028f9fb9268f1469cb1e0..d58e5357f9cb45d9b5ddeaed4ec76aa3
|
||||
io.papermc.paper.util.ObfHelper.INSTANCE.getClass(); // load mappings for stacktrace deobf and etc.
|
||||
io.papermc.paper.brigadier.PaperBrigadierProviderImpl.INSTANCE.getClass(); // init PaperBrigadierProvider
|
||||
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
|
||||
index 90aa1d75b5c23e5ee27ceae9f6ef90de913a6601..37884e05689288d56ef0efe92296b80ef6093b3c 100644
|
||||
index a98d115b7dccd836fa2c0f50333730db6f388aff..7f71a6fe6087630987ae1815ce45dfa45e52f684 100644
|
||||
--- a/src/main/java/net/minecraft/world/level/Level.java
|
||||
+++ b/src/main/java/net/minecraft/world/level/Level.java
|
||||
@@ -169,6 +169,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
|
||||
@@ -105,7 +105,7 @@ index 90aa1d75b5c23e5ee27ceae9f6ef90de913a6601..37884e05689288d56ef0efe92296b80e
|
||||
this.world = new CraftWorld((ServerLevel) this, gen, biomeProvider, env);
|
||||
this.ticksPerAnimalSpawns = this.getCraftServer().getTicksPerAnimalSpawns(); // CraftBukkit
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index ebcfbfbe8569525640ddb1d0a35724e920592aa8..4839fd36286c20f11d6bcd737ffdffb5289fc1ad 100644
|
||||
index 486b0a9a19ac5025125f3bf253cad5ed7d053bf0..11278953cffbb2fd0b74ccd561bcbd22af7f6e63 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -952,6 +952,7 @@ public final class CraftServer implements Server {
|
||||
@@ -132,7 +132,7 @@ index ebcfbfbe8569525640ddb1d0a35724e920592aa8..4839fd36286c20f11d6bcd737ffdffb5
|
||||
this.overrideAllCommandBlockCommands = this.commandsConfiguration.getStringList("command-block-overrides").contains("*");
|
||||
this.ignoreVanillaPermissions = this.commandsConfiguration.getBoolean("ignore-vanilla-permissions");
|
||||
|
||||
@@ -2667,6 +2670,18 @@ public final class CraftServer implements Server {
|
||||
@@ -2674,6 +2677,18 @@ public final class CraftServer implements Server {
|
||||
return com.destroystokyo.paper.PaperConfig.config;
|
||||
}
|
||||
|
||||
|
||||
@@ -17,10 +17,10 @@ index f944e6beafc7876ed9c6923a22f58d82967b77cb..e1c7b7a659e56fa5b3a1f52cb2ccc99b
|
||||
public final boolean spawnNpcs = this.get("spawn-npcs", true);
|
||||
public final boolean pvp = this.get("pvp", true);
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index f69516d01a634a08b75744bfe26e5d9f6831c8f3..2551044b41483dd719e5944e5536888acc3a1968 100644
|
||||
index 11278953cffbb2fd0b74ccd561bcbd22af7f6e63..87f433d8ed3731a60ff3ec0198c96d401ae1af82 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -2836,4 +2836,11 @@ public final class CraftServer implements Server {
|
||||
@@ -2843,4 +2843,11 @@ public final class CraftServer implements Server {
|
||||
}
|
||||
|
||||
// Paper end
|
||||
|
||||
@@ -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
|
||||
index 9d28c613cacc050ac62c89f6f742ee99cdb99649..17f0167cd38a7f2e0dbef42738f03f2f92944f1a 100644
|
||||
index 0eed0dc8aa52a8ea16e47f7183ba7b4235ce362a..0c7355902448b444c360259a84a7e8a10ad96f46 100644
|
||||
--- a/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
|
||||
@@ -25,10 +25,10 @@ index 9d28c613cacc050ac62c89f6f742ee99cdb99649..17f0167cd38a7f2e0dbef42738f03f2f
|
||||
}
|
||||
// Spigot end
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 666bb641f4be7a5125f9c574e5af8823bd7b5184..2f7f31c195bd92b798d83da4accd7d210cff9134 100644
|
||||
index 87f433d8ed3731a60ff3ec0198c96d401ae1af82..020ba662e992f4b859eccb4b4d5c171123b097a3 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -2842,5 +2842,10 @@ public final class CraftServer implements Server {
|
||||
@@ -2849,5 +2849,10 @@ public final class CraftServer implements Server {
|
||||
public String getServerName() {
|
||||
return this.getProperties().serverName;
|
||||
}
|
||||
@@ -40,7 +40,7 @@ index 666bb641f4be7a5125f9c574e5af8823bd7b5184..2f7f31c195bd92b798d83da4accd7d21
|
||||
// Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
index 1824edeb26413e562e8d36ae17c3b91fb17a036b..c35585458042b75b82950fe2f0c06b5930d98563 100644
|
||||
index c08f8b8a140fd2d746b054ef7ff2a689a0cca6c2..3b417ecebe7bb621aee76d5155d97695c826f4a6 100644
|
||||
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||
@@ -186,6 +186,11 @@ public class PurpurConfig {
|
||||
|
||||
@@ -17,10 +17,10 @@ index f64aa22ed6fcb4af67317b99f459ee5296392548..36c91793e0aa4895193623cf8cba7820
|
||||
public void removeCommand(String name) {
|
||||
this.children.remove(name);
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java
|
||||
index 4aa1dc543950b5de64345b3403a6d0bc41c521df..1c19a64da230268ceb9124bb7e1a141d78ac3393 100644
|
||||
index 4525fb3bc9b137bce3b59310a8aecca96d6ad5ba..75aeceb76b15a4c9cc7cffc35d15d76509c5620a 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/command/VanillaCommandWrapper.java
|
||||
@@ -89,6 +89,7 @@ public final class VanillaCommandWrapper extends BukkitCommand {
|
||||
@@ -94,6 +94,7 @@ public final class VanillaCommandWrapper extends BukkitCommand {
|
||||
}
|
||||
|
||||
public static String getPermission(CommandNode<CommandSourceStack> vanillaCommand) {
|
||||
|
||||
@@ -27,7 +27,7 @@ index fa56cd09102a89692b42f1d14257990508c5c720..f9251183df72ddc56662fd3f02acf216
|
||||
setListData(vector);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index ec2edb4b62f692aa39652845e81daf5de2798607..6a1863e815d3330d4619309630e447f601ea0136 100644
|
||||
index 5e2d1e31722791f879f09705ebd491dedc6ac1da..20fd8a043ea8e8221aab94479ffb73c4fba290e5 100644
|
||||
--- a/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
|
||||
@@ -69,10 +69,10 @@ index ec2edb4b62f692aa39652845e81daf5de2798607..6a1863e815d3330d4619309630e447f6
|
||||
lagging = recentTps[0] < org.purpurmc.purpur.PurpurConfig.laggingThreshold; // Purpur
|
||||
tickSection = curTime;
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 64f20aa2a4f87fa39c5ba9c2ce2b32ff01dd222d..f69fc2e41a5a319e7e790d6ba0f7c85604787ab5 100644
|
||||
index 020ba662e992f4b859eccb4b4d5c171123b097a3..38b1fce9fb3800ba2c37f3bc476f5c41fc4adb41 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -2624,6 +2624,7 @@ public final class CraftServer implements Server {
|
||||
@@ -2631,6 +2631,7 @@ public final class CraftServer implements Server {
|
||||
@Override
|
||||
public double[] getTPS() {
|
||||
return new double[] {
|
||||
|
||||
Reference in New Issue
Block a user