From 6095d504bdf62609727b4f0cc39b9abdefed5aae Mon Sep 17 00:00:00 2001 From: NONPLAYT <76615486+NONPLAYT@users.noreply.github.com> Date: Sat, 12 Jul 2025 23:40:18 +0300 Subject: [PATCH 1/3] Updated Upstream (Purpur) Upstream has released updates that appear to apply and compile correctly Purpur Changes: PurpurMC/Purpur@7dbe4153 Add support for "/chase", a disabled Minecraft command. (#1690) PurpurMC/Purpur@11c030a8 Updated Upstream (Paper) --- .github/workflows/build-1217.yml | 2 +- .github/workflows/build-pr.yml | 2 +- .github/workflows/publish-api.yml | 2 +- divinemc-server/build.gradle.kts.patch | 2 +- ...03-Completely-remove-Mojang-profiler.patch | 24 +++++++++---------- .../features/0008-Misc-Optimizations.patch | 6 ++--- .../0021-Verify-Minecraft-EULA-earlier.patch | 6 ++--- .../features/0024-Virtual-Threads.patch | 6 ++--- ...26-Option-to-disable-disconnect.spam.patch | 4 ++-- .../features/0028-Configurable-MC-67.patch | 4 ++-- .../0045-Parallel-world-ticking.patch | 12 +++++----- .../world/entity/player/Player.java.patch | 2 +- gradle.properties | 2 +- 13 files changed, 37 insertions(+), 37 deletions(-) diff --git a/.github/workflows/build-1217.yml b/.github/workflows/build-1217.yml index de90c05..9b41d68 100644 --- a/.github/workflows/build-1217.yml +++ b/.github/workflows/build-1217.yml @@ -3,7 +3,7 @@ name: Build DivineMC 1.21.7 on: push: branches: - - "master" + - "ver/1.21.7" workflow_dispatch: jobs: diff --git a/.github/workflows/build-pr.yml b/.github/workflows/build-pr.yml index 1cf5cff..c074c43 100644 --- a/.github/workflows/build-pr.yml +++ b/.github/workflows/build-pr.yml @@ -2,7 +2,7 @@ name: Build Pull Request on: pull_request: - branches: [ "master" ] + branches: [ "ver/1.21.7" ] jobs: build: diff --git a/.github/workflows/publish-api.yml b/.github/workflows/publish-api.yml index 8078e3f..d5acf0e 100644 --- a/.github/workflows/publish-api.yml +++ b/.github/workflows/publish-api.yml @@ -2,7 +2,7 @@ name: Publish API on: push: - branches: [ "master" ] + branches: [ "ver/1.21.7" ] workflow_dispatch: jobs: diff --git a/divinemc-server/build.gradle.kts.patch b/divinemc-server/build.gradle.kts.patch index 1d48aea..117d116 100644 --- a/divinemc-server/build.gradle.kts.patch +++ b/divinemc-server/build.gradle.kts.patch @@ -7,7 +7,7 @@ +val bxTeamMavenPublicUrl = "https://repo.bxteam.org/snapshots/" dependencies { - mache("io.papermc:mache:1.21.7+build.1") + mache("io.papermc:mache:1.21.7+build.2") @@ -29,6 +_,7 @@ // Purpur start - Rebrand diff --git a/divinemc-server/minecraft-patches/features/0003-Completely-remove-Mojang-profiler.patch b/divinemc-server/minecraft-patches/features/0003-Completely-remove-Mojang-profiler.patch index d99e584..ac274bd 100644 --- a/divinemc-server/minecraft-patches/features/0003-Completely-remove-Mojang-profiler.patch +++ b/divinemc-server/minecraft-patches/features/0003-Completely-remove-Mojang-profiler.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Completely remove Mojang profiler diff --git a/net/minecraft/commands/Commands.java b/net/minecraft/commands/Commands.java -index c638d30ba12bde2ae9d55b1c579129d40bcc8b1e..25aeb8628a79b62b70dbbb1299d4b4e52986b96d 100644 +index e03e2b976870ecda1e5e3c53d47e7978fe5670ed..758ce439d2e10e6ef42a58d147a77093667e0acd 100644 --- a/net/minecraft/commands/Commands.java +++ b/net/minecraft/commands/Commands.java @@ -58,7 +58,6 @@ import net.minecraft.server.commands.CloneCommands; @@ -32,7 +32,7 @@ index c638d30ba12bde2ae9d55b1c579129d40bcc8b1e..25aeb8628a79b62b70dbbb1299d4b4e5 DefaultGameModeCommands.register(this.dispatcher); DialogCommand.register(this.dispatcher, context); DifficultyCommand.register(this.dispatcher); -@@ -357,7 +354,6 @@ public class Commands { +@@ -363,7 +360,6 @@ public class Commands { org.spigotmc.AsyncCatcher.catchOp("Cannot perform command async"); // Paper end CommandSourceStack commandSourceStack = parseResults.getContext().getSource(); @@ -40,7 +40,7 @@ index c638d30ba12bde2ae9d55b1c579129d40bcc8b1e..25aeb8628a79b62b70dbbb1299d4b4e5 ContextChain contextChain = finishParsing(parseResults, command, commandSourceStack); try { -@@ -395,8 +391,6 @@ public class Commands { +@@ -401,8 +397,6 @@ public class Commands { commandSourceStack.sendFailure(Component.literal(Util.describeError(var12))); LOGGER.error("'/{}' threw an exception", command, var12); } @@ -49,7 +49,7 @@ index c638d30ba12bde2ae9d55b1c579129d40bcc8b1e..25aeb8628a79b62b70dbbb1299d4b4e5 } } -@@ -453,7 +447,7 @@ public class Commands { +@@ -459,7 +453,7 @@ public class Commands { int max = Math.max(1, server.getGameRules().getInt(GameRules.RULE_MAX_COMMAND_CHAIN_LENGTH)); int _int = server.getGameRules().getInt(GameRules.RULE_MAX_COMMAND_FORK_COUNT); @@ -1479,7 +1479,7 @@ index 3c7159d0981c948e71a5612ba4083accb5849ed4..5f2c27800f047f128857044493a6d932 for (Entity entity : passengerEntity.getPassengers()) { this.tickPassenger(passengerEntity, entity, isActive); // Paper - EAR 2 diff --git a/net/minecraft/server/level/ServerPlayer.java b/net/minecraft/server/level/ServerPlayer.java -index 1a9b227b8b3bfda8da8d6dbf125b249cec50d230..a1b4720ef128ba5cbe1466a7a584d4fe501a71f8 100644 +index af12023d5f7f14cd924ef4aec247a58e61e85a8c..c1b5dd00f3c5ba5677625c623a02d1c98ea131d7 100644 --- a/net/minecraft/server/level/ServerPlayer.java +++ b/net/minecraft/server/level/ServerPlayer.java @@ -106,8 +106,6 @@ import net.minecraft.util.HashOps; @@ -4006,7 +4006,7 @@ index 39a604c9a53930b53d959b1d2eb504aa964e9a58..0d0380e3955836ce125f777841477503 @Override diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index ce3e5ec505ac37c820436bcf7c7d6452ff015f70..f8b37b4ce54afd61a72e9d18ac323540431c655d 100644 +index fa829d84cd47b68426bb30f662de6e05b608cc69..02f39e3dc420a5bd49cd6e247c9b1894dc49d303 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java @@ -80,8 +80,6 @@ import net.minecraft.tags.TagKey; @@ -4079,7 +4079,7 @@ index ce3e5ec505ac37c820436bcf7c7d6452ff015f70..f8b37b4ce54afd61a72e9d18ac323540 } } // Paper start - detailed watchdog information -@@ -3467,8 +3455,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3466,8 +3454,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.processPortalCooldown(); if (this.portalProcess != null) { if (this.portalProcess.processPortalTeleportation(serverLevel, this, this.canUsePortal(false))) { @@ -4088,7 +4088,7 @@ index ce3e5ec505ac37c820436bcf7c7d6452ff015f70..f8b37b4ce54afd61a72e9d18ac323540 this.setPortalCooldown(); TeleportTransition portalDestination = this.portalProcess.getPortalDestination(serverLevel, this); if (portalDestination != null) { -@@ -3478,8 +3464,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3477,8 +3463,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.teleport(portalDestination); } } @@ -4097,7 +4097,7 @@ index ce3e5ec505ac37c820436bcf7c7d6452ff015f70..f8b37b4ce54afd61a72e9d18ac323540 } else if (this.portalProcess.hasExpired()) { this.portalProcess = null; } -@@ -4046,15 +4030,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4045,15 +4029,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess entity.teleport(this.calculatePassengerTransition(teleportTransition, entity)); } @@ -4113,7 +4113,7 @@ index ce3e5ec505ac37c820436bcf7c7d6452ff015f70..f8b37b4ce54afd61a72e9d18ac323540 return this; } -@@ -4070,11 +4051,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4069,11 +4050,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } } @@ -4125,7 +4125,7 @@ index ce3e5ec505ac37c820436bcf7c7d6452ff015f70..f8b37b4ce54afd61a72e9d18ac323540 return null; } else { // Paper start - Fix item duplication and teleport issues -@@ -4094,7 +4072,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4093,7 +4071,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess newLevel.resetEmptyTime(); teleportTransition.postTeleportTransition().onTransition(entityx); this.teleportSpectators(teleportTransition, oldLevel); @@ -4134,7 +4134,7 @@ index ce3e5ec505ac37c820436bcf7c7d6452ff015f70..f8b37b4ce54afd61a72e9d18ac323540 } } diff --git a/net/minecraft/world/entity/LivingEntity.java b/net/minecraft/world/entity/LivingEntity.java -index 64d0b01001c9d87db9b67f89b208567511158518..d382a9760c0379f3d1c3bc65303d1de250858343 100644 +index 590ccc9d181d401abd1154ae1f16b1230e8195f1..8df6ceea1536b12d87755c8a69e1b652d280600c 100644 --- a/net/minecraft/world/entity/LivingEntity.java +++ b/net/minecraft/world/entity/LivingEntity.java @@ -69,8 +69,6 @@ import net.minecraft.tags.FluidTags; diff --git a/divinemc-server/minecraft-patches/features/0008-Misc-Optimizations.patch b/divinemc-server/minecraft-patches/features/0008-Misc-Optimizations.patch index 44ea716..c2d0635 100644 --- a/divinemc-server/minecraft-patches/features/0008-Misc-Optimizations.patch +++ b/divinemc-server/minecraft-patches/features/0008-Misc-Optimizations.patch @@ -482,7 +482,7 @@ index a18240418a19a95147341a634527d774f3d5bb92..66f74ad2a194a6676574da2932cf4677 public DebugSampleSubscriptionTracker(PlayerList playerList) { this.playerList = playerList; diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index f8b37b4ce54afd61a72e9d18ac323540431c655d..0f28bc38d8dcb1b68ee7ae05c0c95ca86865c8ba 100644 +index 02f39e3dc420a5bd49cd6e247c9b1894dc49d303..ddc8095dfb6acce493e66034e47ee9a1f3497e5d 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java @@ -155,7 +155,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @@ -537,7 +537,7 @@ index f8b37b4ce54afd61a72e9d18ac323540431c655d..0f28bc38d8dcb1b68ee7ae05c0c95ca8 } private void applyMovementEmissionAndPlaySound(Entity.MovementEmission movementEmission, Vec3 movement, BlockPos pos, BlockState state) { -@@ -4922,9 +4896,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4921,9 +4895,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public void setDeltaMovement(Vec3 deltaMovement) { @@ -547,7 +547,7 @@ index f8b37b4ce54afd61a72e9d18ac323540431c655d..0f28bc38d8dcb1b68ee7ae05c0c95ca8 } public void addDeltaMovement(Vec3 addend) { -@@ -5022,9 +4994,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -5021,9 +4993,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } // Paper end - Block invalid positions and bounding box if (this.position.x != x || this.position.y != y || this.position.z != z) { diff --git a/divinemc-server/minecraft-patches/features/0021-Verify-Minecraft-EULA-earlier.patch b/divinemc-server/minecraft-patches/features/0021-Verify-Minecraft-EULA-earlier.patch index 67a1e22..9d67270 100644 --- a/divinemc-server/minecraft-patches/features/0021-Verify-Minecraft-EULA-earlier.patch +++ b/divinemc-server/minecraft-patches/features/0021-Verify-Minecraft-EULA-earlier.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Verify Minecraft EULA earlier diff --git a/net/minecraft/server/Main.java b/net/minecraft/server/Main.java -index bc3209d3cbe971af74b7856caa6300b59b0bb6bc..9a19c36074b9d8eb291b15b080687e47bcd5d007 100644 +index b06c2c4aa77edafb374f7cf0406cf4d29c6e7f9f..a476b53e0c5b18d9b0abceb4ffeb5ab4c5d7d6d9 100644 --- a/net/minecraft/server/Main.java +++ b/net/minecraft/server/Main.java -@@ -124,7 +124,6 @@ public class Main { +@@ -125,7 +125,6 @@ public class Main { dedicatedServerSettings.forceSave(); RegionFileVersion.configure(dedicatedServerSettings.getProperties().regionFileComression); Path path2 = Paths.get("eula.txt"); @@ -16,7 +16,7 @@ index bc3209d3cbe971af74b7856caa6300b59b0bb6bc..9a19c36074b9d8eb291b15b080687e47 // Paper start - load config files early for access below if needed org.bukkit.configuration.file.YamlConfiguration bukkitConfiguration = io.papermc.paper.configuration.PaperConfigurations.loadLegacyConfigFile((File) optionSet.valueOf("bukkit-settings")); org.bukkit.configuration.file.YamlConfiguration spigotConfiguration = io.papermc.paper.configuration.PaperConfigurations.loadLegacyConfigFile((File) optionSet.valueOf("spigot-settings")); -@@ -147,19 +146,6 @@ public class Main { +@@ -148,19 +147,6 @@ public class Main { return; } diff --git a/divinemc-server/minecraft-patches/features/0024-Virtual-Threads.patch b/divinemc-server/minecraft-patches/features/0024-Virtual-Threads.patch index 9437284..373672d 100644 --- a/divinemc-server/minecraft-patches/features/0024-Virtual-Threads.patch +++ b/divinemc-server/minecraft-patches/features/0024-Virtual-Threads.patch @@ -23,10 +23,10 @@ index 138a58c5e5698b926b01e0170733dc3dbc5589ec..bfe52d5a93a35cafcb8965482b1c1d6c private final AtomicInteger count = new AtomicInteger(); diff --git a/net/minecraft/commands/Commands.java b/net/minecraft/commands/Commands.java -index 25aeb8628a79b62b70dbbb1299d4b4e52986b96d..62aeee570d10ab4ac5c21c88987ba6d2c75ae2b8 100644 +index 758ce439d2e10e6ef42a58d147a77093667e0acd..de622982f864d96a5b76efcd69f1836ef541317b 100644 --- a/net/minecraft/commands/Commands.java +++ b/net/minecraft/commands/Commands.java -@@ -475,7 +475,7 @@ public class Commands { +@@ -481,7 +481,7 @@ public class Commands { } // Fixed pool, but with discard policy @@ -54,7 +54,7 @@ index 23144971acc04bbeacd719dafe2363d1618153b9..7dbefd83d164a7d97a56b02862fef3b2 public ChatDecorator getChatDecorator() { diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 89eddabc1a01f78b6945f1b8b8d32cede7e3cd9d..83aa3dc2f8d54e9fc89d809495c9b51f81d4f8e4 100644 +index ff34cc2007e274dd3067ebb75ed39efa7dda041e..ad8a21401a54c3dc8c8a85a98b66a4822b817293 100644 --- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -842,8 +842,11 @@ public class ServerGamePacketListenerImpl diff --git a/divinemc-server/minecraft-patches/features/0026-Option-to-disable-disconnect.spam.patch b/divinemc-server/minecraft-patches/features/0026-Option-to-disable-disconnect.spam.patch index 43a3cb7..1601a4b 100644 --- a/divinemc-server/minecraft-patches/features/0026-Option-to-disable-disconnect.spam.patch +++ b/divinemc-server/minecraft-patches/features/0026-Option-to-disable-disconnect.spam.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Option to disable disconnect.spam diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 83aa3dc2f8d54e9fc89d809495c9b51f81d4f8e4..eef35b07324f33d7528cd8dc9ffc63c2815e5881 100644 +index ad8a21401a54c3dc8c8a85a98b66a4822b817293..0163f6d69ae902ed50efefef3e98835c02e2c3e2 100644 --- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -853,7 +853,7 @@ public class ServerGamePacketListenerImpl @@ -42,7 +42,7 @@ index 83aa3dc2f8d54e9fc89d809495c9b51f81d4f8e4..eef35b07324f33d7528cd8dc9ffc63c2 && !this.server.getPlayerList().isOp(this.player.getGameProfile()) && !this.server.isSingleplayerOwner(this.player.getGameProfile())) { this.disconnectAsync(Component.translatable("disconnect.spam"), org.bukkit.event.player.PlayerKickEvent.Cause.SPAM); // Paper - kick event cause & add proper async disconnect -@@ -3409,7 +3411,7 @@ public class ServerGamePacketListenerImpl +@@ -3351,7 +3353,7 @@ public class ServerGamePacketListenerImpl public void handlePlaceRecipe(ServerboundPlaceRecipePacket packet) { // Paper start - auto recipe limit if (!org.bukkit.Bukkit.isPrimaryThread()) { diff --git a/divinemc-server/minecraft-patches/features/0028-Configurable-MC-67.patch b/divinemc-server/minecraft-patches/features/0028-Configurable-MC-67.patch index 5390d13..bef76be 100644 --- a/divinemc-server/minecraft-patches/features/0028-Configurable-MC-67.patch +++ b/divinemc-server/minecraft-patches/features/0028-Configurable-MC-67.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Configurable MC-67 diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index b4fc7ad2f353e8fbaf2179df2750c9a1c8ac9aba..55e82d490ed3489ff671ae8a49745571c4bfb993 100644 +index ddc8095dfb6acce493e66034e47ee9a1f3497e5d..dfb6391533009a2030710046ade3ac569e3de8ec 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java -@@ -4171,6 +4171,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4170,6 +4170,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public boolean canTeleport(Level fromLevel, Level toLevel) { diff --git a/divinemc-server/minecraft-patches/features/0045-Parallel-world-ticking.patch b/divinemc-server/minecraft-patches/features/0045-Parallel-world-ticking.patch index 9634cc7..971ae63 100644 --- a/divinemc-server/minecraft-patches/features/0045-Parallel-world-ticking.patch +++ b/divinemc-server/minecraft-patches/features/0045-Parallel-world-ticking.patch @@ -461,7 +461,7 @@ index 324c573899965b204cec17458b6cb9733d83a868..2348a3ec6afb2618033b8f40257f7c9c // Paper start - extra debug info if (entity.valid) { diff --git a/net/minecraft/server/level/ServerPlayer.java b/net/minecraft/server/level/ServerPlayer.java -index a1b4720ef128ba5cbe1466a7a584d4fe501a71f8..cf4ab76f463836a8ed9aeedd09ae95e75b9e8dbc 100644 +index c1b5dd00f3c5ba5677625c623a02d1c98ea131d7..82ff80d4a5a3b3ba3747ca221c7f27f523845192 100644 --- a/net/minecraft/server/level/ServerPlayer.java +++ b/net/minecraft/server/level/ServerPlayer.java @@ -430,6 +430,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc @@ -634,10 +634,10 @@ index f9e7532f86122a379692561a639a209a126e8bba..839f6b7696ef85314da185bedba7cfc5 if (isLocatorBarEnabledFor(player)) { if (!connection.isBroken()) { diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index 1e201ff091bdf33c96e2cfa333030ae105ab7bc9..5a58fb937419369d887c4fc35d9383d1b5e35a99 100644 +index ece35e552888f2a2afb5f19f90d5700ee04e836a..9ccc7ae83cc51013c74e47e0a12b629f8b93c407 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java -@@ -3432,14 +3432,34 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3431,14 +3431,34 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess if (this.portalProcess != null) { if (this.portalProcess.processPortalTeleportation(serverLevel, this, this.canUsePortal(false))) { this.setPortalCooldown(); @@ -678,7 +678,7 @@ index 1e201ff091bdf33c96e2cfa333030ae105ab7bc9..5a58fb937419369d887c4fc35d9383d1 } else if (this.portalProcess.hasExpired()) { this.portalProcess = null; } -@@ -4016,6 +4036,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4015,6 +4035,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } private Entity teleportCrossDimension(ServerLevel oldLevel, ServerLevel newLevel, TeleportTransition teleportTransition) { @@ -910,7 +910,7 @@ index 2258736e6f9f52efe5bd353b8949a7a0b9a4fdb8..440fbe301782e81cec679a27a876dd3c } else { Entity entity = owner.teleport( diff --git a/net/minecraft/world/inventory/AbstractContainerMenu.java b/net/minecraft/world/inventory/AbstractContainerMenu.java -index 1f601781643945920c7522b9c6100d0a37ad535d..bd31350c5b9b727cfd9150a399d207839a51e4dd 100644 +index 2305a3ef6bbb21ab77cb261f20c08ac8ce1bf9ed..b313f6a4e27f6918d174dacba37479a93936668f 100644 --- a/net/minecraft/world/inventory/AbstractContainerMenu.java +++ b/net/minecraft/world/inventory/AbstractContainerMenu.java @@ -96,8 +96,14 @@ public abstract class AbstractContainerMenu { @@ -929,7 +929,7 @@ index 1f601781643945920c7522b9c6100d0a37ad535d..bd31350c5b9b727cfd9150a399d20783 this.containerId = containerId; } diff --git a/net/minecraft/world/item/ItemStack.java b/net/minecraft/world/item/ItemStack.java -index b95acf4c688a9113a34e9be2639536245c66c83e..160fd27bdd02e9c276cdae241b0652ae547517cf 100644 +index d3892cc9ef3ab66a45fe3ab72e8a5ef8b904b7c0..6b5b6d73897ded23dd2fbf17abb1b5c1ee5b1082 100644 --- a/net/minecraft/world/item/ItemStack.java +++ b/net/minecraft/world/item/ItemStack.java @@ -398,8 +398,10 @@ public final class ItemStack implements DataComponentHolder { diff --git a/divinemc-server/minecraft-patches/sources/net/minecraft/world/entity/player/Player.java.patch b/divinemc-server/minecraft-patches/sources/net/minecraft/world/entity/player/Player.java.patch index 760724e..6fa3074 100644 --- a/divinemc-server/minecraft-patches/sources/net/minecraft/world/entity/player/Player.java.patch +++ b/divinemc-server/minecraft-patches/sources/net/minecraft/world/entity/player/Player.java.patch @@ -1,6 +1,6 @@ --- a/net/minecraft/world/entity/player/Player.java +++ b/net/minecraft/world/entity/player/Player.java -@@ -1818,6 +_,11 @@ +@@ -1817,6 +_,11 @@ } public void causeFoodExhaustion(float exhaustion, org.bukkit.event.entity.EntityExhaustionEvent.ExhaustionReason reason) { diff --git a/gradle.properties b/gradle.properties index 2210a95..64a92dd 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ group = org.bxteam.divinemc version=1.21.7-R0.1-SNAPSHOT mcVersion=1.21.7 -purpurRef=4d5a8e6ebd004ca76663071c77200b80f35406fd +purpurRef=11c030a8f81b2f845a9f2749790692c2d152f284 experimental=false org.gradle.configuration-cache=true From 7179f12e9928e5523214a8148cf143195c3c6e1a Mon Sep 17 00:00:00 2001 From: Github Action Date: Sun, 13 Jul 2025 02:00:18 +0000 Subject: [PATCH 2/3] Updated Upstream (Purpur) Upstream has released updates that appear to apply and compile correctly Purpur Changes: PurpurMC/Purpur@c4e5604c Updated Upstream (Paper) --- .../features/0003-Completely-remove-Mojang-profiler.patch | 6 +++--- .../features/0045-Parallel-world-ticking.patch | 8 ++++---- .../net/minecraft/server/level/ServerPlayer.java.patch | 2 +- gradle.properties | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/divinemc-server/minecraft-patches/features/0003-Completely-remove-Mojang-profiler.patch b/divinemc-server/minecraft-patches/features/0003-Completely-remove-Mojang-profiler.patch index ac274bd..635462f 100644 --- a/divinemc-server/minecraft-patches/features/0003-Completely-remove-Mojang-profiler.patch +++ b/divinemc-server/minecraft-patches/features/0003-Completely-remove-Mojang-profiler.patch @@ -1479,7 +1479,7 @@ index 3c7159d0981c948e71a5612ba4083accb5849ed4..5f2c27800f047f128857044493a6d932 for (Entity entity : passengerEntity.getPassengers()) { this.tickPassenger(passengerEntity, entity, isActive); // Paper - EAR 2 diff --git a/net/minecraft/server/level/ServerPlayer.java b/net/minecraft/server/level/ServerPlayer.java -index af12023d5f7f14cd924ef4aec247a58e61e85a8c..c1b5dd00f3c5ba5677625c623a02d1c98ea131d7 100644 +index c75e9e5b7392351ed7311e8d9aa3c49cdb812663..b4bbacdd5061f45c619211bbed40a5f9dc1b0ae0 100644 --- a/net/minecraft/server/level/ServerPlayer.java +++ b/net/minecraft/server/level/ServerPlayer.java @@ -106,8 +106,6 @@ import net.minecraft.util.HashOps; @@ -1491,7 +1491,7 @@ index af12023d5f7f14cd924ef4aec247a58e61e85a8c..c1b5dd00f3c5ba5677625c623a02d1c9 import net.minecraft.world.Container; import net.minecraft.world.Difficulty; import net.minecraft.world.InteractionHand; -@@ -1437,14 +1435,10 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc +@@ -1446,14 +1444,10 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc this.unsetRemoved(); */ // CraftBukkit end @@ -1506,7 +1506,7 @@ index af12023d5f7f14cd924ef4aec247a58e61e85a8c..c1b5dd00f3c5ba5677625c623a02d1c9 // CraftBukkit start this.isChangingDimension = true; // CraftBukkit - Set teleport invulnerability only if player changing worlds LevelData worlddata = level.getLevelData(); -@@ -1462,7 +1456,6 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc +@@ -1471,7 +1465,6 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc this.connection.internalTeleport(PositionMoveRotation.of(teleportTransition), teleportTransition.relatives()); // CraftBukkit - use internal teleport without event this.connection.resetPosition(); level.addDuringTeleport(this); diff --git a/divinemc-server/minecraft-patches/features/0045-Parallel-world-ticking.patch b/divinemc-server/minecraft-patches/features/0045-Parallel-world-ticking.patch index 971ae63..b92747d 100644 --- a/divinemc-server/minecraft-patches/features/0045-Parallel-world-ticking.patch +++ b/divinemc-server/minecraft-patches/features/0045-Parallel-world-ticking.patch @@ -461,7 +461,7 @@ index 324c573899965b204cec17458b6cb9733d83a868..2348a3ec6afb2618033b8f40257f7c9c // Paper start - extra debug info if (entity.valid) { diff --git a/net/minecraft/server/level/ServerPlayer.java b/net/minecraft/server/level/ServerPlayer.java -index c1b5dd00f3c5ba5677625c623a02d1c98ea131d7..82ff80d4a5a3b3ba3747ca221c7f27f523845192 100644 +index b4bbacdd5061f45c619211bbed40a5f9dc1b0ae0..ca7eeb696c777d6299be49c1e3b2f033b83da5ba 100644 --- a/net/minecraft/server/level/ServerPlayer.java +++ b/net/minecraft/server/level/ServerPlayer.java @@ -430,6 +430,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc @@ -480,7 +480,7 @@ index c1b5dd00f3c5ba5677625c623a02d1c98ea131d7..82ff80d4a5a3b3ba3747ca221c7f27f5 // CraftBukkit start if (this.joining) { this.joining = false; -@@ -1424,6 +1426,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc +@@ -1433,6 +1435,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc return this; } else { // CraftBukkit start @@ -488,7 +488,7 @@ index c1b5dd00f3c5ba5677625c623a02d1c98ea131d7..82ff80d4a5a3b3ba3747ca221c7f27f5 /* this.isChangingDimension = true; LevelData levelData = level.getLevelData(); -@@ -1769,6 +1772,12 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc +@@ -1778,6 +1781,12 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc return OptionalInt.empty(); } else { // CraftBukkit start @@ -501,7 +501,7 @@ index c1b5dd00f3c5ba5677625c623a02d1c98ea131d7..82ff80d4a5a3b3ba3747ca221c7f27f5 this.containerMenu = abstractContainerMenu; // Moved up if (!this.isImmobile()) this.connection -@@ -1833,6 +1842,11 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc +@@ -1842,6 +1851,11 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc } @Override public void closeContainer(org.bukkit.event.inventory.InventoryCloseEvent.Reason reason) { diff --git a/divinemc-server/minecraft-patches/sources/net/minecraft/server/level/ServerPlayer.java.patch b/divinemc-server/minecraft-patches/sources/net/minecraft/server/level/ServerPlayer.java.patch index ead6666..8c8ed02 100644 --- a/divinemc-server/minecraft-patches/sources/net/minecraft/server/level/ServerPlayer.java.patch +++ b/divinemc-server/minecraft-patches/sources/net/minecraft/server/level/ServerPlayer.java.patch @@ -1,6 +1,6 @@ --- a/net/minecraft/server/level/ServerPlayer.java +++ b/net/minecraft/server/level/ServerPlayer.java -@@ -2224,6 +_,7 @@ +@@ -2233,6 +_,7 @@ this.connection.send(new ClientboundGameEventPacket(ClientboundGameEventPacket.CHANGE_GAME_MODE, gameMode.getId())); if (gameMode == GameType.SPECTATOR) { this.removeEntitiesOnShoulder(); diff --git a/gradle.properties b/gradle.properties index 64a92dd..5a829c5 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ group = org.bxteam.divinemc version=1.21.7-R0.1-SNAPSHOT mcVersion=1.21.7 -purpurRef=11c030a8f81b2f845a9f2749790692c2d152f284 +purpurRef=c4e5604ca8e4a36d24f4eaa90de7fee768fb60b7 experimental=false org.gradle.configuration-cache=true From 2902d0aef96fc1029ffd10a8db56c2a8f931fdc3 Mon Sep 17 00:00:00 2001 From: Artem Ostrasev <76615486+NONPLAYT@users.noreply.github.com> Date: Sun, 13 Jul 2025 05:03:38 +0300 Subject: [PATCH 3/3] Update branch in releaseInfo.sh --- scripts/releaseInfo.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/releaseInfo.sh b/scripts/releaseInfo.sh index b253933..4eb1126 100644 --- a/scripts/releaseInfo.sh +++ b/scripts/releaseInfo.sh @@ -48,7 +48,7 @@ mv divinemc-server/build/libs/divinemc-paperclip-"$version"-mojmap.jar "$jarName fi } >> $changelog -number=$(git log --oneline master ^"$(git describe --tags --abbrev=0)" | wc -l) +number=$(git log --oneline ver/1.21.7 ^"$(git describe --tags --abbrev=0)" | wc -l) git log --pretty='- [`%h`](https://github.com/BX-Team/DivineMC/commit/%H) %s' "-$number" >> $changelog {