mirror of
https://github.com/BX-Team/DivineMC.git
synced 2025-12-23 16:59:24 +00:00
update to 1.21.11 release
This commit is contained in:
@@ -7,7 +7,7 @@
|
|||||||
+val bxTeamMavenPublicUrl = "https://repo.bxteam.org/snapshots/"
|
+val bxTeamMavenPublicUrl = "https://repo.bxteam.org/snapshots/"
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
mache("io.papermc:mache:1.21.11-rc3+build.1")
|
mache("io.papermc:mache:1.21.11+build.1")
|
||||||
@@ -25,6 +_,7 @@
|
@@ -25,6 +_,7 @@
|
||||||
|
|
||||||
// Purpur start - Rebrand
|
// Purpur start - Rebrand
|
||||||
|
|||||||
@@ -120,10 +120,10 @@ index 272e2871aca8d283229cc5618e3051146db56681..e5d78f6a8a2ef2a197b3d327ca48679f
|
|||||||
String awtException = io.papermc.paper.util.ServerEnvironment.awtDependencyCheck();
|
String awtException = io.papermc.paper.util.ServerEnvironment.awtDependencyCheck();
|
||||||
if (awtException != null) {
|
if (awtException != null) {
|
||||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||||
index e3561303df02b5c769dd039ad45c684062e04bd5..990b50a5ec6d578924cae12031a6ab467f0f1287 100644
|
index ec9e4f65543d153b92c4839345800d3139a29d48..826cc9be6d333d01b83f78159a7809d07091c15c 100644
|
||||||
--- a/net/minecraft/server/MinecraftServer.java
|
--- a/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/net/minecraft/server/MinecraftServer.java
|
+++ b/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1279,6 +1279,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1280,6 +1280,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
|
|
||||||
protected void runServer() {
|
protected void runServer() {
|
||||||
try {
|
try {
|
||||||
|
|||||||
@@ -203,7 +203,7 @@ index 18071dcc69cc28471dddb7de94e803ec1e5fc2e4..aa25f5ebaf7d1b22825b962b02dcae02
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||||
index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f9352dac5bcf 100644
|
index 826cc9be6d333d01b83f78159a7809d07091c15c..4195b8ec98ec5706c6a4641350a18cda0c456d23 100644
|
||||||
--- a/net/minecraft/server/MinecraftServer.java
|
--- a/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/net/minecraft/server/MinecraftServer.java
|
+++ b/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -120,20 +120,9 @@ import net.minecraft.util.Util;
|
@@ -120,20 +120,9 @@ import net.minecraft.util.Util;
|
||||||
@@ -240,7 +240,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
private ServerConnectionListener connection;
|
private ServerConnectionListener connection;
|
||||||
// Paper - per world load listener - moved LevelLoadListener to ServerLevel
|
// Paper - per world load listener - moved LevelLoadListener to ServerLevel
|
||||||
private @Nullable ServerStatus status;
|
private @Nullable ServerStatus status;
|
||||||
@@ -1020,9 +1003,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1021,9 +1004,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
org.spigotmc.WatchdogThread.doStop(); // Paper - Improved watchdog support
|
org.spigotmc.WatchdogThread.doStop(); // Paper - Improved watchdog support
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
this.packetProcessor.close();
|
this.packetProcessor.close();
|
||||||
@@ -250,7 +250,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
|
|
||||||
LOGGER.info("Stopping server");
|
LOGGER.info("Stopping server");
|
||||||
Commands.COMMAND_SENDING_POOL.shutdownNow(); // Paper - Perf: Async command map building; Shutdown and don't bother finishing
|
Commands.COMMAND_SENDING_POOL.shutdownNow(); // Paper - Perf: Async command map building; Shutdown and don't bother finishing
|
||||||
@@ -1193,10 +1173,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1194,10 +1174,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
|
|
||||||
// note: To avoid possibly spinning forever, only execute tasks that are roughly available at the beginning
|
// note: To avoid possibly spinning forever, only execute tasks that are roughly available at the beginning
|
||||||
// of this call. Packet processing and chunk system tasks are possibly always being queued.
|
// of this call. Packet processing and chunk system tasks are possibly always being queued.
|
||||||
@@ -261,7 +261,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
// avoid calling MinecraftServer#pollTask - we just want to execute queued tasks
|
// avoid calling MinecraftServer#pollTask - we just want to execute queued tasks
|
||||||
while (super.pollTask()) {
|
while (super.pollTask()) {
|
||||||
// execute small amounts of other tasks just in case the number of tasks we are
|
// execute small amounts of other tasks just in case the number of tasks we are
|
||||||
@@ -1205,38 +1181,23 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1206,38 +1182,23 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
((ca.spottedleaf.moonrise.patches.chunk_system.server.ChunkSystemMinecraftServer)this).moonrise$executeMidTickTasks(); // Paper - rewrite chunk system
|
((ca.spottedleaf.moonrise.patches.chunk_system.server.ChunkSystemMinecraftServer)this).moonrise$executeMidTickTasks(); // Paper - rewrite chunk system
|
||||||
this.packetProcessor.executeSinglePacket();
|
this.packetProcessor.executeSinglePacket();
|
||||||
}
|
}
|
||||||
@@ -300,7 +300,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
this.waitingForNextTick = true;
|
this.waitingForNextTick = true;
|
||||||
// implement waitForTasks
|
// implement waitForTasks
|
||||||
final boolean isLoggingEnabled = this.isTickTimeLoggingEnabled();
|
final boolean isLoggingEnabled = this.isTickTimeLoggingEnabled();
|
||||||
@@ -1273,7 +1234,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1274,7 +1235,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
} finally {
|
} finally {
|
||||||
this.waitingForNextTick = false;
|
this.waitingForNextTick = false;
|
||||||
}
|
}
|
||||||
@@ -308,7 +308,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
}
|
}
|
||||||
// Paper end - improve tick loop
|
// Paper end - improve tick loop
|
||||||
|
|
||||||
@@ -1370,32 +1330,21 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1371,32 +1331,21 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
// Paper end - improve tick loop
|
// Paper end - improve tick loop
|
||||||
|
|
||||||
boolean flag = l == 0L;
|
boolean flag = l == 0L;
|
||||||
@@ -351,7 +351,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
this.isReady = true;
|
this.isReady = true;
|
||||||
JvmProfiler.INSTANCE.onServerTick(this.smoothedTickTimeMillis);
|
JvmProfiler.INSTANCE.onServerTick(this.smoothedTickTimeMillis);
|
||||||
}
|
}
|
||||||
@@ -1567,7 +1516,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1568,7 +1517,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void doRunTask(TickTask task) {
|
public void doRunTask(TickTask task) {
|
||||||
@@ -359,7 +359,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
super.doRunTask(task);
|
super.doRunTask(task);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1662,12 +1610,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1663,12 +1611,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
|
|
||||||
this.ticksUntilAutosave--;
|
this.ticksUntilAutosave--;
|
||||||
// Paper start - Incremental chunk and player saving
|
// Paper start - Incremental chunk and player saving
|
||||||
@@ -372,7 +372,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
final boolean fullSave = autosavePeriod > 0 && this.tickCount % autosavePeriod == 0;
|
final boolean fullSave = autosavePeriod > 0 && this.tickCount % autosavePeriod == 0;
|
||||||
try {
|
try {
|
||||||
this.isSaving = true;
|
this.isSaving = true;
|
||||||
@@ -1682,10 +1628,9 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1683,10 +1629,9 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
} finally {
|
} finally {
|
||||||
this.isSaving = false;
|
this.isSaving = false;
|
||||||
}
|
}
|
||||||
@@ -384,7 +384,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
this.server.spark.executeMainThreadTasks(); // Paper - spark
|
this.server.spark.executeMainThreadTasks(); // Paper - spark
|
||||||
// Paper start - Server Tick Events
|
// Paper start - Server Tick Events
|
||||||
long endTime = System.nanoTime();
|
long endTime = System.nanoTime();
|
||||||
@@ -1693,7 +1638,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1694,7 +1639,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
new com.destroystokyo.paper.event.server.ServerTickEndEvent(this.tickCount, ((double)(endTime - this.currentTickStart) / 1000000D), remaining).callEvent();
|
new com.destroystokyo.paper.event.server.ServerTickEndEvent(this.tickCount, ((double)(endTime - this.currentTickStart) / 1000000D), remaining).callEvent();
|
||||||
// Paper end - Server Tick Events
|
// Paper end - Server Tick Events
|
||||||
this.server.spark.tickEnd(((double)(endTime - this.currentTickStart) / 1000000D)); // Paper - spark
|
this.server.spark.tickEnd(((double)(endTime - this.currentTickStart) / 1000000D)); // Paper - spark
|
||||||
@@ -392,7 +392,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
long l = Util.getNanos() - nanos;
|
long l = Util.getNanos() - nanos;
|
||||||
int i1 = this.tickCount % 100;
|
int i1 = this.tickCount % 100;
|
||||||
this.aggregatedTickTimesNanos = this.aggregatedTickTimesNanos - this.tickTimesNanos[i1];
|
this.aggregatedTickTimesNanos = this.aggregatedTickTimesNanos - this.tickTimesNanos[i1];
|
||||||
@@ -1701,12 +1645,9 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1702,12 +1646,9 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
this.tickTimesNanos[i1] = l;
|
this.tickTimesNanos[i1] = l;
|
||||||
this.smoothedTickTimeMillis = this.smoothedTickTimeMillis * 0.8F + (float)l / (float)TimeUtil.NANOSECONDS_PER_MILLISECOND * 0.19999999F;
|
this.smoothedTickTimeMillis = this.smoothedTickTimeMillis * 0.8F + (float)l / (float)TimeUtil.NANOSECONDS_PER_MILLISECOND * 0.19999999F;
|
||||||
this.logTickMethodTime(nanos);
|
this.logTickMethodTime(nanos);
|
||||||
@@ -405,7 +405,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
this.tickFrame.start();
|
this.tickFrame.start();
|
||||||
// Paper - improve tick loop - moved into runAllTasksAtTickStart
|
// Paper - improve tick loop - moved into runAllTasksAtTickStart
|
||||||
this.runAllTasksAtTickStart(); // Paper - improve tick loop
|
this.runAllTasksAtTickStart(); // Paper - improve tick loop
|
||||||
@@ -1720,16 +1661,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1721,16 +1662,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
// Paper end - rewrite chunk system
|
// Paper end - rewrite chunk system
|
||||||
this.tickFrame.end();
|
this.tickFrame.end();
|
||||||
this.recordEndOfTick(); // Paper - improve tick loop
|
this.recordEndOfTick(); // Paper - improve tick loop
|
||||||
@@ -422,7 +422,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
LOGGER.debug("Autosave finished");
|
LOGGER.debug("Autosave finished");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1797,7 +1734,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1798,7 +1735,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
|
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) {
|
protected void tickChildren(BooleanSupplier hasTimeLeft) {
|
||||||
@@ -430,7 +430,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
this.getPlayerList().getPlayers().forEach(serverPlayer1 -> serverPlayer1.connection.suspendFlushing());
|
this.getPlayerList().getPlayers().forEach(serverPlayer1 -> serverPlayer1.connection.suspendFlushing());
|
||||||
this.server.getScheduler().mainThreadHeartbeat(); // CraftBukkit
|
this.server.getScheduler().mainThreadHeartbeat(); // CraftBukkit
|
||||||
// Paper start - optimise Folia entity scheduler
|
// Paper start - optimise Folia entity scheduler
|
||||||
@@ -1812,9 +1748,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1813,9 +1749,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
// Paper end - optimise Folia entity scheduler
|
// Paper end - optimise Folia entity scheduler
|
||||||
io.papermc.paper.adventure.providers.ClickCallbackProviderImpl.ADVENTURE_CLICK_MANAGER.handleQueue(this.tickCount); // Paper
|
io.papermc.paper.adventure.providers.ClickCallbackProviderImpl.ADVENTURE_CLICK_MANAGER.handleQueue(this.tickCount); // Paper
|
||||||
io.papermc.paper.adventure.providers.ClickCallbackProviderImpl.DIALOG_CLICK_MANAGER.handleQueue(this.tickCount); // Paper
|
io.papermc.paper.adventure.providers.ClickCallbackProviderImpl.DIALOG_CLICK_MANAGER.handleQueue(this.tickCount); // Paper
|
||||||
@@ -440,7 +440,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
this.updateEffectiveRespawnData();
|
this.updateEffectiveRespawnData();
|
||||||
|
|
||||||
// CraftBukkit start
|
// CraftBukkit start
|
||||||
@@ -1851,17 +1785,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1852,17 +1786,12 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
serverLevel.updateLagCompensationTick(); // Paper - lag compensation
|
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
|
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
|
serverLevel.hasRidableMoveEvent = org.purpurmc.purpur.event.entity.RidableMoveEvent.getHandlerList().getRegisteredListeners().length > 0; // Purpur - Ridables
|
||||||
@@ -458,7 +458,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
try {
|
try {
|
||||||
serverLevel.tick(hasTimeLeft);
|
serverLevel.tick(hasTimeLeft);
|
||||||
} catch (Throwable var7) {
|
} catch (Throwable var7) {
|
||||||
@@ -1870,37 +1799,26 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1871,37 +1800,26 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
throw new ReportedException(crashReport);
|
throw new ReportedException(crashReport);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -496,7 +496,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
this.serverActivityMonitor.tick();
|
this.serverActivityMonitor.tick();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1925,14 +1843,9 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1926,14 +1844,9 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
}
|
}
|
||||||
|
|
||||||
public void forceTimeSynchronization() {
|
public void forceTimeSynchronization() {
|
||||||
@@ -511,7 +511,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void addTickable(Runnable tickable) {
|
public void addTickable(Runnable tickable) {
|
||||||
@@ -2751,55 +2664,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -2752,55 +2665,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
}
|
}
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
|
|
||||||
@@ -567,7 +567,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
public Path getWorldPath(LevelResource levelResource) {
|
public Path getWorldPath(LevelResource levelResource) {
|
||||||
return this.storageSource.getLevelPath(levelResource);
|
return this.storageSource.getLevelPath(levelResource);
|
||||||
}
|
}
|
||||||
@@ -2848,24 +2712,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -2849,24 +2713,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
return this.isSaving;
|
return this.isSaving;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -592,7 +592,7 @@ index 990b50a5ec6d578924cae12031a6ab467f0f1287..c425b6a1f3cb2fb451671c1d5732f935
|
|||||||
public int getMaxChainedNeighborUpdates() {
|
public int getMaxChainedNeighborUpdates() {
|
||||||
return 1000000;
|
return 1000000;
|
||||||
}
|
}
|
||||||
@@ -3038,55 +2884,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -3039,55 +2885,6 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
public record ServerResourcePackInfo(UUID id, String url, String hash, boolean isRequired, @Nullable Component prompt) {
|
public record ServerResourcePackInfo(UUID id, String url, String hash, boolean isRequired, @Nullable Component prompt) {
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2437,7 +2437,7 @@ index 8034ce67266b6baab35c72eaebf5ad67fc1a29c6..856ef72aaf9a076609c29bce743c62db
|
|||||||
|
|
||||||
this.checkRestriction();
|
this.checkRestriction();
|
||||||
diff --git a/net/minecraft/world/entity/animal/nautilus/Nautilus.java b/net/minecraft/world/entity/animal/nautilus/Nautilus.java
|
diff --git a/net/minecraft/world/entity/animal/nautilus/Nautilus.java b/net/minecraft/world/entity/animal/nautilus/Nautilus.java
|
||||||
index a941cb9843fcf8d008ae846dcab95e32d823a1b2..ae42f77f9beff8ecee778252b52fce995c98e0b7 100644
|
index 7c4467933061f097425d6c82188a65fd5e4c4d3b..1872db098c810a178f2d831ee0a98f94a26f73c9 100644
|
||||||
--- a/net/minecraft/world/entity/animal/nautilus/Nautilus.java
|
--- a/net/minecraft/world/entity/animal/nautilus/Nautilus.java
|
||||||
+++ b/net/minecraft/world/entity/animal/nautilus/Nautilus.java
|
+++ b/net/minecraft/world/entity/animal/nautilus/Nautilus.java
|
||||||
@@ -4,8 +4,6 @@ import com.mojang.serialization.Dynamic;
|
@@ -4,8 +4,6 @@ import com.mojang.serialization.Dynamic;
|
||||||
@@ -2449,7 +2449,7 @@ index a941cb9843fcf8d008ae846dcab95e32d823a1b2..ae42f77f9beff8ecee778252b52fce99
|
|||||||
import net.minecraft.world.damagesource.DamageSource;
|
import net.minecraft.world.damagesource.DamageSource;
|
||||||
import net.minecraft.world.entity.AgeableMob;
|
import net.minecraft.world.entity.AgeableMob;
|
||||||
import net.minecraft.world.entity.EntitySpawnReason;
|
import net.minecraft.world.entity.EntitySpawnReason;
|
||||||
@@ -56,13 +54,8 @@ public class Nautilus extends AbstractNautilus {
|
@@ -74,13 +72,8 @@ public class Nautilus extends AbstractNautilus {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void customServerAiStep(ServerLevel level) {
|
protected void customServerAiStep(ServerLevel level) {
|
||||||
@@ -2464,7 +2464,7 @@ index a941cb9843fcf8d008ae846dcab95e32d823a1b2..ae42f77f9beff8ecee778252b52fce99
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java b/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java
|
diff --git a/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java b/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java
|
||||||
index 9e2b703d23a044fecdbc544588079c345fd376c7..80ab49d0e1c705353bb754d9e94dc100093303a3 100644
|
index 7e4d005053e6812f329ab7ac1f252c547d4c9a12..71a78975f9c7ed0af4e22466a32edf56df138140 100644
|
||||||
--- a/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java
|
--- a/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java
|
||||||
+++ b/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java
|
+++ b/net/minecraft/world/entity/animal/nautilus/ZombieNautilus.java
|
||||||
@@ -13,8 +13,6 @@ import net.minecraft.network.syncher.SynchedEntityData;
|
@@ -13,8 +13,6 @@ import net.minecraft.network.syncher.SynchedEntityData;
|
||||||
@@ -2476,7 +2476,7 @@ index 9e2b703d23a044fecdbc544588079c345fd376c7..80ab49d0e1c705353bb754d9e94dc100
|
|||||||
import net.minecraft.world.DifficultyInstance;
|
import net.minecraft.world.DifficultyInstance;
|
||||||
import net.minecraft.world.damagesource.DamageSource;
|
import net.minecraft.world.damagesource.DamageSource;
|
||||||
import net.minecraft.world.entity.AgeableMob;
|
import net.minecraft.world.entity.AgeableMob;
|
||||||
@@ -81,13 +79,8 @@ public class ZombieNautilus extends AbstractNautilus {
|
@@ -99,13 +97,8 @@ public class ZombieNautilus extends AbstractNautilus {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void customServerAiStep(ServerLevel level) {
|
protected void customServerAiStep(ServerLevel level) {
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Option to disable disconnect.spam
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
index bb030b5a2ea38ee2ca3387eb9c92b1911ccad15a..62ac7576b2b1e2e214bcd2d9d35a20d2e9e4bd99 100644
|
index 8e74c192a252a69ade9221eb4ffb5edbd6766469..82931d8e250fdff02cfc5d8d347e32cf831b932c 100644
|
||||||
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
@@ -863,7 +863,7 @@ public class ServerGamePacketListenerImpl
|
@@ -856,7 +856,7 @@ public class ServerGamePacketListenerImpl
|
||||||
public void handleCustomCommandSuggestions(ServerboundCommandSuggestionPacket packet) {
|
public void handleCustomCommandSuggestions(ServerboundCommandSuggestionPacket packet) {
|
||||||
// PacketUtils.ensureRunningOnSameThread(packet, this, this.player.level()); // Paper - AsyncTabCompleteEvent; run this async
|
// PacketUtils.ensureRunningOnSameThread(packet, this, this.player.level()); // Paper - AsyncTabCompleteEvent; run this async
|
||||||
// CraftBukkit start
|
// CraftBukkit start
|
||||||
@@ -17,7 +17,7 @@ index bb030b5a2ea38ee2ca3387eb9c92b1911ccad15a..62ac7576b2b1e2e214bcd2d9d35a20d2
|
|||||||
this.disconnectAsync(Component.translatable("disconnect.spam"), org.bukkit.event.player.PlayerKickEvent.Cause.SPAM); // Paper - Kick event cause // Paper - add proper async disconnect
|
this.disconnectAsync(Component.translatable("disconnect.spam"), org.bukkit.event.player.PlayerKickEvent.Cause.SPAM); // Paper - Kick event cause // Paper - add proper async disconnect
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -875,7 +875,7 @@ public class ServerGamePacketListenerImpl
|
@@ -868,7 +868,7 @@ public class ServerGamePacketListenerImpl
|
||||||
// Paper end - Don't suggest if tab-complete is disabled
|
// Paper end - Don't suggest if tab-complete is disabled
|
||||||
// Paper start
|
// Paper start
|
||||||
final int index;
|
final int index;
|
||||||
@@ -26,7 +26,7 @@ index bb030b5a2ea38ee2ca3387eb9c92b1911ccad15a..62ac7576b2b1e2e214bcd2d9d35a20d2
|
|||||||
this.disconnectAsync(Component.translatable("disconnect.spam"), org.bukkit.event.player.PlayerKickEvent.Cause.SPAM); // Paper - add proper async disconnect
|
this.disconnectAsync(Component.translatable("disconnect.spam"), org.bukkit.event.player.PlayerKickEvent.Cause.SPAM); // Paper - add proper async disconnect
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -935,6 +935,7 @@ public class ServerGamePacketListenerImpl
|
@@ -928,6 +928,7 @@ public class ServerGamePacketListenerImpl
|
||||||
ParseResults<CommandSourceStack> parseResults = this.server.getCommands().getDispatcher().parse(stringReader, this.player.createCommandSourceStack());
|
ParseResults<CommandSourceStack> parseResults = this.server.getCommands().getDispatcher().parse(stringReader, this.player.createCommandSourceStack());
|
||||||
// Paper start - Handle non-recoverable exceptions
|
// Paper start - Handle non-recoverable exceptions
|
||||||
if (!parseResults.getExceptions().isEmpty()
|
if (!parseResults.getExceptions().isEmpty()
|
||||||
@@ -34,7 +34,7 @@ index bb030b5a2ea38ee2ca3387eb9c92b1911ccad15a..62ac7576b2b1e2e214bcd2d9d35a20d2
|
|||||||
&& parseResults.getExceptions().values().stream().anyMatch(e -> e instanceof io.papermc.paper.brigadier.TagParseCommandSyntaxException)) {
|
&& parseResults.getExceptions().values().stream().anyMatch(e -> e instanceof io.papermc.paper.brigadier.TagParseCommandSyntaxException)) {
|
||||||
this.disconnect(Component.translatable("disconnect.spam"), org.bukkit.event.player.PlayerKickEvent.Cause.SPAM);
|
this.disconnect(Component.translatable("disconnect.spam"), org.bukkit.event.player.PlayerKickEvent.Cause.SPAM);
|
||||||
return;
|
return;
|
||||||
@@ -2679,6 +2680,7 @@ public class ServerGamePacketListenerImpl
|
@@ -2672,6 +2673,7 @@ public class ServerGamePacketListenerImpl
|
||||||
// this.chatSpamThrottler.increment();
|
// this.chatSpamThrottler.increment();
|
||||||
if (!this.chatSpamThrottler.isIncrementAndUnderThreshold()
|
if (!this.chatSpamThrottler.isIncrementAndUnderThreshold()
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
@@ -42,7 +42,7 @@ index bb030b5a2ea38ee2ca3387eb9c92b1911ccad15a..62ac7576b2b1e2e214bcd2d9d35a20d2
|
|||||||
&& !this.server.getPlayerList().isOp(this.player.nameAndId())
|
&& !this.server.getPlayerList().isOp(this.player.nameAndId())
|
||||||
&& !this.server.isSingleplayerOwner(this.player.nameAndId())) {
|
&& !this.server.isSingleplayerOwner(this.player.nameAndId())) {
|
||||||
this.disconnectAsync(Component.translatable("disconnect.spam"), org.bukkit.event.player.PlayerKickEvent.Cause.SPAM); // Paper - kick event cause & add proper async disconnect
|
this.disconnectAsync(Component.translatable("disconnect.spam"), org.bukkit.event.player.PlayerKickEvent.Cause.SPAM); // Paper - kick event cause & add proper async disconnect
|
||||||
@@ -3392,7 +3394,7 @@ public class ServerGamePacketListenerImpl
|
@@ -3385,7 +3387,7 @@ public class ServerGamePacketListenerImpl
|
||||||
public void handlePlaceRecipe(ServerboundPlaceRecipePacket packet) {
|
public void handlePlaceRecipe(ServerboundPlaceRecipePacket packet) {
|
||||||
// Paper start - auto recipe limit
|
// Paper start - auto recipe limit
|
||||||
if (!org.bukkit.Bukkit.isPrimaryThread()) {
|
if (!org.bukkit.Bukkit.isPrimaryThread()) {
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ Subject: [PATCH] Option to allow weird movement and disable teleporting
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
index 62ac7576b2b1e2e214bcd2d9d35a20d2e9e4bd99..358ea5d52a2e1df9b885bd58a7681b4009361263 100644
|
index 82931d8e250fdff02cfc5d8d347e32cf831b932c..db486ebd55bdc335961e63c17f144430ad492653 100644
|
||||||
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
@@ -628,7 +628,7 @@ public class ServerGamePacketListenerImpl
|
@@ -628,7 +628,7 @@ public class ServerGamePacketListenerImpl
|
||||||
@@ -27,7 +27,7 @@ index 62ac7576b2b1e2e214bcd2d9d35a20d2e9e4bd99..358ea5d52a2e1df9b885bd58a7681b40
|
|||||||
flag1 = true; // Paper - diff on change, this should be moved wrongly
|
flag1 = true; // Paper - diff on change, this should be moved wrongly
|
||||||
LOGGER.warn("{} (vehicle of {}) moved wrongly! {}", rootVehicle.getPlainTextName(), this.player.getPlainTextName(), Math.sqrt(d7));
|
LOGGER.warn("{} (vehicle of {}) moved wrongly! {}", rootVehicle.getPlainTextName(), this.player.getPlainTextName(), Math.sqrt(d7));
|
||||||
}
|
}
|
||||||
@@ -1587,20 +1587,24 @@ public class ServerGamePacketListenerImpl
|
@@ -1580,20 +1580,24 @@ public class ServerGamePacketListenerImpl
|
||||||
if (this.shouldCheckPlayerMovement(isFallFlying)) {
|
if (this.shouldCheckPlayerMovement(isFallFlying)) {
|
||||||
float f2 = isFallFlying ? 300.0F : 100.0F;
|
float f2 = isFallFlying ? 300.0F : 100.0F;
|
||||||
if (d7 - d6 > Math.max(f2, Mth.square(org.spigotmc.SpigotConfig.movedTooQuicklyMultiplier * (float) i * speed))) {
|
if (d7 - d6 > Math.max(f2, Mth.square(org.spigotmc.SpigotConfig.movedTooQuicklyMultiplier * (float) i * speed))) {
|
||||||
@@ -63,7 +63,7 @@ index 62ac7576b2b1e2e214bcd2d9d35a20d2e9e4bd99..358ea5d52a2e1df9b885bd58a7681b40
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1661,6 +1665,7 @@ public class ServerGamePacketListenerImpl
|
@@ -1654,6 +1658,7 @@ public class ServerGamePacketListenerImpl
|
||||||
d7 = d3 * d3 + d4 * d4 + d5 * d5;
|
d7 = d3 * d3 + d4 * d4 + d5 * d5;
|
||||||
boolean movedWrongly = false; // Paper - Add fail move event; rename
|
boolean movedWrongly = false; // Paper - Add fail move event; rename
|
||||||
if (!this.player.isChangingDimension()
|
if (!this.player.isChangingDimension()
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ Subject: [PATCH] Lag compensation
|
|||||||
TODO: recheck GameRules
|
TODO: recheck GameRules
|
||||||
|
|
||||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||||
index c425b6a1f3cb2fb451671c1d5732f9352dac5bcf..eab57f8cc5b065e19728643f4ca1340d99751f92 100644
|
index 4195b8ec98ec5706c6a4641350a18cda0c456d23..ba88395a39dace9638aff195e38fbe4f67948ce9 100644
|
||||||
--- a/net/minecraft/server/MinecraftServer.java
|
--- a/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/net/minecraft/server/MinecraftServer.java
|
+++ b/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -292,6 +292,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -292,6 +292,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
@@ -17,7 +17,7 @@ index c425b6a1f3cb2fb451671c1d5732f9352dac5bcf..eab57f8cc5b065e19728643f4ca1340d
|
|||||||
// Paper start - improve tick loop
|
// Paper start - improve tick loop
|
||||||
public final ca.spottedleaf.moonrise.common.time.TickData tickTimes1s = new ca.spottedleaf.moonrise.common.time.TickData(java.util.concurrent.TimeUnit.SECONDS.toNanos(1L));
|
public final ca.spottedleaf.moonrise.common.time.TickData tickTimes1s = new ca.spottedleaf.moonrise.common.time.TickData(java.util.concurrent.TimeUnit.SECONDS.toNanos(1L));
|
||||||
public final ca.spottedleaf.moonrise.common.time.TickData tickTimes5s = new ca.spottedleaf.moonrise.common.time.TickData(java.util.concurrent.TimeUnit.SECONDS.toNanos(5L));
|
public final ca.spottedleaf.moonrise.common.time.TickData tickTimes5s = new ca.spottedleaf.moonrise.common.time.TickData(java.util.concurrent.TimeUnit.SECONDS.toNanos(5L));
|
||||||
@@ -1599,6 +1600,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1600,6 +1601,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
}
|
}
|
||||||
|
|
||||||
this.server.spark.tickStart(); // Paper - spark
|
this.server.spark.tickStart(); // Paper - spark
|
||||||
|
|||||||
@@ -18,10 +18,10 @@ index ace1dc38dac79298141bca666b188a4258183df7..e93294cbe2e5637257cdd189c8002755
|
|||||||
new java.util.concurrent.LinkedBlockingQueue<>(),
|
new java.util.concurrent.LinkedBlockingQueue<>(),
|
||||||
new com.google.common.util.concurrent.ThreadFactoryBuilder()
|
new com.google.common.util.concurrent.ThreadFactoryBuilder()
|
||||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||||
index eab57f8cc5b065e19728643f4ca1340d99751f92..56b2c8b781ad7d416ceb05f527826186bd39b188 100644
|
index ba88395a39dace9638aff195e38fbe4f67948ce9..31f8155dd62a4b6bbf5aa51d3c6e0f57438df5da 100644
|
||||||
--- a/net/minecraft/server/MinecraftServer.java
|
--- a/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/net/minecraft/server/MinecraftServer.java
|
+++ b/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -2729,8 +2729,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -2730,8 +2730,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -36,10 +36,10 @@ index eab57f8cc5b065e19728643f4ca1340d99751f92..56b2c8b781ad7d416ceb05f527826186
|
|||||||
|
|
||||||
public ChatDecorator getChatDecorator() {
|
public ChatDecorator getChatDecorator() {
|
||||||
diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
index 358ea5d52a2e1df9b885bd58a7681b4009361263..41bc20f28171b50849022e4b64c2eee38eec2c16 100644
|
index db486ebd55bdc335961e63c17f144430ad492653..511ecf08faa8a71a027cc37d06a9de6bcc6e8966 100644
|
||||||
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
@@ -855,8 +855,11 @@ public class ServerGamePacketListenerImpl
|
@@ -848,8 +848,11 @@ public class ServerGamePacketListenerImpl
|
||||||
}
|
}
|
||||||
|
|
||||||
// Paper start - AsyncTabCompleteEvent
|
// Paper start - AsyncTabCompleteEvent
|
||||||
|
|||||||
@@ -412,10 +412,10 @@ index a714ee2724220c5bc5f3d9eebb0a709611478b3a..7be8790e7c2b9f8fefc646ec6ebc4a21
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
diff --git a/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
index 41bc20f28171b50849022e4b64c2eee38eec2c16..ef03cdbf80bbd1447a272e36a74b86121391e7f2 100644
|
index 511ecf08faa8a71a027cc37d06a9de6bcc6e8966..dfd8194adb402b43ec34f05a1e734ac07371f4ab 100644
|
||||||
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
--- a/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
+++ b/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||||
@@ -1967,7 +1967,6 @@ public class ServerGamePacketListenerImpl
|
@@ -1960,7 +1960,6 @@ public class ServerGamePacketListenerImpl
|
||||||
}
|
}
|
||||||
|
|
||||||
public void internalTeleport(PositionMoveRotation posMoveRotation, Set<Relative> relatives) {
|
public void internalTeleport(PositionMoveRotation posMoveRotation, Set<Relative> relatives) {
|
||||||
|
|||||||
@@ -111,7 +111,7 @@ index fc618f97cee829dbd4b0c167c5fe515a58189c37..1e4eeb81fe7ef7356d398bb898278699
|
|||||||
List<org.bukkit.block.BlockState> states = new java.util.ArrayList<>(level.capturedBlockStates.values());
|
List<org.bukkit.block.BlockState> states = new java.util.ArrayList<>(level.capturedBlockStates.values());
|
||||||
level.capturedBlockStates.clear();
|
level.capturedBlockStates.clear();
|
||||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||||
index 190eb522be262d7a237aca69bb732463a1895caf..53e1eb987ada082d241ce6f691c3ef2b22f5e709 100644
|
index 2488fc0ae21b8e10895b0ef6397d8e0e5bc843a8..b2d66e2f24e64fce0f260e6c807fc1894f122eea 100644
|
||||||
--- a/net/minecraft/server/MinecraftServer.java
|
--- a/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/net/minecraft/server/MinecraftServer.java
|
+++ b/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -294,6 +294,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -294,6 +294,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
@@ -122,7 +122,7 @@ index 190eb522be262d7a237aca69bb732463a1895caf..53e1eb987ada082d241ce6f691c3ef2b
|
|||||||
// Paper start - improve tick loop
|
// Paper start - improve tick loop
|
||||||
public final ca.spottedleaf.moonrise.common.time.TickData tickTimes1s = new ca.spottedleaf.moonrise.common.time.TickData(java.util.concurrent.TimeUnit.SECONDS.toNanos(1L));
|
public final ca.spottedleaf.moonrise.common.time.TickData tickTimes1s = new ca.spottedleaf.moonrise.common.time.TickData(java.util.concurrent.TimeUnit.SECONDS.toNanos(1L));
|
||||||
public final ca.spottedleaf.moonrise.common.time.TickData tickTimes5s = new ca.spottedleaf.moonrise.common.time.TickData(java.util.concurrent.TimeUnit.SECONDS.toNanos(5L));
|
public final ca.spottedleaf.moonrise.common.time.TickData tickTimes5s = new ca.spottedleaf.moonrise.common.time.TickData(java.util.concurrent.TimeUnit.SECONDS.toNanos(5L));
|
||||||
@@ -401,24 +402,36 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -402,24 +403,36 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
private long lastMidTickExecute;
|
private long lastMidTickExecute;
|
||||||
private long lastMidTickExecuteFailure;
|
private long lastMidTickExecuteFailure;
|
||||||
|
|
||||||
@@ -172,7 +172,7 @@ index 190eb522be262d7a237aca69bb732463a1895caf..53e1eb987ada082d241ce6f691c3ef2b
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -1736,6 +1749,18 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1737,6 +1750,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
|
public final io.papermc.paper.threadedregions.EntityScheduler.EntitySchedulerTickList entitySchedulerTickList = new io.papermc.paper.threadedregions.EntityScheduler.EntitySchedulerTickList(); // Paper - optimise Folia entity scheduler
|
||||||
|
|
||||||
@@ -191,7 +191,7 @@ index 190eb522be262d7a237aca69bb732463a1895caf..53e1eb987ada082d241ce6f691c3ef2b
|
|||||||
protected void tickChildren(BooleanSupplier hasTimeLeft) {
|
protected void tickChildren(BooleanSupplier hasTimeLeft) {
|
||||||
this.getPlayerList().getPlayers().forEach(serverPlayer1 -> serverPlayer1.connection.suspendFlushing());
|
this.getPlayerList().getPlayers().forEach(serverPlayer1 -> serverPlayer1.connection.suspendFlushing());
|
||||||
this.server.getScheduler().mainThreadHeartbeat(); // CraftBukkit
|
this.server.getScheduler().mainThreadHeartbeat(); // CraftBukkit
|
||||||
@@ -1782,28 +1807,43 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1783,28 +1808,43 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
}
|
}
|
||||||
|
|
||||||
this.isIteratingOverLevels = true; // Paper - Throw exception on world create while being ticked
|
this.isIteratingOverLevels = true; // Paper - Throw exception on world create while being ticked
|
||||||
@@ -253,7 +253,7 @@ index 190eb522be262d7a237aca69bb732463a1895caf..53e1eb987ada082d241ce6f691c3ef2b
|
|||||||
this.isIteratingOverLevels = false; // Paper - Throw exception on world create while being ticked
|
this.isIteratingOverLevels = false; // Paper - Throw exception on world create while being ticked
|
||||||
|
|
||||||
this.tickConnection();
|
this.tickConnection();
|
||||||
@@ -1887,6 +1927,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1888,6 +1928,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
Map<ResourceKey<Level>, ServerLevel> oldLevels = this.levels;
|
Map<ResourceKey<Level>, ServerLevel> oldLevels = this.levels;
|
||||||
Map<ResourceKey<Level>, ServerLevel> newLevels = Maps.newLinkedHashMap(oldLevels);
|
Map<ResourceKey<Level>, ServerLevel> newLevels = Maps.newLinkedHashMap(oldLevels);
|
||||||
newLevels.remove(level.dimension());
|
newLevels.remove(level.dimension());
|
||||||
|
|||||||
@@ -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
|
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||||
index 53e1eb987ada082d241ce6f691c3ef2b22f5e709..fd183c0cb9bc9de2a717e9e6845ff76ec84ba438 100644
|
index b2d66e2f24e64fce0f260e6c807fc1894f122eea..9c52a588af51fd7c0bcbc5267602baba8a53b2d3 100644
|
||||||
--- a/net/minecraft/server/MinecraftServer.java
|
--- a/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/net/minecraft/server/MinecraftServer.java
|
+++ b/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1752,7 +1752,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1753,7 +1753,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
// DivineMC start - Parallel world ticking
|
// DivineMC start - Parallel world ticking
|
||||||
private void tickLevel(ServerLevel serverLevel, BooleanSupplier hasTimeLeft) {
|
private void tickLevel(ServerLevel serverLevel, BooleanSupplier hasTimeLeft) {
|
||||||
try {
|
try {
|
||||||
|
|||||||
@@ -20,10 +20,10 @@ index 3e4241976fdfe65bc0aae90a9097770745c0ddf1..98b101fde04fbf5507f021bb8d8e6bed
|
|||||||
if (var3 instanceof ReportedException reportedException && reportedException.getCause() instanceof OutOfMemoryError) {
|
if (var3 instanceof ReportedException reportedException && reportedException.getCause() instanceof OutOfMemoryError) {
|
||||||
throw PacketUtils.makeReportedException(var3, this.packet, this.listener);
|
throw PacketUtils.makeReportedException(var3, this.packet, this.listener);
|
||||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||||
index fd183c0cb9bc9de2a717e9e6845ff76ec84ba438..9fdef6cda5eb9a160b4c1eff1934ccadb9f64e0c 100644
|
index 9c52a588af51fd7c0bcbc5267602baba8a53b2d3..354e6792cd93a77870d4a061a5b3d9fe4bed2458 100644
|
||||||
--- a/net/minecraft/server/MinecraftServer.java
|
--- a/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/net/minecraft/server/MinecraftServer.java
|
+++ b/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1761,6 +1761,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1762,6 +1762,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
serverLevel.tickTimes10s.add(this.tickCount, j);
|
serverLevel.tickTimes10s.add(this.tickCount, j);
|
||||||
serverLevel.tickTimes60s.add(this.tickCount, j);
|
serverLevel.tickTimes60s.add(this.tickCount, j);
|
||||||
// DivineMC end - MSPT Tracking for each world
|
// DivineMC end - MSPT Tracking for each world
|
||||||
|
|||||||
@@ -35,10 +35,10 @@ index 1da034752064312962a4144f91be5265a9a08997..e583baf264e066238804a76e7ce7219a
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||||
index 9fdef6cda5eb9a160b4c1eff1934ccadb9f64e0c..2ce027c113c1b4b6ecfb84649e640e583c463626 100644
|
index 354e6792cd93a77870d4a061a5b3d9fe4bed2458..580746b5c66a60949281f4a0f814b2e8df161fb9 100644
|
||||||
--- a/net/minecraft/server/MinecraftServer.java
|
--- a/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/net/minecraft/server/MinecraftServer.java
|
+++ b/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1865,6 +1865,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -1866,6 +1866,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
GameTestTicker.SINGLETON.tick();
|
GameTestTicker.SINGLETON.tick();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -60,10 +60,10 @@ index 51c126735ace8fdde89ad97b5cab62f244212db0..23f6ed26b531ea570fdf2ae48c1e2710
|
|||||||
+ public void moonrise$write(final org.bxteam.divinemc.region.IRegionFile regionFile) throws IOException; // DivineMC - Buffered Linear region format
|
+ public void moonrise$write(final org.bxteam.divinemc.region.IRegionFile regionFile) throws IOException; // DivineMC - Buffered Linear region format
|
||||||
}
|
}
|
||||||
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
diff --git a/net/minecraft/server/MinecraftServer.java b/net/minecraft/server/MinecraftServer.java
|
||||||
index 2ce027c113c1b4b6ecfb84649e640e583c463626..49acd83c18368271ce0de1cec28f5bc4f311a442 100644
|
index 580746b5c66a60949281f4a0f814b2e8df161fb9..27021e41d5f9f5fb5763eba929ba8f6eb46fb9fa 100644
|
||||||
--- a/net/minecraft/server/MinecraftServer.java
|
--- a/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/net/minecraft/server/MinecraftServer.java
|
+++ b/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -962,10 +962,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
@@ -963,10 +963,10 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
if (flush) {
|
if (flush) {
|
||||||
for (ServerLevel serverLevel : this.getAllLevels()) {
|
for (ServerLevel serverLevel : this.getAllLevels()) {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
--- a/net/minecraft/server/MinecraftServer.java
|
--- a/net/minecraft/server/MinecraftServer.java
|
||||||
+++ b/net/minecraft/server/MinecraftServer.java
|
+++ b/net/minecraft/server/MinecraftServer.java
|
||||||
@@ -1008,6 +_,13 @@
|
@@ -1009,6 +_,13 @@
|
||||||
if (this.hasStopped) return;
|
if (this.hasStopped) return;
|
||||||
this.hasStopped = true;
|
this.hasStopped = true;
|
||||||
}
|
}
|
||||||
@@ -14,7 +14,7 @@
|
|||||||
if (!hasLoggedStop && isDebugging()) io.papermc.paper.util.TraceUtil.dumpTraceForThread("Server stopped"); // Paper - Debugging
|
if (!hasLoggedStop && isDebugging()) io.papermc.paper.util.TraceUtil.dumpTraceForThread("Server stopped"); // Paper - Debugging
|
||||||
shutdownThread = Thread.currentThread(); // Paper - Improved watchdog support
|
shutdownThread = Thread.currentThread(); // Paper - Improved watchdog support
|
||||||
org.spigotmc.WatchdogThread.doStop(); // Paper - Improved watchdog support
|
org.spigotmc.WatchdogThread.doStop(); // Paper - Improved watchdog support
|
||||||
@@ -1100,6 +_,7 @@
|
@@ -1101,6 +_,7 @@
|
||||||
// Paper end - rewrite chunk system
|
// Paper end - rewrite chunk system
|
||||||
// Paper start - Improved watchdog support - move final shutdown items here
|
// Paper start - Improved watchdog support - move final shutdown items here
|
||||||
Util.shutdownExecutors();
|
Util.shutdownExecutors();
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ This seems stupid, but it does seem that it improves the performance a bit, and
|
|||||||
We also create a "canSee" method tailored for "ChunkMap#updatePlayer()", a method without the equals check (the "updatePlayer()" already checks if the entity is the same entity) because the CraftPlayer's `equals()` check is a *bit* expensive compared to only checking the object's identity, and because the identity has already been check, we don't need to check it twice.
|
We also create a "canSee" method tailored for "ChunkMap#updatePlayer()", a method without the equals check (the "updatePlayer()" already checks if the entity is the same entity) because the CraftPlayer's `equals()` check is a *bit* expensive compared to only checking the object's identity, and because the identity has already been check, we don't need to check it twice.
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||||
index dc0ef7978ef22b7ce1a3b1e4d608f63c78077572..770939f9abf4640dff5fc6af113926913359186a 100644
|
index 38a03942a3e6473b8e8a56cf2125a857dd3e9193..21ecf7a0c607eebdd28aa26474a363beb7b57b72 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||||
@@ -236,7 +236,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player, PluginMessa
|
@@ -236,7 +236,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player, PluginMessa
|
||||||
@@ -26,7 +26,7 @@ index dc0ef7978ef22b7ce1a3b1e4d608f63c78077572..770939f9abf4640dff5fc6af11392691
|
|||||||
private final Set<UUID> unlistedEntities = new HashSet<>(); // Paper - Add Listing API for Player
|
private final Set<UUID> unlistedEntities = new HashSet<>(); // Paper - Add Listing API for Player
|
||||||
private static final WeakHashMap<Plugin, WeakReference<Plugin>> pluginWeakReferences = new WeakHashMap<>();
|
private static final WeakHashMap<Plugin, WeakReference<Plugin>> pluginWeakReferences = new WeakHashMap<>();
|
||||||
private int hash = 0;
|
private int hash = 0;
|
||||||
@@ -2142,9 +2142,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player, PluginMessa
|
@@ -2141,9 +2141,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player, PluginMessa
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean canSee(org.bukkit.entity.Entity entity) {
|
public boolean canSee(org.bukkit.entity.Entity entity) {
|
||||||
|
|||||||
@@ -32,10 +32,10 @@ index d7398b1ecf2660c29fb7d106b48fe02d3736603e..ab499a7eaccdc1578ec64f90f54f79b0
|
|||||||
}
|
}
|
||||||
|
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||||
index 770939f9abf4640dff5fc6af113926913359186a..c8d6b0dfe5674512b0d55e065b274b6df3f11c95 100644
|
index 21ecf7a0c607eebdd28aa26474a363beb7b57b72..1a111cabac9995aa481baaf2fe7bfbf02a296b96 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||||
@@ -2717,7 +2717,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player, PluginMessa
|
@@ -2716,7 +2716,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player, PluginMessa
|
||||||
Iterator<AttributeInstance> iterator = collection.iterator();
|
Iterator<AttributeInstance> iterator = collection.iterator();
|
||||||
while (iterator.hasNext()) {
|
while (iterator.hasNext()) {
|
||||||
AttributeInstance genericInstance = iterator.next();
|
AttributeInstance genericInstance = iterator.next();
|
||||||
@@ -45,7 +45,7 @@ index 770939f9abf4640dff5fc6af113926913359186a..c8d6b0dfe5674512b0d55e065b274b6d
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||||
index 5bb856e86f2270c75406b8a5540f4a9c1e679fb4..da3a92e0f857a57c954b638b8e3bf7e65a7bd58e 100644
|
index d37d7ae608c80913afdde48c3e03d11e4697d1d1..25aff851e4723500d0f8d05c0d231103ee5dff7b 100644
|
||||||
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||||
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
|
||||||
@@ -1930,6 +1930,26 @@ public class CraftEventFactory {
|
@@ -1930,6 +1930,26 @@ public class CraftEventFactory {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Add missing purpur config options
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||||
index 96189eedfe63e457cdeca64b91670222fa0df31b..98a62c5b9448ef788e5ccf24d343175e44142c8e 100644
|
index fddc1cf85d12fe36ed284be80f3f745535e06786..c6abcc520f11538532cf22a550e8741056f68e6a 100644
|
||||||
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||||
@@ -333,6 +333,7 @@ public class PurpurConfig {
|
@@ -333,6 +333,7 @@ public class PurpurConfig {
|
||||||
@@ -25,10 +25,10 @@ index 96189eedfe63e457cdeca64b91670222fa0df31b..98a62c5b9448ef788e5ccf24d343175e
|
|||||||
org.bukkit.event.inventory.InventoryType.ENDER_CHEST.setDefaultSize(enderChestSixRows ? 54 : 27);
|
org.bukkit.event.inventory.InventoryType.ENDER_CHEST.setDefaultSize(enderChestSixRows ? 54 : 27);
|
||||||
enderChestPermissionRows = getBoolean("settings.blocks.ender_chest.use-permissions-for-rows", enderChestPermissionRows);
|
enderChestPermissionRows = getBoolean("settings.blocks.ender_chest.use-permissions-for-rows", enderChestPermissionRows);
|
||||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||||
index 24a6733d8e9825d18aaacc46054929418744aa19..68e84c12fc25c425696aa1687f70660c19961f21 100644
|
index 0ee5516fe325d8e2aa08592e1ae757b0bfb98bfe..9236c5b6c11885f0cea49fa7c4a35c4dbcad3b24 100644
|
||||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||||
@@ -1272,12 +1272,20 @@ public class PurpurWorldConfig {
|
@@ -1274,12 +1274,20 @@ public class PurpurWorldConfig {
|
||||||
public boolean allayControllable = true;
|
public boolean allayControllable = true;
|
||||||
public double allayMaxHealth = 20.0D;
|
public double allayMaxHealth = 20.0D;
|
||||||
public double allayScale = 1.0D;
|
public double allayScale = 1.0D;
|
||||||
@@ -49,7 +49,7 @@ index 24a6733d8e9825d18aaacc46054929418744aa19..68e84c12fc25c425696aa1687f70660c
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean armadilloRidable = false;
|
public boolean armadilloRidable = false;
|
||||||
@@ -1428,6 +1436,10 @@ public class PurpurWorldConfig {
|
@@ -1434,6 +1442,10 @@ public class PurpurWorldConfig {
|
||||||
public double camelMovementSpeedMin = 0.09D;
|
public double camelMovementSpeedMin = 0.09D;
|
||||||
public double camelMovementSpeedMax = 0.09D;
|
public double camelMovementSpeedMax = 0.09D;
|
||||||
public int camelBreedingTicks = 6000;
|
public int camelBreedingTicks = 6000;
|
||||||
@@ -60,7 +60,7 @@ index 24a6733d8e9825d18aaacc46054929418744aa19..68e84c12fc25c425696aa1687f70660c
|
|||||||
private void camelSettings() {
|
private void camelSettings() {
|
||||||
camelRidableInWater = getBoolean("mobs.camel.ridable-in-water", camelRidableInWater);
|
camelRidableInWater = getBoolean("mobs.camel.ridable-in-water", camelRidableInWater);
|
||||||
camelMaxHealthMin = getDouble("mobs.camel.attributes.max_health.min", camelMaxHealthMin);
|
camelMaxHealthMin = getDouble("mobs.camel.attributes.max_health.min", camelMaxHealthMin);
|
||||||
@@ -1437,6 +1449,10 @@ public class PurpurWorldConfig {
|
@@ -1443,6 +1455,10 @@ public class PurpurWorldConfig {
|
||||||
camelMovementSpeedMin = getDouble("mobs.camel.attributes.movement_speed.min", camelMovementSpeedMin);
|
camelMovementSpeedMin = getDouble("mobs.camel.attributes.movement_speed.min", camelMovementSpeedMin);
|
||||||
camelMovementSpeedMax = getDouble("mobs.camel.attributes.movement_speed.max", camelMovementSpeedMax);
|
camelMovementSpeedMax = getDouble("mobs.camel.attributes.movement_speed.max", camelMovementSpeedMax);
|
||||||
camelBreedingTicks = getInt("mobs.camel.breeding-delay-ticks", camelBreedingTicks);
|
camelBreedingTicks = getInt("mobs.camel.breeding-delay-ticks", camelBreedingTicks);
|
||||||
@@ -71,7 +71,7 @@ index 24a6733d8e9825d18aaacc46054929418744aa19..68e84c12fc25c425696aa1687f70660c
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean catRidable = false;
|
public boolean catRidable = false;
|
||||||
@@ -1945,12 +1961,22 @@ public class PurpurWorldConfig {
|
@@ -1951,12 +1967,22 @@ public class PurpurWorldConfig {
|
||||||
public boolean frogControllable = true;
|
public boolean frogControllable = true;
|
||||||
public float frogRidableJumpHeight = 0.65F;
|
public float frogRidableJumpHeight = 0.65F;
|
||||||
public int frogBreedingTicks = 6000;
|
public int frogBreedingTicks = 6000;
|
||||||
@@ -94,7 +94,7 @@ index 24a6733d8e9825d18aaacc46054929418744aa19..68e84c12fc25c425696aa1687f70660c
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean ghastRidable = false;
|
public boolean ghastRidable = false;
|
||||||
@@ -3057,6 +3083,10 @@ public class PurpurWorldConfig {
|
@@ -3059,6 +3085,10 @@ public class PurpurWorldConfig {
|
||||||
public double snifferMaxHealth = 14.0D;
|
public double snifferMaxHealth = 14.0D;
|
||||||
public double snifferScale = 1.0D;
|
public double snifferScale = 1.0D;
|
||||||
public int snifferBreedingTicks = 6000;
|
public int snifferBreedingTicks = 6000;
|
||||||
@@ -105,7 +105,7 @@ index 24a6733d8e9825d18aaacc46054929418744aa19..68e84c12fc25c425696aa1687f70660c
|
|||||||
private void snifferSettings() {
|
private void snifferSettings() {
|
||||||
snifferRidable = getBoolean("mobs.sniffer.ridable", snifferRidable);
|
snifferRidable = getBoolean("mobs.sniffer.ridable", snifferRidable);
|
||||||
snifferRidableInWater = getBoolean("mobs.sniffer.ridable-in-water", snifferRidableInWater);
|
snifferRidableInWater = getBoolean("mobs.sniffer.ridable-in-water", snifferRidableInWater);
|
||||||
@@ -3064,6 +3094,10 @@ public class PurpurWorldConfig {
|
@@ -3066,6 +3096,10 @@ public class PurpurWorldConfig {
|
||||||
snifferMaxHealth = getDouble("mobs.sniffer.attributes.max_health", snifferMaxHealth);
|
snifferMaxHealth = getDouble("mobs.sniffer.attributes.max_health", snifferMaxHealth);
|
||||||
snifferScale = Mth.clamp(getDouble("mobs.sniffer.attributes.scale", snifferScale), 0.0625D, 16.0D);
|
snifferScale = Mth.clamp(getDouble("mobs.sniffer.attributes.scale", snifferScale), 0.0625D, 16.0D);
|
||||||
snifferBreedingTicks = getInt("mobs.sniffer.breeding-delay-ticks", snifferBreedingTicks);
|
snifferBreedingTicks = getInt("mobs.sniffer.breeding-delay-ticks", snifferBreedingTicks);
|
||||||
@@ -116,7 +116,7 @@ index 24a6733d8e9825d18aaacc46054929418744aa19..68e84c12fc25c425696aa1687f70660c
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean squidRidable = false;
|
public boolean squidRidable = false;
|
||||||
@@ -3165,10 +3199,20 @@ public class PurpurWorldConfig {
|
@@ -3167,10 +3201,20 @@ public class PurpurWorldConfig {
|
||||||
public boolean tadpoleRidable = false;
|
public boolean tadpoleRidable = false;
|
||||||
public boolean tadpoleRidableInWater = true;
|
public boolean tadpoleRidableInWater = true;
|
||||||
public boolean tadpoleControllable = true;
|
public boolean tadpoleControllable = true;
|
||||||
@@ -137,7 +137,7 @@ index 24a6733d8e9825d18aaacc46054929418744aa19..68e84c12fc25c425696aa1687f70660c
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean traderLlamaRidable = false;
|
public boolean traderLlamaRidable = false;
|
||||||
@@ -3403,11 +3447,21 @@ public class PurpurWorldConfig {
|
@@ -3405,11 +3449,21 @@ public class PurpurWorldConfig {
|
||||||
public boolean wardenRidableInWater = true;
|
public boolean wardenRidableInWater = true;
|
||||||
public boolean wardenControllable = true;
|
public boolean wardenControllable = true;
|
||||||
public boolean wardenCanUseSonicBoom = true;
|
public boolean wardenCanUseSonicBoom = true;
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Optimize default values for configs
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||||
index 98a62c5b9448ef788e5ccf24d343175e44142c8e..e596e1ed1b65ea3589b13d0684e7f136316b5770 100644
|
index c6abcc520f11538532cf22a550e8741056f68e6a..2257a8ac0b31f4c353fa50d9a4f43b1e8014cbc7 100644
|
||||||
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
--- a/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
+++ b/src/main/java/org/purpurmc/purpur/PurpurConfig.java
|
||||||
@@ -246,7 +246,7 @@ public class PurpurConfig {
|
@@ -246,7 +246,7 @@ public class PurpurConfig {
|
||||||
@@ -18,10 +18,10 @@ index 98a62c5b9448ef788e5ccf24d343175e44142c8e..e596e1ed1b65ea3589b13d0684e7f136
|
|||||||
useAlternateKeepAlive = getBoolean("settings.use-alternate-keepalive", useAlternateKeepAlive);
|
useAlternateKeepAlive = getBoolean("settings.use-alternate-keepalive", useAlternateKeepAlive);
|
||||||
}
|
}
|
||||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||||
index 68e84c12fc25c425696aa1687f70660c19961f21..dbc8fd59f97ccd13e805128b7aee23486c840ad8 100644
|
index 9236c5b6c11885f0cea49fa7c4a35c4dbcad3b24..975608ac58b800ba01c613dfcf78e4be3b8ef3ef 100644
|
||||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||||
@@ -3340,8 +3340,8 @@ public class PurpurWorldConfig {
|
@@ -3342,8 +3342,8 @@ public class PurpurWorldConfig {
|
||||||
public boolean villagerDisplayTradeItem = true;
|
public boolean villagerDisplayTradeItem = true;
|
||||||
public int villagerSpawnIronGolemRadius = 0;
|
public int villagerSpawnIronGolemRadius = 0;
|
||||||
public int villagerSpawnIronGolemLimit = 0;
|
public int villagerSpawnIronGolemLimit = 0;
|
||||||
|
|||||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Configurable movement speed for entities
|
|||||||
|
|
||||||
|
|
||||||
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||||
index dbc8fd59f97ccd13e805128b7aee23486c840ad8..16a88be168ad71a5a8a96960dfbb54119f586132 100644
|
index 975608ac58b800ba01c613dfcf78e4be3b8ef3ef..57bbcf0ef659e4f0954b994d40468b3fc40aba0c 100644
|
||||||
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||||
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
||||||
@@ -1747,6 +1747,7 @@ public class PurpurWorldConfig {
|
@@ -1753,6 +1753,7 @@ public class PurpurWorldConfig {
|
||||||
public boolean drownedTakeDamageFromWater = false;
|
public boolean drownedTakeDamageFromWater = false;
|
||||||
public boolean drownedBreakDoors = false;
|
public boolean drownedBreakDoors = false;
|
||||||
public boolean drownedAlwaysDropExp = false;
|
public boolean drownedAlwaysDropExp = false;
|
||||||
@@ -16,7 +16,7 @@ index dbc8fd59f97ccd13e805128b7aee23486c840ad8..16a88be168ad71a5a8a96960dfbb5411
|
|||||||
private void drownedSettings() {
|
private void drownedSettings() {
|
||||||
drownedRidable = getBoolean("mobs.drowned.ridable", drownedRidable);
|
drownedRidable = getBoolean("mobs.drowned.ridable", drownedRidable);
|
||||||
drownedRidableInWater = getBoolean("mobs.drowned.ridable-in-water", drownedRidableInWater);
|
drownedRidableInWater = getBoolean("mobs.drowned.ridable-in-water", drownedRidableInWater);
|
||||||
@@ -1765,6 +1766,7 @@ public class PurpurWorldConfig {
|
@@ -1771,6 +1772,7 @@ public class PurpurWorldConfig {
|
||||||
drownedTakeDamageFromWater = getBoolean("mobs.drowned.takes-damage-from-water", drownedTakeDamageFromWater);
|
drownedTakeDamageFromWater = getBoolean("mobs.drowned.takes-damage-from-water", drownedTakeDamageFromWater);
|
||||||
drownedBreakDoors = getBoolean("mobs.drowned.can-break-doors", drownedBreakDoors);
|
drownedBreakDoors = getBoolean("mobs.drowned.can-break-doors", drownedBreakDoors);
|
||||||
drownedAlwaysDropExp = getBoolean("mobs.drowned.always-drop-exp", drownedAlwaysDropExp);
|
drownedAlwaysDropExp = getBoolean("mobs.drowned.always-drop-exp", drownedAlwaysDropExp);
|
||||||
@@ -24,7 +24,7 @@ index dbc8fd59f97ccd13e805128b7aee23486c840ad8..16a88be168ad71a5a8a96960dfbb5411
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean elderGuardianRidable = false;
|
public boolean elderGuardianRidable = false;
|
||||||
@@ -2192,6 +2194,7 @@ public class PurpurWorldConfig {
|
@@ -2198,6 +2200,7 @@ public class PurpurWorldConfig {
|
||||||
public boolean huskJockeyTryExistingChickens = true;
|
public boolean huskJockeyTryExistingChickens = true;
|
||||||
public boolean huskTakeDamageFromWater = false;
|
public boolean huskTakeDamageFromWater = false;
|
||||||
public boolean huskAlwaysDropExp = false;
|
public boolean huskAlwaysDropExp = false;
|
||||||
@@ -32,7 +32,7 @@ index dbc8fd59f97ccd13e805128b7aee23486c840ad8..16a88be168ad71a5a8a96960dfbb5411
|
|||||||
private void huskSettings() {
|
private void huskSettings() {
|
||||||
huskRidable = getBoolean("mobs.husk.ridable", huskRidable);
|
huskRidable = getBoolean("mobs.husk.ridable", huskRidable);
|
||||||
huskRidableInWater = getBoolean("mobs.husk.ridable-in-water", huskRidableInWater);
|
huskRidableInWater = getBoolean("mobs.husk.ridable-in-water", huskRidableInWater);
|
||||||
@@ -2209,6 +2212,7 @@ public class PurpurWorldConfig {
|
@@ -2215,6 +2218,7 @@ public class PurpurWorldConfig {
|
||||||
huskJockeyTryExistingChickens = getBoolean("mobs.husk.jockey.try-existing-chickens", huskJockeyTryExistingChickens);
|
huskJockeyTryExistingChickens = getBoolean("mobs.husk.jockey.try-existing-chickens", huskJockeyTryExistingChickens);
|
||||||
huskTakeDamageFromWater = getBoolean("mobs.husk.takes-damage-from-water", huskTakeDamageFromWater);
|
huskTakeDamageFromWater = getBoolean("mobs.husk.takes-damage-from-water", huskTakeDamageFromWater);
|
||||||
huskAlwaysDropExp = getBoolean("mobs.husk.always-drop-exp", huskAlwaysDropExp);
|
huskAlwaysDropExp = getBoolean("mobs.husk.always-drop-exp", huskAlwaysDropExp);
|
||||||
@@ -40,7 +40,7 @@ index dbc8fd59f97ccd13e805128b7aee23486c840ad8..16a88be168ad71a5a8a96960dfbb5411
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean illusionerRidable = false;
|
public boolean illusionerRidable = false;
|
||||||
@@ -3623,6 +3627,7 @@ public class PurpurWorldConfig {
|
@@ -3625,6 +3629,7 @@ public class PurpurWorldConfig {
|
||||||
public boolean zombieTakeDamageFromWater = false;
|
public boolean zombieTakeDamageFromWater = false;
|
||||||
public boolean zombieAlwaysDropExp = false;
|
public boolean zombieAlwaysDropExp = false;
|
||||||
public double zombieHeadVisibilityPercent = 0.5D;
|
public double zombieHeadVisibilityPercent = 0.5D;
|
||||||
@@ -48,7 +48,7 @@ index dbc8fd59f97ccd13e805128b7aee23486c840ad8..16a88be168ad71a5a8a96960dfbb5411
|
|||||||
private void zombieSettings() {
|
private void zombieSettings() {
|
||||||
zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable);
|
zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable);
|
||||||
zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater);
|
zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater);
|
||||||
@@ -3648,6 +3653,7 @@ public class PurpurWorldConfig {
|
@@ -3650,6 +3655,7 @@ public class PurpurWorldConfig {
|
||||||
zombieTakeDamageFromWater = getBoolean("mobs.zombie.takes-damage-from-water", zombieTakeDamageFromWater);
|
zombieTakeDamageFromWater = getBoolean("mobs.zombie.takes-damage-from-water", zombieTakeDamageFromWater);
|
||||||
zombieAlwaysDropExp = getBoolean("mobs.zombie.always-drop-exp", zombieAlwaysDropExp);
|
zombieAlwaysDropExp = getBoolean("mobs.zombie.always-drop-exp", zombieAlwaysDropExp);
|
||||||
zombieHeadVisibilityPercent = getDouble("mobs.zombie.head-visibility-percent", zombieHeadVisibilityPercent);
|
zombieHeadVisibilityPercent = getDouble("mobs.zombie.head-visibility-percent", zombieHeadVisibilityPercent);
|
||||||
@@ -56,7 +56,7 @@ index dbc8fd59f97ccd13e805128b7aee23486c840ad8..16a88be168ad71a5a8a96960dfbb5411
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean zombieHorseRidable = false;
|
public boolean zombieHorseRidable = false;
|
||||||
@@ -3697,6 +3703,7 @@ public class PurpurWorldConfig {
|
@@ -3714,6 +3720,7 @@ public class PurpurWorldConfig {
|
||||||
public int zombieVillagerCuringTimeMax = 6000;
|
public int zombieVillagerCuringTimeMax = 6000;
|
||||||
public boolean zombieVillagerCureEnabled = true;
|
public boolean zombieVillagerCureEnabled = true;
|
||||||
public boolean zombieVillagerAlwaysDropExp = false;
|
public boolean zombieVillagerAlwaysDropExp = false;
|
||||||
@@ -64,7 +64,7 @@ index dbc8fd59f97ccd13e805128b7aee23486c840ad8..16a88be168ad71a5a8a96960dfbb5411
|
|||||||
private void zombieVillagerSettings() {
|
private void zombieVillagerSettings() {
|
||||||
zombieVillagerRidable = getBoolean("mobs.zombie_villager.ridable", zombieVillagerRidable);
|
zombieVillagerRidable = getBoolean("mobs.zombie_villager.ridable", zombieVillagerRidable);
|
||||||
zombieVillagerRidableInWater = getBoolean("mobs.zombie_villager.ridable-in-water", zombieVillagerRidableInWater);
|
zombieVillagerRidableInWater = getBoolean("mobs.zombie_villager.ridable-in-water", zombieVillagerRidableInWater);
|
||||||
@@ -3717,6 +3724,7 @@ public class PurpurWorldConfig {
|
@@ -3734,6 +3741,7 @@ public class PurpurWorldConfig {
|
||||||
zombieVillagerCuringTimeMax = getInt("mobs.zombie_villager.curing_time.max", zombieVillagerCuringTimeMax);
|
zombieVillagerCuringTimeMax = getInt("mobs.zombie_villager.curing_time.max", zombieVillagerCuringTimeMax);
|
||||||
zombieVillagerCureEnabled = getBoolean("mobs.zombie_villager.cure.enabled", zombieVillagerCureEnabled);
|
zombieVillagerCureEnabled = getBoolean("mobs.zombie_villager.cure.enabled", zombieVillagerCureEnabled);
|
||||||
zombieVillagerAlwaysDropExp = getBoolean("mobs.zombie_villager.always-drop-exp", zombieVillagerAlwaysDropExp);
|
zombieVillagerAlwaysDropExp = getBoolean("mobs.zombie_villager.always-drop-exp", zombieVillagerAlwaysDropExp);
|
||||||
@@ -72,7 +72,7 @@ index dbc8fd59f97ccd13e805128b7aee23486c840ad8..16a88be168ad71a5a8a96960dfbb5411
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean zombifiedPiglinRidable = false;
|
public boolean zombifiedPiglinRidable = false;
|
||||||
@@ -3731,6 +3739,7 @@ public class PurpurWorldConfig {
|
@@ -3748,6 +3756,7 @@ public class PurpurWorldConfig {
|
||||||
public boolean zombifiedPiglinCountAsPlayerKillWhenAngry = false;
|
public boolean zombifiedPiglinCountAsPlayerKillWhenAngry = false;
|
||||||
public boolean zombifiedPiglinTakeDamageFromWater = false;
|
public boolean zombifiedPiglinTakeDamageFromWater = false;
|
||||||
public boolean zombifiedPiglinAlwaysDropExp = false;
|
public boolean zombifiedPiglinAlwaysDropExp = false;
|
||||||
@@ -80,7 +80,7 @@ index dbc8fd59f97ccd13e805128b7aee23486c840ad8..16a88be168ad71a5a8a96960dfbb5411
|
|||||||
private void zombifiedPiglinSettings() {
|
private void zombifiedPiglinSettings() {
|
||||||
zombifiedPiglinRidable = getBoolean("mobs.zombified_piglin.ridable", zombifiedPiglinRidable);
|
zombifiedPiglinRidable = getBoolean("mobs.zombified_piglin.ridable", zombifiedPiglinRidable);
|
||||||
zombifiedPiglinRidableInWater = getBoolean("mobs.zombified_piglin.ridable-in-water", zombifiedPiglinRidableInWater);
|
zombifiedPiglinRidableInWater = getBoolean("mobs.zombified_piglin.ridable-in-water", zombifiedPiglinRidableInWater);
|
||||||
@@ -3752,6 +3761,7 @@ public class PurpurWorldConfig {
|
@@ -3769,6 +3778,7 @@ public class PurpurWorldConfig {
|
||||||
zombifiedPiglinCountAsPlayerKillWhenAngry = getBoolean("mobs.zombified_piglin.count-as-player-kill-when-angry", zombifiedPiglinCountAsPlayerKillWhenAngry);
|
zombifiedPiglinCountAsPlayerKillWhenAngry = getBoolean("mobs.zombified_piglin.count-as-player-kill-when-angry", zombifiedPiglinCountAsPlayerKillWhenAngry);
|
||||||
zombifiedPiglinTakeDamageFromWater = getBoolean("mobs.zombified_piglin.takes-damage-from-water", zombifiedPiglinTakeDamageFromWater);
|
zombifiedPiglinTakeDamageFromWater = getBoolean("mobs.zombified_piglin.takes-damage-from-water", zombifiedPiglinTakeDamageFromWater);
|
||||||
zombifiedPiglinAlwaysDropExp = getBoolean("mobs.zombified_piglin.always-drop-exp", zombifiedPiglinAlwaysDropExp);
|
zombifiedPiglinAlwaysDropExp = getBoolean("mobs.zombified_piglin.always-drop-exp", zombifiedPiglinAlwaysDropExp);
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
group = org.bxteam.divinemc
|
group = org.bxteam.divinemc
|
||||||
version=1.21.11-rc3-R0.1-SNAPSHOT
|
version=1.21.11-R0.1-SNAPSHOT
|
||||||
|
|
||||||
mcVersion=1.21.11-rc3
|
mcVersion=1.21.11
|
||||||
apiVersion=1.21.11
|
apiVersion=1.21.11
|
||||||
purpurRef=4db5f6cb4e8562a69e9f41d882cd111220a0f6e2
|
purpurRef=068b0d5a9e8b9946c2a5d98a51b03df7b08a41f4
|
||||||
experimental=true
|
experimental=true
|
||||||
|
|
||||||
org.gradle.configuration-cache=true
|
org.gradle.configuration-cache=true
|
||||||
|
|||||||
Reference in New Issue
Block a user