Add back Pufferfish patch

This commit is contained in:
AlphaKR93
2024-05-14 23:12:26 +09:00
parent 6e591f2d3f
commit 63e37b3633
41 changed files with 5472 additions and 525 deletions

View File

@@ -46,7 +46,7 @@ fun Project.getLatest(repository: String, branch: String) : String {
val regex = "[a-z0-9]{40}\trefs/heads/$branch".toRegex() val regex = "[a-z0-9]{40}\trefs/heads/$branch".toRegex()
val temp = Git(project.pathIO)("ls-remote", repository).readText() val temp = Git(project.pathIO)("ls-remote", repository).readText()
return temp?.lines()?.first { regex.matches(it) }?.split("\t")?.first() return temp?.lines()?.first(regex::matches)?.split("\t")?.first()
?: throw AlwaysUpToDateException("Failed to get latest commit of $repository") ?: throw AlwaysUpToDateException("Failed to get latest commit of $repository")
} }

View File

@@ -17,10 +17,11 @@ jdkVersion = 21
paperRepo = https://github.com/PaperMC/Paper paperRepo = https://github.com/PaperMC/Paper
paperBranch = master paperBranch = master
purpurRepo = https://github.com/PurpurMC/Purpur purpurRepo = https://github.com/PlazmaMC/Purpur
purpurBranch = ver/1.20.6 purpurBranch = ver/1.20.6
pufferfishRepo = https://github.com/PlazmaMC/Pufferfish
pufferfishBranch = ver/1.20 pufferfishBranch = ver/1.20
usePufferfish = false usePufferfish = true
paperCommit = 3fc93581bb876e8149b2ca423375a98f5ca12d27 paperCommit = 3fc93581bb876e8149b2ca423375a98f5ca12d27
purpurCommit = c637b74bade41e7be96ed3478bab7c3b923e7d84 purpurCommit = 24b161b1be559e7f84d881f9cabe2830d693e621

View File

@@ -0,0 +1,512 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: AlphaKR93 <dev@alpha93.kr>
Date: Tue, 14 May 2024 19:21:24 +0900
Subject: [PATCH] Pufferfish API Changes
diff --git a/build.gradle.kts b/build.gradle.kts
index fd39ed209b20c927054b8482c400beeeeab460a3..1336685fde70c4a88a1fb591cdfcd781a8f06d0b 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -52,6 +52,7 @@ dependencies {
apiAndDocs("net.kyori:adventure-text-logger-slf4j")
api("org.apache.logging.log4j:log4j-api:$log4jVersion")
api("org.slf4j:slf4j-api:$slf4jVersion")
+ api("io.sentry:sentry:5.4.0") // Pufferfish
implementation("org.ow2.asm:asm:9.7")
implementation("org.ow2.asm:asm-commons:9.7")
@@ -130,6 +131,13 @@ val generateApiVersioningFile by tasks.registering {
}
}
+// Pufferfish Start
+tasks.withType<JavaCompile> {
+ val compilerArgs = options.compilerArgs
+ compilerArgs.add("--add-modules=jdk.incubator.vector")
+}
+// Pufferfish End
+
tasks.jar {
from(generateApiVersioningFile.map { it.outputs.files.singleFile }) {
into("META-INF/maven/${project.group}/${project.name}")
diff --git a/src/main/java/gg/pufferfish/pufferfish/sentry/SentryContext.java b/src/main/java/gg/pufferfish/pufferfish/sentry/SentryContext.java
new file mode 100644
index 0000000000000000000000000000000000000000..10310fdd53de28efb8a8250f6d3b0c8eb08fb68a
--- /dev/null
+++ b/src/main/java/gg/pufferfish/pufferfish/sentry/SentryContext.java
@@ -0,0 +1,161 @@
+package gg.pufferfish.pufferfish.sentry;
+
+import com.google.gson.Gson;
+import java.lang.reflect.Field;
+import java.lang.reflect.Modifier;
+import java.util.Map;
+import java.util.TreeMap;
+import org.apache.logging.log4j.ThreadContext;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandSender;
+import org.bukkit.entity.Player;
+import org.bukkit.event.Event;
+import org.bukkit.event.player.PlayerEvent;
+import org.bukkit.plugin.Plugin;
+import org.bukkit.plugin.RegisteredListener;
+import org.jetbrains.annotations.Nullable;
+
+public class SentryContext {
+
+ private static final Gson GSON = new Gson();
+
+ public static void setPluginContext(@Nullable Plugin plugin) {
+ if (plugin != null) {
+ ThreadContext.put("pufferfishsentry_pluginname", plugin.getName());
+ ThreadContext.put("pufferfishsentry_pluginversion", plugin.getDescription().getVersion());
+ }
+ }
+
+ public static void removePluginContext() {
+ ThreadContext.remove("pufferfishsentry_pluginname");
+ ThreadContext.remove("pufferfishsentry_pluginversion");
+ }
+
+ public static void setSenderContext(@Nullable CommandSender sender) {
+ if (sender != null) {
+ ThreadContext.put("pufferfishsentry_playername", sender.getName());
+ if (sender instanceof Player player) {
+ ThreadContext.put("pufferfishsentry_playerid", player.getUniqueId().toString());
+ }
+ }
+ }
+
+ public static void removeSenderContext() {
+ ThreadContext.remove("pufferfishsentry_playername");
+ ThreadContext.remove("pufferfishsentry_playerid");
+ }
+
+ public static void setEventContext(Event event, RegisteredListener registration) {
+ setPluginContext(registration.getPlugin());
+
+ try {
+ // Find the player that was involved with this event
+ Player player = null;
+ if (event instanceof PlayerEvent) {
+ player = ((PlayerEvent) event).getPlayer();
+ } else {
+ Class<? extends Event> eventClass = event.getClass();
+
+ Field playerField = null;
+
+ for (Field field : eventClass.getDeclaredFields()) {
+ if (field.getType().equals(Player.class)) {
+ playerField = field;
+ break;
+ }
+ }
+
+ if (playerField != null) {
+ playerField.setAccessible(true);
+ player = (Player) playerField.get(event);
+ }
+ }
+
+ if (player != null) {
+ setSenderContext(player);
+ }
+ } catch (Exception e) {} // We can't really safely log exceptions.
+
+ ThreadContext.put("pufferfishsentry_eventdata", GSON.toJson(serializeFields(event)));
+ }
+
+ public static void removeEventContext() {
+ removePluginContext();
+ removeSenderContext();
+ ThreadContext.remove("pufferfishsentry_eventdata");
+ }
+
+ private static Map<String, String> serializeFields(Object object) {
+ Map<String, String> fields = new TreeMap<>();
+ fields.put("_class", object.getClass().getName());
+ for (Field declaredField : object.getClass().getDeclaredFields()) {
+ try {
+ if (Modifier.isStatic(declaredField.getModifiers())) {
+ continue;
+ }
+
+ String fieldName = declaredField.getName();
+ if (fieldName.equals("handlers")) {
+ continue;
+ }
+ declaredField.setAccessible(true);
+ Object value = declaredField.get(object);
+ if (value != null) {
+ fields.put(fieldName, value.toString());
+ } else {
+ fields.put(fieldName, "<null>");
+ }
+ } catch (Exception e) {} // We can't really safely log exceptions.
+ }
+ return fields;
+ }
+
+ public static class State {
+
+ private Plugin plugin;
+ private Command command;
+ private String commandLine;
+ private Event event;
+ private RegisteredListener registeredListener;
+
+ public Plugin getPlugin() {
+ return plugin;
+ }
+
+ public void setPlugin(Plugin plugin) {
+ this.plugin = plugin;
+ }
+
+ public Command getCommand() {
+ return command;
+ }
+
+ public void setCommand(Command command) {
+ this.command = command;
+ }
+
+ public String getCommandLine() {
+ return commandLine;
+ }
+
+ public void setCommandLine(String commandLine) {
+ this.commandLine = commandLine;
+ }
+
+ public Event getEvent() {
+ return event;
+ }
+
+ public void setEvent(Event event) {
+ this.event = event;
+ }
+
+ public RegisteredListener getRegisteredListener() {
+ return registeredListener;
+ }
+
+ public void setRegisteredListener(RegisteredListener registeredListener) {
+ this.registeredListener = registeredListener;
+ }
+ }
+}
diff --git a/src/main/java/gg/pufferfish/pufferfish/simd/SIMDChecker.java b/src/main/java/gg/pufferfish/pufferfish/simd/SIMDChecker.java
new file mode 100644
index 0000000000000000000000000000000000000000..ab5fea0b03224bf249352ce340e94704ff713345
--- /dev/null
+++ b/src/main/java/gg/pufferfish/pufferfish/simd/SIMDChecker.java
@@ -0,0 +1,40 @@
+package gg.pufferfish.pufferfish.simd;
+
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import jdk.incubator.vector.FloatVector;
+import jdk.incubator.vector.IntVector;
+import jdk.incubator.vector.VectorSpecies;
+
+/**
+ * Basically, java is annoying and we have to push this out to its own class.
+ */
+@Deprecated
+public class SIMDChecker {
+
+ @Deprecated
+ public static boolean canEnable(Logger logger) {
+ try {
+ if (SIMDDetection.getJavaVersion() != 17 && SIMDDetection.getJavaVersion() != 18 && SIMDDetection.getJavaVersion() != 19) {
+ return false;
+ } else {
+ SIMDDetection.testRun = true;
+
+ VectorSpecies<Integer> ISPEC = IntVector.SPECIES_PREFERRED;
+ VectorSpecies<Float> FSPEC = FloatVector.SPECIES_PREFERRED;
+
+ logger.log(Level.INFO, "Max SIMD vector size on this system is " + ISPEC.vectorBitSize() + " bits (int)");
+ logger.log(Level.INFO, "Max SIMD vector size on this system is " + FSPEC.vectorBitSize() + " bits (float)");
+
+ if (ISPEC.elementSize() < 2 || FSPEC.elementSize() < 2) {
+ logger.log(Level.WARNING, "SIMD is not properly supported on this system!");
+ return false;
+ }
+
+ return true;
+ }
+ } catch (NoClassDefFoundError | Exception ignored) {} // Basically, we don't do anything. This lets us detect if it's not functional and disable it.
+ return false;
+ }
+
+}
diff --git a/src/main/java/gg/pufferfish/pufferfish/simd/SIMDDetection.java b/src/main/java/gg/pufferfish/pufferfish/simd/SIMDDetection.java
new file mode 100644
index 0000000000000000000000000000000000000000..a84889d3e9cfc4d7ab5f867820a6484c6070711b
--- /dev/null
+++ b/src/main/java/gg/pufferfish/pufferfish/simd/SIMDDetection.java
@@ -0,0 +1,35 @@
+package gg.pufferfish.pufferfish.simd;
+
+import java.util.logging.Logger;
+
+@Deprecated
+public class SIMDDetection {
+
+ public static boolean isEnabled = false;
+ public static boolean versionLimited = false;
+ public static boolean testRun = false;
+
+ @Deprecated
+ public static boolean canEnable(Logger logger) {
+ try {
+ return SIMDChecker.canEnable(logger);
+ } catch (NoClassDefFoundError | Exception ignored) {
+ return false;
+ }
+ }
+
+ @Deprecated
+ public static int getJavaVersion() {
+ // https://stackoverflow.com/a/2591122
+ String version = System.getProperty("java.version");
+ if(version.startsWith("1.")) {
+ version = version.substring(2, 3);
+ } else {
+ int dot = version.indexOf(".");
+ if(dot != -1) { version = version.substring(0, dot); }
+ }
+ version = version.split("-")[0]; // Azul is stupid
+ return Integer.parseInt(version);
+ }
+
+}
diff --git a/src/main/java/gg/pufferfish/pufferfish/simd/VectorMapPalette.java b/src/main/java/gg/pufferfish/pufferfish/simd/VectorMapPalette.java
new file mode 100644
index 0000000000000000000000000000000000000000..ae2464920c9412ac90b819a540ee58be0741465f
--- /dev/null
+++ b/src/main/java/gg/pufferfish/pufferfish/simd/VectorMapPalette.java
@@ -0,0 +1,83 @@
+package gg.pufferfish.pufferfish.simd;
+
+import java.awt.Color;
+import jdk.incubator.vector.FloatVector;
+import jdk.incubator.vector.IntVector;
+import jdk.incubator.vector.VectorMask;
+import jdk.incubator.vector.VectorSpecies;
+import org.bukkit.map.MapPalette;
+
+@Deprecated
+public class VectorMapPalette {
+
+ private static final VectorSpecies<Integer> I_SPEC = IntVector.SPECIES_PREFERRED;
+ private static final VectorSpecies<Float> F_SPEC = FloatVector.SPECIES_PREFERRED;
+
+ @Deprecated
+ public static void matchColorVectorized(int[] in, byte[] out) {
+ int speciesLength = I_SPEC.length();
+ int i;
+ for (i = 0; i < in.length - speciesLength; i += speciesLength) {
+ float[] redsArr = new float[speciesLength];
+ float[] bluesArr = new float[speciesLength];
+ float[] greensArr = new float[speciesLength];
+ int[] alphasArr = new int[speciesLength];
+
+ for (int j = 0; j < speciesLength; j++) {
+ alphasArr[j] = (in[i + j] >> 24) & 0xFF;
+ redsArr[j] = (in[i + j] >> 16) & 0xFF;
+ greensArr[j] = (in[i + j] >> 8) & 0xFF;
+ bluesArr[j] = (in[i + j] >> 0) & 0xFF;
+ }
+
+ IntVector alphas = IntVector.fromArray(I_SPEC, alphasArr, 0);
+ FloatVector reds = FloatVector.fromArray(F_SPEC, redsArr, 0);
+ FloatVector greens = FloatVector.fromArray(F_SPEC, greensArr, 0);
+ FloatVector blues = FloatVector.fromArray(F_SPEC, bluesArr, 0);
+ IntVector resultIndex = IntVector.zero(I_SPEC);
+ VectorMask<Integer> modificationMask = VectorMask.fromLong(I_SPEC, 0xffffffff);
+
+ modificationMask = modificationMask.and(alphas.lt(128).not());
+ FloatVector bestDistances = FloatVector.broadcast(F_SPEC, Float.MAX_VALUE);
+
+ for (int c = 4; c < MapPalette.colors.length; c++) {
+ // We're using 32-bit floats here because it's 2x faster and nobody will know the difference.
+ // For correctness, the original algorithm uses 64-bit floats instead. Completely unnecessary.
+ FloatVector compReds = FloatVector.broadcast(F_SPEC, MapPalette.colors[c].getRed());
+ FloatVector compGreens = FloatVector.broadcast(F_SPEC, MapPalette.colors[c].getGreen());
+ FloatVector compBlues = FloatVector.broadcast(F_SPEC, MapPalette.colors[c].getBlue());
+
+ FloatVector rMean = reds.add(compReds).div(2.0f);
+ FloatVector rDiff = reds.sub(compReds);
+ FloatVector gDiff = greens.sub(compGreens);
+ FloatVector bDiff = blues.sub(compBlues);
+
+ FloatVector weightR = rMean.div(256.0f).add(2);
+ FloatVector weightG = FloatVector.broadcast(F_SPEC, 4.0f);
+ FloatVector weightB = FloatVector.broadcast(F_SPEC, 255.0f).sub(rMean).div(256.0f).add(2.0f);
+
+ FloatVector distance = weightR.mul(rDiff).mul(rDiff).add(weightG.mul(gDiff).mul(gDiff)).add(weightB.mul(bDiff).mul(bDiff));
+
+ // Now we compare to the best distance we've found.
+ // This mask contains a "1" if better, and a "0" otherwise.
+ VectorMask<Float> bestDistanceMask = distance.lt(bestDistances);
+ bestDistances = bestDistances.blend(distance, bestDistanceMask); // Update the best distances
+
+ // Update the result array
+ // We also AND with the modification mask because we don't want to interfere if the alpha value isn't large enough.
+ resultIndex = resultIndex.blend(c, bestDistanceMask.cast(I_SPEC).and(modificationMask)); // Update the results
+ }
+
+ for (int j = 0; j < speciesLength; j++) {
+ int index = resultIndex.lane(j);
+ out[i + j] = (byte) (index < 128 ? index : -129 + (index - 127));
+ }
+ }
+
+ // For the final ones, fall back to the regular method
+ for (; i < in.length; i++) {
+ out[i] = MapPalette.matchColor(new Color(in[i], true));
+ }
+ }
+
+}
diff --git a/src/main/java/org/bukkit/map/MapPalette.java b/src/main/java/org/bukkit/map/MapPalette.java
index c80faa079eca1564847070f0338fc98024639829..e632d51d3487eb4807243b6705999ad124466bf5 100644
--- a/src/main/java/org/bukkit/map/MapPalette.java
+++ b/src/main/java/org/bukkit/map/MapPalette.java
@@ -1,6 +1,7 @@
package org.bukkit.map;
import com.google.common.base.Preconditions;
+import gg.pufferfish.pufferfish.simd.SIMDDetection; // Pufferfish
import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.Image;
@@ -40,7 +41,7 @@ public final class MapPalette {
}
@NotNull
- static final Color[] colors = {
+ public static final Color[] colors = { // Pufferfish - public access
c(0, 0, 0, 0), c(0, 0, 0, 0), c(0, 0, 0, 0), c(0, 0, 0, 0),
c(89, 125, 39), c(109, 153, 48), c(127, 178, 56), c(67, 94, 29),
c(174, 164, 115), c(213, 201, 140), c(247, 233, 163), c(130, 123, 86),
@@ -211,9 +212,15 @@ public final class MapPalette {
temp.getRGB(0, 0, temp.getWidth(), temp.getHeight(), pixels, 0, temp.getWidth());
byte[] result = new byte[temp.getWidth() * temp.getHeight()];
+ // Pufferfish start
+ if (!SIMDDetection.isEnabled) {
for (int i = 0; i < pixels.length; i++) {
result[i] = matchColor(new Color(pixels[i], true));
}
+ } else {
+ gg.pufferfish.pufferfish.simd.VectorMapPalette.matchColorVectorized(pixels, result);
+ }
+ // Pufferfish end
return result;
}
diff --git a/src/main/java/org/bukkit/plugin/SimplePluginManager.java b/src/main/java/org/bukkit/plugin/SimplePluginManager.java
index 07a9c9e254188c251165ca84c8e961fccda01175..5dc64d8c9aeae612fd31af0673f3530a9e777dfc 100644
--- a/src/main/java/org/bukkit/plugin/SimplePluginManager.java
+++ b/src/main/java/org/bukkit/plugin/SimplePluginManager.java
@@ -596,7 +596,9 @@ public final class SimplePluginManager implements PluginManager {
// Paper start
private void handlePluginException(String msg, Throwable ex, Plugin plugin) {
+ gg.pufferfish.pufferfish.sentry.SentryContext.setPluginContext(plugin); // Pufferfish
server.getLogger().log(Level.SEVERE, msg, ex);
+ gg.pufferfish.pufferfish.sentry.SentryContext.removePluginContext(); // Pufferfish
callEvent(new com.destroystokyo.paper.event.server.ServerExceptionEvent(new com.destroystokyo.paper.exception.ServerPluginEnableDisableException(msg, ex, plugin)));
}
// Paper end
@@ -666,9 +668,11 @@ public final class SimplePluginManager implements PluginManager {
));
}
} catch (Throwable ex) {
+ gg.pufferfish.pufferfish.sentry.SentryContext.setEventContext(event, registration); // Pufferfish
// Paper start - error reporting
String msg = "Could not pass event " + event.getEventName() + " to " + registration.getPlugin().getDescription().getFullName();
server.getLogger().log(Level.SEVERE, msg, ex);
+ gg.pufferfish.pufferfish.sentry.SentryContext.removeEventContext(); // Pufferfish
if (!(event instanceof com.destroystokyo.paper.event.server.ServerExceptionEvent)) { // We don't want to cause an endless event loop
callEvent(new com.destroystokyo.paper.event.server.ServerExceptionEvent(new com.destroystokyo.paper.exception.ServerEventException(msg, ex, registration.getPlugin(), registration.getListener(), event)));
}
diff --git a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
index eaefbb00e9993d54906cc8cf35cf753c0d6c7707..301e82369603f3dd6e6c1bd380da4bacacd7ef6c 100644
--- a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
+++ b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
@@ -336,7 +336,13 @@ public final class JavaPluginLoader implements PluginLoader {
try {
jPlugin.setEnabled(true);
} catch (Throwable ex) {
+ gg.pufferfish.pufferfish.sentry.SentryContext.setPluginContext(plugin); // Pufferfish
server.getLogger().log(Level.SEVERE, "Error occurred while enabling " + plugin.getDescription().getFullName() + " (Is it up to date?)", ex);
+ gg.pufferfish.pufferfish.sentry.SentryContext.removePluginContext(); // Pufferfish
+ // Paper start - Disable plugins that fail to load
+ this.server.getPluginManager().disablePlugin(jPlugin);
+ return;
+ // Paper end
}
// Perhaps abort here, rather than continue going, but as it stands,
@@ -361,7 +367,9 @@ public final class JavaPluginLoader implements PluginLoader {
try {
jPlugin.setEnabled(false);
} catch (Throwable ex) {
+ gg.pufferfish.pufferfish.sentry.SentryContext.setPluginContext(plugin); // Pufferfish
server.getLogger().log(Level.SEVERE, "Error occurred while disabling " + plugin.getDescription().getFullName() + " (Is it up to date?)", ex);
+ gg.pufferfish.pufferfish.sentry.SentryContext.removePluginContext(); // Pufferfish
}
if (cloader instanceof PluginClassLoader) {
diff --git a/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java b/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
index 7e4f7cb2afbc145e532285c793573ad107bc3033..12449e18180d604e9cbbc744da74a8b222a18e1f 100644
--- a/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
+++ b/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
@@ -50,6 +50,8 @@ public final class PluginClassLoader extends URLClassLoader implements io.paperm
private io.papermc.paper.plugin.provider.classloader.PluginClassLoaderGroup classLoaderGroup; // Paper
public io.papermc.paper.plugin.provider.entrypoint.DependencyContext dependencyContext; // Paper
+ private boolean closed = false; // Pufferfish
+
static {
ClassLoader.registerAsParallelCapable();
}
@@ -197,6 +199,7 @@ public final class PluginClassLoader extends URLClassLoader implements io.paperm
throw new ClassNotFoundException(name);
}
+ public boolean _airplane_hasClass(@NotNull String name) { return this.classes.containsKey(name); } // Pufferfish
@Override
protected Class<?> findClass(String name) throws ClassNotFoundException {
if (name.startsWith("org.bukkit.") || name.startsWith("net.minecraft.")) {
@@ -204,7 +207,7 @@ public final class PluginClassLoader extends URLClassLoader implements io.paperm
}
Class<?> result = classes.get(name);
- if (result == null) {
+ if (result == null && !this.closed) { // Pufferfish
String path = name.replace('.', '/').concat(".class");
JarEntry entry = jar.getJarEntry(path);
@@ -251,6 +254,7 @@ public final class PluginClassLoader extends URLClassLoader implements io.paperm
this.setClass(name, result); // Paper
}
+ if (result == null) throw new ClassNotFoundException(name); // Pufferfish
return result;
}
@@ -265,6 +269,7 @@ public final class PluginClassLoader extends URLClassLoader implements io.paperm
// Paper end
super.close();
} finally {
+ this.closed = true; // Pufferfish
jar.close();
}
}

View File

@@ -1,6 +1,6 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: granny <contact@granny.dev> From: granny <contact@granny.dev>
Date: Tue, 14 May 2024 17:29:02 +0900 Date: Tue, 14 May 2024 22:59:42 +0900
Subject: [PATCH] Purpur API Changes Subject: [PATCH] Purpur API Changes
PurpurMC PurpurMC
@@ -25,10 +25,10 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE. SOFTWARE.
diff --git a/build.gradle.kts b/build.gradle.kts diff --git a/build.gradle.kts b/build.gradle.kts
index fd39ed209b20c927054b8482c400beeeeab460a3..6aef83558a5ef7e84873b127c3bb43a6468c9a24 100644 index 1336685fde70c4a88a1fb591cdfcd781a8f06d0b..7aa138f7123dcfb7d1d9ae9efcf2359522f5d2fd 100644
--- a/build.gradle.kts --- a/build.gradle.kts
+++ b/build.gradle.kts +++ b/build.gradle.kts
@@ -142,6 +142,8 @@ tasks.jar { @@ -150,6 +150,8 @@ tasks.jar {
} }
tasks.withType<Javadoc> { tasks.withType<Javadoc> {
@@ -185,6 +185,19 @@ index a736d7bcdc5861a01b66ba36158db1c716339346..22fc165fd9c95f0f3ae1be7a0857e48c
class DummyVersionFetcher implements VersionFetcher { class DummyVersionFetcher implements VersionFetcher {
@Override @Override
diff --git a/src/main/java/gg/pufferfish/pufferfish/simd/SIMDChecker.java b/src/main/java/gg/pufferfish/pufferfish/simd/SIMDChecker.java
index ab5fea0b03224bf249352ce340e94704ff713345..3441cdad70da1bd523c5933b1a914688718c2657 100644
--- a/src/main/java/gg/pufferfish/pufferfish/simd/SIMDChecker.java
+++ b/src/main/java/gg/pufferfish/pufferfish/simd/SIMDChecker.java
@@ -15,7 +15,7 @@ public class SIMDChecker {
@Deprecated
public static boolean canEnable(Logger logger) {
try {
- if (SIMDDetection.getJavaVersion() != 17 && SIMDDetection.getJavaVersion() != 18 && SIMDDetection.getJavaVersion() != 19) {
+ if (SIMDDetection.getJavaVersion() < 17 || SIMDDetection.getJavaVersion() > 21) {
return false;
} else {
SIMDDetection.testRun = true;
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
index 5d1b55fdbcbe63f6b42b694d05211a3cc691a09d..70ef8f63ab79e102cb4326c21cc344488f4fbdd3 100644 index 5d1b55fdbcbe63f6b42b694d05211a3cc691a09d..70ef8f63ab79e102cb4326c21cc344488f4fbdd3 100644
--- a/src/main/java/org/bukkit/Bukkit.java --- a/src/main/java/org/bukkit/Bukkit.java
@@ -2113,7 +2126,7 @@ index cd3296fea01648592d2af89b3d80135acb6d0958..45797a6fbae1d8edc4211cb30def24ad
permissions.put(lname, new PermissionAttachmentInfo(parent, lname, attachment, value)); permissions.put(lname, new PermissionAttachmentInfo(parent, lname, attachment, value));
diff --git a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java diff --git a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
index eaefbb00e9993d54906cc8cf35cf753c0d6c7707..f1e58639213be0c43cd2ff090b625e7d0a67e8be 100644 index 301e82369603f3dd6e6c1bd380da4bacacd7ef6c..0c6ca7588fb3d6b6497ddf032fe75e5c6c9719e5 100644
--- a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java --- a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
+++ b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java +++ b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
@@ -55,6 +55,7 @@ public final class JavaPluginLoader implements PluginLoader { @@ -55,6 +55,7 @@ public final class JavaPluginLoader implements PluginLoader {
@@ -3753,3 +3766,18 @@ index 12946bd55fcf7c40d39081779a7fa30049ee6165..9c2d605c50cbf9aefa56ec209df9f6ce
+ public void stopTiming() { /*handler.stopTiming();*/ } // Purpur + public void stopTiming() { /*handler.stopTiming();*/ } // Purpur
} }
diff --git a/src/test/java/org/bukkit/AnnotationTest.java b/src/test/java/org/bukkit/AnnotationTest.java
index 88f1ca89fa640a686231b8eec87e70419b2d73ef..d6b91c49a267c89d7df2ddee7ccfe64675d117be 100644
--- a/src/test/java/org/bukkit/AnnotationTest.java
+++ b/src/test/java/org/bukkit/AnnotationTest.java
@@ -47,6 +47,10 @@ public class AnnotationTest {
"org/bukkit/plugin/java/PluginClassLoader",
// Generic functional interface
"org/bukkit/util/Consumer",
+ // Purpur start
+ "gg/pufferfish/pufferfish/sentry/SentryContext",
+ "gg/pufferfish/pufferfish/sentry/SentryContext$State",
+ // Purpur end
// Paper start
"io/papermc/paper/util/TransformingRandomAccessList",
"io/papermc/paper/util/TransformingRandomAccessList$TransformedListIterator",

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Use Gradle Version Catalogs
diff --git a/build.gradle.kts b/build.gradle.kts diff --git a/build.gradle.kts b/build.gradle.kts
index 6aef83558a5ef7e84873b127c3bb43a6468c9a24..dedd9703559dbff43adb4b0aee6765789f130d50 100644 index 7aa138f7123dcfb7d1d9ae9efcf2359522f5d2fd..67324689a65e8ed65c9d27c9b50073488c235c51 100644
--- a/build.gradle.kts --- a/build.gradle.kts
+++ b/build.gradle.kts +++ b/build.gradle.kts
@@ -9,11 +9,13 @@ java { @@ -9,11 +9,13 @@ java {
@@ -22,7 +22,7 @@ index 6aef83558a5ef7e84873b127c3bb43a6468c9a24..dedd9703559dbff43adb4b0aee676578
val apiAndDocs: Configuration by configurations.creating { val apiAndDocs: Configuration by configurations.creating {
attributes { attributes {
attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category.DOCUMENTATION)) attribute(Category.CATEGORY_ATTRIBUTE, objects.named(Category.DOCUMENTATION))
@@ -27,55 +29,31 @@ configurations.api { @@ -27,56 +29,31 @@ configurations.api {
} }
dependencies { dependencies {
@@ -51,6 +51,7 @@ index 6aef83558a5ef7e84873b127c3bb43a6468c9a24..dedd9703559dbff43adb4b0aee676578
- apiAndDocs("net.kyori:adventure-text-logger-slf4j") - apiAndDocs("net.kyori:adventure-text-logger-slf4j")
- api("org.apache.logging.log4j:log4j-api:$log4jVersion") - api("org.apache.logging.log4j:log4j-api:$log4jVersion")
- api("org.slf4j:slf4j-api:$slf4jVersion") - api("org.slf4j:slf4j-api:$slf4jVersion")
- api("io.sentry:sentry:5.4.0") // Pufferfish
- -
- implementation("org.ow2.asm:asm:9.7") - implementation("org.ow2.asm:asm:9.7")
- implementation("org.ow2.asm:asm-commons:9.7") - implementation("org.ow2.asm:asm-commons:9.7")
@@ -103,7 +104,7 @@ index 6aef83558a5ef7e84873b127c3bb43a6468c9a24..dedd9703559dbff43adb4b0aee676578
} }
// Paper start // Paper start
@@ -149,25 +127,16 @@ tasks.withType<Javadoc> { @@ -157,25 +134,16 @@ tasks.withType<Javadoc> {
options.use() options.use()
options.isDocFilesSubDirs = true options.isDocFilesSubDirs = true
options.links( options.links(

File diff suppressed because it is too large Load Diff

View File

@@ -5,13 +5,14 @@ Subject: [PATCH] Use Gradle Version Catalogs
diff --git a/build.gradle.kts b/build.gradle.kts diff --git a/build.gradle.kts b/build.gradle.kts
index 89f21e21efc5f5ab99d1586f4f3b8f2f3c48ac06..ec151f06541d7c3b4ffb1cac75e94bf3914dacaf 100644 index 3bece6335887414d1388505febf6b8796e32bf9a..055c64f6dbe6598e88fa2a01e80062fedcce4e20 100644
--- a/build.gradle.kts --- a/build.gradle.kts
+++ b/build.gradle.kts +++ b/build.gradle.kts
@@ -13,57 +13,26 @@ val alsoShade: Configuration by configurations.creating @@ -12,66 +12,28 @@ configurations.named(log4jPlugins.compileClasspathConfigurationName) {
val alsoShade: Configuration by configurations.creating
dependencies { dependencies {
implementation(project(":purpur-api")) // Purpur - implementation(project(":purpur-api")) // Pufferfish // Paper // Purpur
- // Paper start - // Paper start
- implementation("org.jline:jline-terminal-jansi:3.21.0") - implementation("org.jline:jline-terminal-jansi:3.21.0")
- implementation("net.minecrell:terminalconsoleappender:1.3.0") - implementation("net.minecrell:terminalconsoleappender:1.3.0")
@@ -40,29 +41,11 @@ index 89f21e21efc5f5ab99d1586f4f3b8f2f3c48ac06..ec151f06541d7c3b4ffb1cac75e94bf3
- isTransitive = false - isTransitive = false
- } - }
- // Paper end - Use Velocity cipher - // Paper end - Use Velocity cipher
- + implementation(project(":purpur-api")) // Purpur
- runtimeOnly("org.apache.maven:maven-resolver-provider:3.9.6") - runtimeOnly("org.apache.maven:maven-resolver-provider:3.9.6")
- runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.9.18") - runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.9.18")
- runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.18") - runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.9.18")
-
- implementation("org.mozilla:rhino-runtime:1.7.14") // Purpur
- implementation("org.mozilla:rhino-engine:1.7.14") // Purpur
- implementation("dev.omega24:upnp4j:1.0") // Purpur
-
- testImplementation("io.github.classgraph:classgraph:4.8.47") // Paper - mob goal test
- testImplementation("org.junit.jupiter:junit-jupiter:5.10.2")
- testImplementation("org.hamcrest:hamcrest:2.2")
- testImplementation("org.mockito:mockito-core:5.11.0")
- testImplementation("org.ow2.asm:asm-tree:9.7")
- testImplementation("org.junit-pioneer:junit-pioneer:2.2.0") // Paper - CartesianTest
- implementation("net.neoforged:srgutils:1.0.9") // Paper - mappings handling
- implementation("net.neoforged:AutoRenamingTool:2.0.3") // Paper - remap plugins
- // Paper start - Remap reflection
- val reflectionRewriterVersion = "0.0.1"
- implementation("io.papermc:reflection-rewriter:$reflectionRewriterVersion")
- implementation("io.papermc:reflection-rewriter-runtime:$reflectionRewriterVersion")
- implementation("io.papermc:reflection-rewriter-proxy-generator:$reflectionRewriterVersion")
- // Paper end - Remap reflection
+ // Plazma start - Use Gradle Version Catalogs + // Plazma start - Use Gradle Version Catalogs
+ implementation(server.bundles.implementation) + implementation(server.bundles.implementation)
+ implementation(common.asm.commons) + implementation(common.asm.commons)
@@ -82,7 +65,33 @@ index 89f21e21efc5f5ab99d1586f4f3b8f2f3c48ac06..ec151f06541d7c3b4ffb1cac75e94bf3
+ testImplementation(server.bundles.test) + testImplementation(server.bundles.test)
+ testImplementation(common.bundles.test) + testImplementation(common.bundles.test)
+ // Plazma end - Use Gradle Version Catalogs + // Plazma end - Use Gradle Version Catalogs
+
- // Pufferfish start
- implementation("org.yaml:snakeyaml:1.32")
- implementation ("me.carleslc.Simple-YAML:Simple-Yaml:1.8.4") {
- exclude(group="org.yaml", module="snakeyaml")
- }
- // Pufferfish end
- implementation("com.github.technove:Flare:34637f3f87") // Pufferfish - flare
-
- implementation("org.mozilla:rhino-runtime:1.7.14") // Purpur
- implementation("org.mozilla:rhino-engine:1.7.14") // Purpur
- implementation("dev.omega24:upnp4j:1.0") // Purpur
-
- testImplementation("io.github.classgraph:classgraph:4.8.47") // Paper - mob goal test
- testImplementation("org.junit.jupiter:junit-jupiter:5.10.2")
- testImplementation("org.hamcrest:hamcrest:2.2")
- testImplementation("org.mockito:mockito-core:5.11.0")
- testImplementation("org.ow2.asm:asm-tree:9.7")
- testImplementation("org.junit-pioneer:junit-pioneer:2.2.0") // Paper - CartesianTest
- implementation("net.neoforged:srgutils:1.0.9") // Paper - mappings handling
- implementation("net.neoforged:AutoRenamingTool:2.0.3") // Paper - remap plugins
- // Paper start - Remap reflection
- val reflectionRewriterVersion = "0.0.1"
- implementation("io.papermc:reflection-rewriter:$reflectionRewriterVersion")
- implementation("io.papermc:reflection-rewriter-runtime:$reflectionRewriterVersion")
- implementation("io.papermc:reflection-rewriter-proxy-generator:$reflectionRewriterVersion")
- // Paper end - Remap reflection
} }
paperweight { paperweight {

View File

@@ -32,19 +32,20 @@ index 0000000000000000000000000000000000000000..67d405764ed68083d0164b1af0eabc0a
+AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
+OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/build.gradle.kts b/build.gradle.kts diff --git a/build.gradle.kts b/build.gradle.kts
index ec151f06541d7c3b4ffb1cac75e94bf3914dacaf..3cf30564db4e5cb2eeb09258940d0b2b5f9b0edc 100644 index 055c64f6dbe6598e88fa2a01e80062fedcce4e20..d6482fd7d3ca31208cacd420317a30f4597ef83a 100644
--- a/build.gradle.kts --- a/build.gradle.kts
+++ b/build.gradle.kts +++ b/build.gradle.kts
@@ -12,7 +12,7 @@ configurations.named(log4jPlugins.compileClasspathConfigurationName) { @@ -12,8 +12,8 @@ configurations.named(log4jPlugins.compileClasspathConfigurationName) {
val alsoShade: Configuration by configurations.creating val alsoShade: Configuration by configurations.creating
dependencies { dependencies {
- implementation(project(":purpur-api")) // Purpur - implementation(project(":purpur-api")) // Purpur
+ implementation(project(":${parent!!.property("projectName").toString().lowercase()}-api")) // Plazma - Rebrand + implementation(project(":${parent!!.property("projectName").toString().lowercase()}-api")) // Plazma - Rebrand
// Plazma start - Use Gradle Version Catalogs // Plazma start - Use Gradle Version Catalogs
implementation(server.bundles.implementation) implementation(server.bundles.implementation)
implementation(common.asm.commons) implementation(common.asm.commons)
@@ -51,7 +51,7 @@ tasks.jar { @@ -59,7 +59,7 @@ tasks.jar {
attributes( attributes(
"Main-Class" to "org.bukkit.craftbukkit.Main", "Main-Class" to "org.bukkit.craftbukkit.Main",
"Implementation-Title" to "CraftBukkit", "Implementation-Title" to "CraftBukkit",
@@ -244,10 +245,10 @@ index 411f1f8c6be072cfc5ba88cbec38dbc4300a41d1..0fb3eeab083a0b1e9b495bd2c5c556fc
Main.LOGGER.error(awtException); Main.LOGGER.error(awtException);
return; return;
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 dfe3d28bd97d1335457d1005ecf69afe75d5ff80..dc571ad9882a6c35e25b20086da1f2c51d3b4b57 100644 index 4e989dd5919e29d04dcd9f6af0f3922f94d41742..2b015360df398ad8118f7b108cb9474edf373121 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
@@ -495,8 +495,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -496,8 +496,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
if (!newWorld.isDirectory() && oldWorld.isDirectory() && oldLevelDat.isFile()) { if (!newWorld.isDirectory() && oldWorld.isDirectory() && oldLevelDat.isFile()) {
MinecraftServer.LOGGER.info("---- Migration of old " + worldType + " folder required ----"); MinecraftServer.LOGGER.info("---- Migration of old " + worldType + " folder required ----");
@@ -258,7 +259,7 @@ index dfe3d28bd97d1335457d1005ecf69afe75d5ff80..dc571ad9882a6c35e25b20086da1f2c5
MinecraftServer.LOGGER.info("Attempting to move " + oldWorld + " to " + newWorld + "..."); MinecraftServer.LOGGER.info("Attempting to move " + oldWorld + " to " + newWorld + "...");
if (newWorld.exists()) { if (newWorld.exists()) {
@@ -965,7 +965,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -966,7 +966,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()) {
@@ -267,7 +268,7 @@ index dfe3d28bd97d1335457d1005ecf69afe75d5ff80..dc571ad9882a6c35e25b20086da1f2c5
while (this.getRunningThread().isAlive()) { while (this.getRunningThread().isAlive()) {
this.getRunningThread().stop(); this.getRunningThread().stop();
try { try {
@@ -1185,7 +1185,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -1187,7 +1187,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
LOGGER.info("*************************************************************************************"); LOGGER.info("*************************************************************************************");
LOGGER.info("This is the first time you're starting this server."); LOGGER.info("This is the first time you're starting this server.");
LOGGER.info("It's recommended you read our 'Getting Started' documentation for guidance."); LOGGER.info("It's recommended you read our 'Getting Started' documentation for guidance.");
@@ -277,10 +278,10 @@ index dfe3d28bd97d1335457d1005ecf69afe75d5ff80..dc571ad9882a6c35e25b20086da1f2c5
} }
// Paper end - Add onboarding message for initial server start // Paper end - Add onboarding message for initial server start
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index 957da64ddd0a56f457122a3f590b45e348f22382..a8cef5417273a48e1f76e4116e848b6ba15928f2 100644 index 894efda0d643f054fa42f5f6ba87682bf3850778..5b42536e5a9e5aec5be8e3630cfae17bb20357e9 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -792,7 +792,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -797,7 +797,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
org.bukkit.plugin.Plugin[] plugins = this.server.getPluginManager().getPlugins(); org.bukkit.plugin.Plugin[] plugins = this.server.getPluginManager().getPlugins();
result.append(this.server.getName()); result.append(this.server.getName());
@@ -375,7 +376,7 @@ index f6e3b745fc417354380d4a969f83aee430bad785..d2795cacee1b3dd2d73ec91553bb8aa3
private static CompoundTag readOversizedChunk(RegionFile regionfile, ChunkPos chunkCoordinate) throws IOException { private static CompoundTag readOversizedChunk(RegionFile regionfile, ChunkPos chunkCoordinate) throws IOException {
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 b82c66c402823874e3a5fc9bb7b1df73c708aec5..ebc75eb4ae38dd2f24eb81e5797ae48e25ae93c7 100644 index ba939f147edcedf0e8311e73a1ab85048354ac96..fe78cb60fe6000004c9e567e9046c45dd0e22d59 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
@@ -269,7 +269,7 @@ import javax.annotation.Nullable; // Paper @@ -269,7 +269,7 @@ import javax.annotation.Nullable; // Paper
@@ -388,7 +389,7 @@ index b82c66c402823874e3a5fc9bb7b1df73c708aec5..ebc75eb4ae38dd2f24eb81e5797ae48e
private final String bukkitVersion = Versioning.getBukkitVersion(); private final String bukkitVersion = Versioning.getBukkitVersion();
private final Logger logger = Logger.getLogger("Minecraft"); private final Logger logger = Logger.getLogger("Minecraft");
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index a0a7bfe8f5a40b945b83096de1efd650adeb9ee3..369543328531b0bd12c76aa8552e565bc40b51f7 100644 index 43df9d815e86e8fb009b47cf16a419ddc6dbe6a7..7d7134820ce73de1eef242d14d57a520d3db2a25 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java --- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -142,7 +142,7 @@ public class Main { @@ -142,7 +142,7 @@ public class Main {
@@ -400,7 +401,7 @@ index a0a7bfe8f5a40b945b83096de1efd650adeb9ee3..369543328531b0bd12c76aa8552e565b
this.acceptsAll(Main.asList("demo"), "Demo mode"); this.acceptsAll(Main.asList("demo"), "Demo mode");
@@ -187,7 +187,7 @@ public class Main { @@ -193,7 +193,7 @@ public class Main {
acceptsAll(asList("server-name"), "Name of the server") acceptsAll(asList("server-name"), "Name of the server")
.withRequiredArg() .withRequiredArg()
.ofType(String.class) .ofType(String.class)
@@ -409,7 +410,7 @@ index a0a7bfe8f5a40b945b83096de1efd650adeb9ee3..369543328531b0bd12c76aa8552e565b
.describedAs("Name"); .describedAs("Name");
// Paper end // Paper end
} }
@@ -252,14 +252,14 @@ public class Main { @@ -258,14 +258,14 @@ public class Main {
float javaVersion = Float.parseFloat(System.getProperty("java.class.version")); float javaVersion = Float.parseFloat(System.getProperty("java.class.version"));
boolean isOldVersion = javaVersion < 61.0; boolean isOldVersion = javaVersion < 61.0;
if (!skip && isOldVersion) { if (!skip && isOldVersion) {
@@ -492,7 +493,7 @@ index 99597258e8e88cd9e2c901c4ac3ff7faeeabee2b..317ac7c5f1c2d542be260f7e86f9a728
+ // Plazma end - Rebranding; Branding utils + // Plazma end - Rebranding; Branding utils
} }
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index de70bfdbdd7740fdf20dd063a7a623a9e96cef98..85f4a9300aebfd4ee64d179dfa1f7ffd314cb3b8 100644 index 1b1981e80bb0ca5f5edceef96b88168bd9cc839b..2494f0e1c4a1838f6d217d8727d25384180218f5 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -231,7 +231,7 @@ public class PurpurConfig { @@ -231,7 +231,7 @@ public class PurpurConfig {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Plazma Configurations
diff --git a/build.gradle.kts b/build.gradle.kts diff --git a/build.gradle.kts b/build.gradle.kts
index 3cf30564db4e5cb2eeb09258940d0b2b5f9b0edc..92826a38773b6d76acfbf18774ada8a395e9007f 100644 index d6482fd7d3ca31208cacd420317a30f4597ef83a..c02fba3660ab368f64bd120db8c0a9de6e4f763d 100644
--- a/build.gradle.kts --- a/build.gradle.kts
+++ b/build.gradle.kts +++ b/build.gradle.kts
@@ -18,6 +18,7 @@ dependencies { @@ -19,6 +19,7 @@ dependencies {
implementation(common.asm.commons) implementation(common.asm.commons)
implementation(common.log4j.iostreams) implementation(common.log4j.iostreams)
implementation(common.commons.lang2) implementation(common.commons.lang2)
@@ -517,7 +517,7 @@ index 83a726bcf8b7dce73a361b0d79dbd63a0afc7a12..3c893e5da90f7fcf519f190e34e2b15e
+ +
} }
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 dc571ad9882a6c35e25b20086da1f2c51d3b4b57..7d20729d18187d2f576a1fe2f9b633429ee96923 100644 index 2b015360df398ad8118f7b108cb9474edf373121..690423f4159ddff2d90d7ccf931db72903cb822c 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
@@ -314,6 +314,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -314,6 +314,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -528,7 +528,7 @@ index dc571ad9882a6c35e25b20086da1f2c51d3b4b57..7d20729d18187d2f576a1fe2f9b63342
public static long currentTickLong = 0L; // Paper - track current tick as a long public static long currentTickLong = 0L; // Paper - track current tick as a long
public boolean isIteratingOverLevels = false; // Paper - Throw exception on world create while being ticked public boolean isIteratingOverLevels = false; // Paper - Throw exception on world create while being ticked
public boolean lagging = false; // Purpur public boolean lagging = false; // Purpur
@@ -424,6 +425,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -425,6 +426,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
Runtime.getRuntime().addShutdownHook(new org.bukkit.craftbukkit.util.ServerShutdownThread(this)); Runtime.getRuntime().addShutdownHook(new org.bukkit.craftbukkit.util.ServerShutdownThread(this));
// CraftBukkit end // CraftBukkit end
this.paperConfigurations = services.paperConfigurations(); // Paper - add paper configuration files this.paperConfigurations = services.paperConfigurations(); // Paper - add paper configuration files
@@ -596,7 +596,7 @@ index 33e3815a0c979609d4c7ab83ad91e87ac07a556d..4f1071c48fec78036d6759cdff179df3
} }
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index a8cef5417273a48e1f76e4116e848b6ba15928f2..6b2aabb9ab3b8e30a8c3b333b7cb6fa9ebb01879 100644 index 5b42536e5a9e5aec5be8e3630cfae17bb20357e9..f093b0de1808a7c2c568aeb476180518f84e3839 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -222,6 +222,8 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -222,6 +222,8 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
@@ -617,7 +617,7 @@ index a8cef5417273a48e1f76e4116e848b6ba15928f2..6b2aabb9ab3b8e30a8c3b333b7cb6fa9
// Purpur start // Purpur start
try { try {
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 7924e3c597164f71056cd58dd167ee8b1d41b9c3..5df20b97f3c88248ab70e7686b5fa0ca8e5a58c2 100644 index b3d47d16fb9733ca5cc4f90051ee8694ff3545c5..5456d2ded6f6e75c48868147e5a2dde5eb23bec8 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
@@ -700,15 +700,33 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -700,15 +700,33 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -658,7 +658,7 @@ index 7924e3c597164f71056cd58dd167ee8b1d41b9c3..5df20b97f3c88248ab70e7686b5fa0ca
this.navigatingMobs = new ObjectOpenHashSet(); this.navigatingMobs = new ObjectOpenHashSet();
this.blockEvents = new ObjectLinkedOpenHashSet(); this.blockEvents = new ObjectLinkedOpenHashSet();
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 eda2f8cc034cf46293be1be117a60cf8b663c303..1e5964f315b3e944d249032744991721c73a62ce 100644 index 16eb159ab4533f5101461bc4f417b9420a321d82..59d6d25ce3d37a7d408b168aec3c2a90a6d1dfab 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
@@ -168,6 +168,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -168,6 +168,12 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
@@ -674,9 +674,9 @@ index eda2f8cc034cf46293be1be117a60cf8b663c303..1e5964f315b3e944d249032744991721
public final com.destroystokyo.paper.antixray.ChunkPacketBlockController chunkPacketBlockController; // Paper - Anti-Xray public final com.destroystokyo.paper.antixray.ChunkPacketBlockController chunkPacketBlockController; // Paper - Anti-Xray
public final org.purpurmc.purpur.PurpurWorldConfig purpurConfig; // Purpur public final org.purpurmc.purpur.PurpurWorldConfig purpurConfig; // Purpur
@@ -257,9 +263,28 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -259,9 +265,28 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
public abstract ResourceKey<LevelStem> getTypeKey(); //protected final io.papermc.paper.util.math.ThreadUnsafeRandom randomTickRandom = new io.papermc.paper.util.math.ThreadUnsafeRandom(java.util.concurrent.ThreadLocalRandom.current().nextLong()); public net.minecraft.util.RandomSource getThreadUnsafeRandom() { return this.randomTickRandom; } // Pufferfish - move thread unsafe random initialization // Pufferfish - getter // Purpur - dont break ABI
- protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, RegistryAccess iregistrycustom, Holder<DimensionType> holder, Supplier<ProfilerFiller> supplier, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - create paper world config; Async-Anti-Xray: Pass executor - protected Level(WritableLevelData worlddatamutable, ResourceKey<Level> resourcekey, RegistryAccess iregistrycustom, Holder<DimensionType> holder, Supplier<ProfilerFiller> supplier, boolean flag, boolean flag1, long i, int j, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider, org.bukkit.World.Environment env, java.util.function.Function<org.spigotmc.SpigotWorldConfig, io.papermc.paper.configuration.WorldConfiguration> paperWorldConfigCreator, java.util.concurrent.Executor executor) { // Paper - create paper world config; Async-Anti-Xray: Pass executor
+ // Plazma start - Configurable Plazma + // Plazma start - Configurable Plazma
@@ -704,8 +704,33 @@ index eda2f8cc034cf46293be1be117a60cf8b663c303..1e5964f315b3e944d249032744991721
this.purpurConfig = new org.purpurmc.purpur.PurpurWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName(), env); // Purpur this.purpurConfig = new org.purpurmc.purpur.PurpurWorldConfig(((net.minecraft.world.level.storage.PrimaryLevelData) worlddatamutable).getLevelName(), env); // Purpur
this.playerBreedingCooldowns = this.getNewBreedingCooldownCache(); // Purpur this.playerBreedingCooldowns = this.getNewBreedingCooldownCache(); // Purpur
this.generator = gen; this.generator = gen;
@@ -1356,13 +1381,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
try {
tickConsumer.accept(entity);
MinecraftServer.getServer().executeMidTickTasks(); // Paper - execute chunk tasks mid tick
- } catch (Throwable throwable) { // Pufferfish - diff on change ServerLevel.tick
+ } catch (Throwable throwable) {
if (throwable instanceof ThreadDeath) throw throwable; // Paper
// Paper start - Prevent block entity and entity crashes
final String msg = String.format("Entity threw exception at %s:%s,%s,%s", entity.level().getWorld().getName(), entity.getX(), entity.getY(), entity.getZ());
MinecraftServer.LOGGER.error(msg, throwable);
getCraftServer().getPluginManager().callEvent(new com.destroystokyo.paper.event.server.ServerExceptionEvent(new com.destroystokyo.paper.exception.ServerInternalException(msg, throwable))); // Paper - ServerExceptionEvent
- entity.discard(org.bukkit.event.entity.EntityRemoveEvent.Cause.DISCARD); // Pufferfish - diff on change ServerLevel.tick
+ entity.discard(org.bukkit.event.entity.EntityRemoveEvent.Cause.DISCARD);
// Paper end - Prevent block entity and entity crashes
}
}
@@ -1837,7 +1862,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
}
public ProfilerFiller getProfiler() {
- if (true || gg.pufferfish.pufferfish.PufferfishConfig.disableMethodProfiler) return net.minecraft.util.profiling.InactiveProfiler.INSTANCE; // Pufferfish // Purpur
+ //if (true || gg.pufferfish.pufferfish.PufferfishConfig.disableMethodProfiler) return net.minecraft.util.profiling.InactiveProfiler.INSTANCE; // Pufferfish // Purpur // Purpur - TODO: Pufferfish
return (ProfilerFiller) this.profiler.get();
}
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 ebc75eb4ae38dd2f24eb81e5797ae48e25ae93c7..841ce275ff3f49783a61af71d83020b8cda35473 100644 index fe78cb60fe6000004c9e567e9046c45dd0e22d59..1afae84afd5a6fcc11227daf75123e8b65642b01 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
@@ -1052,6 +1052,7 @@ public final class CraftServer implements Server { @@ -1052,6 +1052,7 @@ public final class CraftServer implements Server {
@@ -716,7 +741,7 @@ index ebc75eb4ae38dd2f24eb81e5797ae48e25ae93c7..841ce275ff3f49783a61af71d83020b8
org.purpurmc.purpur.PurpurConfig.init((File) console.options.valueOf("purpur-settings")); // Purpur org.purpurmc.purpur.PurpurConfig.init((File) console.options.valueOf("purpur-settings")); // Purpur
for (ServerLevel world : this.console.getAllLevels()) { for (ServerLevel world : this.console.getAllLevels()) {
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty // world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
@@ -3117,6 +3118,13 @@ public final class CraftServer implements Server { @@ -3122,6 +3123,13 @@ public final class CraftServer implements Server {
} }
// Purpur end // Purpur end
@@ -731,10 +756,10 @@ index ebc75eb4ae38dd2f24eb81e5797ae48e25ae93c7..841ce275ff3f49783a61af71d83020b8
public void restart() { public void restart() {
org.spigotmc.RestartCommand.restart(); org.spigotmc.RestartCommand.restart();
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index 369543328531b0bd12c76aa8552e565bc40b51f7..40fd40da9a7fc2b12035b99960e7f38c78eb2a5e 100644 index 7d7134820ce73de1eef242d14d57a520d3db2a25..3187d9fdfe32aa38a979406e798f6a6bcc1158a0 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java --- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -190,6 +190,14 @@ public class Main { @@ -196,6 +196,14 @@ public class Main {
.defaultsTo("A " + org.bukkit.craftbukkit.util.Versioning.BRANDING + " Server") // Plazma - Rebrand .defaultsTo("A " + org.bukkit.craftbukkit.util.Versioning.BRANDING + " Server") // Plazma - Rebrand
.describedAs("Name"); .describedAs("Name");
// Paper end // Paper end

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Development Build
diff --git a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java diff --git a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
index c08b91752f66a99bc6cd4495a33a400fba2b5429..02787dc98e26e505182c041049dae3922de63683 100644 index 317ac7c5f1c2d542be260f7e86f9a7281506ebe0..2612df0680800e8c4644599b1885230778c812b7 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java --- a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java +++ b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
@@ -18,7 +18,7 @@ public final class Versioning { @@ -18,7 +18,7 @@ public final class Versioning {

View File

@@ -137,18 +137,18 @@ index f164256d59b761264876ca0c85f812d101bfd5de..deaeb134c47da8710afa747bf980bd00
final TrackedChunk chunk = this.byChunk.get(CoordinateUtils.getChunkKey(chunkX, chunkZ)); final TrackedChunk chunk = this.byChunk.get(CoordinateUtils.getChunkKey(chunkX, chunkZ));
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 7d20729d18187d2f576a1fe2f9b633429ee96923..9d5257f810f9f88504b913fa0c7c214acc1da2cb 100644 index 690423f4159ddff2d90d7ccf931db72903cb822c..c9a5c3b915f09a316f0f2725c51b696da111ccd3 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
@@ -323,6 +323,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -324,6 +324,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
public volatile Thread shutdownThread; // Paper
public volatile boolean abnormalExit = false; // Paper public volatile boolean abnormalExit = false; // Paper
public static final long SERVER_INIT = System.nanoTime(); // Paper - Lag compensation public static final long SERVER_INIT = System.nanoTime(); // Paper - Lag compensation
public gg.pufferfish.pufferfish.util.AsyncExecutor mobSpawnExecutor = new gg.pufferfish.pufferfish.util.AsyncExecutor("MobSpawning"); // Pufferfish - optimize mob spawning
+ public final Set<Entity> entitiesWithScheduledTasks = java.util.concurrent.ConcurrentHashMap.newKeySet(); // Plazma - Port SparklyPaper patches; Skip EntityScheduler's executeTick checks if there isn't any tasks to be run + public final Set<Entity> entitiesWithScheduledTasks = java.util.concurrent.ConcurrentHashMap.newKeySet(); // Plazma - Port SparklyPaper patches; Skip EntityScheduler's executeTick checks if there isn't any tasks to be run
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();
@@ -1743,17 +1744,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -1745,17 +1746,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
//MinecraftTimings.bukkitSchedulerTimer.stopTiming(); // Spigot // Paper // Purpur //MinecraftTimings.bukkitSchedulerTimer.stopTiming(); // Spigot // Paper // Purpur
// Paper start - Folia scheduler API // Paper start - Folia scheduler API
((io.papermc.paper.threadedregions.scheduler.FoliaGlobalRegionScheduler) Bukkit.getGlobalRegionScheduler()).tick(); ((io.papermc.paper.threadedregions.scheduler.FoliaGlobalRegionScheduler) Bukkit.getGlobalRegionScheduler()).tick();
@@ -175,7 +175,7 @@ index 7d20729d18187d2f576a1fe2f9b633429ee96923..9d5257f810f9f88504b913fa0c7c214a
// Paper end - Folia scheduler API // Paper end - Folia scheduler API
io.papermc.paper.adventure.providers.ClickCallbackProviderImpl.CALLBACK_MANAGER.handleQueue(this.tickCount); // Paper io.papermc.paper.adventure.providers.ClickCallbackProviderImpl.CALLBACK_MANAGER.handleQueue(this.tickCount); // Paper
//this.profiler.push("commandFunctions"); // Purpur //this.profiler.push("commandFunctions"); // Purpur
@@ -1820,7 +1819,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -1822,7 +1821,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
try { try {
//worldserver.timings.doTick.startTiming(); // Spigot // Purpur //worldserver.timings.doTick.startTiming(); // Spigot // Purpur
@@ -191,8 +191,17 @@ index 7d20729d18187d2f576a1fe2f9b633429ee96923..9d5257f810f9f88504b913fa0c7c214a
// Paper start // Paper start
for (final io.papermc.paper.chunk.SingleThreadChunkRegionManager regionManager : worldserver.getChunkSource().chunkMap.regionManagers) { for (final io.papermc.paper.chunk.SingleThreadChunkRegionManager regionManager : worldserver.getChunkSource().chunkMap.regionManagers) {
regionManager.recalculateRegions(); regionManager.recalculateRegions();
@@ -2601,7 +2608,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
}
public ProfilerFiller getProfiler() {
- //if (gg.pufferfish.pufferfish.PufferfishConfig.disableMethodProfiler) return net.minecraft.util.profiling.InactiveProfiler.INSTANCE; // Pufferfish // Purpur
+ //if (true || gg.pufferfish.pufferfish.PufferfishConfig.disableMethodProfiler) return net.minecraft.util.profiling.InactiveProfiler.INSTANCE; // Pufferfish // Purpur
return this.profiler;
}
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index 6b2aabb9ab3b8e30a8c3b333b7cb6fa9ebb01879..ca1e8da7540457ecba5684acd42129509c8204f5 100644 index f093b0de1808a7c2c568aeb476180518f84e3839..53134751868d37a2659aef74e37c0466b9238197 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -224,6 +224,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -224,6 +224,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
@@ -204,7 +213,7 @@ index 6b2aabb9ab3b8e30a8c3b333b7cb6fa9ebb01879..ca1e8da7540457ecba5684acd4212950
// Paper start - fix converting txt to json file; convert old users earlier after PlayerList creation but before file load/save // Paper start - fix converting txt to json file; convert old users earlier after PlayerList creation but before file load/save
if (this.convertOldUsers()) { if (this.convertOldUsers()) {
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
index 345f143b0eeb77acb96e4bc716f3b23782ac782f..4f112e2550fae57ccd41f6525bffe6d6974a8dd1 100644 index 4b8776e760cca21e558c8fcb1e0e8d07c3589490..dd1a38488802080f961f87b73dfbb8229fb69e99 100644
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java --- a/src/main/java/net/minecraft/server/level/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
@@ -1439,7 +1439,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -1439,7 +1439,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider
@@ -217,10 +226,10 @@ index 345f143b0eeb77acb96e4bc716f3b23782ac782f..4f112e2550fae57ccd41f6525bffe6d6
} }
// CraftBukkit end // CraftBukkit end
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 476a04d87a61b021816d2970e86042bde32d95a2..53c0b48966558f43bb9bd7d29d9588f9d83e0de7 100644 index 5eb7bcf492ee354ef775cd8d09c7ca2bdfeb7ce2..697cb18bce2f2470a0a2347ba6709e1449b360fd 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
@@ -606,7 +606,7 @@ public class ServerChunkCache extends ChunkSource { @@ -615,7 +615,7 @@ public class ServerChunkCache extends ChunkSource {
// Paper start - optimise chunk tick iteration // Paper start - optimise chunk tick iteration
com.destroystokyo.paper.util.maplist.ReferenceList<ServerPlayer> playersNearby com.destroystokyo.paper.util.maplist.ReferenceList<ServerPlayer> playersNearby
@@ -230,7 +239,7 @@ index 476a04d87a61b021816d2970e86042bde32d95a2..53c0b48966558f43bb9bd7d29d9588f9
continue; continue;
} }
diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java
index dd6278fe99e2ee4daa95249c71ea935dd08b0025..a528685040bf5596fe20fc055d691fd7e663762c 100644 index 78be6cea03f40edfa90b5d9df014d5cf22b81f61..c376997ea2b8f61c2dbd80b31d51ba731fd5ed4c 100644
--- a/src/main/java/net/minecraft/server/level/ServerEntity.java --- a/src/main/java/net/minecraft/server/level/ServerEntity.java
+++ b/src/main/java/net/minecraft/server/level/ServerEntity.java +++ b/src/main/java/net/minecraft/server/level/ServerEntity.java
@@ -78,6 +78,7 @@ public class ServerEntity { @@ -78,6 +78,7 @@ public class ServerEntity {
@@ -241,7 +250,7 @@ index dd6278fe99e2ee4daa95249c71ea935dd08b0025..a528685040bf5596fe20fc055d691fd7
public ServerEntity(ServerLevel worldserver, Entity entity, int i, boolean flag, Consumer<Packet<?>> consumer, Set<ServerPlayerConnection> trackedPlayers) { public ServerEntity(ServerLevel worldserver, Entity entity, int i, boolean flag, Consumer<Packet<?>> consumer, Set<ServerPlayerConnection> trackedPlayers) {
this.trackedPlayers = trackedPlayers; this.trackedPlayers = trackedPlayers;
@@ -215,12 +216,15 @@ public class ServerEntity { @@ -217,12 +218,15 @@ public class ServerEntity {
if ((this.trackDelta || this.entity.hasImpulse || this.entity instanceof LivingEntity && ((LivingEntity) this.entity).isFallFlying()) && this.tickCount > 0) { if ((this.trackDelta || this.entity.hasImpulse || this.entity instanceof LivingEntity && ((LivingEntity) this.entity).isFallFlying()) && this.tickCount > 0) {
Vec3 vec3d1 = this.entity.getDeltaMovement(); Vec3 vec3d1 = this.entity.getDeltaMovement();
@@ -263,7 +272,7 @@ index dd6278fe99e2ee4daa95249c71ea935dd08b0025..a528685040bf5596fe20fc055d691fd7
if (packet1 != null) { if (packet1 != null) {
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 5df20b97f3c88248ab70e7686b5fa0ca8e5a58c2..d1b2e68a702ce01c33cfe0e1297a8809e3acf088 100644 index 5456d2ded6f6e75c48868147e5a2dde5eb23bec8..e2de0c343098d65d830f27b4f80c3f8a9f18a7ae 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
@@ -233,6 +233,12 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -233,6 +233,12 @@ public class ServerLevel extends Level implements WorldGenLevel {
@@ -316,7 +325,7 @@ index f890738d3bb9fb5e70a9d323c6cec97f9948f9cf..eb3fc1af68768383d524cf0f50c4f4b3
} }
} }
diff --git a/src/main/java/net/minecraft/world/entity/ambient/Bat.java b/src/main/java/net/minecraft/world/entity/ambient/Bat.java diff --git a/src/main/java/net/minecraft/world/entity/ambient/Bat.java b/src/main/java/net/minecraft/world/entity/ambient/Bat.java
index 47a7c7f9527e1c4ea457eeafe0e11145653a871f..d2151a355e3ee8a6f8b4f28b2ce7ac382c939ad3 100644 index a70255995f380a9b0f7057cb5cb820f7655b93fc..2bffc790496fd9b09516d0d908b5319c9dbb1c63 100644
--- a/src/main/java/net/minecraft/world/entity/ambient/Bat.java --- a/src/main/java/net/minecraft/world/entity/ambient/Bat.java
+++ b/src/main/java/net/minecraft/world/entity/ambient/Bat.java +++ b/src/main/java/net/minecraft/world/entity/ambient/Bat.java
@@ -306,7 +306,7 @@ public class Bat extends AmbientCreature { @@ -306,7 +306,7 @@ public class Bat extends AmbientCreature {
@@ -328,11 +337,12 @@ index 47a7c7f9527e1c4ea457eeafe0e11145653a871f..d2151a355e3ee8a6f8b4f28b2ce7ac38
b0 = 7; b0 = 7;
} else if (random.nextBoolean()) { } else if (random.nextBoolean()) {
return false; return false;
@@ -316,7 +316,24 @@ public class Bat extends AmbientCreature { @@ -320,7 +320,25 @@ public class Bat extends AmbientCreature {
} private static boolean isSpookySeason = false;
} private static final int ONE_HOUR = 20 * 60 * 60;
private static int lastSpookyCheck = -ONE_HOUR;
- public static boolean isHalloweenSeason(Level level) { return level.purpurConfig.forceHalloweenSeason || isHalloween(); } // Purpur - public static boolean isHalloweenSeason(Level level) { return level.purpurConfig.forceHalloweenSeason || isHalloween(); } // Purpur
+
+ // Plazma start - Port SparklyPaper patches; Optimize Spooky Season + // Plazma start - Port SparklyPaper patches; Optimize Spooky Season
+ private static boolean isSpookySeason(Level level) { + private static boolean isSpookySeason(Level level) {
+ if (level.purpurConfig.forceHalloweenSeason) return true; + if (level.purpurConfig.forceHalloweenSeason) return true;
@@ -352,8 +362,8 @@ index 47a7c7f9527e1c4ea457eeafe0e11145653a871f..d2151a355e3ee8a6f8b4f28b2ce7ac38
+ @SuppressWarnings("RedundantExplicitChronoField") + @SuppressWarnings("RedundantExplicitChronoField")
+ // Plazma end - Port SparklyPaper patches; Optimize Spooky Season + // Plazma end - Port SparklyPaper patches; Optimize Spooky Season
private static boolean isHalloween() { private static boolean isHalloween() {
if (net.minecraft.server.MinecraftServer.currentTick - lastSpookyCheck > ONE_HOUR) {
LocalDate localdate = LocalDate.now(); LocalDate localdate = LocalDate.now();
int i = localdate.get(ChronoField.DAY_OF_MONTH);
diff --git a/src/main/java/net/minecraft/world/item/MapItem.java b/src/main/java/net/minecraft/world/item/MapItem.java diff --git a/src/main/java/net/minecraft/world/item/MapItem.java b/src/main/java/net/minecraft/world/item/MapItem.java
index 608390ed36710a419de1542b80340dd3fcc7299c..043f068345ca3c50209c1c3cc1feb6277a3da61a 100644 index 608390ed36710a419de1542b80340dd3fcc7299c..043f068345ca3c50209c1c3cc1feb6277a3da61a 100644
--- a/src/main/java/net/minecraft/world/item/MapItem.java --- a/src/main/java/net/minecraft/world/item/MapItem.java
@@ -373,10 +383,10 @@ index 608390ed36710a419de1542b80340dd3fcc7299c..043f068345ca3c50209c1c3cc1feb627
mapItemSavedData.tickCarriedBy(player, stack); mapItemSavedData.tickCarriedBy(player, stack);
} }
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 1e5964f315b3e944d249032744991721c73a62ce..cc402c84734dc1841ce09f7bfd07936c745e6662 100644 index 59d6d25ce3d37a7d408b168aec3c2a90a6d1dfab..23f10ed05e2c4aabfa3a565a9117dabe52f175f7 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
@@ -1345,6 +1345,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -1347,6 +1347,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
boolean flag = this.tickRateManager().runsNormally(); boolean flag = this.tickRateManager().runsNormally();
int tilesThisCycle = 0; int tilesThisCycle = 0;
@@ -385,7 +395,7 @@ index 1e5964f315b3e944d249032744991721c73a62ce..cc402c84734dc1841ce09f7bfd07936c
var toRemove = new it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet<TickingBlockEntity>(); // Paper - Fix MC-117075; use removeAll var toRemove = new it.unimi.dsi.fastutil.objects.ReferenceOpenHashSet<TickingBlockEntity>(); // Paper - Fix MC-117075; use removeAll
toRemove.add(null); // Paper - Fix MC-117075 toRemove.add(null); // Paper - Fix MC-117075
for (tileTickPosition = 0; tileTickPosition < this.blockEntityTickers.size(); tileTickPosition++) { // Paper - Disable tick limiters for (tileTickPosition = 0; tileTickPosition < this.blockEntityTickers.size(); tileTickPosition++) { // Paper - Disable tick limiters
@@ -1357,14 +1359,28 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -1359,14 +1361,28 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
tilesThisCycle--; tilesThisCycle--;
toRemove.add(tickingblockentity); // Paper - Fix MC-117075; use removeAll toRemove.add(tickingblockentity); // Paper - Fix MC-117075; use removeAll
// Spigot end // Spigot end
@@ -689,7 +699,7 @@ index 1aac95b03a9e2e37c24f2a30bcb259c1424e1c78..e7c0c36fd3455c0536e98259b46dbcc9
this.levelHeightAccessor = heightLimitView; this.levelHeightAccessor = heightLimitView;
this.sections = new LevelChunkSection[heightLimitView.getSectionsCount()]; this.sections = new LevelChunkSection[heightLimitView.getSectionsCount()];
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
index fd637415625fdabcac07e120e9168d09c06141d4..37120fcb31f4c9a90be37db252b17eb93db2cb0f 100644 index 56dd36a88f11aeac528e7be2998e52324c01fde1..e1853318350f9a10e8db106a7bc015307db0de6c 100644
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
@@ -75,6 +75,8 @@ public class LevelChunk extends ChunkAccess { @@ -75,6 +75,8 @@ public class LevelChunk extends ChunkAccess {
@@ -701,7 +711,7 @@ index fd637415625fdabcac07e120e9168d09c06141d4..37120fcb31f4c9a90be37db252b17eb9
}; };
private final Map<BlockPos, LevelChunk.RebindableTickingBlockEntityWrapper> tickersInLevel; private final Map<BlockPos, LevelChunk.RebindableTickingBlockEntityWrapper> tickersInLevel;
public boolean loaded; public boolean loaded;
@@ -1087,7 +1089,7 @@ public class LevelChunk extends ChunkAccess { @@ -1101,7 +1103,7 @@ public class LevelChunk extends ChunkAccess {
} }
private <T extends BlockEntity> TickingBlockEntity createTicker(T blockEntity, BlockEntityTicker<T> blockEntityTicker) { private <T extends BlockEntity> TickingBlockEntity createTicker(T blockEntity, BlockEntityTicker<T> blockEntityTicker) {
@@ -710,7 +720,7 @@ index fd637415625fdabcac07e120e9168d09c06141d4..37120fcb31f4c9a90be37db252b17eb9
} }
@FunctionalInterface @FunctionalInterface
@@ -1138,17 +1140,21 @@ public class LevelChunk extends ChunkAccess { @@ -1152,17 +1154,21 @@ public class LevelChunk extends ChunkAccess {
public String toString() { public String toString() {
return String.valueOf(this.ticker) + " <wrapped>"; return String.valueOf(this.ticker) + " <wrapped>";
} }
@@ -733,7 +743,7 @@ index fd637415625fdabcac07e120e9168d09c06141d4..37120fcb31f4c9a90be37db252b17eb9
} }
@Override @Override
@@ -1216,5 +1222,7 @@ public class LevelChunk extends ChunkAccess { @@ -1230,5 +1236,7 @@ public class LevelChunk extends ChunkAccess {
return "Level ticker for " + s + "@" + String.valueOf(this.getPos()); return "Level ticker for " + s + "@" + String.valueOf(this.getPos());
} }

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Always agree EULA on development mode
diff --git a/src/main/java/net/minecraft/server/Main.java b/src/main/java/net/minecraft/server/Main.java diff --git a/src/main/java/net/minecraft/server/Main.java b/src/main/java/net/minecraft/server/Main.java
index c59a1b6a365bf80ac913c1a9c939ad2cc5f3b963..20d215e53b4a02d7f52197decf05fd1e6ee44669 100644 index ce7782dd216922ad536bb435034255508271bfa4..c464e8440e854bd0d68042fdb9937fcfa8b77485 100644
--- a/src/main/java/net/minecraft/server/Main.java --- a/src/main/java/net/minecraft/server/Main.java
+++ b/src/main/java/net/minecraft/server/Main.java +++ b/src/main/java/net/minecraft/server/Main.java
@@ -193,6 +193,7 @@ public class Main { @@ -193,6 +193,7 @@ public class Main {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Add more metrics
diff --git a/src/main/java/com/destroystokyo/paper/Metrics.java b/src/main/java/com/destroystokyo/paper/Metrics.java diff --git a/src/main/java/com/destroystokyo/paper/Metrics.java b/src/main/java/com/destroystokyo/paper/Metrics.java
index 1de03b16c513d83550077bab46b52ae6e40eb98e..0935884fa747407d262178c25388073957d4547e 100644 index 5eefe30d47b055fd544caebfb77f6f5a12894fda..b52df693c32b86617ed3afefb4b24c91eab67273 100644
--- a/src/main/java/com/destroystokyo/paper/Metrics.java --- a/src/main/java/com/destroystokyo/paper/Metrics.java
+++ b/src/main/java/com/destroystokyo/paper/Metrics.java +++ b/src/main/java/com/destroystokyo/paper/Metrics.java
@@ -636,38 +636,59 @@ public class Metrics { @@ -636,38 +636,59 @@ public class Metrics {

View File

@@ -9,10 +9,10 @@ Subject: [PATCH] Optimize default configurations
- YouHaveTrouble/minecraft-exploits-and-how-to-fix-them - YouHaveTrouble/minecraft-exploits-and-how-to-fix-them
diff --git a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java diff --git a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
index 2874bc3001c4e7d9191e47ba512c5a68369c21f1..750dd556123f3f912f8463ca3018256aaca5a2cb 100644 index 32035e37b39ba42232fea948166e7c1d4d06190c..8445a0b25d647b2c1f9a44f849084cdec0842e18 100644
--- a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java --- a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
+++ b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java +++ b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
@@ -156,7 +156,7 @@ public class GlobalConfiguration extends ConfigurationPart { @@ -167,7 +167,7 @@ public class GlobalConfiguration extends ConfigurationPart {
public class Watchdog extends ConfigurationPart { public class Watchdog extends ConfigurationPart {
public int earlyWarningEvery = 5000; public int earlyWarningEvery = 5000;
@@ -21,7 +21,7 @@ index 2874bc3001c4e7d9191e47ba512c5a68369c21f1..750dd556123f3f912f8463ca3018256a
} }
public SpamLimiter spamLimiter; public SpamLimiter spamLimiter;
@@ -196,7 +196,7 @@ public class GlobalConfiguration extends ConfigurationPart { @@ -207,7 +207,7 @@ public class GlobalConfiguration extends ConfigurationPart {
public Commands commands; public Commands commands;
public class Commands extends ConfigurationPart { public class Commands extends ConfigurationPart {
@@ -30,7 +30,7 @@ index 2874bc3001c4e7d9191e47ba512c5a68369c21f1..750dd556123f3f912f8463ca3018256a
public boolean fixTargetSelectorTagCompletion = true; public boolean fixTargetSelectorTagCompletion = true;
public boolean timeCommandAffectsAllWorlds = false; public boolean timeCommandAffectsAllWorlds = false;
} }
@@ -245,7 +245,7 @@ public class GlobalConfiguration extends ConfigurationPart { @@ -256,7 +256,7 @@ public class GlobalConfiguration extends ConfigurationPart {
public BookSize bookSize; public BookSize bookSize;
public class BookSize extends ConfigurationPart { public class BookSize extends ConfigurationPart {
@@ -39,7 +39,7 @@ index 2874bc3001c4e7d9191e47ba512c5a68369c21f1..750dd556123f3f912f8463ca3018256a
public double totalMultiplier = 0.98D; // TODO this should probably be merged into the above inner class public double totalMultiplier = 0.98D; // TODO this should probably be merged into the above inner class
} }
public boolean resolveSelectorsInBooks = false; public boolean resolveSelectorsInBooks = false;
@@ -256,7 +256,15 @@ public class GlobalConfiguration extends ConfigurationPart { @@ -267,7 +267,15 @@ public class GlobalConfiguration extends ConfigurationPart {
public class PacketLimiter extends ConfigurationPart { public class PacketLimiter extends ConfigurationPart {
public Component kickMessage = Component.translatable("disconnect.exceeded_packet_rate", NamedTextColor.RED); public Component kickMessage = Component.translatable("disconnect.exceeded_packet_rate", NamedTextColor.RED);
public PacketLimit allPackets = new PacketLimit(7.0, 500.0, PacketLimit.ViolateAction.KICK); public PacketLimit allPackets = new PacketLimit(7.0, 500.0, PacketLimit.ViolateAction.KICK);
@@ -56,7 +56,7 @@ index 2874bc3001c4e7d9191e47ba512c5a68369c21f1..750dd556123f3f912f8463ca3018256a
@ConfigSerializable @ConfigSerializable
public record PacketLimit(@Required double interval, @Required double maxPacketRate, ViolateAction action) { public record PacketLimit(@Required double interval, @Required double maxPacketRate, ViolateAction action) {
@@ -324,7 +332,7 @@ public class GlobalConfiguration extends ConfigurationPart { @@ -335,7 +343,7 @@ public class GlobalConfiguration extends ConfigurationPart {
executor.setMaximumPoolSize(_chatExecutorMaxSize); executor.setMaximumPoolSize(_chatExecutorMaxSize);
} }
} }
@@ -324,7 +324,7 @@ index 55e16ed1151c5d53f492581f66a3406ac418b653..9af7df196ed74a48a6b6426df36353f9
this.enableJmxMonitoring = this.get("enable-jmx-monitoring", false); this.enableJmxMonitoring = this.get("enable-jmx-monitoring", false);
this.enableStatus = this.get("enable-status", true); this.enableStatus = this.get("enable-status", true);
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 841ce275ff3f49783a61af71d83020b8cda35473..509c7536b84019c854163471cb9d42b969747366 100644 index 1afae84afd5a6fcc11227daf75123e8b65642b01..6de746c3e0f30bcf3dc24b2a4d369c86db445738 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
@@ -433,7 +433,7 @@ public final class CraftServer implements Server { @@ -433,7 +433,7 @@ public final class CraftServer implements Server {
@@ -368,7 +368,7 @@ index 09053b4ccf268fd204c81dbb8d4f10fa9edcad5f..93f67f125b3674e645cfdae27e579e12
#### ENGLISH #### #### ENGLISH ####
This is the %s configuration file for Plazma. This is the %s configuration file for Plazma.
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index 85f4a9300aebfd4ee64d179dfa1f7ffd314cb3b8..fa209964eec7dae8e2a0fa7bb44e0e8791e75248 100644 index 2494f0e1c4a1838f6d217d8727d25384180218f5..69066fd1e82cefff44c7dbd565b19373768e2a62 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -49,6 +49,7 @@ public class PurpurConfig { @@ -49,6 +49,7 @@ public class PurpurConfig {
@@ -388,7 +388,7 @@ index 85f4a9300aebfd4ee64d179dfa1f7ffd314cb3b8..fa209964eec7dae8e2a0fa7bb44e0e87
private static void useAlternateKeepAlive() { private static void useAlternateKeepAlive() {
useAlternateKeepAlive = getBoolean("settings.use-alternate-keepalive", useAlternateKeepAlive); useAlternateKeepAlive = getBoolean("settings.use-alternate-keepalive", useAlternateKeepAlive);
} }
@@ -486,7 +487,7 @@ public class PurpurConfig { @@ -481,7 +482,7 @@ public class PurpurConfig {
} }
public static boolean useUPnP = false; public static boolean useUPnP = false;

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Tweak console logging
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index ca1e8da7540457ecba5684acd42129509c8204f5..9af4efcf9a2c8dee2208ddf37b1bb963a2894666 100644 index 53134751868d37a2659aef74e37c0466b9238197..5057997c3d89e058f17798f81c27766c99c0cba7 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -193,16 +193,6 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -193,16 +193,6 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
@@ -43,7 +43,7 @@ index ca1e8da7540457ecba5684acd42129509c8204f5..9af4efcf9a2c8dee2208ddf37b1bb963
// Paper start - fix converting txt to json file; convert old users earlier after PlayerList creation but before file load/save // Paper start - fix converting txt to json file; convert old users earlier after PlayerList creation but before file load/save
if (this.convertOldUsers()) { if (this.convertOldUsers()) {
this.getProfileCache().save(false); // Paper this.getProfileCache().save(false); // Paper
@@ -330,6 +331,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -334,6 +335,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
String proxyFlavor = (io.papermc.paper.configuration.GlobalConfiguration.get().proxies.velocity.enabled) ? "Velocity" : "BungeeCord"; String proxyFlavor = (io.papermc.paper.configuration.GlobalConfiguration.get().proxies.velocity.enabled) ? "Velocity" : "BungeeCord";
String proxyLink = (io.papermc.paper.configuration.GlobalConfiguration.get().proxies.velocity.enabled) ? "https://docs.papermc.io/velocity/security" : "http://www.spigotmc.org/wiki/firewall-guide/"; String proxyLink = (io.papermc.paper.configuration.GlobalConfiguration.get().proxies.velocity.enabled) ? "https://docs.papermc.io/velocity/security" : "http://www.spigotmc.org/wiki/firewall-guide/";
// Paper end - Add Velocity IP Forwarding Support // Paper end - Add Velocity IP Forwarding Support
@@ -51,7 +51,7 @@ index ca1e8da7540457ecba5684acd42129509c8204f5..9af4efcf9a2c8dee2208ddf37b1bb963
if (!this.usesAuthentication()) { if (!this.usesAuthentication()) {
DedicatedServer.LOGGER.warn("**** SERVER IS RUNNING IN OFFLINE/INSECURE MODE!"); DedicatedServer.LOGGER.warn("**** SERVER IS RUNNING IN OFFLINE/INSECURE MODE!");
DedicatedServer.LOGGER.warn("The server will make no attempt to authenticate usernames. Beware."); DedicatedServer.LOGGER.warn("The server will make no attempt to authenticate usernames. Beware.");
@@ -343,7 +345,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -347,7 +349,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
DedicatedServer.LOGGER.warn("While this makes the game possible to play without internet access, it also opens up the ability for hackers to connect with any username they choose."); DedicatedServer.LOGGER.warn("While this makes the game possible to play without internet access, it also opens up the ability for hackers to connect with any username they choose.");
} }
// Spigot end // Spigot end

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Add missing purpur configuration options
diff --git a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java diff --git a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
index bca7b7192debb3a34a08047010a2438e7b7e2a78..b77aa7518b6ca6c6a387fc0f7270d7ff2dca4ac9 100644 index 569f42645a7730451944fbbd6b96910493feeca5..a14d2ec3b8c89045916b95da5ce2a18d1e866bcf 100644
--- a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java --- a/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
+++ b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java +++ b/src/main/java/net/minecraft/world/entity/animal/allay/Allay.java
@@ -150,6 +150,23 @@ public class Allay extends PathfinderMob implements InventoryCarrier, VibrationS @@ -150,6 +150,23 @@ public class Allay extends PathfinderMob implements InventoryCarrier, VibrationS
@@ -56,7 +56,7 @@ index 24a1663cf1cd3f888981a13907811b55bdbf6133..fdc3aa9672077787e841d240fe1e690d
@Override @Override
diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
index ee8c232ddaa518377bdfa54e83ffc04f7a2f2c9a..2c45f4d321629979926bb9e677ba4bc8b44eec8d 100644 index 4c861b18fbfbae3cb2f1e3563393cfcf4005591c..651f30b4fb02dc03fabad34b62d7d86fa0889754 100644
--- a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java --- a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
+++ b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java +++ b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
@@ -160,6 +160,23 @@ public class Frog extends Animal implements VariantHolder<Holder<FrogVariant>> { @@ -160,6 +160,23 @@ public class Frog extends Animal implements VariantHolder<Holder<FrogVariant>> {
@@ -84,7 +84,7 @@ index ee8c232ddaa518377bdfa54e83ffc04f7a2f2c9a..2c45f4d321629979926bb9e677ba4bc8
public int getPurpurBreedTime() { public int getPurpurBreedTime() {
diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java b/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java b/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java
index 09c4cf772df4644413e40055fedcdf42ee8064fd..73b2e74199d54d87aa6d2b7132f10f29eefa11db 100644 index 64d0e2edf0e47bfe3bc5fbdbabac26c494110467..e077a0bffedd0bb11c9ab5eb507451a0cf6317ea 100644
--- a/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java --- a/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java
+++ b/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java +++ b/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java
@@ -93,6 +93,23 @@ public class Tadpole extends AbstractFish { @@ -93,6 +93,23 @@ public class Tadpole extends AbstractFish {
@@ -135,7 +135,7 @@ index 21bdcbd51d9f440e0734750b40cefa4c08cdaf5f..a2cc1efaa621861828b007759536ac49
@Override @Override
diff --git a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java diff --git a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
index 0bb577ec9ba0d23a741ccf067ac35f6be68312ca..358811e71b8b8a8a09fb6c56ed51bcc11b052add 100644 index 722e1fed4b333958e95a847b27cfc67d04f13263..16891921341f8967c9115f415f91ec379fcd5b0c 100644
--- a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java --- a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
+++ b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java +++ b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
@@ -147,6 +147,23 @@ public class Warden extends Monster implements VibrationSystem { @@ -147,6 +147,23 @@ public class Warden extends Monster implements VibrationSystem {
@@ -191,7 +191,7 @@ index b04f7ce0805453f6c737fa9dc11c4129ca64e934..9840678549e25c6da00aea222a585e7f
@Override @Override
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
index f9779f8cf0399e434ebe9e49e7bae5386ce01410..c5cfda1a1f0bd434efcf32e253c87738eee92def 100644 index 69066fd1e82cefff44c7dbd565b19373768e2a62..42a8009d3bb07cd89e92b71f88ef46dd994bc6eb 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
@@ -329,6 +329,7 @@ public class PurpurConfig { @@ -329,6 +329,7 @@ public class PurpurConfig {
@@ -211,7 +211,7 @@ index f9779f8cf0399e434ebe9e49e7bae5386ce01410..c5cfda1a1f0bd434efcf32e253c87738
org.bukkit.event.inventory.InventoryType.ENDER_CHEST.setDefaultSize(enderChestSixRows ? 54 : 27); org.bukkit.event.inventory.InventoryType.ENDER_CHEST.setDefaultSize(enderChestSixRows ? 54 : 27);
enderChestPermissionRows = getBoolean("settings.blocks.ender_chest.use-permissions-for-rows", enderChestPermissionRows); enderChestPermissionRows = getBoolean("settings.blocks.ender_chest.use-permissions-for-rows", enderChestPermissionRows);
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 72dc81d3015dc7c6365997de9abc269b261649b1..73f574e3c7bb7fee3a34f61573b67af27a025dc3 100644 index b6a6a74dfd00a4536258c8693048c9d1ac4df435..182e8c3f9a631a98576b2efb63371d57f9f5f25f 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1178,7 +1178,15 @@ public class PurpurWorldConfig { @@ -1178,7 +1178,15 @@ public class PurpurWorldConfig {

View File

@@ -65,7 +65,7 @@ index f626a2f28f2aebb3237cebb6afef3c4fa1a6cb37..467e17bfce31d0919d603698c9d88a04
public int forkLimit() { public int forkLimit() {
return this.forkLimit; return this.forkLimit;
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 9d5257f810f9f88504b913fa0c7c214acc1da2cb..e0f50dcfe30abf439cea3ecd7837569802bd16c8 100644 index c9a5c3b915f09a316f0f2725c51b696da111ccd3..983caa80431f5672cca341e91d9ccc40749a56e4 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
@@ -104,18 +104,18 @@ import net.minecraft.util.datafix.DataFixers; @@ -104,18 +104,18 @@ import net.minecraft.util.datafix.DataFixers;
@@ -120,20 +120,20 @@ index 9d5257f810f9f88504b913fa0c7c214acc1da2cb..e0f50dcfe30abf439cea3ecd78375698
private ServerConnectionListener connection; private ServerConnectionListener connection;
public final ChunkProgressListenerFactory progressListenerFactory; public final ChunkProgressListenerFactory progressListenerFactory;
@Nullable @Nullable
@@ -2605,10 +2605,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -2607,10 +2607,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
} }
} }
+ /* // Plazma - Completely remove Mojang's Profiler + /* // Plazma - Completely remove Mojang's Profiler
public ProfilerFiller getProfiler() { public ProfilerFiller getProfiler() {
//if (true || gg.pufferfish.pufferfish.PufferfishConfig.disableMethodProfiler) return net.minecraft.util.profiling.InactiveProfiler.INSTANCE; // Pufferfish // Purpur // Purpur - TODO: Pufferfish //if (true || gg.pufferfish.pufferfish.PufferfishConfig.disableMethodProfiler) return net.minecraft.util.profiling.InactiveProfiler.INSTANCE; // Pufferfish // Purpur
return this.profiler; return this.profiler;
} }
+ */ // Plazma - Completely remove Mojang's Profiler + */ // Plazma - Completely remove Mojang's Profiler
public abstract boolean isSingleplayerOwner(GameProfile profile); public abstract boolean isSingleplayerOwner(GameProfile profile);
@@ -2852,6 +2854,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -2854,6 +2856,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
} }
// CraftBukkit end // CraftBukkit end
@@ -141,7 +141,7 @@ index 9d5257f810f9f88504b913fa0c7c214acc1da2cb..e0f50dcfe30abf439cea3ecd78375698
private void startMetricsRecordingTick() { private void startMetricsRecordingTick() {
if (false && this.willStartRecordingMetrics) { // Purpur if (false && this.willStartRecordingMetrics) { // Purpur
this.metricsRecorder = ActiveMetricsRecorder.createStarted(new ServerMetricsSamplersProvider(Util.timeSource, this.isDedicatedServer()), Util.timeSource, Util.ioPool(), new MetricsPersister("server"), this.onMetricsRecordingStopped, (path) -> { this.metricsRecorder = ActiveMetricsRecorder.createStarted(new ServerMetricsSamplersProvider(Util.timeSource, this.isDedicatedServer()), Util.timeSource, Util.ioPool(), new MetricsPersister("server"), this.onMetricsRecordingStopped, (path) -> {
@@ -2878,12 +2881,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -2880,12 +2883,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
} }
public void startRecordingMetrics(Consumer<ProfileResults> resultConsumer, Consumer<Path> dumpConsumer) { public void startRecordingMetrics(Consumer<ProfileResults> resultConsumer, Consumer<Path> dumpConsumer) {
@@ -156,7 +156,7 @@ index 9d5257f810f9f88504b913fa0c7c214acc1da2cb..e0f50dcfe30abf439cea3ecd78375698
} }
public void stopRecordingMetrics() { public void stopRecordingMetrics() {
@@ -2898,6 +2901,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -2900,6 +2903,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
//this.metricsRecorder.cancel(); // Purpur //this.metricsRecorder.cancel(); // Purpur
//this.profiler = this.metricsRecorder.getProfiler(); // Purpur //this.profiler = this.metricsRecorder.getProfiler(); // Purpur
} }
@@ -164,7 +164,7 @@ index 9d5257f810f9f88504b913fa0c7c214acc1da2cb..e0f50dcfe30abf439cea3ecd78375698
public Path getWorldPath(LevelResource worldSavePath) { public Path getWorldPath(LevelResource worldSavePath) {
return this.storageSource.getLevelPath(worldSavePath); return this.storageSource.getLevelPath(worldSavePath);
@@ -2948,6 +2952,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -2950,6 +2954,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
return this.isSaving; return this.isSaving;
} }
@@ -172,7 +172,7 @@ index 9d5257f810f9f88504b913fa0c7c214acc1da2cb..e0f50dcfe30abf439cea3ecd78375698
public boolean isTimeProfilerRunning() { public boolean isTimeProfilerRunning() {
return false; //this.debugCommandProfilerDelayStart || this.debugCommandProfiler != null; // Purpur return false; //this.debugCommandProfilerDelayStart || this.debugCommandProfiler != null; // Purpur
} }
@@ -2966,6 +2971,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -2968,6 +2973,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
return methodprofilerresults; return methodprofilerresults;
} }
} }
@@ -180,7 +180,7 @@ index 9d5257f810f9f88504b913fa0c7c214acc1da2cb..e0f50dcfe30abf439cea3ecd78375698
public int getMaxChainedNeighborUpdates() { public int getMaxChainedNeighborUpdates() {
return 1000000; return 1000000;
@@ -3017,6 +3023,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -3019,6 +3025,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
} }
} }
@@ -188,7 +188,7 @@ index 9d5257f810f9f88504b913fa0c7c214acc1da2cb..e0f50dcfe30abf439cea3ecd78375698
private static class TimeProfiler { private static class TimeProfiler {
final long startNanos; final long startNanos;
@@ -3066,6 +3073,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -3068,6 +3075,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
}; };
} }
} }
@@ -361,10 +361,10 @@ index 8c587f829c5e8c6b6df3150024c4ae704988c47b..319f484b535143a94ee2da11114acacc
} }
+// Plazma end - Completely remove Mojang's Profiler +// Plazma end - Completely remove Mojang's Profiler
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index 9af4efcf9a2c8dee2208ddf37b1bb963a2894666..cbc884db2cacdcba264033dd06988150ba4ee0ba 100644 index 5057997c3d89e058f17798f81c27766c99c0cba7..c19942b5f0ec44439a68fc7c8f55897653d20e56 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -922,11 +922,13 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -927,11 +927,13 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
return this.settings.getProperties().serverResourcePackInfo; return this.settings.getProperties().serverResourcePackInfo;
} }
@@ -379,7 +379,7 @@ index 9af4efcf9a2c8dee2208ddf37b1bb963a2894666..cbc884db2cacdcba264033dd06988150
@Override @Override
public SampleLogger getTickTimeLogger() { public SampleLogger getTickTimeLogger() {
diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java
index 4f112e2550fae57ccd41f6525bffe6d6974a8dd1..88d52e26fa543cacf0801b4e42c1e1fe0d8dd774 100644 index dd1a38488802080f961f87b73dfbb8229fb69e99..3ac70c2a2115e7ac97c739293ff540caf6ebb120 100644
--- a/src/main/java/net/minecraft/server/level/ChunkMap.java --- a/src/main/java/net/minecraft/server/level/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java
@@ -68,7 +68,7 @@ import net.minecraft.server.level.progress.ChunkProgressListener; @@ -68,7 +68,7 @@ import net.minecraft.server.level.progress.ChunkProgressListener;
@@ -392,7 +392,7 @@ index 4f112e2550fae57ccd41f6525bffe6d6974a8dd1..88d52e26fa543cacf0801b4e42c1e1fe
import net.minecraft.util.thread.ProcessorHandle; import net.minecraft.util.thread.ProcessorHandle;
import net.minecraft.util.thread.ProcessorMailbox; import net.minecraft.util.thread.ProcessorMailbox;
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 53c0b48966558f43bb9bd7d29d9588f9d83e0de7..7ff845a0ddb308e8b69881f05086105f7f83e605 100644 index 697cb18bce2f2470a0a2347ba6709e1449b360fd..48d9af88c16f97f68c01e6d663189afbf7f1df29 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
@@ -21,7 +21,7 @@ import net.minecraft.core.SectionPos; @@ -21,7 +21,7 @@ import net.minecraft.core.SectionPos;
@@ -405,7 +405,7 @@ index 53c0b48966558f43bb9bd7d29d9588f9d83e0de7..7ff845a0ddb308e8b69881f05086105f
import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.Entity;
import net.minecraft.world.entity.ai.village.poi.PoiManager; import net.minecraft.world.entity.ai.village.poi.PoiManager;
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 d1b2e68a702ce01c33cfe0e1297a8809e3acf088..f88955fac16576e0eb4d8f6782aa2c8a298f4474 100644 index e2de0c343098d65d830f27b4f80c3f8a9f18a7ae..508e01e9ef41f006e6d9be71969c0d82dc646628 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
@@ -79,7 +79,7 @@ import net.minecraft.util.ProgressListener; @@ -79,7 +79,7 @@ import net.minecraft.util.ProgressListener;
@@ -1211,7 +1211,7 @@ index 97c129f5949ca7cb7430e1cf56e881c00f129530..5c4d902a6febe8ffadecbbc64b50ecdc
+ */ // Plazma - Completely remove Mojang's Profiler + */ // Plazma - Completely remove Mojang's Profiler
} }
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 56da8a4600688efd1987d82d4fcad1757e33f4f2..cdae1cda0bf50d6fd7d40945b99663f79da80ab1 100644 index 0d138d36b86e4d31b28455640a82b6097e0a2b36..9e9199b83fce2c9c8f03f4116c14a331279a234a 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java --- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -37,7 +37,7 @@ import net.minecraft.sounds.SoundEvent; @@ -37,7 +37,7 @@ import net.minecraft.sounds.SoundEvent;
@@ -1235,7 +1235,7 @@ index 56da8a4600688efd1987d82d4fcad1757e33f4f2..cdae1cda0bf50d6fd7d40945b99663f7
this.moveControl = new org.purpurmc.purpur.controller.MoveControllerWASD(this); // Purpur this.moveControl = new org.purpurmc.purpur.controller.MoveControllerWASD(this); // Purpur
this.jumpControl = new JumpControl(this); this.jumpControl = new JumpControl(this);
diff --git a/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java b/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java diff --git a/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java b/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java
index b4e4670536f6dcea109c029d75d9710cb386f1d0..9155d68c43239b535190cc7cb5ee92c60189f1ac 100644 index 45be322111556f113d6c74c497b623d82275281e..a8b086b5512803d165bf2b5a249dcc253972f2b6 100644
--- a/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java --- a/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java
+++ b/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java +++ b/src/main/java/net/minecraft/world/entity/ai/goal/GoalSelector.java
@@ -8,7 +8,7 @@ import java.util.Map; @@ -8,7 +8,7 @@ import java.util.Map;
@@ -1288,7 +1288,7 @@ index a31326e24cb68472c81cd781c5e3041772712862..03323be2a120c53ac5a3607f6154c99d
Builder<RecipeType<?>, RecipeHolder<?>> builder = ImmutableMultimap.builder(); Builder<RecipeType<?>, RecipeHolder<?>> builder = ImmutableMultimap.builder();
com.google.common.collect.ImmutableMap.Builder<ResourceLocation, RecipeHolder<?>> com_google_common_collect_immutablemap_builder = ImmutableMap.builder(); com.google.common.collect.ImmutableMap.Builder<ResourceLocation, RecipeHolder<?>> com_google_common_collect_immutablemap_builder = ImmutableMap.builder();
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 cc402c84734dc1841ce09f7bfd07936c745e6662..2a6bbd570ba885c4666ea4be3dd044ddfe3d9eb9 100644 index 23f10ed05e2c4aabfa3a565a9117dabe52f175f7..2ad60c53890567742f0eff85987a41b0f6f50673 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
@@ -35,7 +35,7 @@ import net.minecraft.sounds.SoundSource; @@ -35,7 +35,7 @@ import net.minecraft.sounds.SoundSource;
@@ -1309,7 +1309,7 @@ index cc402c84734dc1841ce09f7bfd07936c745e6662..2a6bbd570ba885c4666ea4be3dd044dd
public final boolean isClientSide; public final boolean isClientSide;
private final WorldBorder worldBorder; private final WorldBorder worldBorder;
private final BiomeManager biomeManager; private final BiomeManager biomeManager;
@@ -269,7 +269,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -271,7 +271,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
ResourceKey<Level> resourcekey, ResourceKey<Level> resourcekey,
RegistryAccess iregistrycustom, RegistryAccess iregistrycustom,
Holder<DimensionType> holder, Holder<DimensionType> holder,
@@ -1318,7 +1318,7 @@ index cc402c84734dc1841ce09f7bfd07936c745e6662..2a6bbd570ba885c4666ea4be3dd044dd
boolean flag, boolean flag,
boolean flag1, boolean flag1,
long i, long i,
@@ -298,7 +298,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -300,7 +300,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
} }
// CraftBukkit end // CraftBukkit end
@@ -1327,7 +1327,7 @@ index cc402c84734dc1841ce09f7bfd07936c745e6662..2a6bbd570ba885c4666ea4be3dd044dd
this.levelData = worlddatamutable; this.levelData = worlddatamutable;
this.dimensionTypeRegistration = holder; this.dimensionTypeRegistration = holder;
final DimensionType dimensionmanager = (DimensionType) holder.value(); final DimensionType dimensionmanager = (DimensionType) holder.value();
@@ -1875,6 +1875,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -1877,6 +1877,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
return false; return false;
} }
@@ -1335,7 +1335,7 @@ index cc402c84734dc1841ce09f7bfd07936c745e6662..2a6bbd570ba885c4666ea4be3dd044dd
public ProfilerFiller getProfiler() { public ProfilerFiller getProfiler() {
//if (true || gg.pufferfish.pufferfish.PufferfishConfig.disableMethodProfiler) return net.minecraft.util.profiling.InactiveProfiler.INSTANCE; // Pufferfish // Purpur // Purpur - TODO: Pufferfish //if (true || gg.pufferfish.pufferfish.PufferfishConfig.disableMethodProfiler) return net.minecraft.util.profiling.InactiveProfiler.INSTANCE; // Pufferfish // Purpur // Purpur - TODO: Pufferfish
return (ProfilerFiller) this.profiler.get(); return (ProfilerFiller) this.profiler.get();
@@ -1883,6 +1884,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -1885,6 +1886,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
public Supplier<ProfilerFiller> getProfilerSupplier() { public Supplier<ProfilerFiller> getProfilerSupplier() {
return this.profiler; return this.profiler;
} }
@@ -1367,7 +1367,7 @@ index c5454b92ca2565461c799d7340160f9fb72c1b0f..760a4f4b15a02f9cbb7a368961286ae3
+ */ // Plazma - Completely remove Mojang's Profiler + */ // Plazma - Completely remove Mojang's Profiler
} }
diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
index 37120fcb31f4c9a90be37db252b17eb93db2cb0f..8764e00de0ae8730bf1f12414f431d6cf75613b8 100644 index e1853318350f9a10e8db106a7bc015307db0de6c..977d38a2be585ffad27843704a29eeaf50310518 100644
--- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunk.java
@@ -26,7 +26,7 @@ import net.minecraft.network.FriendlyByteBuf; @@ -26,7 +26,7 @@ import net.minecraft.network.FriendlyByteBuf;
@@ -1379,7 +1379,7 @@ index 37120fcb31f4c9a90be37db252b17eb93db2cb0f..8764e00de0ae8730bf1f12414f431d6c
import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.Entity;
import net.minecraft.world.level.ChunkPos; import net.minecraft.world.level.ChunkPos;
import net.minecraft.world.level.Level; import net.minecraft.world.level.Level;
@@ -443,7 +443,7 @@ public class LevelChunk extends ChunkAccess { @@ -457,7 +457,7 @@ public class LevelChunk extends ChunkAccess {
} }
if (LightEngine.hasDifferentLightProperties(this, blockposition, iblockdata1, iblockdata)) { if (LightEngine.hasDifferentLightProperties(this, blockposition, iblockdata1, iblockdata)) {

View File

@@ -36,7 +36,7 @@ index afe6b2170846273b41b694aa53dca4c31bf78b3f..52043e451ca0641c93205aac62aba542
// CraftBukkit start - return boolean // CraftBukkit start - return boolean
diff --git a/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java b/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java diff --git a/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java b/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java
index 42d639688b6f0b9ff53debf49a920f5c8e232a19..36728e206de513e071f387d36a608e70a5984a58 100644 index 069a9f8504c74d939b1df569f082cc7bd33d9cfc..b5b4229ccdecd63bd3e689e8247e44341d7c30cc 100644
--- a/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java --- a/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java
+++ b/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java +++ b/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java
@@ -42,6 +42,21 @@ public class WorldConfigurations extends ConfigurationPart { @@ -42,6 +42,21 @@ public class WorldConfigurations extends ConfigurationPart {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Reduce create random instance
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 e0f50dcfe30abf439cea3ecd7837569802bd16c8..5a5661c3f4759c1e7501c2b59f541be11af0a83d 100644 index 983caa80431f5672cca341e91d9ccc40749a56e4..be20a08f07ea0a073d72d74d13650910f52530c9 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
@@ -235,6 +235,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -235,6 +235,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -191,7 +191,7 @@ index 133d994d9ac9d4f9527135ac0c77e5749917f8c3..9771279c913a5be86e516db74792fd04
this.hitPlayers = Maps.newHashMap(); this.hitPlayers = Maps.newHashMap();
this.level = world; this.level = world;
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 2a6bbd570ba885c4666ea4be3dd044ddfe3d9eb9..47fcbff8a0b7feedbc700b6c3cf44d3a02a60246 100644 index 2ad60c53890567742f0eff85987a41b0f6f50673..00d58b6f8b94457b2a7418a74027181fdeda3db9 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
@@ -121,16 +121,16 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -121,16 +121,16 @@ public abstract class Level implements LevelAccessor, AutoCloseable {

View File

@@ -7,10 +7,10 @@ Subject: [PATCH] Apply various optimizations
Akarin - Swaps the predicate order of collision Akarin - Swaps the predicate order of collision
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 3aae4fa4176c0bf170f4532ae187e3122c142a6a..215368ec72d4763479c2cdc668c3e2389ceb4f7a 100644 index 1a5aec1612947bbc1df78c0eeda9b98aa63cec94..62b8afa8a922db58396fb314b54ce6f51778093c 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
@@ -2201,8 +2201,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @@ -2210,8 +2210,9 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
public void playerTouch(Player player) {} public void playerTouch(Player player) {}
public void push(Entity entity) { public void push(Entity entity) {
@@ -21,7 +21,7 @@ index 3aae4fa4176c0bf170f4532ae187e3122c142a6a..215368ec72d4763479c2cdc668c3e238
if (this.level.paperConfig().collisions.onlyPlayersCollide && !(entity instanceof ServerPlayer || this instanceof ServerPlayer)) return; // Paper - Collision option for requiring a player participant if (this.level.paperConfig().collisions.onlyPlayersCollide && !(entity instanceof ServerPlayer || this instanceof ServerPlayer)) return; // Paper - Collision option for requiring a player participant
double d0 = entity.getX() - this.getX(); double d0 = entity.getX() - this.getX();
double d1 = entity.getZ() - this.getZ(); double d1 = entity.getZ() - this.getZ();
@@ -2230,8 +2231,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @@ -2239,8 +2240,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
entity.push(d0, 0.0D, d1); entity.push(d0, 0.0D, d1);
} }
} }

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Do not refresh LootTable for non player interaction
diff --git a/src/main/java/net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity.java diff --git a/src/main/java/net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity.java
index 17da915ffa638500a83b67db0940a7b9a9b333a1..27a112818c000f4e649f044b7960ca988976876b 100644 index 5682039a18de20bacdac804db8da47953b22d653..1cdfbe7602041099eedc81b17fe94a457574ba03 100644
--- a/src/main/java/net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity.java --- a/src/main/java/net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity.java
+++ b/src/main/java/net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity.java +++ b/src/main/java/net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity.java
@@ -74,6 +74,7 @@ public abstract class RandomizableContainerBlockEntity extends BaseContainerBloc @@ -74,6 +74,7 @@ public abstract class RandomizableContainerBlockEntity extends BaseContainerBloc

View File

@@ -17,7 +17,7 @@ index 04f67f7b43d2f461c776c76614dc3e5f060aea63..b3fe0dd152b3e2e1b83b4ec2270d387e
FluidState fluid = world.getFluidState(blockposition1); FluidState fluid = world.getFluidState(blockposition1);
diff --git a/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java b/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java diff --git a/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java b/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java
index c8b10b3499fbdf41f0b268d8a9da729e3432bb66..922d1d250f2e2e5a4177bcf5fe7487ff2b43413b 100644 index 33544c734798d9fa1954c7806420f1e0b3653898..b83a1058484e3d4d46f91d659f795f59d7087b72 100644
--- a/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java --- a/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java
+++ b/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java +++ b/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java
@@ -32,6 +32,7 @@ public class WorldConfigurations extends ConfigurationPart { @@ -32,6 +32,7 @@ public class WorldConfigurations extends ConfigurationPart {

View File

@@ -6,10 +6,10 @@ Subject: [PATCH] Add option to disable moved to quickly check for specific
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 478f3bba5e0768c8ab800d7cb591f07db1bc20da..82c832014d55cbffe24198598ba34680601681d8 100644 index 87341fb1546bf01a8c14e687e841681b112ba23b..ffc96208421ed96e0a4fa99618ff2b31185b50d1 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -1468,6 +1468,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -1469,6 +1469,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl
} }
// Paper end - Prevent moving into unloaded chunks // Paper end - Prevent moving into unloaded chunks

View File

@@ -7,10 +7,10 @@ Subject: [PATCH] Ignore useless entity packets
- PurpurMC/Purpur - PurpurMC/Purpur
diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java
index a528685040bf5596fe20fc055d691fd7e663762c..9fe8dcea8f5075a5420a4355bb3c27c2311d8f94 100644 index c376997ea2b8f61c2dbd80b31d51ba731fd5ed4c..6f19b5b67c99becbc1cb720274d41d15c7723c31 100644
--- a/src/main/java/net/minecraft/server/level/ServerEntity.java --- a/src/main/java/net/minecraft/server/level/ServerEntity.java
+++ b/src/main/java/net/minecraft/server/level/ServerEntity.java +++ b/src/main/java/net/minecraft/server/level/ServerEntity.java
@@ -212,6 +212,8 @@ public class ServerEntity { @@ -214,6 +214,8 @@ public class ServerEntity {
flag4 = true; flag4 = true;
flag5 = true; flag5 = true;
} }
@@ -19,7 +19,7 @@ index a528685040bf5596fe20fc055d691fd7e663762c..9fe8dcea8f5075a5420a4355bb3c27c2
} }
if ((this.trackDelta || this.entity.hasImpulse || this.entity instanceof LivingEntity && ((LivingEntity) this.entity).isFallFlying()) && this.tickCount > 0) { if ((this.trackDelta || this.entity.hasImpulse || this.entity instanceof LivingEntity && ((LivingEntity) this.entity).isFallFlying()) && this.tickCount > 0) {
@@ -295,6 +297,19 @@ public class ServerEntity { @@ -297,6 +299,19 @@ public class ServerEntity {
}); });
} }

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Configurable entity sensor tick
diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java
index 274ca06fbda0f54805fc82614d43b6e1a4a5d4a8..688f3c01cb939a6c959efbb3b59ac8ee60db3633 100644 index 9e9199b83fce2c9c8f03f4116c14a331279a234a..e691c4dc89bbf841730813fbd8dc21208482a59c 100644
--- a/src/main/java/net/minecraft/world/entity/Mob.java --- a/src/main/java/net/minecraft/world/entity/Mob.java
+++ b/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java
@@ -995,10 +995,11 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Targeti @@ -997,10 +997,11 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Targeti
//ProfilerFiller gameprofilerfiller = this.level().getProfiler(); // Purpur //ProfilerFiller gameprofilerfiller = this.level().getProfiler(); // Purpur
//gameprofilerfiller.push("sensing"); // Purpur //gameprofilerfiller.push("sensing"); // Purpur
@@ -20,9 +20,9 @@ index 274ca06fbda0f54805fc82614d43b6e1a4a5d4a8..688f3c01cb939a6c959efbb3b59ac8ee
+ if (i % this.level().plazmaConfig().entity.sensorTick == 0) this.sensing.tick(); // Plazma - Configurable entity sensor tick + if (i % this.level().plazmaConfig().entity.sensorTick == 0) this.sensing.tick(); // Plazma - Configurable entity sensor tick
if (i % 2 != 0 && this.tickCount > 1) { if (i % 2 != 0 && this.tickCount > 1) {
//gameprofilerfiller.push("targetSelector"); // Purpur //gameprofilerfiller.push("targetSelector"); // Purpur
this.targetSelector.tickRunningGoals(false); if (this.targetSelector.inactiveTick(this.activatedPriority, false)) // Pufferfish - use this to alternate ticking
diff --git a/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java b/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java diff --git a/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java b/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java
index c8a3e91d0d6510b519e927027f5a534cddf7d0a3..bc283729cab4df2c596febf1df54241571227564 100644 index 9debf554deb5b7aa021502ff7d600905f56fa25c..dceb5b2cec5f0c20be74d892e8cab98823d2f59a 100644
--- a/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java --- a/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java
+++ b/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java +++ b/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java
@@ -30,6 +30,7 @@ public class WorldConfigurations extends ConfigurationPart { @@ -30,6 +30,7 @@ public class WorldConfigurations extends ConfigurationPart {

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Variable entity wakeup duration
diff --git a/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java b/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java diff --git a/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java b/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java
index bc283729cab4df2c596febf1df54241571227564..1e7c23c8851ba1d0f37d2b17fd334220e060888e 100644 index dceb5b2cec5f0c20be74d892e8cab98823d2f59a..bc35244533621436e3c0fb871edf7834ad937f81 100644
--- a/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java --- a/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java
+++ b/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java +++ b/src/main/java/org/plazmamc/plazma/configurations/WorldConfigurations.java
@@ -39,6 +39,20 @@ public class WorldConfigurations extends ConfigurationPart { @@ -39,6 +39,20 @@ public class WorldConfigurations extends ConfigurationPart {
@@ -30,10 +30,10 @@ index bc283729cab4df2c596febf1df54241571227564..1e7c23c8851ba1d0f37d2b17fd334220
public Structure structure; public Structure structure;
diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java
index de2b469f06f6679aed1d20156052bfbef5e7c30b..ebd0764dde2e1d79fb41b5d881990ee07a0590b1 100644 index 56e52b16b419c882440a15947f037ae1a902bc70..583647f6c9ca0fb092f30c97693bd548f692dfd3 100644
--- a/src/main/java/org/spigotmc/ActivationRange.java --- a/src/main/java/org/spigotmc/ActivationRange.java
+++ b/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java
@@ -64,29 +64,36 @@ public class ActivationRange @@ -68,29 +68,36 @@ public class ActivationRange
Activity.PANIC Activity.PANIC
}; };

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Suppress errors from dirty attributes
diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java
index 9fe8dcea8f5075a5420a4355bb3c27c2311d8f94..acf1cb25f75b35e064e7099d85693632073df858 100644 index 6f19b5b67c99becbc1cb720274d41d15c7723c31..4ef3d8541c93567e3a9b712c0d4dd5f6cfeb2990 100644
--- a/src/main/java/net/minecraft/server/level/ServerEntity.java --- a/src/main/java/net/minecraft/server/level/ServerEntity.java
+++ b/src/main/java/net/minecraft/server/level/ServerEntity.java +++ b/src/main/java/net/minecraft/server/level/ServerEntity.java
@@ -413,7 +413,8 @@ public class ServerEntity { @@ -415,7 +415,8 @@ public class ServerEntity {
} }
if (this.entity instanceof LivingEntity) { if (this.entity instanceof LivingEntity) {
@@ -18,7 +18,7 @@ index 9fe8dcea8f5075a5420a4355bb3c27c2311d8f94..acf1cb25f75b35e064e7099d85693632
if (!set.isEmpty()) { if (!set.isEmpty()) {
// CraftBukkit start - Send scaled max health // CraftBukkit start - Send scaled max health
@@ -424,7 +425,7 @@ public class ServerEntity { @@ -426,7 +427,7 @@ public class ServerEntity {
this.broadcastAndSend(new ClientboundUpdateAttributesPacket(this.entity.getId(), set)); this.broadcastAndSend(new ClientboundUpdateAttributesPacket(this.entity.getId(), set));
} }

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Improve SwingTime ticking
diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java
index fa698cfefccdddf5e5e9938a2959004c70f743a7..b24754e36e210a635524be099cffe4553220a6a9 100644 index 12841498369db7020bb844040bc5464745312082..decf23f5320d728088085c86009eb502e6af072b 100644
--- a/src/main/java/net/minecraft/world/entity/LivingEntity.java --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java
+++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java
@@ -2654,6 +2654,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -2680,6 +2680,7 @@ public abstract class LivingEntity extends Entity implements Attackable {
} }
protected void updateSwingTime() { protected void updateSwingTime() {

View File

@@ -94,7 +94,7 @@ index 03be23690a94a14d7343526acad67ccf53b85c70..416c0a736edf47f76a37be0bc5fe8678
) )
); );
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 5a5661c3f4759c1e7501c2b59f541be11af0a83d..7f5ea3282f5069a4a911b69c758981b6f4dcadc0 100644 index be20a08f07ea0a073d72d74d13650910f52530c9..87cb1529a6bba0f0778cf97c3c5473c3a8503b59 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
@@ -257,8 +257,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -257,8 +257,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -108,7 +108,7 @@ index 5a5661c3f4759c1e7501c2b59f541be11af0a83d..7f5ea3282f5069a4a911b69c758981b6
public final TickTimes tickTimes60s = new TickTimes(1200); public final TickTimes tickTimes60s = new TickTimes(1200);
// Paper end - Add tick times API and /mspt command // Paper end - Add tick times API and /mspt command
@Nullable @Nullable
@@ -1825,8 +1827,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -1827,8 +1829,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
worldserver.tick(shouldKeepTicking); worldserver.tick(shouldKeepTicking);
long after = Util.getNanos() - before; long after = Util.getNanos() - before;
@@ -120,7 +120,7 @@ index 5a5661c3f4759c1e7501c2b59f541be11af0a83d..7f5ea3282f5069a4a911b69c758981b6
// Plazma end - Port SparklyPaper patches; Track World specific MSPT // Plazma end - Port SparklyPaper patches; Track World specific MSPT
// Paper start // Paper start
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 f88955fac16576e0eb4d8f6782aa2c8a298f4474..fbc698007059d930a102197749c6a5b8e6821b46 100644 index 508e01e9ef41f006e6d9be71969c0d82dc646628..15548aac320ae6d707cab4a61dfc99eaebb06634 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
@@ -234,8 +234,10 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -234,8 +234,10 @@ public class ServerLevel extends Level implements WorldGenLevel {

View File

@@ -925,10 +925,10 @@ index 539170813921de2dfcd7ef84dd7512d73cd27e68..4722e95397fbec585a0ce5240bdfd08d
} }
} }
diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
index 2c45f4d321629979926bb9e677ba4bc8b44eec8d..8dea8019ce1b55b6332e41795dafed02ffb78492 100644 index 651f30b4fb02dc03fabad34b62d7d86fa0889754..2fb5e4fc7422c81c67a026143c92f5e787d864fb 100644
--- a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java --- a/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
+++ b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java +++ b/src/main/java/net/minecraft/world/entity/animal/frog/Frog.java
@@ -490,11 +490,25 @@ public class Frog extends Animal implements VariantHolder<Holder<FrogVariant>> { @@ -491,11 +491,25 @@ public class Frog extends Animal implements VariantHolder<Holder<FrogVariant>> {
return nodeType != PathType.WATER_BORDER && super.canCutCorner(nodeType); return nodeType != PathType.WATER_BORDER && super.canCutCorner(nodeType);
} }
@@ -999,10 +999,10 @@ index 5ea5bf9c0e11b0e1f9fe50093899c6e35ee6cf4f..310d942dca115d2048812e7d7e6e7fab
@Override @Override
protected boolean hasValidPathType(PathType pathType) { protected boolean hasValidPathType(PathType pathType) {
diff --git a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java diff --git a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
index 358811e71b8b8a8a09fb6c56ed51bcc11b052add..f08d6b2729e133772a540fa9011a2b3af271aace 100644 index 16891921341f8967c9115f415f91ec379fcd5b0c..524d2304a1dbc873a47c95c55ad70c4120f07ad4 100644
--- a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java --- a/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
+++ b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java +++ b/src/main/java/net/minecraft/world/entity/monster/warden/Warden.java
@@ -635,6 +635,15 @@ public class Warden extends Monster implements VibrationSystem { @@ -636,6 +636,15 @@ public class Warden extends Monster implements VibrationSystem {
protected PathFinder createPathFinder(int range) { protected PathFinder createPathFinder(int range) {
this.nodeEvaluator = new WalkNodeEvaluator(); this.nodeEvaluator = new WalkNodeEvaluator();
this.nodeEvaluator.setCanPassDoors(true); this.nodeEvaluator.setCanPassDoors(true);
@@ -1285,10 +1285,10 @@ index 1c83926923f50fb4da1a83dc91614c20a831555f..aec2d0f9a957be65d031957dbff874d8
Command.broadcastCommandMessage(sender, text("Successfully reloaded Plazma configuration files.", NamedTextColor.GREEN)); Command.broadcastCommandMessage(sender, text("Successfully reloaded Plazma configuration files.", NamedTextColor.GREEN));
diff --git a/src/main/java/org/plazmamc/plazma/configurations/GlobalConfiguration.java b/src/main/java/org/plazmamc/plazma/configurations/GlobalConfiguration.java diff --git a/src/main/java/org/plazmamc/plazma/configurations/GlobalConfiguration.java b/src/main/java/org/plazmamc/plazma/configurations/GlobalConfiguration.java
index fd2544c52f0948f7dae14814fbf0310d8e49170d..b18dfe9223b75d8a36b4b3a934625914f9a6a553 100644 index e8e8c2d55b934b3043c1f83092b63dee1c5fcc4e..c809a4692fcabf87c16fcd932ef25a718c2935d3 100644
--- a/src/main/java/org/plazmamc/plazma/configurations/GlobalConfiguration.java --- a/src/main/java/org/plazmamc/plazma/configurations/GlobalConfiguration.java
+++ b/src/main/java/org/plazmamc/plazma/configurations/GlobalConfiguration.java +++ b/src/main/java/org/plazmamc/plazma/configurations/GlobalConfiguration.java
@@ -63,6 +63,26 @@ public class GlobalConfiguration extends ConfigurationPart { @@ -44,6 +44,26 @@ public class GlobalConfiguration extends ConfigurationPart {
boolean skipSqrWhenNoDeltaChanges = OPTIMIZE; boolean skipSqrWhenNoDeltaChanges = OPTIMIZE;
public boolean spookyOptimize = OPTIMIZE; public boolean spookyOptimize = OPTIMIZE;

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Use Akair's flag when running the test server with gradle
diff --git a/build.gradle.kts b/build.gradle.kts diff --git a/build.gradle.kts b/build.gradle.kts
index 92826a38773b6d76acfbf18774ada8a395e9007f..99bf51cb7dd5a8a2d9f87c18bcf9745cead4ba61 100644 index c02fba3660ab368f64bd120db8c0a9de6e4f763d..7e19f7aba5140675c3163a45c3c54c626573de4e 100644
--- a/build.gradle.kts --- a/build.gradle.kts
+++ b/build.gradle.kts +++ b/build.gradle.kts
@@ -121,7 +121,7 @@ fun TaskContainer.registerRunTask( @@ -129,7 +129,7 @@ fun TaskContainer.registerRunTask(
languageVersion.set(JavaLanguageVersion.of(21)) languageVersion.set(JavaLanguageVersion.of(21))
vendor.set(JvmVendorSpec.JETBRAINS) vendor.set(JvmVendorSpec.JETBRAINS)
}) })

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Use Plazma logo instead if server favicon doesn't exist
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 7f5ea3282f5069a4a911b69c758981b6f4dcadc0..0df87edbd9625b2888b303c1000aefa9bdbd2f26 100644 index 87cb1529a6bba0f0778cf97c3c5473c3a8503b59..f388a07678ef253b19da814f6d90c4d787204517 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
@@ -1559,29 +1559,36 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa @@ -1561,29 +1561,36 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
} }
private Optional<ServerStatus.Favicon> loadStatusIcon() { private Optional<ServerStatus.Favicon> loadStatusIcon() {

View File

@@ -20,10 +20,10 @@ 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/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index cbc884db2cacdcba264033dd06988150ba4ee0ba..99479a594f573aaac2a96bbecd9ef70e845f4677 100644 index c19942b5f0ec44439a68fc7c8f55897653d20e56..c5804a3d03433a3a1dba807f23305850b826851b 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -704,6 +704,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -709,6 +709,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
// Paper start - Add setting for proxy online mode status // Paper start - Add setting for proxy online mode status
return dedicatedserverproperties.enforceSecureProfile return dedicatedserverproperties.enforceSecureProfile
&& io.papermc.paper.configuration.GlobalConfiguration.get().proxies.isProxyOnlineMode() && io.papermc.paper.configuration.GlobalConfiguration.get().proxies.isProxyOnlineMode()
@@ -52,7 +52,7 @@ index c36ebab552c480d34e7fd48a45f0a320a97b9677..fdfe8f5bc5ad0e5f5ded41d87756a586
player.loadGameTypes((CompoundTag) optional.orElse(null)); // CraftBukkit - decompile error player.loadGameTypes((CompoundTag) optional.orElse(null)); // CraftBukkit - decompile error
ServerGamePacketListenerImpl playerconnection = new ServerGamePacketListenerImpl(this.server, connection, player, clientData); ServerGamePacketListenerImpl playerconnection = new ServerGamePacketListenerImpl(this.server, connection, player, clientData);
diff --git a/src/main/java/org/plazmamc/plazma/configurations/GlobalConfiguration.java b/src/main/java/org/plazmamc/plazma/configurations/GlobalConfiguration.java diff --git a/src/main/java/org/plazmamc/plazma/configurations/GlobalConfiguration.java b/src/main/java/org/plazmamc/plazma/configurations/GlobalConfiguration.java
index b18dfe9223b75d8a36b4b3a934625914f9a6a553..19b198fb1d0ffee28a2cfd516cb31204fd1a310c 100644 index c809a4692fcabf87c16fcd932ef25a718c2935d3..a237a4ea3b60ba3b5a2cfa12748ac682240a8a4e 100644
--- a/src/main/java/org/plazmamc/plazma/configurations/GlobalConfiguration.java --- a/src/main/java/org/plazmamc/plazma/configurations/GlobalConfiguration.java
+++ b/src/main/java/org/plazmamc/plazma/configurations/GlobalConfiguration.java +++ b/src/main/java/org/plazmamc/plazma/configurations/GlobalConfiguration.java
@@ -29,6 +29,15 @@ public class GlobalConfiguration extends ConfigurationPart { @@ -29,6 +29,15 @@ public class GlobalConfiguration extends ConfigurationPart {