diff --git a/lophine-server/minecraft-patches/features/0085-Fix-datapack-command-save-function.patch b/lophine-server/minecraft-patches/features/0043-Add-back-read-only-datapack-command-Fix-datapack-com.patch similarity index 53% rename from lophine-server/minecraft-patches/features/0085-Fix-datapack-command-save-function.patch rename to lophine-server/minecraft-patches/features/0043-Add-back-read-only-datapack-command-Fix-datapack-com.patch index c6003e5..ebc507c 100644 --- a/lophine-server/minecraft-patches/features/0085-Fix-datapack-command-save-function.patch +++ b/lophine-server/minecraft-patches/features/0043-Add-back-read-only-datapack-command-Fix-datapack-com.patch @@ -1,14 +1,28 @@ From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Helvetica Volubi Date: Wed, 2 Jul 2025 23:36:25 +0800 -Subject: [PATCH] Fix datapack command save function +Subject: [PATCH] Add back read-only datapack command & Fix datapack command + save function +diff --git a/net/minecraft/commands/Commands.java b/net/minecraft/commands/Commands.java +index afbaf2116930d72ebb0c77745d02115abab14dc4..6823c41c08ca1a1baf9257fc861ae97bbcbe3a50 100644 +--- a/net/minecraft/commands/Commands.java ++++ b/net/minecraft/commands/Commands.java +@@ -205,7 +205,7 @@ public class Commands { + if(me.earthme.luminol.config.modules.experiment.CommandConfig.data) { // Luminol - Config for data command + DataCommands.register(this.dispatcher); // Folia - region threading - TODO // Luminol - Config for data command + } // Luminol - Config for data command +- //DataPackCommand.register(this.dispatcher, context); // Folia - region threading - TODO ++ DataPackCommand.register(this.dispatcher, context); // Folia - region threading - TODO // Luminol - Add back read-only datapack command + //DebugCommand.register(this.dispatcher); // Folia - region threading - TODO + DefaultGameModeCommands.register(this.dispatcher); + //DialogCommand.register(this.dispatcher, context); // Folia - region threading - TODO diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java -index d2303ad91c9634cdbf599552a6bce7279a1f0e0a..4b6f961e695155db1d6cc86496491017bf3a6383 100644 +index d4e31bb829451a687bf567fd0357f46fd7d46902..4f292468194baae343eeb077362e51dcfb6c0df1 100644 --- a/net/minecraft/server/MinecraftServer.java +++ b/net/minecraft/server/MinecraftServer.java -@@ -2460,6 +2460,16 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop reloadResources( final Collection packsToEnable, final io.papermc.paper.event.server.ServerResourcesReloadedEvent.Cause cause ) { -diff --git a/net/minecraft/server/commands/DataPackCommand.java b/net/minecraft/server/commands/DataPackCommand.java -index 80d9bc3d680c30dae15064e0e8c3d1379ccd52e6..2bc9cf924d40d5d11935f73cf6d35442b0b0ba06 100644 ---- a/net/minecraft/server/commands/DataPackCommand.java -+++ b/net/minecraft/server/commands/DataPackCommand.java -@@ -99,7 +99,7 @@ public class DataPackCommand { - dispatcher.register( - Commands.literal("datapack") - .requires(Commands.hasPermission(Commands.LEVEL_GAMEMASTERS)) -- /*.then( // Luminol - Add back read-only datapack command -+ .then( // Lophine - Fix datapack command save function - Commands.literal("enable") - .then( - Commands.argument("name", StringArgumentType.string()) -@@ -146,11 +146,11 @@ public class DataPackCommand { - .suggests(SELECTED_PACKS) - .executes(c -> disablePack(c.getSource(), getPack(c, "name", false))) - ) -- )*/ // Luminol - Add back read-only datapack command -+ ) - .then( - Commands.literal("list") - .executes(c -> listPacks(c.getSource())) -- //.then(Commands.literal("available").executes(c -> listAvailablePacks(c.getSource()))) // Luminol - Add back read-only datapack command -+ .then(Commands.literal("available").executes(c -> listAvailablePacks(c.getSource()))) // Luminol - Add back read-only datapack command - .then(Commands.literal("enabled").executes(c -> listEnabledPacks(c.getSource()))) - ) - .then( -@@ -238,7 +238,7 @@ public class DataPackCommand { - } - - private static int listPacks(final CommandSourceStack source) { -- return listEnabledPacks(source) ;// + listAvailablePacks(source); // Luminol - Add back read-only datapack command -+ return listEnabledPacks(source) + listAvailablePacks(source); // Lophine - Fix datapack command save function - } - - private static int listAvailablePacks(final CommandSourceStack source) { diff --git a/net/minecraft/server/commands/ReloadCommand.java b/net/minecraft/server/commands/ReloadCommand.java index 80fef4277b9e986c17a4cb895e130726bdb63229..4bed8d0432508cbe5c0d1fc7d68052ec2af7260f 100644 --- a/net/minecraft/server/commands/ReloadCommand.java diff --git a/lophine-server/minecraft-patches/features/0043-Add-back-read-only-datapack-command.patch b/lophine-server/minecraft-patches/features/0043-Add-back-read-only-datapack-command.patch deleted file mode 100644 index ea75d57..0000000 --- a/lophine-server/minecraft-patches/features/0043-Add-back-read-only-datapack-command.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: MrHua269 -Date: Sat, 18 Apr 2026 09:18:31 +0800 -Subject: [PATCH] Add back read-only datapack command - - -diff --git a/net/minecraft/commands/Commands.java b/net/minecraft/commands/Commands.java -index afbaf2116930d72ebb0c77745d02115abab14dc4..6823c41c08ca1a1baf9257fc861ae97bbcbe3a50 100644 ---- a/net/minecraft/commands/Commands.java -+++ b/net/minecraft/commands/Commands.java -@@ -205,7 +205,7 @@ public class Commands { - if(me.earthme.luminol.config.modules.experiment.CommandConfig.data) { // Luminol - Config for data command - DataCommands.register(this.dispatcher); // Folia - region threading - TODO // Luminol - Config for data command - } // Luminol - Config for data command -- //DataPackCommand.register(this.dispatcher, context); // Folia - region threading - TODO -+ DataPackCommand.register(this.dispatcher, context); // Folia - region threading - TODO // Luminol - Add back read-only datapack command - //DebugCommand.register(this.dispatcher); // Folia - region threading - TODO - DefaultGameModeCommands.register(this.dispatcher); - //DialogCommand.register(this.dispatcher, context); // Folia - region threading - TODO -diff --git a/net/minecraft/server/commands/DataPackCommand.java b/net/minecraft/server/commands/DataPackCommand.java -index 0da1e4ada8616af825ddd4678e61246c672f9c4f..80d9bc3d680c30dae15064e0e8c3d1379ccd52e6 100644 ---- a/net/minecraft/server/commands/DataPackCommand.java -+++ b/net/minecraft/server/commands/DataPackCommand.java -@@ -99,7 +99,7 @@ public class DataPackCommand { - dispatcher.register( - Commands.literal("datapack") - .requires(Commands.hasPermission(Commands.LEVEL_GAMEMASTERS)) -- .then( -+ /*.then( // Luminol - Add back read-only datapack command - Commands.literal("enable") - .then( - Commands.argument("name", StringArgumentType.string()) -@@ -146,11 +146,11 @@ public class DataPackCommand { - .suggests(SELECTED_PACKS) - .executes(c -> disablePack(c.getSource(), getPack(c, "name", false))) - ) -- ) -+ )*/ // Luminol - Add back read-only datapack command - .then( - Commands.literal("list") - .executes(c -> listPacks(c.getSource())) -- .then(Commands.literal("available").executes(c -> listAvailablePacks(c.getSource()))) -+ //.then(Commands.literal("available").executes(c -> listAvailablePacks(c.getSource()))) // Luminol - Add back read-only datapack command - .then(Commands.literal("enabled").executes(c -> listEnabledPacks(c.getSource()))) - ) - .then( -@@ -238,12 +238,12 @@ public class DataPackCommand { - } - - private static int listPacks(final CommandSourceStack source) { -- return listEnabledPacks(source) + listAvailablePacks(source); -+ return listEnabledPacks(source) ;// + listAvailablePacks(source); // Luminol - Add back read-only datapack command - } - - private static int listAvailablePacks(final CommandSourceStack source) { - PackRepository repository = source.getServer().getPackRepository(); -- repository.reload(); -+ //repository.reload(); // Luminol - Add back read-only datapack command - Collection selectedPacks = repository.getSelectedPacks(); - Collection availablePacks = repository.getAvailablePacks(); - FeatureFlagSet enabledFeatures = source.enabledFeatures(); diff --git a/lophine-server/minecraft-patches/features/0044-Add-tpsbar-with-chunkhot-membar-and-regionbar.patch b/lophine-server/minecraft-patches/features/0044-Add-tpsbar-with-chunkhot-membar-and-regionbar.patch index 71b0e28..8a595e9 100644 --- a/lophine-server/minecraft-patches/features/0044-Add-tpsbar-with-chunkhot-membar-and-regionbar.patch +++ b/lophine-server/minecraft-patches/features/0044-Add-tpsbar-with-chunkhot-membar-and-regionbar.patch @@ -17,7 +17,7 @@ index 52dcbcf64c3a510d4a4524b7d0ee226d9a73511d..051d601e7e809518e8d82ae4ae325905 } diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java -index d4e31bb829451a687bf567fd0357f46fd7d46902..350b788e17dc49118498541ad8ac54f6e0a59c9d 100644 +index 4f292468194baae343eeb077362e51dcfb6c0df1..f0a3fdaf7e9d342b472b3db42f5b59b0f6691b49 100644 --- a/net/minecraft/server/MinecraftServer.java +++ b/net/minecraft/server/MinecraftServer.java @@ -1743,7 +1743,46 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop localPlayers = new CopyOnWriteArrayList<>(); diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java -index 350b788e17dc49118498541ad8ac54f6e0a59c9d..dc83fea1f4b8a1d2a82a52b88ee5c3157653f6f8 100644 +index f0a3fdaf7e9d342b472b3db42f5b59b0f6691b49..ac49bcc53951c025de0160fd8afd319b1f3d1347 100644 --- a/net/minecraft/server/MinecraftServer.java +++ b/net/minecraft/server/MinecraftServer.java @@ -1973,6 +1973,9 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop playerx.connection.send(packet)); // Paper - per-world game rules } else if (rule == GameRules.LOCATOR_BAR) { // this.getAllLevels().forEach(level -> { // Paper - per-world game rules diff --git a/lophine-server/minecraft-patches/features/0059-Leaf-Configurable-vanilla-username-check.patch b/lophine-server/minecraft-patches/features/0059-Leaf-Configurable-vanilla-username-check.patch index d84bf4c..ba0ed8d 100644 --- a/lophine-server/minecraft-patches/features/0059-Leaf-Configurable-vanilla-username-check.patch +++ b/lophine-server/minecraft-patches/features/0059-Leaf-Configurable-vanilla-username-check.patch @@ -8,7 +8,7 @@ A part of Leaf(https://github.com/Winds-Studio/Leaf/blob/edb0504069139beaa6f39ef License: https://github.com/Winds-Studio/Leaf/blob/edb0504069139beaa6f39efa4702370c2576b3fc/LICENSE.md diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java -index 7840b0e00ab84eab016e971ac0c2693056fb0721..d2303ad91c9634cdbf599552a6bce7279a1f0e0a 100644 +index c91902632d0e97b814e387454b119edb62b67413..4b6f961e695155db1d6cc86496491017bf3a6383 100644 --- a/net/minecraft/server/MinecraftServer.java +++ b/net/minecraft/server/MinecraftServer.java @@ -217,7 +217,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop