diff --git a/patches/api/0004-SIMD-support.patch b/patches/api/0004-SIMD-support.patch new file mode 100644 index 0000000..2d2eaef --- /dev/null +++ b/patches/api/0004-SIMD-support.patch @@ -0,0 +1,172 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Martijn Muijsers +Date: Thu, 24 Nov 2022 01:21:32 +0100 +Subject: [PATCH] SIMD support + +License: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html) +Gale - https://galemc.org + +This patch is based on the following patch: +"Add SIMD utilities" +By: Kevin Raneri +As part of: Pufferfish (https://github.com/pufferfish-gg/Pufferfish) +Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html) + +diff --git a/build.gradle.kts b/build.gradle.kts +index 8825fd8ff27ba641deaa61c8a5cadb2b236b6512..adcee0a55ed720cb76f9dcd67be9be8f46fb925c 100644 +--- a/build.gradle.kts ++++ b/build.gradle.kts +@@ -95,6 +95,7 @@ tasks.withType { + compilerArgs.add("-Xlint:-module") + compilerArgs.add("-Xlint:-removal") + compilerArgs.add("-Xlint:-dep-ann") ++ compilerArgs.add("--add-modules=jdk.incubator.vector") // Gale - Pufferfish - SIMD support + } + // Gale end - hide irrelevant compilation warnings + +@@ -152,6 +153,7 @@ tasks.withType { + } + + options.addStringOption("Xdoclint:none", "-quiet") // Gale - hide irrelevant compilation warnings ++ options.addStringOption("-add-modules", "jdk.incubator.vector") // Gale - Pufferfish - SIMD support + } + + // Paper start +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..90d87374e9dddd79aeca3e05f9cd6c82eb3aad27 +--- /dev/null ++++ b/src/main/java/gg/pufferfish/pufferfish/simd/SIMDChecker.java +@@ -0,0 +1,48 @@ ++// Gale - Pufferfish - SIMD support ++ ++package gg.pufferfish.pufferfish.simd; ++ ++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 { ++ ++ public static void initialize() { ++ if (SIMDDetection.isInitialized()) { ++ return; ++ } ++ SIMDDetection.setInitialized(); ++ try { ++ int javaVersion = SIMDDetection.getJavaVersion(); ++ if (javaVersion < 17) { ++ return; ++ } ++ SIMDDetection.supportingJavaVersion = true; ++ SIMDDetection.testRunStarted = true; ++ ++ VectorSpecies ISPEC = IntVector.SPECIES_PREFERRED; ++ VectorSpecies FSPEC = FloatVector.SPECIES_PREFERRED; ++ ++ SIMDDetection.intVectorBitSize = ISPEC.vectorBitSize(); ++ SIMDDetection.floatVectorBitSize = FSPEC.vectorBitSize(); ++ ++ SIMDDetection.intElementSize = ISPEC.elementSize(); ++ SIMDDetection.floatElementSize = FSPEC.elementSize(); ++ ++ SIMDDetection.testRunCompleted = true; ++ ++ if (ISPEC.elementSize() < 2 || FSPEC.elementSize() < 2) { ++ SIMDDetection.unsupportingLaneSize = true; ++ return; ++ } ++ ++ SIMDDetection.isEnabled = true; ++ } catch (Throwable ignored) {} // Basically, we don't do anything. This lets us detect if it's not functional and disable it. ++ } ++ ++} +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..b19b6bc85cb08a49f064a4ecb88af858a9a22fe7 +--- /dev/null ++++ b/src/main/java/gg/pufferfish/pufferfish/simd/SIMDDetection.java +@@ -0,0 +1,78 @@ ++// Gale - Pufferfish - SIMD support ++ ++package gg.pufferfish.pufferfish.simd; ++ ++public class SIMDDetection { ++ ++ private static boolean isInitialized = false; ++ static int intVectorBitSize; ++ static int floatVectorBitSize; ++ static int intElementSize; ++ static int floatElementSize; ++ static boolean supportingJavaVersion; ++ static boolean testRunStarted; ++ static boolean testRunCompleted; ++ static boolean unsupportingLaneSize; ++ static boolean isEnabled; ++ ++ @SuppressWarnings("deprecation") ++ public static void initialize() { ++ try { ++ SIMDChecker.initialize(); ++ } catch (Throwable ignored) {} ++ } ++ ++ static void setInitialized() { ++ isInitialized = true; ++ } ++ ++ public static boolean isInitialized() { ++ return isInitialized; ++ } ++ ++ public static int intVectorBitSize() { ++ return intVectorBitSize; ++ } ++ ++ public static int floatVectorBitSize() { ++ return floatVectorBitSize; ++ } ++ ++ public static int intElementSize() { ++ return intElementSize; ++ } ++ ++ public static int floatElementSize() { ++ return floatElementSize; ++ } ++ ++ public static boolean supportingJavaVersion() { ++ return supportingJavaVersion; ++ } ++ ++ public static boolean testRunCompleted() { ++ return testRunCompleted; ++ } ++ ++ public static boolean unsupportingLaneSize() { ++ return unsupportingLaneSize; ++ } ++ ++ public static boolean isEnabled() { ++ return isEnabled; ++ } ++ ++ 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/patches/api/0005-Vectorized-map-color-conversion.patch b/patches/api/0005-Vectorized-map-color-conversion.patch new file mode 100644 index 0000000..95c7493 --- /dev/null +++ b/patches/api/0005-Vectorized-map-color-conversion.patch @@ -0,0 +1,149 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Martijn Muijsers +Date: Thu, 24 Nov 2022 17:03:21 +0100 +Subject: [PATCH] Vectorized map color conversion + +License: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html) +Gale - https://galemc.org + +This patch is based on the following patch: +"Optimize map rendering" +By: Kevin Raneri +As part of: Pufferfish (https://github.com/pufferfish-gg/Pufferfish) +Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html) + +* Pufferfish description * + +This patch does not add any API that should be used by plugins. Any +classes and methods added by this patch should NOT be used in plugins. + +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..00b16e4aacba50996b81fac81c3f78b6e83f78ab +--- /dev/null ++++ b/src/main/java/gg/pufferfish/pufferfish/simd/VectorMapPalette.java +@@ -0,0 +1,86 @@ ++// Gale - Pufferfish - vectorize map color conversion ++ ++package gg.pufferfish.pufferfish.simd; ++ ++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; ++ ++import java.awt.*; ++ ++@Deprecated ++public class VectorMapPalette { ++ ++ private static final VectorSpecies I_SPEC = IntVector.SPECIES_PREFERRED; ++ private static final VectorSpecies 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 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 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 3a9aaca2e76411a9c27f9f5e0f22d060d5a66d06..9eec0c781eeaa543a568f1ea490749199593cfec 100644 +--- a/src/main/java/org/bukkit/map/MapPalette.java ++++ b/src/main/java/org/bukkit/map/MapPalette.java +@@ -5,6 +5,8 @@ import java.awt.Color; + import java.awt.Graphics2D; + import java.awt.Image; + import java.awt.image.BufferedImage; ++ ++import gg.pufferfish.pufferfish.simd.SIMDDetection; + import org.jetbrains.annotations.NotNull; + import org.jetbrains.annotations.Nullable; + +@@ -40,7 +42,7 @@ public final class MapPalette { + } + + @NotNull +- static final Color[] colors = { ++ public static final Color[] colors = { // Gale - Pufferfish - vectorized map color conversion - package -> public + 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 +213,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()]; ++ if ((mapColorCache != null && mapColorCache.isCached()) || !SIMDDetection.isEnabled()) { // Gale - Pufferfish - vectorized map color conversion + for (int i = 0; i < pixels.length; i++) { + result[i] = matchColor(new Color(pixels[i], true)); + } ++ // Gale start - Pufferfish - vectorized map color conversion ++ } else { ++ gg.pufferfish.pufferfish.simd.VectorMapPalette.matchColorVectorized(pixels, result); ++ } ++ // Gale end - Pufferfish - vectorized map color conversion + return result; + } + diff --git a/patches/api/0004-Do-not-log-plugin-library-loads.patch b/patches/api/0006-Do-not-log-plugin-library-loads.patch similarity index 100% rename from patches/api/0004-Do-not-log-plugin-library-loads.patch rename to patches/api/0006-Do-not-log-plugin-library-loads.patch diff --git a/patches/api/0005-Player-canSee-by-entity-UUID.patch b/patches/api/0007-Player-canSee-by-entity-UUID.patch similarity index 100% rename from patches/api/0005-Player-canSee-by-entity-UUID.patch rename to patches/api/0007-Player-canSee-by-entity-UUID.patch diff --git a/patches/api/0006-Specific-interval-TPS-API.patch b/patches/api/0008-Specific-interval-TPS-API.patch similarity index 100% rename from patches/api/0006-Specific-interval-TPS-API.patch rename to patches/api/0008-Specific-interval-TPS-API.patch diff --git a/patches/api/0007-5-second-TPS-average.patch b/patches/api/0009-5-second-TPS-average.patch similarity index 100% rename from patches/api/0007-5-second-TPS-average.patch rename to patches/api/0009-5-second-TPS-average.patch diff --git a/patches/api/0008-Last-tick-time-API.patch b/patches/api/0010-Last-tick-time-API.patch similarity index 100% rename from patches/api/0008-Last-tick-time-API.patch rename to patches/api/0010-Last-tick-time-API.patch diff --git a/patches/server/0008-Gale-semantic-version.patch b/patches/server/0008-Gale-semantic-version.patch index e17fc2e..11d15a8 100644 --- a/patches/server/0008-Gale-semantic-version.patch +++ b/patches/server/0008-Gale-semantic-version.patch @@ -29,7 +29,7 @@ index f3179676ec933db1697d8077b1c69082d00192d0..3ebecc68b7c38c94a5c20e4b8ac1e2fa } diff --git a/src/main/java/org/galemc/gale/version/GaleSemanticVersion.java b/src/main/java/org/galemc/gale/version/GaleSemanticVersion.java new file mode 100644 -index 0000000000000000000000000000000000000000..522d1522e4f91f4ab3b941c804691915d609aae1 +index 0000000000000000000000000000000000000000..0b1f2238931e074ed90b737c5ee41f603ed688f4 --- /dev/null +++ b/src/main/java/org/galemc/gale/version/GaleSemanticVersion.java @@ -0,0 +1,37 @@ @@ -57,7 +57,7 @@ index 0000000000000000000000000000000000000000..522d1522e4f91f4ab3b941c804691915 + * The patch version is incremented for small changes that do not affect the goal of any feature, + * such as bug fixes or changes in wording. + */ -+ public static final @NotNull String version = "0.4.0"; ++ public static final @NotNull String version = "0.5.0"; + + /** + * The "major.minor" portion of the {@link #version}. diff --git a/patches/server/0046-SIMD-support.patch b/patches/server/0046-SIMD-support.patch new file mode 100644 index 0000000..8774a05 --- /dev/null +++ b/patches/server/0046-SIMD-support.patch @@ -0,0 +1,139 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Martijn Muijsers +Date: Thu, 24 Nov 2022 01:19:12 +0100 +Subject: [PATCH] SIMD support + +License: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html) +Gale - https://galemc.org + +This patch is based on the following patch: +"Add SIMD utilities" +By: Kevin Raneri +As part of: Pufferfish (https://github.com/pufferfish-gg/Pufferfish) +Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html) + +diff --git a/build.gradle.kts b/build.gradle.kts +index 6827ccd77dbba737b80bd14456c54fc54f8058f2..5b0693899daede245b43e9e9039cd1d05b9b5849 100644 +--- a/build.gradle.kts ++++ b/build.gradle.kts +@@ -73,6 +73,7 @@ tasks.withType { + compilerArgs.add("-Xlint:-module") + compilerArgs.add("-Xlint:-removal") + compilerArgs.add("-Xlint:-dep-ann") ++ compilerArgs.add("--add-modules=jdk.incubator.vector") // Gale - Pufferfish - SIMD support + } + // Gale end - hide irrelevant compilation warnings + +@@ -202,6 +203,7 @@ fun TaskContainer.registerRunTask( + jvmArgs("--enable-preview") + jvmArgs("--add-opens=java.base/java.lang=ALL-UNNAMED") + // Gale end - enable virtual threads for development runs ++ jvmArgs("--add-modules=jdk.incubator.vector") // Gale - Pufferfish - SIMD support + + doFirst { + workingDir.mkdirs() +diff --git a/src/main/java/com/destroystokyo/paper/Metrics.java b/src/main/java/com/destroystokyo/paper/Metrics.java +index 3ebecc68b7c38c94a5c20e4b8ac1e2fa5d69321f..5a85df87042a28ba6f7f5840fa80c5aaea62bbee 100644 +--- a/src/main/java/com/destroystokyo/paper/Metrics.java ++++ b/src/main/java/com/destroystokyo/paper/Metrics.java +@@ -874,6 +874,46 @@ public class Metrics { + metrics.addCustomChart(new Metrics.DrilldownPie("gale_semantic_version", () -> semanticVersionMap)); + // Gale end - semantic version - include in metrics + ++ // Gale start - SIMD support - include in metrics ++ Map> simdSupportMap = new HashMap<>(2); // Empty until initialized ++ metrics.addCustomChart(new Metrics.DrilldownPie("simd_support", () -> { ++ if (!gg.pufferfish.pufferfish.simd.SIMDDetection.isInitialized()) { ++ return null; ++ } ++ if (simdSupportMap.isEmpty()) { ++ // Initialize ++ boolean isEnabled = gg.pufferfish.pufferfish.simd.SIMDDetection.isEnabled(); ++ ++ // use details as lower dimension ++ Map entry = new HashMap<>(2); ++ String details; ++ if (isEnabled) { ++ details = "int " + gg.pufferfish.pufferfish.simd.SIMDDetection.intVectorBitSize() + "*" + gg.pufferfish.pufferfish.simd.SIMDDetection.intElementSize() + ", float " + gg.pufferfish.pufferfish.simd.SIMDDetection.floatVectorBitSize() + "*" + gg.pufferfish.pufferfish.simd.SIMDDetection.floatElementSize(); ++ } else { ++ if (!gg.pufferfish.pufferfish.simd.SIMDDetection.supportingJavaVersion()) { ++ details = "unsupported Java"; ++ try { ++ var javaVersion = gg.pufferfish.pufferfish.simd.SIMDDetection.getJavaVersion(); ++ details += " (" + javaVersion + ")"; ++ } catch (Throwable ignored) {} ++ } else if (!gg.pufferfish.pufferfish.simd.SIMDDetection.testRunCompleted()) { ++ details = "test failed"; ++ } else if (gg.pufferfish.pufferfish.simd.SIMDDetection.unsupportingLaneSize()) { ++ details = "no supporting lane size"; ++ } else { ++ details = "other reason"; ++ } ++ } ++ entry.put(details, 1); ++ ++ // use enabled or not as higher dimension ++ simdSupportMap.put(String.valueOf(isEnabled), entry); ++ ++ } ++ return simdSupportMap; ++ })); ++ // Gale end - SIMD support - include in metrics ++ + } + + } +diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +index 5be4267d88604210b7bfcc03b2c2056e0a9f0fb0..13d9fc5f4e6316b3fd6ef5ab50f78c7117e2df3a 100644 +--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java ++++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +@@ -14,6 +14,8 @@ import java.util.Locale; + import java.util.Optional; + import java.util.function.BooleanSupplier; + import javax.annotation.Nullable; ++ ++import gg.pufferfish.pufferfish.simd.SIMDDetection; + import net.minecraft.DefaultUncaughtExceptionHandler; + import net.minecraft.DefaultUncaughtExceptionHandlerWithName; + import net.minecraft.SharedConstants; +@@ -46,6 +48,7 @@ import net.minecraft.world.level.GameType; + import net.minecraft.world.level.block.entity.SkullBlockEntity; + import net.minecraft.world.level.storage.LevelStorageSource; + import org.galemc.gale.command.GaleCommands; ++import org.galemc.gale.configuration.GaleGlobalConfiguration; + import org.slf4j.Logger; + + // CraftBukkit start +@@ -223,6 +226,13 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface + io.papermc.paper.brigadier.PaperBrigadierProviderImpl.INSTANCE.getClass(); // init PaperBrigadierProvider + // Paper end + ++ // Gale start - Pufferfish - SIMD support ++ // Initialize vectorization ++ try { ++ SIMDDetection.initialize(); ++ } catch (Throwable ignored) {} ++ // Gale start - Pufferfish - SIMD support ++ + this.setPvpAllowed(dedicatedserverproperties.pvp); + this.setFlightAllowed(dedicatedserverproperties.allowFlight); + this.setMotd(dedicatedserverproperties.motd); +diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +index 2a3cd1baab364126d10a42c8ab59f3da8ca9bdfb..5ade5d2ff3a68cf9e0240fc86e4b63432cb899c0 100644 +--- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java ++++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +@@ -25,6 +25,14 @@ public class GaleGlobalConfiguration extends ConfigurationPart { + + public int dummyValue = 0; + ++ // Gale start - Pufferfish - SIMD support ++ public Simd simd; ++ public class Simd extends ConfigurationPart { ++ public boolean warnIfDisabled = true; ++ public boolean logVectorSizesToConsole = false; ++ } ++ // Gale end - Pufferfish - SIMD support ++ + } + + public Misc misc; diff --git a/patches/server/0046-Make-book-writing-configurable.patch b/patches/server/0047-Make-book-writing-configurable.patch similarity index 97% rename from patches/server/0046-Make-book-writing-configurable.patch rename to patches/server/0047-Make-book-writing-configurable.patch index c06d60a..4321ebd 100644 --- a/patches/server/0046-Make-book-writing-configurable.patch +++ b/patches/server/0047-Make-book-writing-configurable.patch @@ -68,10 +68,10 @@ index 2e23147f807c6620b54d3047fe24a3847900712c..9ae9eff03fa9b240ed736eaa97fee0da } } diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index 2a3cd1baab364126d10a42c8ab59f3da8ca9bdfb..b7dcfaaff685ca6d86555bf4fa4d51b6a835ab66 100644 +index 5ade5d2ff3a68cf9e0240fc86e4b63432cb899c0..be4e05851e94f943b6382ba5bb9f0750c95bdad4 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -27,6 +27,25 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -35,6 +35,25 @@ public class GaleGlobalConfiguration extends ConfigurationPart { } diff --git a/patches/server/0047-Optimize-entity-coordinate-key.patch b/patches/server/0048-Optimize-entity-coordinate-key.patch similarity index 100% rename from patches/server/0047-Optimize-entity-coordinate-key.patch rename to patches/server/0048-Optimize-entity-coordinate-key.patch diff --git a/patches/server/0048-Reduce-in-wall-checks.patch b/patches/server/0049-Reduce-in-wall-checks.patch similarity index 100% rename from patches/server/0048-Reduce-in-wall-checks.patch rename to patches/server/0049-Reduce-in-wall-checks.patch diff --git a/patches/server/0049-Make-chat-order-verification-configurable.patch b/patches/server/0050-Make-chat-order-verification-configurable.patch similarity index 94% rename from patches/server/0049-Make-chat-order-verification-configurable.patch rename to patches/server/0050-Make-chat-order-verification-configurable.patch index 52faaf4..ac2f1d3 100644 --- a/patches/server/0049-Make-chat-order-verification-configurable.patch +++ b/patches/server/0050-Make-chat-order-verification-configurable.patch @@ -29,10 +29,10 @@ index 47c6c3b3d0ac90771b872a921dab06832c0c18c2..5bd17be075877e49a0ab1023bc486a28 do { diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index b7dcfaaff685ca6d86555bf4fa4d51b6a835ab66..9190885b839bc06042f1c22e4280838621a6936c 100644 +index be4e05851e94f943b6382ba5bb9f0750c95bdad4..5021cc0b7a0f99ec53d565862add241428311dc3 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -49,6 +49,19 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -57,6 +57,19 @@ public class GaleGlobalConfiguration extends ConfigurationPart { public Misc misc; public class Misc extends ConfigurationPart { diff --git a/patches/server/0050-Dragon-respawn-end-crystal-proximity-check.patch b/patches/server/0051-Dragon-respawn-end-crystal-proximity-check.patch similarity index 100% rename from patches/server/0050-Dragon-respawn-end-crystal-proximity-check.patch rename to patches/server/0051-Dragon-respawn-end-crystal-proximity-check.patch diff --git a/patches/server/0051-Make-ender-dragon-respawn-attempt-after-placing-end-.patch b/patches/server/0052-Make-ender-dragon-respawn-attempt-after-placing-end-.patch similarity index 100% rename from patches/server/0051-Make-ender-dragon-respawn-attempt-after-placing-end-.patch rename to patches/server/0052-Make-ender-dragon-respawn-attempt-after-placing-end-.patch diff --git a/patches/server/0052-Make-saving-fireworks-configurable.patch b/patches/server/0053-Make-saving-fireworks-configurable.patch similarity index 100% rename from patches/server/0052-Make-saving-fireworks-configurable.patch rename to patches/server/0053-Make-saving-fireworks-configurable.patch diff --git a/patches/server/0053-Don-t-trigger-lootable-refresh-for-non-player-intera.patch b/patches/server/0054-Don-t-trigger-lootable-refresh-for-non-player-intera.patch similarity index 100% rename from patches/server/0053-Don-t-trigger-lootable-refresh-for-non-player-intera.patch rename to patches/server/0054-Don-t-trigger-lootable-refresh-for-non-player-intera.patch diff --git a/patches/server/0054-Reduce-hopper-item-checks.patch b/patches/server/0055-Reduce-hopper-item-checks.patch similarity index 100% rename from patches/server/0054-Reduce-hopper-item-checks.patch rename to patches/server/0055-Reduce-hopper-item-checks.patch diff --git a/patches/server/0055-Reduce-villager-item-re-pickup.patch b/patches/server/0056-Reduce-villager-item-re-pickup.patch similarity index 100% rename from patches/server/0055-Reduce-villager-item-re-pickup.patch rename to patches/server/0056-Reduce-villager-item-re-pickup.patch diff --git a/patches/server/0056-Variable-entity-wake-up-duration.patch b/patches/server/0057-Variable-entity-wake-up-duration.patch similarity index 100% rename from patches/server/0056-Variable-entity-wake-up-duration.patch rename to patches/server/0057-Variable-entity-wake-up-duration.patch diff --git a/patches/server/0057-Do-not-process-chat-commands-before-player-has-joine.patch b/patches/server/0058-Do-not-process-chat-commands-before-player-has-joine.patch similarity index 100% rename from patches/server/0057-Do-not-process-chat-commands-before-player-has-joine.patch rename to patches/server/0058-Do-not-process-chat-commands-before-player-has-joine.patch diff --git a/patches/server/0058-Do-not-log-invalid-statistics.patch b/patches/server/0059-Do-not-log-invalid-statistics.patch similarity index 94% rename from patches/server/0058-Do-not-log-invalid-statistics.patch rename to patches/server/0059-Do-not-log-invalid-statistics.patch index 1a2c592..41470f5 100644 --- a/patches/server/0058-Do-not-log-invalid-statistics.patch +++ b/patches/server/0059-Do-not-log-invalid-statistics.patch @@ -44,10 +44,10 @@ index 9501e5f25f5c4d3069e554d4dc82b0e094156682..e81afb79d66321f70eb40c43d3bd7b92 } } diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index 9190885b839bc06042f1c22e4280838621a6936c..044ea3e293a7ad2ae169a7ac8a635c390aa5d393 100644 +index 5021cc0b7a0f99ec53d565862add241428311dc3..6b528eab517aed9c00c75b4bf6e1a7b21194c343 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -63,6 +63,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -71,6 +71,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { // Gale end - Pufferfish - make chat order verification configurable public IncludeInTimingsReport includeInTimingsReport; @@ -55,7 +55,7 @@ index 9190885b839bc06042f1c22e4280838621a6936c..044ea3e293a7ad2ae169a7ac8a635c39 public class IncludeInTimingsReport extends ConfigurationPart { // Gale start - include server.properties in timings -@@ -98,4 +99,11 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -106,4 +107,11 @@ public class GaleGlobalConfiguration extends ConfigurationPart { } diff --git a/patches/server/0059-Do-not-log-empty-message-warnings.patch b/patches/server/0060-Do-not-log-empty-message-warnings.patch similarity index 93% rename from patches/server/0059-Do-not-log-empty-message-warnings.patch rename to patches/server/0060-Do-not-log-empty-message-warnings.patch index 061d5d6..bf35758 100644 --- a/patches/server/0059-Do-not-log-empty-message-warnings.patch +++ b/patches/server/0060-Do-not-log-empty-message-warnings.patch @@ -28,10 +28,10 @@ index 9e7c92730f04827d6052dce5b10453e67b70a682..ba2eb5818c1170eea9f455b7caeb3484 final String conversationInput = s; this.server.processQueue.add(new Runnable() { diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index 044ea3e293a7ad2ae169a7ac8a635c390aa5d393..453e47a3748a8da3cb1674949ded2bc64af0c67a 100644 +index 6b528eab517aed9c00c75b4bf6e1a7b21194c343..425206669bc13d971097ea052bffcfd6896f90d3 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -104,6 +104,11 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -112,6 +112,11 @@ public class GaleGlobalConfiguration extends ConfigurationPart { public boolean invalidStatistics = true; // Gale - EMC - do not log invalid statistics diff --git a/patches/server/0060-Do-not-log-ignored-advancements.patch b/patches/server/0061-Do-not-log-ignored-advancements.patch similarity index 96% rename from patches/server/0060-Do-not-log-ignored-advancements.patch rename to patches/server/0061-Do-not-log-ignored-advancements.patch index 7627fa9..7cea0d2 100644 --- a/patches/server/0060-Do-not-log-ignored-advancements.patch +++ b/patches/server/0061-Do-not-log-ignored-advancements.patch @@ -58,10 +58,10 @@ index acc49f66bf34e2507d0ee6fec0a56b11bfc68f46..8834a32bfb27653062d242144dcd75ce // CraftBukkit end } else { diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index 453e47a3748a8da3cb1674949ded2bc64af0c67a..7ed77d874d9c576223632e8dc957c53d28456841 100644 +index 425206669bc13d971097ea052bffcfd6896f90d3..16c9ebc736bae1626bdb4e99ac8ff1cb7afd3419 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -103,6 +103,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -111,6 +111,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { public class LogToConsole extends ConfigurationPart { public boolean invalidStatistics = true; // Gale - EMC - do not log invalid statistics diff --git a/patches/server/0061-Do-not-log-setBlock-in-far-chunks.patch b/patches/server/0062-Do-not-log-setBlock-in-far-chunks.patch similarity index 95% rename from patches/server/0061-Do-not-log-setBlock-in-far-chunks.patch rename to patches/server/0062-Do-not-log-setBlock-in-far-chunks.patch index 4e88a64..d978aa6 100644 --- a/patches/server/0061-Do-not-log-setBlock-in-far-chunks.patch +++ b/patches/server/0062-Do-not-log-setBlock-in-far-chunks.patch @@ -57,10 +57,10 @@ index 877498729c66de9aa6a27c9148f7494d7895615c..d2bbbb0e73dafd2294838137bfbd16ac Util.logAndPauseIfInIde("Detected setBlock in a far chunk [" + i + ", " + j + "], pos: " + pos + ", status: " + this.generatingStatus + (this.currentlyGenerating == null ? "" : ", currently generating: " + (String) this.currentlyGenerating.get())); hasSetFarWarned = true; diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index 7ed77d874d9c576223632e8dc957c53d28456841..0149626d47810745159d34a7faf6e437bfb7f373 100644 +index 16c9ebc736bae1626bdb4e99ac8ff1cb7afd3419..cb9648bace4522404cc9327f6aef588bc58172e0 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -104,6 +104,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -112,6 +112,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { public boolean invalidStatistics = true; // Gale - EMC - do not log invalid statistics public boolean ignoredAdvancements = true; // Gale - Purpur - do not log ignored advancements diff --git a/patches/server/0062-Do-not-log-unrecognized-recipes.patch b/patches/server/0063-Do-not-log-unrecognized-recipes.patch similarity index 96% rename from patches/server/0062-Do-not-log-unrecognized-recipes.patch rename to patches/server/0063-Do-not-log-unrecognized-recipes.patch index f0c9d43..227a17c 100644 --- a/patches/server/0062-Do-not-log-unrecognized-recipes.patch +++ b/patches/server/0063-Do-not-log-unrecognized-recipes.patch @@ -58,10 +58,10 @@ index ea29e07a105f3ba6a878bdccf36e7eaf66280280..7b782f705b9f349e914a7192778d5e25 handler.accept((Recipe) optional.get()); } diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index 0149626d47810745159d34a7faf6e437bfb7f373..0c4b8d0ed0bd85e2917858e6c4cadaa5240cc288 100644 +index cb9648bace4522404cc9327f6aef588bc58172e0..27a467029cf3e014a17a7e8ed3ab984fe9927750 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -105,6 +105,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -113,6 +113,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { public boolean invalidStatistics = true; // Gale - EMC - do not log invalid statistics public boolean ignoredAdvancements = true; // Gale - Purpur - do not log ignored advancements public boolean setBlockInFarChunk = true; // Gale - Purpur - do not log setBlock in far chunks diff --git a/patches/server/0063-Do-not-log-legacy-Material-initialization.patch b/patches/server/0064-Do-not-log-legacy-Material-initialization.patch similarity index 96% rename from patches/server/0063-Do-not-log-legacy-Material-initialization.patch rename to patches/server/0064-Do-not-log-legacy-Material-initialization.patch index 8a7aedf..763ec04 100644 --- a/patches/server/0063-Do-not-log-legacy-Material-initialization.patch +++ b/patches/server/0064-Do-not-log-legacy-Material-initialization.patch @@ -58,10 +58,10 @@ index 2677e21d8239bf0361a3bc5c9a50c328e54d70f6..36b39517ef0aa817c5a10d6d7f4904a8 new Exception().printStackTrace(); } diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index 0c4b8d0ed0bd85e2917858e6c4cadaa5240cc288..241431b3d118e402e98710929102c7502af813bf 100644 +index 27a467029cf3e014a17a7e8ed3ab984fe9927750..133c10907358ae6064d2c1a18c967a00ad358127 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -106,6 +106,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -114,6 +114,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { public boolean ignoredAdvancements = true; // Gale - Purpur - do not log ignored advancements public boolean setBlockInFarChunk = true; // Gale - Purpur - do not log setBlock in far chunks public boolean unrecognizedRecipes = false; // Gale - Purpur - do not log unrecognized recipes diff --git a/patches/server/0064-Do-not-log-plugin-library-loads.patch b/patches/server/0065-Do-not-log-plugin-library-loads.patch similarity index 95% rename from patches/server/0064-Do-not-log-plugin-library-loads.patch rename to patches/server/0065-Do-not-log-plugin-library-loads.patch index b8c94f9..0e16395 100644 --- a/patches/server/0064-Do-not-log-plugin-library-loads.patch +++ b/patches/server/0065-Do-not-log-plugin-library-loads.patch @@ -37,7 +37,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index 241431b3d118e402e98710929102c7502af813bf..aac521e0bf2ecda0d750ef3a209af6b6c730c102 100644 +index 133c10907358ae6064d2c1a18c967a00ad358127..7820833f15d07ffc2fac5cdd4f7602e920e132ec 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java @@ -4,6 +4,7 @@ package org.galemc.gale.configuration; @@ -48,7 +48,7 @@ index 241431b3d118e402e98710929102c7502af813bf..aac521e0bf2ecda0d750ef3a209af6b6 import org.spongepowered.configurate.objectmapping.meta.Setting; @SuppressWarnings({"CanBeFinal", "FieldCanBeLocal", "FieldMayBeFinal", "NotNullFieldNotInitialized", "InnerClassMayBeStatic"}) -@@ -113,6 +114,24 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -121,6 +122,24 @@ public class GaleGlobalConfiguration extends ConfigurationPart { public boolean emptyMessageWarning = false; // Gale - do not log empty message warnings } diff --git a/patches/server/0065-Do-not-log-expired-message-warnings.patch b/patches/server/0066-Do-not-log-expired-message-warnings.patch similarity index 94% rename from patches/server/0065-Do-not-log-expired-message-warnings.patch rename to patches/server/0066-Do-not-log-expired-message-warnings.patch index 0596d27..e73339c 100644 --- a/patches/server/0065-Do-not-log-expired-message-warnings.patch +++ b/patches/server/0066-Do-not-log-expired-message-warnings.patch @@ -28,10 +28,10 @@ index c0a80824a0307ea673805015119cc834b268f0dc..d7c6e90ccf3a8ce58e5533c5158ce626 return playerChatMessage; diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index aac521e0bf2ecda0d750ef3a209af6b6c730c102..d172c2165197e553198edb6d7dcc3a9796c35b1e 100644 +index 7820833f15d07ffc2fac5cdd4f7602e920e132ec..dd4fb27eec651c4006b4ec4b7fe4d8d61e87e4b0 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -112,6 +112,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -120,6 +120,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { public Chat chat; public class Chat extends ConfigurationPart { public boolean emptyMessageWarning = false; // Gale - do not log empty message warnings diff --git a/patches/server/0066-Do-not-log-out-of-order-message-warnings.patch b/patches/server/0067-Do-not-log-out-of-order-message-warnings.patch similarity index 94% rename from patches/server/0066-Do-not-log-out-of-order-message-warnings.patch rename to patches/server/0067-Do-not-log-out-of-order-message-warnings.patch index b0c90c8..71406c8 100644 --- a/patches/server/0066-Do-not-log-out-of-order-message-warnings.patch +++ b/patches/server/0067-Do-not-log-out-of-order-message-warnings.patch @@ -20,10 +20,10 @@ index ba2eb5818c1170eea9f455b7caeb3484e51ec395..1871a4ac9616ddc533dbbe6ae15022bf this.disconnect(Component.translatable("multiplayer.disconnect.out_of_order_chat"), org.bukkit.event.player.PlayerKickEvent.Cause.OUT_OF_ORDER_CHAT); // Paper - kick event ca }); // Paper - push to main diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index d172c2165197e553198edb6d7dcc3a9796c35b1e..785bc2c67aadf2062802a998a96af3b139468386 100644 +index dd4fb27eec651c4006b4ec4b7fe4d8d61e87e4b0..b1ae641c0cbbe597085f9b19a95cba98520374e1 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -113,6 +113,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -121,6 +121,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { public class Chat extends ConfigurationPart { public boolean emptyMessageWarning = false; // Gale - do not log empty message warnings public boolean expiredMessageWarning = false; // Gale - do not log expired message warnings diff --git a/patches/server/0067-Do-not-log-Not-Secure-marker.patch b/patches/server/0068-Do-not-log-Not-Secure-marker.patch similarity index 96% rename from patches/server/0067-Do-not-log-Not-Secure-marker.patch rename to patches/server/0068-Do-not-log-Not-Secure-marker.patch index f6c74de..8b7c360 100644 --- a/patches/server/0067-Do-not-log-Not-Secure-marker.patch +++ b/patches/server/0068-Do-not-log-Not-Secure-marker.patch @@ -49,10 +49,10 @@ index 22697de39b8d00a522689d5abf894621cf051c89..cf717e46b82d8842c97d2c8aa172d02b boolean flag1 = false; diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index 785bc2c67aadf2062802a998a96af3b139468386..c7622ff665c066b22c331d887a9f052f704e81e7 100644 +index b1ae641c0cbbe597085f9b19a95cba98520374e1..b2d19c4763c8d14ff5fd53a83dbd30877c04590b 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -114,6 +114,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -122,6 +122,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { public boolean emptyMessageWarning = false; // Gale - do not log empty message warnings public boolean expiredMessageWarning = false; // Gale - do not log expired message warnings public boolean outOfOrderMessageWarning = false; // Gale - do not log out-of-order message warnings diff --git a/patches/server/0068-Do-not-log-disconnections-with-null-id.patch b/patches/server/0069-Do-not-log-disconnections-with-null-id.patch similarity index 95% rename from patches/server/0068-Do-not-log-disconnections-with-null-id.patch rename to patches/server/0069-Do-not-log-disconnections-with-null-id.patch index 2c38209..24d759f 100644 --- a/patches/server/0068-Do-not-log-disconnections-with-null-id.patch +++ b/patches/server/0069-Do-not-log-disconnections-with-null-id.patch @@ -44,10 +44,10 @@ index 2ff578e4a953ffcf5176815ba8e3f06f73499989..0d034a1b810e3840055a10ca1960eecb } diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index c7622ff665c066b22c331d887a9f052f704e81e7..4cb41ab602b05a4d2b7639c86780127d1d122a50 100644 +index b2d19c4763c8d14ff5fd53a83dbd30877c04590b..130fa4869753aa63cec8e841235d88a7734e68ec 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -108,6 +108,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -116,6 +116,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { public boolean setBlockInFarChunk = true; // Gale - Purpur - do not log setBlock in far chunks public boolean unrecognizedRecipes = false; // Gale - Purpur - do not log unrecognized recipes public boolean legacyMaterialInitialization = false; // Gale - Purpur - do not log legacy Material initialization diff --git a/patches/server/0069-Do-not-log-run-as-root-warning.patch b/patches/server/0070-Do-not-log-run-as-root-warning.patch similarity index 94% rename from patches/server/0069-Do-not-log-run-as-root-warning.patch rename to patches/server/0070-Do-not-log-run-as-root-warning.patch index 60c10e5..98ccf3e 100644 --- a/patches/server/0069-Do-not-log-run-as-root-warning.patch +++ b/patches/server/0070-Do-not-log-run-as-root-warning.patch @@ -41,10 +41,10 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index 5be4267d88604210b7bfcc03b2c2056e0a9f0fb0..e2b09f40dd259ff2374945a46df3c3f8bd500a63 100644 +index 13d9fc5f4e6316b3fd6ef5ab50f78c7117e2df3a..16a9a9be54d5d763195b6f97eb2f09def2255483 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -@@ -176,7 +176,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface +@@ -179,7 +179,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface } // Paper start - detect running as root diff --git a/patches/server/0070-Do-not-log-offline-mode-warning.patch b/patches/server/0071-Do-not-log-offline-mode-warning.patch similarity index 94% rename from patches/server/0070-Do-not-log-offline-mode-warning.patch rename to patches/server/0071-Do-not-log-offline-mode-warning.patch index dc8293f..b9b2e8d 100644 --- a/patches/server/0070-Do-not-log-offline-mode-warning.patch +++ b/patches/server/0071-Do-not-log-offline-mode-warning.patch @@ -41,10 +41,10 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index e2b09f40dd259ff2374945a46df3c3f8bd500a63..5390cdf13c462e478c9e61115c0bb3401e0eacfe 100644 +index 16a9a9be54d5d763195b6f97eb2f09def2255483..fcf8fe61e1c1cff550f86b83fca095a5513aa093 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -@@ -280,7 +280,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface +@@ -290,7 +290,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface 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/"; // Paper end diff --git a/patches/server/0071-Softly-log-invalid-pool-element-errors.patch b/patches/server/0072-Softly-log-invalid-pool-element-errors.patch similarity index 95% rename from patches/server/0071-Softly-log-invalid-pool-element-errors.patch rename to patches/server/0072-Softly-log-invalid-pool-element-errors.patch index 893281a..adeae89 100644 --- a/patches/server/0071-Softly-log-invalid-pool-element-errors.patch +++ b/patches/server/0072-Softly-log-invalid-pool-element-errors.patch @@ -39,7 +39,7 @@ index d2b4654a9095a678bbc9e004af969cf54da0fcab..d797bac97ec1adec7a25a26c8e052e70 }); this.rotation = Rotation.valueOf(nbt.getString("rotation")); diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index 4cb41ab602b05a4d2b7639c86780127d1d122a50..d95a31a441cd2046e96dfcf7402bc9a526e0524d 100644 +index 130fa4869753aa63cec8e841235d88a7734e68ec..3523b5ac7ccc53e57b32c207d2ba00042d4b1951 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java @@ -4,9 +4,13 @@ package org.galemc.gale.configuration; @@ -56,7 +56,7 @@ index 4cb41ab602b05a4d2b7639c86780127d1d122a50..d95a31a441cd2046e96dfcf7402bc9a5 @SuppressWarnings({"CanBeFinal", "FieldCanBeLocal", "FieldMayBeFinal", "NotNullFieldNotInitialized", "InnerClassMayBeStatic"}) public class GaleGlobalConfiguration extends ConfigurationPart { static final int CURRENT_VERSION = 1; -@@ -101,7 +105,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -109,7 +113,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { } public LogToConsole logToConsole; @@ -65,7 +65,7 @@ index 4cb41ab602b05a4d2b7639c86780127d1d122a50..d95a31a441cd2046e96dfcf7402bc9a5 public boolean invalidStatistics = true; // Gale - EMC - do not log invalid statistics public boolean ignoredAdvancements = true; // Gale - Purpur - do not log ignored advancements -@@ -136,6 +140,21 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -144,6 +148,21 @@ public class GaleGlobalConfiguration extends ConfigurationPart { } // Gale end - Purpur - do not log plugin library loads diff --git a/patches/server/0072-Fix-outdated-server-showing-in-ping-before-server-fu.patch b/patches/server/0073-Fix-outdated-server-showing-in-ping-before-server-fu.patch similarity index 100% rename from patches/server/0072-Fix-outdated-server-showing-in-ping-before-server-fu.patch rename to patches/server/0073-Fix-outdated-server-showing-in-ping-before-server-fu.patch diff --git a/patches/server/0073-Make-sand-duping-fix-configurable.patch b/patches/server/0074-Make-sand-duping-fix-configurable.patch similarity index 100% rename from patches/server/0073-Make-sand-duping-fix-configurable.patch rename to patches/server/0074-Make-sand-duping-fix-configurable.patch diff --git a/patches/server/0074-Make-tripwire-duping-fix-configurable.patch b/patches/server/0075-Make-tripwire-duping-fix-configurable.patch similarity index 100% rename from patches/server/0074-Make-tripwire-duping-fix-configurable.patch rename to patches/server/0075-Make-tripwire-duping-fix-configurable.patch diff --git a/patches/server/0075-Fix-MC-238526.patch b/patches/server/0076-Fix-MC-238526.patch similarity index 100% rename from patches/server/0075-Fix-MC-238526.patch rename to patches/server/0076-Fix-MC-238526.patch diff --git a/patches/server/0076-Fix-cow-rotation-when-shearing-mooshroom.patch b/patches/server/0077-Fix-cow-rotation-when-shearing-mooshroom.patch similarity index 100% rename from patches/server/0076-Fix-cow-rotation-when-shearing-mooshroom.patch rename to patches/server/0077-Fix-cow-rotation-when-shearing-mooshroom.patch diff --git a/patches/server/0077-Fix-MC-121706.patch b/patches/server/0078-Fix-MC-121706.patch similarity index 100% rename from patches/server/0077-Fix-MC-121706.patch rename to patches/server/0078-Fix-MC-121706.patch diff --git a/patches/server/0078-Fix-MC-110386.patch b/patches/server/0079-Fix-MC-110386.patch similarity index 100% rename from patches/server/0078-Fix-MC-110386.patch rename to patches/server/0079-Fix-MC-110386.patch diff --git a/patches/server/0079-Fix-MC-31819.patch b/patches/server/0080-Fix-MC-31819.patch similarity index 100% rename from patches/server/0079-Fix-MC-31819.patch rename to patches/server/0080-Fix-MC-31819.patch diff --git a/patches/server/0080-Fix-MC-26304.patch b/patches/server/0081-Fix-MC-26304.patch similarity index 100% rename from patches/server/0080-Fix-MC-26304.patch rename to patches/server/0081-Fix-MC-26304.patch diff --git a/patches/server/0081-End-gateway-should-check-if-entity-can-use-portal.patch b/patches/server/0082-End-gateway-should-check-if-entity-can-use-portal.patch similarity index 100% rename from patches/server/0081-End-gateway-should-check-if-entity-can-use-portal.patch rename to patches/server/0082-End-gateway-should-check-if-entity-can-use-portal.patch diff --git a/patches/server/0082-Make-arrow-movement-resetting-despawn-counter-config.patch b/patches/server/0083-Make-arrow-movement-resetting-despawn-counter-config.patch similarity index 100% rename from patches/server/0082-Make-arrow-movement-resetting-despawn-counter-config.patch rename to patches/server/0083-Make-arrow-movement-resetting-despawn-counter-config.patch diff --git a/patches/server/0083-Make-logging-login-locations-configurable.patch b/patches/server/0084-Make-logging-login-locations-configurable.patch similarity index 94% rename from patches/server/0083-Make-logging-login-locations-configurable.patch rename to patches/server/0084-Make-logging-login-locations-configurable.patch index 08aa7a0..c8cd73d 100644 --- a/patches/server/0083-Make-logging-login-locations-configurable.patch +++ b/patches/server/0084-Make-logging-login-locations-configurable.patch @@ -31,10 +31,10 @@ index cf717e46b82d8842c97d2c8aa172d02bb788184a..4c5d2c3e50be81435260207dc1208c08 public void updateEntireScoreboard(ServerScoreboard scoreboard, ServerPlayer player) { diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index d95a31a441cd2046e96dfcf7402bc9a526e0524d..23f54f116ba0c4d7442571a6713e5f9f41eb8886 100644 +index 3523b5ac7ccc53e57b32c207d2ba00042d4b1951..8f51ae95c357e3873a33bcc89e5e134a66e4577b 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -113,6 +113,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -121,6 +121,7 @@ public class GaleGlobalConfiguration extends ConfigurationPart { public boolean unrecognizedRecipes = false; // Gale - Purpur - do not log unrecognized recipes public boolean legacyMaterialInitialization = false; // Gale - Purpur - do not log legacy Material initialization public boolean nullIdDisconnections = true; // Gale - Pufferfish - do not log disconnections with null id diff --git a/patches/server/0084-Reduce-array-allocations.patch b/patches/server/0085-Reduce-array-allocations.patch similarity index 100% rename from patches/server/0084-Reduce-array-allocations.patch rename to patches/server/0085-Reduce-array-allocations.patch diff --git a/patches/server/0085-Optimize-sun-burn-tick.patch b/patches/server/0086-Optimize-sun-burn-tick.patch similarity index 100% rename from patches/server/0085-Optimize-sun-burn-tick.patch rename to patches/server/0086-Optimize-sun-burn-tick.patch diff --git a/patches/server/0086-Reduce-lambda-and-Optional-allocation-in-EntityBased.patch b/patches/server/0087-Reduce-lambda-and-Optional-allocation-in-EntityBased.patch similarity index 100% rename from patches/server/0086-Reduce-lambda-and-Optional-allocation-in-EntityBased.patch rename to patches/server/0087-Reduce-lambda-and-Optional-allocation-in-EntityBased.patch diff --git a/patches/server/0087-Replace-AI-goal-set-with-optimized-collection.patch b/patches/server/0088-Replace-AI-goal-set-with-optimized-collection.patch similarity index 100% rename from patches/server/0087-Replace-AI-goal-set-with-optimized-collection.patch rename to patches/server/0088-Replace-AI-goal-set-with-optimized-collection.patch diff --git a/patches/server/0088-Replace-game-rules-map-with-optimized-collection.patch b/patches/server/0089-Replace-game-rules-map-with-optimized-collection.patch similarity index 100% rename from patches/server/0088-Replace-game-rules-map-with-optimized-collection.patch rename to patches/server/0089-Replace-game-rules-map-with-optimized-collection.patch diff --git a/patches/server/0089-Replace-AI-attributes-with-optimized-collections.patch b/patches/server/0090-Replace-AI-attributes-with-optimized-collections.patch similarity index 100% rename from patches/server/0089-Replace-AI-attributes-with-optimized-collections.patch rename to patches/server/0090-Replace-AI-attributes-with-optimized-collections.patch diff --git a/patches/server/0090-Replace-class-map-with-optimized-collection.patch b/patches/server/0091-Replace-class-map-with-optimized-collection.patch similarity index 100% rename from patches/server/0090-Replace-class-map-with-optimized-collection.patch rename to patches/server/0091-Replace-class-map-with-optimized-collection.patch diff --git a/patches/server/0091-Replace-throttle-tracker-map-with-optimized-collecti.patch b/patches/server/0092-Replace-throttle-tracker-map-with-optimized-collecti.patch similarity index 100% rename from patches/server/0091-Replace-throttle-tracker-map-with-optimized-collecti.patch rename to patches/server/0092-Replace-throttle-tracker-map-with-optimized-collecti.patch diff --git a/patches/server/0092-Replace-shape-full-block-cache-with-hashtable.patch b/patches/server/0093-Replace-shape-full-block-cache-with-hashtable.patch similarity index 100% rename from patches/server/0092-Replace-shape-full-block-cache-with-hashtable.patch rename to patches/server/0093-Replace-shape-full-block-cache-with-hashtable.patch diff --git a/patches/server/0093-Avoid-Class-isAssignableFrom-call-in-ClassInstanceMu.patch b/patches/server/0094-Avoid-Class-isAssignableFrom-call-in-ClassInstanceMu.patch similarity index 100% rename from patches/server/0093-Avoid-Class-isAssignableFrom-call-in-ClassInstanceMu.patch rename to patches/server/0094-Avoid-Class-isAssignableFrom-call-in-ClassInstanceMu.patch diff --git a/patches/server/0094-Cache-BlockStatePairKey-hash.patch b/patches/server/0095-Cache-BlockStatePairKey-hash.patch similarity index 100% rename from patches/server/0094-Cache-BlockStatePairKey-hash.patch rename to patches/server/0095-Cache-BlockStatePairKey-hash.patch diff --git a/patches/server/0095-Cache-CubeVoxelShape-shape-array.patch b/patches/server/0096-Cache-CubeVoxelShape-shape-array.patch similarity index 100% rename from patches/server/0095-Cache-CubeVoxelShape-shape-array.patch rename to patches/server/0096-Cache-CubeVoxelShape-shape-array.patch diff --git a/patches/server/0096-Replace-division-by-multiplication-in-CubePointRange.patch b/patches/server/0097-Replace-division-by-multiplication-in-CubePointRange.patch similarity index 100% rename from patches/server/0096-Replace-division-by-multiplication-in-CubePointRange.patch rename to patches/server/0097-Replace-division-by-multiplication-in-CubePointRange.patch diff --git a/patches/server/0097-Replace-parts-by-size-in-CubePointRange.patch b/patches/server/0098-Replace-parts-by-size-in-CubePointRange.patch similarity index 100% rename from patches/server/0097-Replace-parts-by-size-in-CubePointRange.patch rename to patches/server/0098-Replace-parts-by-size-in-CubePointRange.patch diff --git a/patches/server/0098-Check-frozen-ticks-before-landing-block.patch b/patches/server/0099-Check-frozen-ticks-before-landing-block.patch similarity index 100% rename from patches/server/0098-Check-frozen-ticks-before-landing-block.patch rename to patches/server/0099-Check-frozen-ticks-before-landing-block.patch diff --git a/patches/server/0099-Faster-chunk-serialization.patch b/patches/server/0100-Faster-chunk-serialization.patch similarity index 100% rename from patches/server/0099-Faster-chunk-serialization.patch rename to patches/server/0100-Faster-chunk-serialization.patch diff --git a/patches/server/0100-Update-boss-bar-within-tick.patch b/patches/server/0101-Update-boss-bar-within-tick.patch similarity index 100% rename from patches/server/0100-Update-boss-bar-within-tick.patch rename to patches/server/0101-Update-boss-bar-within-tick.patch diff --git a/patches/server/0101-Cache-ominous-banner-item.patch b/patches/server/0102-Cache-ominous-banner-item.patch similarity index 100% rename from patches/server/0101-Cache-ominous-banner-item.patch rename to patches/server/0102-Cache-ominous-banner-item.patch diff --git a/patches/server/0102-Optimize-world-generation-chunk-and-block-access.patch b/patches/server/0103-Optimize-world-generation-chunk-and-block-access.patch similarity index 100% rename from patches/server/0102-Optimize-world-generation-chunk-and-block-access.patch rename to patches/server/0103-Optimize-world-generation-chunk-and-block-access.patch diff --git a/patches/server/0103-Cache-world-generator-sea-level.patch b/patches/server/0104-Cache-world-generator-sea-level.patch similarity index 100% rename from patches/server/0103-Cache-world-generator-sea-level.patch rename to patches/server/0104-Cache-world-generator-sea-level.patch diff --git a/patches/server/0104-Skip-secondary-POI-sensor-if-absent.patch b/patches/server/0105-Skip-secondary-POI-sensor-if-absent.patch similarity index 100% rename from patches/server/0104-Skip-secondary-POI-sensor-if-absent.patch rename to patches/server/0105-Skip-secondary-POI-sensor-if-absent.patch diff --git a/patches/server/0105-Optimize-villager-data-storage.patch b/patches/server/0106-Optimize-villager-data-storage.patch similarity index 100% rename from patches/server/0105-Optimize-villager-data-storage.patch rename to patches/server/0106-Optimize-villager-data-storage.patch diff --git a/patches/server/0106-Skip-entity-move-if-movement-is-zero.patch b/patches/server/0107-Skip-entity-move-if-movement-is-zero.patch similarity index 100% rename from patches/server/0106-Skip-entity-move-if-movement-is-zero.patch rename to patches/server/0107-Skip-entity-move-if-movement-is-zero.patch diff --git a/patches/server/0107-Store-mob-counts-in-an-array.patch b/patches/server/0108-Store-mob-counts-in-an-array.patch similarity index 100% rename from patches/server/0107-Store-mob-counts-in-an-array.patch rename to patches/server/0108-Store-mob-counts-in-an-array.patch diff --git a/patches/server/0108-Use-linked-map-for-entity-trackers.patch b/patches/server/0109-Use-linked-map-for-entity-trackers.patch similarity index 100% rename from patches/server/0108-Use-linked-map-for-entity-trackers.patch rename to patches/server/0109-Use-linked-map-for-entity-trackers.patch diff --git a/patches/server/0109-Optimize-noise-generation.patch b/patches/server/0110-Optimize-noise-generation.patch similarity index 100% rename from patches/server/0109-Optimize-noise-generation.patch rename to patches/server/0110-Optimize-noise-generation.patch diff --git a/patches/server/0110-Optimize-sheep-offspring-color.patch b/patches/server/0111-Optimize-sheep-offspring-color.patch similarity index 100% rename from patches/server/0110-Optimize-sheep-offspring-color.patch rename to patches/server/0111-Optimize-sheep-offspring-color.patch diff --git a/patches/server/0111-Hide-flames-on-entities-with-fire-resistance.patch b/patches/server/0112-Hide-flames-on-entities-with-fire-resistance.patch similarity index 100% rename from patches/server/0111-Hide-flames-on-entities-with-fire-resistance.patch rename to patches/server/0112-Hide-flames-on-entities-with-fire-resistance.patch diff --git a/patches/server/0112-Skip-cloning-advancement-criteria.patch b/patches/server/0113-Skip-cloning-advancement-criteria.patch similarity index 100% rename from patches/server/0112-Skip-cloning-advancement-criteria.patch rename to patches/server/0113-Skip-cloning-advancement-criteria.patch diff --git a/patches/server/0113-Reduce-block-destruction-packet-allocations.patch b/patches/server/0114-Reduce-block-destruction-packet-allocations.patch similarity index 100% rename from patches/server/0113-Reduce-block-destruction-packet-allocations.patch rename to patches/server/0114-Reduce-block-destruction-packet-allocations.patch diff --git a/patches/server/0114-Spread-out-sending-all-player-info.patch b/patches/server/0115-Spread-out-sending-all-player-info.patch similarity index 100% rename from patches/server/0114-Spread-out-sending-all-player-info.patch rename to patches/server/0115-Spread-out-sending-all-player-info.patch diff --git a/patches/server/0115-Optimize-player-list-for-sending-player-info.patch b/patches/server/0116-Optimize-player-list-for-sending-player-info.patch similarity index 100% rename from patches/server/0115-Optimize-player-list-for-sending-player-info.patch rename to patches/server/0116-Optimize-player-list-for-sending-player-info.patch diff --git a/patches/server/0116-Skip-PlayerCommandSendEvent-if-there-are-no-listener.patch b/patches/server/0117-Skip-PlayerCommandSendEvent-if-there-are-no-listener.patch similarity index 100% rename from patches/server/0116-Skip-PlayerCommandSendEvent-if-there-are-no-listener.patch rename to patches/server/0117-Skip-PlayerCommandSendEvent-if-there-are-no-listener.patch diff --git a/patches/server/0117-Send-multiple-keep-alive-packets.patch b/patches/server/0118-Send-multiple-keep-alive-packets.patch similarity index 97% rename from patches/server/0117-Send-multiple-keep-alive-packets.patch rename to patches/server/0118-Send-multiple-keep-alive-packets.patch index 4e9a21f..91185de 100644 --- a/patches/server/0117-Send-multiple-keep-alive-packets.patch +++ b/patches/server/0118-Send-multiple-keep-alive-packets.patch @@ -109,10 +109,10 @@ index 16df8c2b704225461dfadc64b1fb25f3f5003559..35f88385ed5b7a5a22486d801052f613 if (this.keepAlivePending && packet.getId() == this.keepAliveChallenge) { int i = (int) (Util.getMillis() - this.keepAliveTime); diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index 23f54f116ba0c4d7442571a6713e5f9f41eb8886..be93695a82d79c55d8e6b747b80139d8994032bb 100644 +index 8f51ae95c357e3873a33bcc89e5e134a66e4577b..88a5ac2436b0aaaeb3e9e23ebd88105e8850769f 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -102,6 +102,13 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -110,6 +110,13 @@ public class GaleGlobalConfiguration extends ConfigurationPart { } diff --git a/patches/server/0118-Make-slow-login-timeout-configurable.patch b/patches/server/0119-Make-slow-login-timeout-configurable.patch similarity index 94% rename from patches/server/0118-Make-slow-login-timeout-configurable.patch rename to patches/server/0119-Make-slow-login-timeout-configurable.patch index c43ee2c..b29d825 100644 --- a/patches/server/0118-Make-slow-login-timeout-configurable.patch +++ b/patches/server/0119-Make-slow-login-timeout-configurable.patch @@ -23,10 +23,10 @@ index 00166d86baad60beed5896871c9b9118fefc20b6..ded7811cd10bc436957ed9f1576f3231 } diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index be93695a82d79c55d8e6b747b80139d8994032bb..2a3b50e09883aad815b88e5b4c87aa20942a20ed 100644 +index 88a5ac2436b0aaaeb3e9e23ebd88105e8850769f..25f07bb3a2c212dca6e25100014c7edbe280f011 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -67,6 +67,20 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -75,6 +75,20 @@ public class GaleGlobalConfiguration extends ConfigurationPart { public boolean verifyChatOrder = true; // Gale end - Pufferfish - make chat order verification configurable diff --git a/patches/server/0119-Make-max-interaction-distance-configurable.patch b/patches/server/0120-Make-max-interaction-distance-configurable.patch similarity index 100% rename from patches/server/0119-Make-max-interaction-distance-configurable.patch rename to patches/server/0120-Make-max-interaction-distance-configurable.patch diff --git a/patches/server/0120-Load-portal-destination-chunk-before-entity-teleport.patch b/patches/server/0121-Load-portal-destination-chunk-before-entity-teleport.patch similarity index 100% rename from patches/server/0120-Load-portal-destination-chunk-before-entity-teleport.patch rename to patches/server/0121-Load-portal-destination-chunk-before-entity-teleport.patch diff --git a/patches/server/0121-Don-t-load-chunks-to-spawn-phantoms.patch b/patches/server/0122-Don-t-load-chunks-to-spawn-phantoms.patch similarity index 100% rename from patches/server/0121-Don-t-load-chunks-to-spawn-phantoms.patch rename to patches/server/0122-Don-t-load-chunks-to-spawn-phantoms.patch diff --git a/patches/server/0122-Don-t-load-chunks-to-activate-climbing-entities.patch b/patches/server/0123-Don-t-load-chunks-to-activate-climbing-entities.patch similarity index 100% rename from patches/server/0122-Don-t-load-chunks-to-activate-climbing-entities.patch rename to patches/server/0123-Don-t-load-chunks-to-activate-climbing-entities.patch diff --git a/patches/server/0123-Broadcast-crit-animations-as-the-entity-being-critte.patch b/patches/server/0124-Broadcast-crit-animations-as-the-entity-being-critte.patch similarity index 100% rename from patches/server/0123-Broadcast-crit-animations-as-the-entity-being-critte.patch rename to patches/server/0124-Broadcast-crit-animations-as-the-entity-being-critte.patch diff --git a/patches/server/0124-Ignore-null-legacy-structure-data.patch b/patches/server/0125-Ignore-null-legacy-structure-data.patch similarity index 96% rename from patches/server/0124-Ignore-null-legacy-structure-data.patch rename to patches/server/0125-Ignore-null-legacy-structure-data.patch index 7df5646..431f341 100644 --- a/patches/server/0124-Ignore-null-legacy-structure-data.patch +++ b/patches/server/0125-Ignore-null-legacy-structure-data.patch @@ -46,10 +46,10 @@ index cc7222cc7e53e8ae693e4e94ad53391db7a663c4..9d1d7033fdd2ae65b8fd323e9199b9d5 continue; } diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index 2a3b50e09883aad815b88e5b4c87aa20942a20ed..1c0d4dbd642c03f25fa8c4bb0f5880e038960d84 100644 +index 25f07bb3a2c212dca6e25100014c7edbe280f011..a40d4237804300fbb939ad2212827d9bf46a3bf0 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -81,6 +81,19 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -89,6 +89,19 @@ public class GaleGlobalConfiguration extends ConfigurationPart { public int premiumAccountSlowLoginTimeout = -1; // Gale end - make slow login timeout configurable diff --git a/patches/server/0125-Skip-unnecessary-mob-spawning-computations.patch b/patches/server/0126-Skip-unnecessary-mob-spawning-computations.patch similarity index 100% rename from patches/server/0125-Skip-unnecessary-mob-spawning-computations.patch rename to patches/server/0126-Skip-unnecessary-mob-spawning-computations.patch diff --git a/patches/server/0126-Prevent-entities-random-strolling-into-non-ticking-c.patch b/patches/server/0127-Prevent-entities-random-strolling-into-non-ticking-c.patch similarity index 100% rename from patches/server/0126-Prevent-entities-random-strolling-into-non-ticking-c.patch rename to patches/server/0127-Prevent-entities-random-strolling-into-non-ticking-c.patch diff --git a/patches/server/0127-Do-not-place-player-in-world-if-kicked-before-being-.patch b/patches/server/0128-Do-not-place-player-in-world-if-kicked-before-being-.patch similarity index 100% rename from patches/server/0127-Do-not-place-player-in-world-if-kicked-before-being-.patch rename to patches/server/0128-Do-not-place-player-in-world-if-kicked-before-being-.patch diff --git a/patches/server/0128-CraftBukkit-UUID-to-world-map.patch b/patches/server/0129-CraftBukkit-UUID-to-world-map.patch similarity index 100% rename from patches/server/0128-CraftBukkit-UUID-to-world-map.patch rename to patches/server/0129-CraftBukkit-UUID-to-world-map.patch diff --git a/patches/server/0129-Global-EULA-file.patch b/patches/server/0130-Global-EULA-file.patch similarity index 100% rename from patches/server/0129-Global-EULA-file.patch rename to patches/server/0130-Global-EULA-file.patch diff --git a/patches/server/0130-Specific-interval-TPS-API.patch b/patches/server/0131-Specific-interval-TPS-API.patch similarity index 100% rename from patches/server/0130-Specific-interval-TPS-API.patch rename to patches/server/0131-Specific-interval-TPS-API.patch diff --git a/patches/server/0131-5-second-TPS-average.patch b/patches/server/0132-5-second-TPS-average.patch similarity index 100% rename from patches/server/0131-5-second-TPS-average.patch rename to patches/server/0132-5-second-TPS-average.patch diff --git a/patches/server/0132-Measure-last-tick-time.patch b/patches/server/0133-Measure-last-tick-time.patch similarity index 100% rename from patches/server/0132-Measure-last-tick-time.patch rename to patches/server/0133-Measure-last-tick-time.patch diff --git a/patches/server/0133-Last-tick-time-API.patch b/patches/server/0134-Last-tick-time-API.patch similarity index 100% rename from patches/server/0133-Last-tick-time-API.patch rename to patches/server/0134-Last-tick-time-API.patch diff --git a/patches/server/0134-Show-last-tick-time-in-tps-command.patch b/patches/server/0135-Show-last-tick-time-in-tps-command.patch similarity index 97% rename from patches/server/0134-Show-last-tick-time-in-tps-command.patch rename to patches/server/0135-Show-last-tick-time-in-tps-command.patch index 680225e..608add4 100644 --- a/patches/server/0134-Show-last-tick-time-in-tps-command.patch +++ b/patches/server/0135-Show-last-tick-time-in-tps-command.patch @@ -23,10 +23,10 @@ The above copyright notice and this permission notice shall be included in all c THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 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. diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index 1c0d4dbd642c03f25fa8c4bb0f5880e038960d84..effe25e646dcd46831df44605c0fabd67ea726d3 100644 +index a40d4237804300fbb939ad2212827d9bf46a3bf0..d0fd9e755375c25d3db153ec52eabab3ce8d4066 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -@@ -136,6 +136,14 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -144,6 +144,14 @@ public class GaleGlobalConfiguration extends ConfigurationPart { } diff --git a/patches/server/0135-Increase-time-statistics-in-intervals.patch b/patches/server/0136-Increase-time-statistics-in-intervals.patch similarity index 97% rename from patches/server/0135-Increase-time-statistics-in-intervals.patch rename to patches/server/0136-Increase-time-statistics-in-intervals.patch index 6f582e5..1350dd9 100644 --- a/patches/server/0135-Increase-time-statistics-in-intervals.patch +++ b/patches/server/0136-Increase-time-statistics-in-intervals.patch @@ -87,7 +87,7 @@ index af8b5282df19c92c5f1394dc9d889012ce509f32..f070bd0eca4a55445f436c9520a89aab int i = 29999999; diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index effe25e646dcd46831df44605c0fabd67ea726d3..2ea8fbfe9b286e91b9e073a77abb6706f2bb26ae 100644 +index d0fd9e755375c25d3db153ec52eabab3ce8d4066..4114088e56a7974b2da84ff90ab66f72ed538b61 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java @@ -28,7 +28,29 @@ public class GaleGlobalConfiguration extends ConfigurationPart { @@ -119,5 +119,5 @@ index effe25e646dcd46831df44605c0fabd67ea726d3..2ea8fbfe9b286e91b9e073a77abb6706 + + } - } - + // Gale start - Pufferfish - SIMD support + public Simd simd; diff --git a/patches/server/0136-For-collision-check-has-physics-before-same-vehicle.patch b/patches/server/0137-For-collision-check-has-physics-before-same-vehicle.patch similarity index 100% rename from patches/server/0136-For-collision-check-has-physics-before-same-vehicle.patch rename to patches/server/0137-For-collision-check-has-physics-before-same-vehicle.patch diff --git a/patches/server/0137-Skip-negligible-planar-movement-multiplication.patch b/patches/server/0138-Skip-negligible-planar-movement-multiplication.patch similarity index 100% rename from patches/server/0137-Skip-negligible-planar-movement-multiplication.patch rename to patches/server/0138-Skip-negligible-planar-movement-multiplication.patch diff --git a/patches/server/0138-Optimize-matching-item-checks.patch b/patches/server/0139-Optimize-matching-item-checks.patch similarity index 100% rename from patches/server/0138-Optimize-matching-item-checks.patch rename to patches/server/0139-Optimize-matching-item-checks.patch diff --git a/patches/server/0139-Reduce-RandomSource-instances.patch b/patches/server/0140-Reduce-RandomSource-instances.patch similarity index 100% rename from patches/server/0139-Reduce-RandomSource-instances.patch rename to patches/server/0140-Reduce-RandomSource-instances.patch diff --git a/patches/server/0140-Add-xor-shift-random.patch b/patches/server/0141-Add-xor-shift-random.patch similarity index 98% rename from patches/server/0140-Add-xor-shift-random.patch rename to patches/server/0141-Add-xor-shift-random.patch index 57cab88..621cf19 100644 --- a/patches/server/0140-Add-xor-shift-random.patch +++ b/patches/server/0141-Add-xor-shift-random.patch @@ -92,7 +92,7 @@ index d1c7ab67cba881d96b7a5e9220130d86d0514304..ef1b30f3e757f7abaeb55728b50643ee public CraftFirework(CraftServer server, FireworkRocketEntity entity) { diff --git a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java -index 2ea8fbfe9b286e91b9e073a77abb6706f2bb26ae..d6f161335a9b97c48a0d69a295e288eae0898971 100644 +index 4114088e56a7974b2da84ff90ab66f72ed538b61..d6f161335a9b97c48a0d69a295e288eae0898971 100644 --- a/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java +++ b/src/main/java/org/galemc/gale/configuration/GaleGlobalConfiguration.java @@ -6,6 +6,7 @@ import io.papermc.paper.configuration.Configuration; @@ -103,10 +103,15 @@ index 2ea8fbfe9b286e91b9e073a77abb6706f2bb26ae..d6f161335a9b97c48a0d69a295e288ea import org.spongepowered.configurate.objectmapping.meta.Setting; import java.util.Locale; -@@ -52,6 +53,40 @@ public class GaleGlobalConfiguration extends ConfigurationPart { +@@ -52,13 +53,39 @@ public class GaleGlobalConfiguration extends ConfigurationPart { } +- // Gale start - Pufferfish - SIMD support +- public Simd simd; +- public class Simd extends ConfigurationPart { +- public boolean warnIfDisabled = true; +- public boolean logVectorSizesToConsole = false; + // Gale start - xor-shift random + /** + * Whether to use {@link org.galemc.gale.random.XorShiftRandom} instead of the default implementation @@ -138,12 +143,12 @@ index 2ea8fbfe9b286e91b9e073a77abb6706f2bb26ae..d6f161335a9b97c48a0d69a295e288ea + */ + public boolean elytraFireworkSpeed = true; + -+ } + } +- // Gale end - Pufferfish - SIMD support + // Gale end - xor-shift random -+ + } - public GameplayMechanics gameplayMechanics; diff --git a/src/main/java/org/galemc/gale/random/XorShiftRandom.java b/src/main/java/org/galemc/gale/random/XorShiftRandom.java new file mode 100644 index 0000000000000000000000000000000000000000..60dc2c1deb0749168d03c5d94136e613b09ce534 diff --git a/patches/server/0141-Server-thread-priority-environment-variable.patch b/patches/server/0142-Server-thread-priority-environment-variable.patch similarity index 100% rename from patches/server/0141-Server-thread-priority-environment-variable.patch rename to patches/server/0142-Server-thread-priority-environment-variable.patch diff --git a/patches/server/0142-Instantly-continue-on-world-upgrade-finish.patch b/patches/server/0143-Instantly-continue-on-world-upgrade-finish.patch similarity index 100% rename from patches/server/0142-Instantly-continue-on-world-upgrade-finish.patch rename to patches/server/0143-Instantly-continue-on-world-upgrade-finish.patch diff --git a/patches/server/0143-Virtual-thread-support.patch b/patches/server/0144-Virtual-thread-support.patch similarity index 95% rename from patches/server/0143-Virtual-thread-support.patch rename to patches/server/0144-Virtual-thread-support.patch index 691cb4d..8d3d17f 100644 --- a/patches/server/0143-Virtual-thread-support.patch +++ b/patches/server/0144-Virtual-thread-support.patch @@ -7,12 +7,12 @@ License: AGPL-3.0 (https://www.gnu.org/licenses/agpl-3.0.html) Gale - https://galemc.org diff --git a/src/main/java/com/destroystokyo/paper/Metrics.java b/src/main/java/com/destroystokyo/paper/Metrics.java -index 3ebecc68b7c38c94a5c20e4b8ac1e2fa5d69321f..1a96749d1a16eaf596261365b1beee30123cb4b0 100644 +index 5a85df87042a28ba6f7f5840fa80c5aaea62bbee..78a76b6f7bedf8aef94614fcb654c2cc3d6b3749 100644 --- a/src/main/java/com/destroystokyo/paper/Metrics.java +++ b/src/main/java/com/destroystokyo/paper/Metrics.java -@@ -874,6 +874,11 @@ public class Metrics { - metrics.addCustomChart(new Metrics.DrilldownPie("gale_semantic_version", () -> semanticVersionMap)); - // Gale end - semantic version - include in metrics +@@ -914,6 +914,11 @@ public class Metrics { + })); + // Gale end - SIMD support - include in metrics + // Gale start - virtual thread support - include in metrics + var virtualThreadSupport = String.valueOf(org.galemc.gale.util.VirtualThreads.areVirtualThreadsEnabled);