mirror of
https://github.com/BX-Team/DivineMC.git
synced 2025-12-19 14:59:25 +00:00
Updated Upstream (Purpur)
Upstream has released updates that appear to apply and compile correctly Purpur Changes: PurpurMC/Purpur@47e758fb Updated Upstream (Paper)
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
+++ b/purpur-api/build.gradle.kts
|
||||
@@ -13,8 +_,8 @@
|
||||
// Keep in sync with paper-server adventure-text-serializer-ansi dep
|
||||
val adventureVersion = "4.21.0"
|
||||
val adventureVersion = "4.23.0"
|
||||
val bungeeCordChatVersion = "1.21-R0.2-deprecated+build.21"
|
||||
-val slf4jVersion = "2.0.16"
|
||||
-val log4jVersion = "2.24.1"
|
||||
|
||||
@@ -97,7 +97,7 @@
|
||||
+ implementation("org.jline:jline-terminal-ffm:3.29.0") // use ffm on java 22+ // DivineMC - Bump dependencies
|
||||
+ implementation("org.jline:jline-terminal-jni:3.29.0") // fall back to jni on java 21 // DivineMC - Bump dependencies
|
||||
implementation("net.minecrell:terminalconsoleappender:1.3.0")
|
||||
implementation("net.kyori:adventure-text-serializer-ansi:4.21.0") // Keep in sync with adventureVersion from Paper-API build file
|
||||
implementation("net.kyori:adventure-text-serializer-ansi:4.23.0") // Keep in sync with adventureVersion from Paper-API build file
|
||||
runtimeConfiguration(sourceSets.main.map { it.runtimeClasspath })
|
||||
@@ -170,16 +_,16 @@
|
||||
all its classes to check if they are plugins.
|
||||
|
||||
@@ -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 aa978032ab4c56d3b90bbe2ad2fff13c72f3ee4d..7226d6066050523c021c89a79af1edbcc184af9c 100644
|
||||
index c638d30ba12bde2ae9d55b1c579129d40bcc8b1e..25aeb8628a79b62b70dbbb1299d4b4e52986b96d 100644
|
||||
--- a/net/minecraft/commands/Commands.java
|
||||
+++ b/net/minecraft/commands/Commands.java
|
||||
@@ -58,7 +58,6 @@ import net.minecraft.server.commands.CloneCommands;
|
||||
@@ -40,7 +40,7 @@ index aa978032ab4c56d3b90bbe2ad2fff13c72f3ee4d..7226d6066050523c021c89a79af1edbc
|
||||
ContextChain<CommandSourceStack> contextChain = finishParsing(parseResults, command, commandSourceStack);
|
||||
|
||||
try {
|
||||
@@ -393,8 +389,6 @@ public class Commands {
|
||||
@@ -395,8 +391,6 @@ public class Commands {
|
||||
commandSourceStack.sendFailure(Component.literal(Util.describeError(var12)));
|
||||
LOGGER.error("'/{}' threw an exception", command, var12);
|
||||
}
|
||||
@@ -49,7 +49,7 @@ index aa978032ab4c56d3b90bbe2ad2fff13c72f3ee4d..7226d6066050523c021c89a79af1edbc
|
||||
}
|
||||
}
|
||||
|
||||
@@ -451,7 +445,7 @@ public class Commands {
|
||||
@@ -453,7 +447,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);
|
||||
|
||||
@@ -213,7 +213,7 @@ index 18071dcc69cc28471dddb7de94e803ec1e5fc2e4..aa25f5ebaf7d1b22825b962b02dcae02
|
||||
}
|
||||
}
|
||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||
index 8f32168ff0371a9168bbf9b08b2154200f8131a0..0912b009598876d6c16f7adcd80762074ea66f5a 100644
|
||||
index 768e82c5cfd05fae2dd84fc6a37f5984c6ec4865..abfecaf4467092f7baa02e0f5bbfd23d087f2aa3 100644
|
||||
--- a/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/net/minecraft/server/MinecraftServer.java
|
||||
@@ -114,19 +114,8 @@ import net.minecraft.util.TimeUtil;
|
||||
@@ -393,17 +393,17 @@ index 8f32168ff0371a9168bbf9b08b2154200f8131a0..0912b009598876d6c16f7adcd8076207
|
||||
LOGGER.debug("Autosave finished");
|
||||
}
|
||||
|
||||
@@ -1699,7 +1656,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
}
|
||||
@@ -1701,7 +1658,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
public final io.papermc.paper.threadedregions.EntityScheduler.EntitySchedulerTickList entitySchedulerTickList = new io.papermc.paper.threadedregions.EntityScheduler.EntitySchedulerTickList(); // Paper - optimise Folia entity scheduler
|
||||
|
||||
protected void tickChildren(BooleanSupplier hasTimeLeft) {
|
||||
- ProfilerFiller profilerFiller = Profiler.get();
|
||||
this.getPlayerList().getPlayers().forEach(serverPlayer1 -> serverPlayer1.connection.suspendFlushing());
|
||||
this.server.getScheduler().mainThreadHeartbeat(); // CraftBukkit
|
||||
// Paper start - Folia scheduler API
|
||||
@@ -1717,9 +1673,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
});
|
||||
// Paper end - Folia scheduler API
|
||||
// Paper start - optimise Folia entity scheduler
|
||||
@@ -1715,9 +1671,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
}
|
||||
// Paper end - optimise Folia entity scheduler
|
||||
io.papermc.paper.adventure.providers.ClickCallbackProviderImpl.CALLBACK_MANAGER.handleQueue(this.tickCount); // Paper
|
||||
- profilerFiller.push("commandFunctions");
|
||||
this.getFunctions().tick();
|
||||
@@ -411,7 +411,7 @@ index 8f32168ff0371a9168bbf9b08b2154200f8131a0..0912b009598876d6c16f7adcd8076207
|
||||
|
||||
// CraftBukkit start
|
||||
// Run tasks that are waiting on processing
|
||||
@@ -1755,17 +1709,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -1753,17 +1707,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
serverLevel.updateLagCompensationTick(); // Paper - lag compensation
|
||||
net.minecraft.world.level.block.entity.HopperBlockEntity.skipHopperEvents = serverLevel.paperConfig().hopper.disableMoveEvent || org.bukkit.event.inventory.InventoryMoveItemEvent.getHandlerList().getRegisteredListeners().length == 0; // Paper - Perf: Optimize Hoppers
|
||||
serverLevel.hasRidableMoveEvent = org.purpurmc.purpur.event.entity.RidableMoveEvent.getHandlerList().getRegisteredListeners().length > 0; // Purpur - Ridables
|
||||
@@ -429,7 +429,7 @@ index 8f32168ff0371a9168bbf9b08b2154200f8131a0..0912b009598876d6c16f7adcd8076207
|
||||
try {
|
||||
serverLevel.tick(hasTimeLeft);
|
||||
} catch (Throwable var7) {
|
||||
@@ -1774,34 +1723,24 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -1772,34 +1721,24 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
throw new ReportedException(crashReport);
|
||||
}
|
||||
|
||||
@@ -464,7 +464,7 @@ index 8f32168ff0371a9168bbf9b08b2154200f8131a0..0912b009598876d6c16f7adcd8076207
|
||||
}
|
||||
|
||||
public void tickConnection() {
|
||||
@@ -1817,14 +1756,9 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -1815,14 +1754,9 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
}
|
||||
|
||||
public void forceTimeSynchronization() {
|
||||
@@ -479,7 +479,7 @@ index 8f32168ff0371a9168bbf9b08b2154200f8131a0..0912b009598876d6c16f7adcd8076207
|
||||
}
|
||||
|
||||
public boolean isLevelEnabled(Level level) {
|
||||
@@ -2640,55 +2574,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -2638,55 +2572,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
}
|
||||
// CraftBukkit end
|
||||
|
||||
@@ -535,7 +535,7 @@ index 8f32168ff0371a9168bbf9b08b2154200f8131a0..0912b009598876d6c16f7adcd8076207
|
||||
public Path getWorldPath(LevelResource levelResource) {
|
||||
return this.storageSource.getLevelPath(levelResource);
|
||||
}
|
||||
@@ -2738,24 +2623,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -2736,24 +2621,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
return this.isSaving;
|
||||
}
|
||||
|
||||
@@ -560,7 +560,7 @@ index 8f32168ff0371a9168bbf9b08b2154200f8131a0..0912b009598876d6c16f7adcd8076207
|
||||
public int getMaxChainedNeighborUpdates() {
|
||||
return 1000000;
|
||||
}
|
||||
@@ -2865,55 +2732,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -2863,55 +2730,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
public record ServerResourcePackInfo(UUID id, String url, String hash, boolean isRequired, @Nullable Component prompt) {
|
||||
}
|
||||
|
||||
@@ -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 10f69c26fdaa9806c788364ecfc7897a6105e45b..bedc28c355b2c1e5a2ca4a1559c29101525c51e2 100644
|
||||
index 9415194e5d6aa190c9f42c3bf7599aaa5971c1eb..c7d081aff58170251d075a58d5e1345fc1bda9f8 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 10f69c26fdaa9806c788364ecfc7897a6105e45b..bedc28c355b2c1e5a2ca4a1559c29101
|
||||
import net.minecraft.world.Container;
|
||||
import net.minecraft.world.Difficulty;
|
||||
import net.minecraft.world.InteractionHand;
|
||||
@@ -1440,14 +1438,10 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
@@ -1504,14 +1502,10 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
this.unsetRemoved();
|
||||
*/
|
||||
// CraftBukkit end
|
||||
@@ -1506,7 +1506,7 @@ index 10f69c26fdaa9806c788364ecfc7897a6105e45b..bedc28c355b2c1e5a2ca4a1559c29101
|
||||
// CraftBukkit start
|
||||
this.isChangingDimension = true; // CraftBukkit - Set teleport invulnerability only if player changing worlds
|
||||
LevelData worlddata = level.getLevelData();
|
||||
@@ -1465,7 +1459,6 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
@@ -1529,7 +1523,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);
|
||||
@@ -1515,7 +1515,7 @@ index 10f69c26fdaa9806c788364ecfc7897a6105e45b..bedc28c355b2c1e5a2ca4a1559c29101
|
||||
this.stopUsingItem();
|
||||
this.connection.send(new ClientboundPlayerAbilitiesPacket(this.getAbilities()));
|
||||
diff --git a/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
index 5c0ea10b3559cef4c4994681f9fc9aba8b7533ed..9b027ee44fc0bc2fff9468e5332bba56abdbbef3 100644
|
||||
index f6a04a4b0a06c2fbb3b6aac4ec3e162f6c39b2a2..329b31898ea6abbd7cfefed0f582d9bfaa98e866 100644
|
||||
--- a/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
+++ b/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
@@ -26,7 +26,6 @@ import net.minecraft.network.protocol.cookie.ServerboundCookieResponsePacket;
|
||||
@@ -1526,16 +1526,16 @@ index 5c0ea10b3559cef4c4994681f9fc9aba8b7533ed..9b027ee44fc0bc2fff9468e5332bba56
|
||||
import org.slf4j.Logger;
|
||||
|
||||
public abstract class ServerCommonPacketListenerImpl implements ServerCommonPacketListener, org.bukkit.craftbukkit.entity.CraftPlayer.TransferCookieConnection { // CraftBukkit
|
||||
@@ -263,7 +262,6 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
@@ -293,7 +292,6 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
}
|
||||
|
||||
protected void keepConnectionAlive() {
|
||||
- Profiler.get().push("keepAlive");
|
||||
long millis = Util.getMillis();
|
||||
// Paper start - give clients a longer time to respond to pings as per pre 1.12.2 timings
|
||||
// This should effectively place the keepalive handling back to "as it was" before 1.12.2
|
||||
@@ -297,8 +295,6 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
this.send(new ClientboundKeepAlivePacket(this.keepAliveChallenge));
|
||||
// Paper start - improve keepalives
|
||||
// Purpur start - Alternative Keepalive Handling
|
||||
@@ -331,8 +329,6 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
// Paper end - improve keepalives
|
||||
}
|
||||
}
|
||||
-
|
||||
@@ -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 541781045c6b47bcd8826635c5fd78e90cf87275..5a7b0038b2ddfe84cdf4582152cff8a1a3449f09 100644
|
||||
index ce3e5ec505ac37c820436bcf7c7d6452ff015f70..f8b37b4ce54afd61a72e9d18ac323540431c655d 100644
|
||||
--- a/net/minecraft/world/entity/Entity.java
|
||||
+++ b/net/minecraft/world/entity/Entity.java
|
||||
@@ -80,8 +80,6 @@ import net.minecraft.tags.TagKey;
|
||||
|
||||
@@ -465,7 +465,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 d608ffc59dd6d9883db3f12b80cc11c7d8ded745..b4fc7ad2f353e8fbaf2179df2750c9a1c8ac9aba 100644
|
||||
index f8b37b4ce54afd61a72e9d18ac323540431c655d..0f28bc38d8dcb1b68ee7ae05c0c95ca86865c8ba 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
|
||||
@@ -530,9 +530,9 @@ index d608ffc59dd6d9883db3f12b80cc11c7d8ded745..b4fc7ad2f353e8fbaf2179df2750c9a1
|
||||
}
|
||||
|
||||
public void addDeltaMovement(Vec3 addend) {
|
||||
@@ -5032,9 +5004,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
@@ -5022,9 +4994,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
|
||||
}
|
||||
// Paper end - Fix MC-4
|
||||
// Paper end - Block invalid positions and bounding box
|
||||
if (this.position.x != x || this.position.y != y || this.position.z != z) {
|
||||
- synchronized (this.posLock) { // Paper - detailed watchdog information
|
||||
this.position = new Vec3(x, y, z);
|
||||
|
||||
@@ -906,10 +906,10 @@ index 51f4dd4f583dfbd16cb00f1cb4418d1044cecb1c..2f83deafbb5b50e5ce191b5351ec5ed9
|
||||
}
|
||||
|
||||
diff --git a/io/papermc/paper/FeatureHooks.java b/io/papermc/paper/FeatureHooks.java
|
||||
index b2b67a3b1b4620dc97a32df953d4ad47bbe5e481..aa68cb8d489f976a5a2ea9b32de690a89589fc81 100644
|
||||
index df6fbb35e5023b42de0b97434712e04a6b3e66a3..8c6b853c77e5b3af90913e4a878f344b11f8a5aa 100644
|
||||
--- a/io/papermc/paper/FeatureHooks.java
|
||||
+++ b/io/papermc/paper/FeatureHooks.java
|
||||
@@ -37,10 +37,6 @@ public final class FeatureHooks {
|
||||
@@ -42,10 +42,6 @@ public final class FeatureHooks {
|
||||
ca.spottedleaf.moonrise.patches.chunk_system.player.RegionizedPlayerChunkLoader.setUnloadDelay(ticks); // Paper - rewrite chunk system
|
||||
}
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Lag compensation
|
||||
|
||||
|
||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||
index 0912b009598876d6c16f7adcd80762074ea66f5a..70b33e54d8384709b166ca57cd114632e357f24f 100644
|
||||
index abfecaf4467092f7baa02e0f5bbfd23d087f2aa3..77a693f42d90b5d17bf56d86b1676247c1ad505d 100644
|
||||
--- a/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/net/minecraft/server/MinecraftServer.java
|
||||
@@ -288,6 +288,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -122,10 +122,10 @@ index 88b07fbb96b20124777889830afa480673629d43..91f6d43b3785ddad7db8eb529ba3293c
|
||||
public TeleportTransition getPortalDestination(ServerLevel level, Entity entity) {
|
||||
return this.portal.getPortalDestination(level, entity, this.entryPosition);
|
||||
diff --git a/net/minecraft/world/entity/item/ItemEntity.java b/net/minecraft/world/entity/item/ItemEntity.java
|
||||
index 545c672a51fd2121dc2bf827c3b160ef9d2f790b..647241577f37655e2fc8814ef658d4031359ed89 100644
|
||||
index d650d4f34fde0682ab76360408f7ff6a7d4b4c3a..f738db4aa54a5961e1484737b99de133f7e92b68 100644
|
||||
--- a/net/minecraft/world/entity/item/ItemEntity.java
|
||||
+++ b/net/minecraft/world/entity/item/ItemEntity.java
|
||||
@@ -150,8 +150,25 @@ public class ItemEntity extends Entity implements TraceableEntity {
|
||||
@@ -158,8 +158,25 @@ public class ItemEntity extends Entity implements TraceableEntity {
|
||||
}
|
||||
// Paper end - EAR 2
|
||||
|
||||
|
||||
@@ -206,10 +206,10 @@ index a491be4250de3199c3e1aa9e5482b568692bd2f5..c88826db76c28c536e6c36c5592d69c1
|
||||
private static final String PREFIX = "data:image/png;base64,";
|
||||
public static final Codec<ServerStatus.Favicon> CODEC = Codec.STRING.comapFlatMap(string -> {
|
||||
diff --git a/net/minecraft/server/dedicated/DedicatedServer.java b/net/minecraft/server/dedicated/DedicatedServer.java
|
||||
index 5f1712d3a42ca9e061b7cf96eeba006111e64bd9..13d85eb366a070bfd6723088412f51af07892362 100644
|
||||
index 7ac82a49e3c64d1a41a2870c5cf9900812329a57..978934f81ba023d7565d2e66c51f6ca249510702 100644
|
||||
--- a/net/minecraft/server/dedicated/DedicatedServer.java
|
||||
+++ b/net/minecraft/server/dedicated/DedicatedServer.java
|
||||
@@ -636,6 +636,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
|
||||
@@ -629,6 +629,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
|
||||
|
||||
@Override
|
||||
public boolean enforceSecureProfile() {
|
||||
@@ -218,10 +218,10 @@ index 5f1712d3a42ca9e061b7cf96eeba006111e64bd9..13d85eb366a070bfd6723088412f51af
|
||||
// Paper start - Add setting for proxy online mode status
|
||||
return properties.enforceSecureProfile
|
||||
diff --git a/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
index 9b027ee44fc0bc2fff9468e5332bba56abdbbef3..6126b252ca6a7ddaff7d033868a0658fa33ee8fa 100644
|
||||
index 329b31898ea6abbd7cfefed0f582d9bfaa98e866..10da51def5e51bd3eb5122df9a436284aa274f9a 100644
|
||||
--- a/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
+++ b/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
|
||||
@@ -319,10 +319,64 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
@@ -353,10 +353,64 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
|
||||
}
|
||||
|
||||
public void send(Packet<?> packet) {
|
||||
@@ -287,10 +287,10 @@ index 9b027ee44fc0bc2fff9468e5332bba56abdbbef3..6126b252ca6a7ddaff7d033868a0658f
|
||||
if (packet == null || this.processedDisconnect) { // Spigot
|
||||
return;
|
||||
diff --git a/net/minecraft/server/players/PlayerList.java b/net/minecraft/server/players/PlayerList.java
|
||||
index bd6cff4916fdf379ee887259d18ee274ff2f8bc6..0fc818dc4eb54cdc2be3636bf9fec5923f6be934 100644
|
||||
index 8bf5f7a98e4e8542d56c49a7e2c4926ec86f712d..015e0d1400f1dfbe086c817f121d01f0726e82f2 100644
|
||||
--- a/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/net/minecraft/server/players/PlayerList.java
|
||||
@@ -277,7 +277,7 @@ public abstract class PlayerList {
|
||||
@@ -276,7 +276,7 @@ public abstract class PlayerList {
|
||||
!_boolean,
|
||||
_boolean2,
|
||||
player.createCommonSpawnInfo(serverLevel),
|
||||
@@ -299,7 +299,7 @@ index bd6cff4916fdf379ee887259d18ee274ff2f8bc6..0fc818dc4eb54cdc2be3636bf9fec592
|
||||
)
|
||||
);
|
||||
player.getBukkitEntity().sendSupportedChannels(); // CraftBukkit
|
||||
@@ -1351,6 +1351,7 @@ public abstract class PlayerList {
|
||||
@@ -1334,6 +1334,7 @@ public abstract class PlayerList {
|
||||
}
|
||||
|
||||
public boolean verifyChatTrusted(PlayerChatMessage message) {
|
||||
@@ -23,10 +23,10 @@ index 0a69469c79aaa2466cda04f6acefed18e421d555..66f7f2aa071c2811400b4fed12ccf51c
|
||||
private final AtomicInteger count = new AtomicInteger();
|
||||
|
||||
diff --git a/net/minecraft/commands/Commands.java b/net/minecraft/commands/Commands.java
|
||||
index 7226d6066050523c021c89a79af1edbcc184af9c..7fa9214b865ee22f539467efb4130cc330ee9d7b 100644
|
||||
index 25aeb8628a79b62b70dbbb1299d4b4e52986b96d..62aeee570d10ab4ac5c21c88987ba6d2c75ae2b8 100644
|
||||
--- a/net/minecraft/commands/Commands.java
|
||||
+++ b/net/minecraft/commands/Commands.java
|
||||
@@ -473,7 +473,7 @@ public class Commands {
|
||||
@@ -475,7 +475,7 @@ public class Commands {
|
||||
}
|
||||
|
||||
// Fixed pool, but with discard policy
|
||||
@@ -36,10 +36,10 @@ index 7226d6066050523c021c89a79af1edbcc184af9c..7fa9214b865ee22f539467efb4130cc3
|
||||
new java.util.concurrent.LinkedBlockingQueue<>(),
|
||||
new com.google.common.util.concurrent.ThreadFactoryBuilder()
|
||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||
index 89f9c2c3661f1ef951d865bd8c81564ea558c1e2..45af325d0f457068f79e1b53414db1bf4c8d094b 100644
|
||||
index 77a693f42d90b5d17bf56d86b1676247c1ad505d..5c05a41e6f64f37fc365cde6333ed5a684f167f2 100644
|
||||
--- a/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/net/minecraft/server/MinecraftServer.java
|
||||
@@ -2642,8 +2642,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -2638,8 +2638,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
}
|
||||
}
|
||||
|
||||
@@ -54,7 +54,7 @@ index 89f9c2c3661f1ef951d865bd8c81564ea558c1e2..45af325d0f457068f79e1b53414db1bf
|
||||
|
||||
public ChatDecorator getChatDecorator() {
|
||||
diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index 9e7bcc4322d303ee0d8c72a0ec0917180e992a20..121daa3509879dfec7cce629e1d5260fcbccb087 100644
|
||||
index 749e7dbafa44c6dcbfcebcdcba4911b872cc12c2..506c8d2d80eee5f5351c9330a7efb3f9e4cc4cf6 100644
|
||||
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -828,8 +828,11 @@ public class ServerGamePacketListenerImpl
|
||||
|
||||
@@ -54,10 +54,10 @@ index 51c126735ace8fdde89ad97b5cab62f244212db0..8713d00d767c9225a0823d2fdbb0b479
|
||||
+ public void moonrise$write(final org.bxteam.divinemc.region.IRegionFile regionFile) throws IOException; // DivineMC - Linear region file format
|
||||
}
|
||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||
index 45af325d0f457068f79e1b53414db1bf4c8d094b..9c1cf8cc7bb3d36d20449bb4ac9f60edbdbd3347 100644
|
||||
index 5c05a41e6f64f37fc365cde6333ed5a684f167f2..1a36a7c071c9f203d32f524008cf031fb1a4d6a6 100644
|
||||
--- a/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/net/minecraft/server/MinecraftServer.java
|
||||
@@ -929,10 +929,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -928,10 +928,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
// CraftBukkit end
|
||||
if (flush) {
|
||||
for (ServerLevel serverLevel2 : this.getAllLevels()) {
|
||||
|
||||
@@ -5,13 +5,13 @@ Subject: [PATCH] Async mob spawning
|
||||
|
||||
|
||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||
index 813a60771b8a6618090f1ea713b70a617ca28308..9e83d0ec1a0976f365fa6cb3f1b7db167641b336 100644
|
||||
index 1a36a7c071c9f203d32f524008cf031fb1a4d6a6..c067f46935753794b49f29358262273fcd15d707 100644
|
||||
--- a/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/net/minecraft/server/MinecraftServer.java
|
||||
@@ -290,6 +290,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -289,6 +289,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
public boolean lagging = false; // Purpur - Lagging threshold
|
||||
protected boolean upnp = false; // Purpur - UPnP Port Forwarding
|
||||
public final org.bxteam.divinemc.util.tps.TPSCalculator tpsCalculator = new org.bxteam.divinemc.util.tps.TPSCalculator(); // DivineMC - Lag compensation
|
||||
public final Set<net.minecraft.world.entity.Entity> entitiesWithScheduledTasks = java.util.concurrent.ConcurrentHashMap.newKeySet(); // DivineMC - Skip EntityScheduler's executeTick checks if there isn't any tasks to be run
|
||||
+ public org.bxteam.divinemc.util.AsyncProcessor mobSpawnExecutor = new org.bxteam.divinemc.util.AsyncProcessor("mob_spawning"); // DivineMC - Async mob spawning
|
||||
|
||||
public static <S extends MinecraftServer> S spin(Function<Thread, S> threadFunction) {
|
||||
|
||||
@@ -59,18 +59,18 @@ index ac27ff24f018d8798921c5152e679ceed1e88d8d..ec7d1353b19e55b00c558df8981323ef
|
||||
List<org.bukkit.block.BlockState> states = new java.util.ArrayList<>(level.capturedBlockStates.values());
|
||||
level.capturedBlockStates.clear();
|
||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||
index 1079eebf665d4752c4796edf8b851f13e6972dc8..3e013d116f78f8f3d0338fae7bd5b4b1b57be9dc 100644
|
||||
index c067f46935753794b49f29358262273fcd15d707..cbeb56539f00a3139f7c19d29cce92fae49dab2f 100644
|
||||
--- a/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/net/minecraft/server/MinecraftServer.java
|
||||
@@ -291,6 +291,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -290,6 +290,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
protected boolean upnp = false; // Purpur - UPnP Port Forwarding
|
||||
public final org.bxteam.divinemc.util.tps.TPSCalculator tpsCalculator = new org.bxteam.divinemc.util.tps.TPSCalculator(); // DivineMC - Lag compensation
|
||||
public final Set<net.minecraft.world.entity.Entity> entitiesWithScheduledTasks = java.util.concurrent.ConcurrentHashMap.newKeySet(); // DivineMC - Skip EntityScheduler's executeTick checks if there isn't any tasks to be run
|
||||
public org.bxteam.divinemc.util.AsyncProcessor mobSpawnExecutor = new org.bxteam.divinemc.util.AsyncProcessor("mob_spawning"); // DivineMC - Async mob spawning
|
||||
+ public java.util.concurrent.Semaphore serverLevelTickingSemaphore = null; // DivineMC - Parallel world ticking
|
||||
|
||||
public static <S extends MinecraftServer> S spin(Function<Thread, S> threadFunction) {
|
||||
ca.spottedleaf.dataconverter.minecraft.datatypes.MCTypeRegistry.init(); // Paper - rewrite data converter system
|
||||
@@ -323,24 +324,36 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -322,24 +323,36 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
private long lastMidTickExecute;
|
||||
private long lastMidTickExecuteFailure;
|
||||
|
||||
@@ -120,9 +120,9 @@ index 1079eebf665d4752c4796edf8b851f13e6972dc8..3e013d116f78f8f3d0338fae7bd5b4b1
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -1659,6 +1672,18 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
}
|
||||
}
|
||||
@@ -1660,6 +1673,18 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
|
||||
public final io.papermc.paper.threadedregions.EntityScheduler.EntitySchedulerTickList entitySchedulerTickList = new io.papermc.paper.threadedregions.EntityScheduler.EntitySchedulerTickList(); // Paper - optimise Folia entity scheduler
|
||||
|
||||
+ // DivineMC start - Parallel world ticking
|
||||
+ private void tickLevel(ServerLevel serverLevel, BooleanSupplier hasTimeLeft) {
|
||||
@@ -139,7 +139,7 @@ index 1079eebf665d4752c4796edf8b851f13e6972dc8..3e013d116f78f8f3d0338fae7bd5b4b1
|
||||
protected void tickChildren(BooleanSupplier hasTimeLeft) {
|
||||
this.getPlayerList().getPlayers().forEach(serverPlayer1 -> serverPlayer1.connection.suspendFlushing());
|
||||
this.server.getScheduler().mainThreadHeartbeat(); // CraftBukkit
|
||||
@@ -1708,28 +1733,43 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -1704,28 +1729,43 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
}
|
||||
|
||||
this.isIteratingOverLevels = true; // Paper - Throw exception on world create while being ticked
|
||||
@@ -201,7 +201,7 @@ index 1079eebf665d4752c4796edf8b851f13e6972dc8..3e013d116f78f8f3d0338fae7bd5b4b1
|
||||
this.isIteratingOverLevels = false; // Paper - Throw exception on world create while being ticked
|
||||
|
||||
this.tickConnection();
|
||||
@@ -1807,6 +1847,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -1803,6 +1843,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
Map<ResourceKey<Level>, ServerLevel> oldLevels = this.levels;
|
||||
Map<ResourceKey<Level>, ServerLevel> newLevels = Maps.newLinkedHashMap(oldLevels);
|
||||
newLevels.remove(level.dimension());
|
||||
@@ -210,7 +210,7 @@ index 1079eebf665d4752c4796edf8b851f13e6972dc8..3e013d116f78f8f3d0338fae7bd5b4b1
|
||||
}
|
||||
// CraftBukkit end
|
||||
diff --git a/net/minecraft/server/dedicated/DedicatedServer.java b/net/minecraft/server/dedicated/DedicatedServer.java
|
||||
index 7ac82a49e3c64d1a41a2870c5cf9900812329a57..5f1712d3a42ca9e061b7cf96eeba006111e64bd9 100644
|
||||
index 978934f81ba023d7565d2e66c51f6ca249510702..13d85eb366a070bfd6723088412f51af07892362 100644
|
||||
--- a/net/minecraft/server/dedicated/DedicatedServer.java
|
||||
+++ b/net/minecraft/server/dedicated/DedicatedServer.java
|
||||
@@ -224,6 +224,13 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface
|
||||
@@ -316,18 +316,18 @@ index e05a0eed63098c535360b66276f154e4dc119d6a..0102d87411dcf0bba7f6873dc54385c9
|
||||
// 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 bedc28c355b2c1e5a2ca4a1559c29101525c51e2..3b87d3f889db67e4913691b2cd50dddd2a2faf7d 100644
|
||||
index c7d081aff58170251d075a58d5e1345fc1bda9f8..7f5ec82ad273226b34d0212e17dfd1fe905d68a0 100644
|
||||
--- a/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -463,6 +463,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
return this.viewDistanceHolder;
|
||||
}
|
||||
// Paper end - rewrite chunk system
|
||||
@@ -433,6 +433,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
private boolean tpsBar = false; // Purpur - Implement TPSBar
|
||||
private boolean compassBar = false; // Purpur - Add compass command
|
||||
private boolean ramBar = false; // Purpur - Implement rambar commands
|
||||
+ public boolean hasTickedAtLeastOnceInNewWorld = false; // DivineMC - Parallel world ticking
|
||||
|
||||
public ServerPlayer(MinecraftServer server, ServerLevel level, GameProfile gameProfile, ClientInformation clientInformation) {
|
||||
super(level, gameProfile);
|
||||
@@ -750,6 +751,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
// Paper start - rewrite chunk system
|
||||
private ca.spottedleaf.moonrise.patches.chunk_system.player.RegionizedPlayerChunkLoader.PlayerChunkLoaderData chunkLoader;
|
||||
@@ -814,6 +815,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
|
||||
@Override
|
||||
public void tick() {
|
||||
@@ -335,7 +335,7 @@ index bedc28c355b2c1e5a2ca4a1559c29101525c51e2..3b87d3f889db67e4913691b2cd50dddd
|
||||
// CraftBukkit start
|
||||
if (this.joining) {
|
||||
this.joining = false;
|
||||
@@ -1427,6 +1429,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
@@ -1491,6 +1493,7 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
return this;
|
||||
} else {
|
||||
// CraftBukkit start
|
||||
@@ -343,7 +343,7 @@ index bedc28c355b2c1e5a2ca4a1559c29101525c51e2..3b87d3f889db67e4913691b2cd50dddd
|
||||
/*
|
||||
this.isChangingDimension = true;
|
||||
LevelData levelData = level.getLevelData();
|
||||
@@ -1772,6 +1775,12 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
@@ -1836,6 +1839,12 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
return OptionalInt.empty();
|
||||
} else {
|
||||
// CraftBukkit start
|
||||
@@ -356,7 +356,7 @@ index bedc28c355b2c1e5a2ca4a1559c29101525c51e2..3b87d3f889db67e4913691b2cd50dddd
|
||||
this.containerMenu = abstractContainerMenu; // Moved up
|
||||
if (!this.isImmobile())
|
||||
this.connection
|
||||
@@ -1836,6 +1845,11 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
@@ -1900,6 +1909,11 @@ public class ServerPlayer extends Player implements ca.spottedleaf.moonrise.patc
|
||||
}
|
||||
@Override
|
||||
public void closeContainer(org.bukkit.event.inventory.InventoryCloseEvent.Reason reason) {
|
||||
@@ -369,7 +369,7 @@ index bedc28c355b2c1e5a2ca4a1559c29101525c51e2..3b87d3f889db67e4913691b2cd50dddd
|
||||
// Paper end - Inventory close reason
|
||||
this.connection.send(new ClientboundContainerClosePacket(this.containerMenu.containerId));
|
||||
diff --git a/net/minecraft/server/players/PlayerList.java b/net/minecraft/server/players/PlayerList.java
|
||||
index 8bf5f7a98e4e8542d56c49a7e2c4926ec86f712d..e1ca822d41311e3be44c52badb907619ca681cf9 100644
|
||||
index 015e0d1400f1dfbe086c817f121d01f0726e82f2..199e0abdd3a00786a259e28db9d826df06f2fc93 100644
|
||||
--- a/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/net/minecraft/server/players/PlayerList.java
|
||||
@@ -149,6 +149,7 @@ public abstract class PlayerList {
|
||||
@@ -404,7 +404,7 @@ index 8bf5f7a98e4e8542d56c49a7e2c4926ec86f712d..e1ca822d41311e3be44c52badb907619
|
||||
serverPlayer.connection = player.connection;
|
||||
serverPlayer.restoreFrom(player, keepInventory);
|
||||
diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java
|
||||
index ef7c2443fbdaedd08c2489609768374a3ecd8661..0484d3ace8e80f0a82fa2f0397026fd867768818 100644
|
||||
index 1e201ff091bdf33c96e2cfa333030ae105ab7bc9..5a58fb937419369d887c4fc35d9383d1b5e35a99 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
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] MSPT Tracking for each world
|
||||
|
||||
|
||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||
index 3e013d116f78f8f3d0338fae7bd5b4b1b57be9dc..693a3c2d0a908b4ce9825818b4af191d1ec98e92 100644
|
||||
index cbeb56539f00a3139f7c19d29cce92fae49dab2f..59642de7b2d3064c59bb1d8d2fc436cb9e2c2914 100644
|
||||
--- a/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/net/minecraft/server/MinecraftServer.java
|
||||
@@ -1675,7 +1675,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -1676,7 +1676,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
// DivineMC start - Parallel world ticking
|
||||
private void tickLevel(ServerLevel serverLevel, BooleanSupplier hasTimeLeft) {
|
||||
try {
|
||||
|
||||
@@ -20,10 +20,10 @@ index e65c62dbe4c1560ae153e4c4344e9194c783a2f4..e3d3b062e273fee4a9d3ba3cadc21278
|
||||
if (var4 instanceof ReportedException reportedException && reportedException.getCause() instanceof OutOfMemoryError) {
|
||||
throw makeReportedException(var4, packet, processor);
|
||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||
index 693a3c2d0a908b4ce9825818b4af191d1ec98e92..7b93ad4f868a34cb75d6c7e031abfa404ae21df4 100644
|
||||
index 59642de7b2d3064c59bb1d8d2fc436cb9e2c2914..2f9463cbef40dabd8769ba8fe9c18f1ac8487298 100644
|
||||
--- a/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/net/minecraft/server/MinecraftServer.java
|
||||
@@ -1684,6 +1684,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -1685,6 +1685,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
serverLevel.tickTimes10s.add(this.tickCount, j);
|
||||
serverLevel.tickTimes60s.add(this.tickCount, j);
|
||||
// DivineMC end - MSPT Tracking for each world
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -2227,6 +_,7 @@
|
||||
@@ -2291,6 +_,7 @@
|
||||
this.connection.send(new ClientboundGameEventPacket(ClientboundGameEventPacket.CHANGE_GAME_MODE, gameMode.getId()));
|
||||
if (gameMode == GameType.SPECTATOR) {
|
||||
this.removeEntitiesOnShoulder();
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Optimize canSee checks
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index 0d303c3c614142b4183e76f9347e613d7e6db211..e69039ccb6b4d0cc593342a562e4108a78ce2867 100644
|
||||
index 7f17c5025f25e44a917f5d6a65b8d958a982b301..f81a6a2a9e1adaa3418c301984afeb19441f2039 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -219,7 +219,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -227,7 +227,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
private boolean hasPlayedBefore = false;
|
||||
private final ConversationTracker conversationTracker = new ConversationTracker();
|
||||
private final Set<String> channels = new HashSet<String>();
|
||||
@@ -17,7 +17,7 @@ index 0d303c3c614142b4183e76f9347e613d7e6db211..e69039ccb6b4d0cc593342a562e4108a
|
||||
private final Set<UUID> unlistedEntities = new HashSet<>(); // Paper - Add Listing API for Player
|
||||
private static final WeakHashMap<Plugin, WeakReference<Plugin>> pluginWeakReferences = new WeakHashMap<>();
|
||||
private int hash = 0;
|
||||
@@ -2272,9 +2272,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -2280,9 +2280,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
|
||||
@Override
|
||||
public boolean canSee(org.bukkit.entity.Entity entity) {
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Paper PR: Add FillBottleEvents for player and dispenser
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
index 7e36355090baa1a95369dc4f5323c1024b5f3b4c..b7d816bd22ddd837bce6a1e96c86c25c15ca5111 100644
|
||||
index 9b9b8b3439cfc0c36009fdb9e5d46b64c3aca393..03ce4211af180d21dd8410d5d4f18abfede30191 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||
@@ -2115,4 +2115,18 @@ public class CraftEventFactory {
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Paper PR: Player standing on position API
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
index a18069c7de594a8f4ddef46f9dad48dd29cd4b34..bc78b10aa4c66fe5a5f0debc55f63019ed2b75ba 100644
|
||||
index 476eefebace887064b728f08af40c746b6f70787..93d03f99db85fc0415bc4d83ce019927bc9b33ce 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||
@@ -1357,6 +1357,20 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
@@ -1353,6 +1353,20 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
return this.entity.get(io.papermc.paper.datacomponent.PaperDataComponentType.bukkitToMinecraft(type)) != null;
|
||||
}
|
||||
|
||||
@@ -247,10 +247,10 @@ index ab499a7eaccdc1578ec64f90f54f79b0da3c0e96..6bcb8069de18e8a0f4ee9d5c71b6bdd1
|
||||
} else if (!event.isAsynchronous() && !this.server.isPrimaryThread() && !this.server.isStopping()) {
|
||||
// DivineMC start - Multithreaded Tracker
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 400fa612389c40f36d64ecd1b65f3330c8a9071a..11b43cf197e4b860ea3d93beb0f1b8437c583fc6 100644
|
||||
index cd43af3f442f7d8af1a4552a0eff33958873a366..cf4967875c2d9e87da86645e5a1f0cbaef6d1321 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -465,7 +465,13 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -469,7 +469,13 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public boolean unloadChunkRequest(int x, int z) {
|
||||
@@ -265,7 +265,7 @@ index 400fa612389c40f36d64ecd1b65f3330c8a9071a..11b43cf197e4b860ea3d93beb0f1b843
|
||||
if (this.isChunkLoaded(x, z)) {
|
||||
this.world.getChunkSource().removeTicketWithRadius(TicketType.PLUGIN, new ChunkPos(x, z), 1);
|
||||
}
|
||||
@@ -491,6 +497,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -495,6 +501,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public boolean refreshChunk(int x, int z) {
|
||||
@@ -273,7 +273,7 @@ index 400fa612389c40f36d64ecd1b65f3330c8a9071a..11b43cf197e4b860ea3d93beb0f1b843
|
||||
ChunkHolder playerChunk = this.world.getChunkSource().chunkMap.getVisibleChunkIfPresent(ChunkPos.asLong(x, z));
|
||||
if (playerChunk == null) return false;
|
||||
|
||||
@@ -541,7 +548,13 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -545,7 +552,13 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public boolean loadChunk(int x, int z, boolean generate) {
|
||||
@@ -288,7 +288,7 @@ index 400fa612389c40f36d64ecd1b65f3330c8a9071a..11b43cf197e4b860ea3d93beb0f1b843
|
||||
warnUnsafeChunk("loading a faraway chunk", x, z); // Paper
|
||||
ChunkAccess chunk = this.world.getChunkSource().getChunk(x, z, generate || isChunkGenerated(x, z) ? ChunkStatus.FULL : ChunkStatus.EMPTY, true); // Paper
|
||||
|
||||
@@ -769,6 +782,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -773,6 +786,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public boolean generateTree(Location loc, TreeType type, BlockChangeDelegate delegate) {
|
||||
@@ -296,7 +296,7 @@ index 400fa612389c40f36d64ecd1b65f3330c8a9071a..11b43cf197e4b860ea3d93beb0f1b843
|
||||
this.world.captureTreeGeneration = true;
|
||||
this.world.captureBlockStates = true;
|
||||
boolean grownTree = this.generateTree(loc, type);
|
||||
@@ -884,6 +898,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -888,6 +902,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
}
|
||||
public boolean createExplosion(double x, double y, double z, float power, boolean setFire, boolean breakBlocks, Entity source, Consumer<net.minecraft.world.level.ServerExplosion> configurator) {
|
||||
// Paper end - expand explosion API
|
||||
@@ -304,7 +304,7 @@ index 400fa612389c40f36d64ecd1b65f3330c8a9071a..11b43cf197e4b860ea3d93beb0f1b843
|
||||
net.minecraft.world.level.Level.ExplosionInteraction explosionType;
|
||||
if (!breakBlocks) {
|
||||
explosionType = net.minecraft.world.level.Level.ExplosionInteraction.NONE; // Don't break blocks
|
||||
@@ -975,6 +990,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -979,6 +994,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public int getHighestBlockYAt(int x, int z, org.bukkit.HeightMap heightMap) {
|
||||
@@ -312,7 +312,7 @@ index 400fa612389c40f36d64ecd1b65f3330c8a9071a..11b43cf197e4b860ea3d93beb0f1b843
|
||||
warnUnsafeChunk("getting a faraway chunk", x >> 4, z >> 4); // Paper
|
||||
// Transient load for this tick
|
||||
return this.world.getChunk(x >> 4, z >> 4).getHeight(CraftHeightMap.toNMS(heightMap), x, z);
|
||||
@@ -1005,6 +1021,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -1009,6 +1025,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@Override
|
||||
public void setBiome(int x, int y, int z, Holder<net.minecraft.world.level.biome.Biome> bb) {
|
||||
BlockPos pos = new BlockPos(x, 0, z);
|
||||
@@ -320,7 +320,7 @@ index 400fa612389c40f36d64ecd1b65f3330c8a9071a..11b43cf197e4b860ea3d93beb0f1b843
|
||||
if (this.world.hasChunkAt(pos)) {
|
||||
net.minecraft.world.level.chunk.LevelChunk chunk = this.world.getChunkAt(pos);
|
||||
|
||||
@@ -2313,6 +2330,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
@@ -2317,6 +2334,7 @@ public class CraftWorld extends CraftRegionAccessor implements World {
|
||||
|
||||
@Override
|
||||
public void sendGameEvent(Entity sourceEntity, org.bukkit.GameEvent gameEvent, Vector position) {
|
||||
@@ -500,7 +500,7 @@ index a4d5c65edc1db59f3486ce5d3757cc306211a54b..d8f68164b0b4430ccdc7e4a419eace71
|
||||
this.getNMS().tick(level, this.position, level.random);
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java
|
||||
index 7232b560aac9fbe48318f7af1c875583e06723ee..3a4393c50712dc735d7db6b4282eb18bcf122f72 100644
|
||||
index 5d4faad9df4824cfd61abfd4df011c006f114424..361ddcfaaa47f27135fd4629446b6560b60badeb 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java
|
||||
@@ -33,6 +33,25 @@ public abstract class CraftBlockEntityState<T extends BlockEntity> extends Craft
|
||||
@@ -568,7 +568,7 @@ index 196835bdf95ba0e149b2977e9ef41698971f501f..b35dbe2b6e75ec89483aef093474c675
|
||||
net.minecraft.world.item.ItemStack nms = org.bukkit.craftbukkit.inventory.CraftItemStack.asNMSCopy(item);
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java
|
||||
index cc5028cebcd0504635734907c73ee5c9d91f0e71..0a870bfa4aca330973d4e9170a658d75e0e3e833 100644
|
||||
index 63f6b5d00b401fe670fd237e53dd2073d042535b..e7e6dfbf114a24e540bc04a8aaa1644e9b49ec44 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java
|
||||
@@ -195,14 +195,16 @@ public final class CraftBlockStates {
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Optimize default values for configs
|
||||
|
||||
|
||||
diff --git a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
|
||||
index 83419bbcbf79d8eed1302d66356a62fa61a33473..caa4cf0af0696b90d61f32f5445a6e6c6b5bae5d 100644
|
||||
index 696d3324a04084600b5d8c8c173b85dbc020d7c0..0b1aa06c5ac84cc4ef1320b56a1baec3d535de20 100644
|
||||
--- a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
|
||||
+++ b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java
|
||||
@@ -347,8 +347,8 @@ public class GlobalConfiguration extends ConfigurationPart {
|
||||
@@ -2,8 +2,8 @@ group = org.bxteam.divinemc
|
||||
version=1.21.6-R0.1-SNAPSHOT
|
||||
|
||||
mcVersion=1.21.6
|
||||
purpurRef=3893bba083d4d2e2cc7e475e9239258e714f02be
|
||||
experimental=true
|
||||
purpurRef=47e758fb34a5dc8e7c81a99af74df6c0bf78ae42
|
||||
experimental=false
|
||||
|
||||
org.gradle.configuration-cache=true
|
||||
org.gradle.caching = true
|
||||
|
||||
Reference in New Issue
Block a user