Updated Upstream (Bukkit/CraftBukkit)

Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
f4f2ef4c SPIGOT-6222: Correct javadoc for Entity#setPassenger
1871ca9d #559: Add wait time modification for FishHook

CraftBukkit Changes:
bc6a175e #767: Add wait time modification for FishHook
2fc37bcc SPIGOT-6197: Prevent world loading from updating spawn settings of all worlds
This commit is contained in:
Shane Freeder 2020-11-07 00:19:04 +00:00
parent 7358bf02f3
commit 2609a118e8
36 changed files with 126 additions and 124 deletions

View file

@ -485,10 +485,10 @@ index 998101592723abb26c91d1f92e98be1cf24c954d..ee9069c744df63cbb7f21dd9d28d6d55
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 4c2e924f16117cd5ed29fd9ae9adf5a5dbb9aebf..f3e2d387d5ce3c4b8d0341a8267979983d1a9091 100644
index f0a66359f532f5f7cb84b2e6fe600a1416e92365..514bf059b21b9d74813c4af8d8ee594be1f01eac 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1555,9 +1555,9 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1556,9 +1556,9 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
ResourcePackRepository resourcepackrepository = this.resourcePackRepository;
this.resourcePackRepository.getClass();

View file

@ -3133,7 +3133,7 @@ index efba3b772238cabd5981978bee5d7dc76115f93f..74426693c47b6437a4597ddd1b961aae
super(entitytypes, world);
this.f = 5;
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 92198cd819359d2a93da0151b0f0012a51075337..7036a7556c5f859308540ec2f5643e40634c166e 100644
index b9ed037ba86ea578d0cf5e0e43281d749981a842..829dd175930e87d1286be0a2265846d9c55e9389 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -95,6 +95,8 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@ -3810,10 +3810,10 @@ index 0000000000000000000000000000000000000000..17d73ebbe51a83f79f338bdb1b366cec
+ }
+}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index f3e2d387d5ce3c4b8d0341a8267979983d1a9091..ea02761ecd3e5b7b0ea31c220abdff918508cc94 100644
index 514bf059b21b9d74813c4af8d8ee594be1f01eac..99d517fadc279a2ea9b51565d4ef373776af66d4 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -764,6 +764,9 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -765,6 +765,9 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
MinecraftServer.LOGGER.error("Failed to unlock level {}", this.convertable.getLevelName(), ioexception1);
}
// Spigot start
@ -4225,7 +4225,7 @@ index 43168f3836eb8823f3b2046882664ba45f1be678..127c03c321e1414e0d174c8d81a7851c
@Override
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 6e374f85129d0ef873c7561e776a6f227a42e33a..3dff395d4e1dc3907f9cf1d35cbc4e7b5bbd8652 100644
index 2abd00975b058baca32e5de67c96dad46f266dee..b37b791cd66b2e88dd0ecf52beea1844c97cdb94 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -73,9 +73,9 @@ public class PlayerConnection implements PacketListenerPlayIn {

View file

@ -1170,7 +1170,7 @@ index 9fad0c005ada01fdff97c791c769978ae5d56920..ebffa433a4df6e573db76d95762a169d
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index ea02761ecd3e5b7b0ea31c220abdff918508cc94..dfa45dff4d040f9e1d2708e4a2407b3790435a77 100644
index 99d517fadc279a2ea9b51565d4ef373776af66d4..3a11fca68223def767d8b140d177f2874299422a 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -65,7 +65,7 @@ import org.bukkit.craftbukkit.CraftServer;
@ -1193,7 +1193,7 @@ index ea02761ecd3e5b7b0ea31c220abdff918508cc94..dfa45dff4d040f9e1d2708e4a2407b37
private final ResourcePackRepository resourcePackRepository;
private final ScoreboardServer scoreboardServer;
@Nullable
@@ -710,6 +710,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -711,6 +711,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
// CraftBukkit end
MinecraftServer.LOGGER.info("Stopping server");
@ -1201,7 +1201,7 @@ index ea02761ecd3e5b7b0ea31c220abdff918508cc94..dfa45dff4d040f9e1d2708e4a2407b37
// CraftBukkit start
if (this.server != null) {
this.server.disablePlugins();
@@ -907,9 +908,21 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -908,9 +909,21 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
private boolean canSleepForTick() {
// CraftBukkit start
@ -1223,7 +1223,7 @@ index ea02761ecd3e5b7b0ea31c220abdff918508cc94..dfa45dff4d040f9e1d2708e4a2407b37
private void executeModerately() {
this.executeAll();
java.util.concurrent.locks.LockSupport.parkNanos("executing tasks", 1000L);
@@ -917,9 +930,9 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -918,9 +931,9 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
// CraftBukkit end
protected void sleepForTick() {
@ -1235,7 +1235,7 @@ index ea02761ecd3e5b7b0ea31c220abdff918508cc94..dfa45dff4d040f9e1d2708e4a2407b37
});
}
@@ -1002,10 +1015,18 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1003,10 +1016,18 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
protected void exit() {}
protected void a(BooleanSupplier booleansupplier) {
@ -1255,7 +1255,7 @@ index ea02761ecd3e5b7b0ea31c220abdff918508cc94..dfa45dff4d040f9e1d2708e4a2407b37
++this.ticks;
this.b(booleansupplier);
if (i - this.T >= 5000000000L) {
@@ -1023,14 +1044,12 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1024,14 +1045,12 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
if (autosavePeriod > 0 && this.ticks % autosavePeriod == 0) { // CraftBukkit
@ -1270,7 +1270,7 @@ index ea02761ecd3e5b7b0ea31c220abdff918508cc94..dfa45dff4d040f9e1d2708e4a2407b37
}
this.methodProfiler.enter("snooper");
@@ -1043,6 +1062,13 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1044,6 +1063,13 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
this.methodProfiler.exit();
@ -1284,7 +1284,7 @@ index ea02761ecd3e5b7b0ea31c220abdff918508cc94..dfa45dff4d040f9e1d2708e4a2407b37
this.methodProfiler.enter("tallying");
long l = this.h[this.ticks % 100] = SystemUtils.getMonotonicNanos() - i;
@@ -1053,30 +1079,29 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1054,30 +1080,29 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.methodProfiler.exit();
org.spigotmc.WatchdogThread.tick(); // Spigot
this.slackActivityAccountant.tickEnded(l); // Spigot
@ -1323,7 +1323,7 @@ index ea02761ecd3e5b7b0ea31c220abdff918508cc94..dfa45dff4d040f9e1d2708e4a2407b37
// Send time updates to everyone, it will get the right time from the world the player is in.
if (this.ticks % 20 == 0) {
for (int i = 0; i < this.getPlayerList().players.size(); ++i) {
@@ -1084,7 +1109,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1085,7 +1110,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
entityplayer.playerConnection.sendPacket(new PacketPlayOutUpdateTime(entityplayer.world.getTime(), entityplayer.getPlayerTime(), entityplayer.world.getGameRules().getBoolean(GameRules.DO_DAYLIGHT_CYCLE))); // Add support for per player time
}
}
@ -1332,7 +1332,7 @@ index ea02761ecd3e5b7b0ea31c220abdff918508cc94..dfa45dff4d040f9e1d2708e4a2407b37
while (iterator.hasNext()) {
WorldServer worldserver = (WorldServer) iterator.next();
@@ -1125,24 +1150,24 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1126,24 +1151,24 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
this.methodProfiler.exitEnter("connection");

View file

@ -22,15 +22,17 @@ index 912611cf1aeccf5a82a789aab07d76723d4357cc..7d9976ce6bf86e6fdfd0c7770104cee0
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityFishingHook.java b/src/main/java/net/minecraft/server/EntityFishingHook.java
index e5d1911a6a7ee6aa9e6930cb196f652b27de6f09..cd095cee4f162e5c47c04a68c66a4eb743d95a3f 100644
index 7c152768afcb6259984120d97205601d74e15148..9db1c891b69d4fbe163b3272f22351f3d0b306d1 100644
--- a/src/main/java/net/minecraft/server/EntityFishingHook.java
+++ b/src/main/java/net/minecraft/server/EntityFishingHook.java
@@ -338,7 +338,7 @@ public class EntityFishingHook extends IProjectile {
this.ai = MathHelper.nextInt(this.random, 20, 80);
}
} else {
- this.ah = MathHelper.nextInt(this.random, 100, 600);
+ this.ah = MathHelper.nextInt(this.random, world.paperConfig.fishingMinTicks, world.paperConfig.fishingMaxTicks); // Paper
this.ah -= this.ao * 20 * 5;
}
}
@@ -46,6 +46,10 @@ public class EntityFishingHook extends IProjectile {
entityhuman.hookedFish = this;
this.an = Math.max(0, i);
this.ao = Math.max(0, j);
+ // Paper start
+ minWaitTime = world.paperConfig.fishingMinTicks;
+ maxWaitTime = world.paperConfig.fishingMaxTicks;
+ // paper end
}
public EntityFishingHook(EntityHuman entityhuman, World world, int i, int j) {

View file

@ -19,10 +19,10 @@ index aab33df7a36eb69300fedfce733985d6c239ca01..550232cb3819138b3bae0fa1c5142948
throwable = throwable1;
throw throwable1;
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index dfa45dff4d040f9e1d2708e4a2407b3790435a77..5ff34f389b327ef630258581d0e273f9e0fe4e5b 100644
index 3a11fca68223def767d8b140d177f2874299422a..42942635c69752fe2f5091759f07ed4a892f7b74 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1222,7 +1222,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1223,7 +1223,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
public String getServerModName() {

View file

@ -12,7 +12,7 @@ Previous implementation did not calculate TPS correctly.
Switch to a realistic rolling average and factor in std deviation as an extra reporting variable
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index f2b3df4319a3b0348bc5185d841abf7c0e21d425..74760e36b4e14ae6bd6e65324e5282f6e1e8dd59 100644
index 42942635c69752fe2f5091759f07ed4a892f7b74..775306d7e59ff135004e54d2d055bd05edba7e61 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -144,7 +144,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@ -33,7 +33,7 @@ index f2b3df4319a3b0348bc5185d841abf7c0e21d425..74760e36b4e14ae6bd6e65324e5282f6
public final double[] recentTps = new double[ 3 ];
public final SlackActivityAccountant slackActivityAccountant = new SlackActivityAccountant();
// Spigot end
@@ -805,6 +805,57 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -806,6 +806,57 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
{
return ( avg * exp ) + ( tps * ( 1 - exp ) );
}
@ -91,7 +91,7 @@ index f2b3df4319a3b0348bc5185d841abf7c0e21d425..74760e36b4e14ae6bd6e65324e5282f6
// Spigot End
protected void w() {
@@ -817,30 +868,38 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -818,30 +869,38 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
// Spigot start
Arrays.fill( recentTps, 20 );

View file

@ -25,7 +25,7 @@ index 50dec5cb5e924301842300e8fc80cb671b6b9173..f038d3f7dc7d1034a3ee9f2384a85642
+ }
}
diff --git a/src/main/java/net/minecraft/server/Explosion.java b/src/main/java/net/minecraft/server/Explosion.java
index 8e7b9f11ee8a9010084960fb41a41eeadc06780e..88d2fa33e4c9f90f2aa80b3afbf28edbdbeb03db 100644
index afe61a1ddc75f155836411b6749198f71ed09919..ac39b02ec5f02f6f2db9f293513686d2d29d4036 100644
--- a/src/main/java/net/minecraft/server/Explosion.java
+++ b/src/main/java/net/minecraft/server/Explosion.java
@@ -173,7 +173,7 @@ public class Explosion {
@ -123,10 +123,10 @@ index 8e7b9f11ee8a9010084960fb41a41eeadc06780e..88d2fa33e4c9f90f2aa80b3afbf28edb
+ // Paper end
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 74760e36b4e14ae6bd6e65324e5282f6e1e8dd59..0d892aa828b75fddae89fe5133710af96719e408 100644
index 775306d7e59ff135004e54d2d055bd05edba7e61..4d3cb70f1567b042e1605b30637706560bd883d9 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1206,6 +1206,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1207,6 +1207,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.methodProfiler.exit();
this.methodProfiler.exit();
@ -135,7 +135,7 @@ index 74760e36b4e14ae6bd6e65324e5282f6e1e8dd59..0d892aa828b75fddae89fe5133710af9
this.methodProfiler.exitEnter("connection");
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index d1158ffb4475372a0c372cc5b097923c0cbaad36..19985380f8a2b34ed7395ad356c49ce892149972 100644
index dab129dd83024bdcee251393e1854ff384ff3c26..611c7a5c1da8afa9a8caaa668c40517d560c8396 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -84,6 +84,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {

View file

@ -32,10 +32,10 @@ index 48eb9c8a68d45c88c7a42e8e400446a374fb4fc9..2c8d49501664862559ed8974b4821bdd
}
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 298ca618e520fb93f4eba39c48e0d5b3e2d44a98..b5a40ee42cf0e976097c099aec6148bc02eccb7b 100644
index 4d3cb70f1567b042e1605b30637706560bd883d9..2193e395e05bbfcd32f95445c85b65ee4dca5ed4 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1172,6 +1172,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1173,6 +1173,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
while (iterator.hasNext()) {
WorldServer worldserver = (WorldServer) iterator.next();

View file

@ -6,7 +6,7 @@ Subject: [PATCH] remove null possibility for getServer singleton
to stop IDE complaining about potential NPE
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 3a16c0387fbd611680ccd2e125aef26f7cb7c9ce..d1fe6c006776b221fe817a06c22c675108f38b2f 100644
index cfa8ae00bfa5583c9e744180faccc607bc9508ba..f45ff52fe33876251dea312155bf30b4bdbfa865 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -70,6 +70,7 @@ import org.spigotmc.SlackActivityAccountant; // Spigot
@ -25,7 +25,7 @@ index 3a16c0387fbd611680ccd2e125aef26f7cb7c9ce..d1fe6c006776b221fe817a06c22c6751
this.m = new GameProfilerSwitcher(SystemUtils.a, this::ai);
this.methodProfiler = GameProfilerDisabled.a;
this.serverPing = new ServerPing();
@@ -2042,7 +2044,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -2043,7 +2045,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@Deprecated
public static MinecraftServer getServer() {

View file

@ -23,10 +23,10 @@ index 7b52bf335e60a700b4c4e25cab1b0261f32775bc..dc0cb79525adf0d5afee1f677e1fde54
if (!NameReferencingFileConverter.e(this)) {
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index d1fe6c006776b221fe817a06c22c675108f38b2f..009a8cd2c77c5b6b474b587e637280a8feac9959 100644
index f45ff52fe33876251dea312155bf30b4bdbfa865..365719e9f6228f19dfb598d4850dc7ef69377f7c 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -786,7 +786,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -787,7 +787,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
} catch (java.lang.InterruptedException ignored) {} // Paper
if (org.spigotmc.SpigotConfig.saveUserCacheOnStopOnly) {
LOGGER.info("Saving usercache.json");

View file

@ -5,10 +5,10 @@ Subject: [PATCH] Remove FishingHook reference on Craft Entity removal
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftFishHook.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftFishHook.java
index 591650712199f904af2c66b0d7e36ce31d87e1a3..b3c293a55e199d862526d35b6e85afc760f2b6fb 100644
index b1baf21dd3f1877ebd5390fb8860bce58bf5ca2e..bbaa246362eb72b8a951dac1182c8d2413f6984b 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftFishHook.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftFishHook.java
@@ -48,4 +48,15 @@ public class CraftFishHook extends CraftProjectile implements FishHook {
@@ -82,4 +82,15 @@ public class CraftFishHook extends CraftProjectile implements FishHook {
Validate.isTrue(chance >= 0 && chance <= 1, "The bite chance must be between 0 and 1.");
this.biteChance = chance;
}

View file

@ -5,10 +5,10 @@ Subject: [PATCH] Don't let fishinghooks use portals
diff --git a/src/main/java/net/minecraft/server/EntityFishingHook.java b/src/main/java/net/minecraft/server/EntityFishingHook.java
index 8724f293a2c4b56dc5f30c1377151edb425db63b..4a5f2617c7b35490980b341115e3df468ab3a544 100644
index 9db1c891b69d4fbe163b3272f22351f3d0b306d1..9ab0a4638c36d46327435eec4745d2746819d9b0 100644
--- a/src/main/java/net/minecraft/server/EntityFishingHook.java
+++ b/src/main/java/net/minecraft/server/EntityFishingHook.java
@@ -191,6 +191,11 @@ public class EntityFishingHook extends IProjectile {
@@ -201,6 +201,11 @@ public class EntityFishingHook extends IProjectile {
this.setMot(this.getMot().a(0.92D));
this.af();

View file

@ -41,7 +41,7 @@ index 5bdb0c3a7a04a55cd5ddff8e375497e402408811..fe9a083b724a8657cac8462b3f44d3cc
world.triggerEffect(1042, blockposition, 0);
diff --git a/src/main/java/net/minecraft/server/EntityAnimal.java b/src/main/java/net/minecraft/server/EntityAnimal.java
index 783cd9dbf423986d2e5cd52b05d7046e019c0b7a..2a68591c1d56f39551d0b37187b51320298787b4 100644
index b2de91eebbc214cff34a3833541559b934c071f7..bba343542e7e6fa83ec802d97b4c139bb210ab28 100644
--- a/src/main/java/net/minecraft/server/EntityAnimal.java
+++ b/src/main/java/net/minecraft/server/EntityAnimal.java
@@ -237,7 +237,7 @@ public abstract class EntityAnimal extends EntityAgeable {
@ -54,7 +54,7 @@ index 783cd9dbf423986d2e5cd52b05d7046e019c0b7a..2a68591c1d56f39551d0b37187b51320
// CraftBukkit end
}
diff --git a/src/main/java/net/minecraft/server/EntityEnderDragon.java b/src/main/java/net/minecraft/server/EntityEnderDragon.java
index 1627fdb2ef8551e1c63034b496a2c9bfb12d0e38..6ad63e5bb4b7bec976d1aef74547ff96f64204c6 100644
index 81c926e506c1b6e5c0d909b71f1db81beb645699..ef9df3c7c7c455373641f7a7c701f82a23ffef36 100644
--- a/src/main/java/net/minecraft/server/EntityEnderDragon.java
+++ b/src/main/java/net/minecraft/server/EntityEnderDragon.java
@@ -612,7 +612,7 @@ public class EntityEnderDragon extends EntityInsentient implements IMonster {
@ -67,7 +67,7 @@ index 1627fdb2ef8551e1c63034b496a2c9bfb12d0e38..6ad63e5bb4b7bec976d1aef74547ff96
}
diff --git a/src/main/java/net/minecraft/server/EntityExperienceOrb.java b/src/main/java/net/minecraft/server/EntityExperienceOrb.java
index 604bdc5ab98071db88ac3e93ebf11869cc60a308..deebd63e0297b245b82a620bc380c9f1a502027b 100644
index 2c2d44562f732c75532cda910db5ce67d6a534ab..a9fff75882217b1fd680fd8fd47110f85d88df28 100644
--- a/src/main/java/net/minecraft/server/EntityExperienceOrb.java
+++ b/src/main/java/net/minecraft/server/EntityExperienceOrb.java
@@ -16,9 +16,59 @@ public class EntityExperienceOrb extends Entity {
@ -147,10 +147,10 @@ index 604bdc5ab98071db88ac3e93ebf11869cc60a308..deebd63e0297b245b82a620bc380c9f1
@Override
diff --git a/src/main/java/net/minecraft/server/EntityFishingHook.java b/src/main/java/net/minecraft/server/EntityFishingHook.java
index 7dde9774106b7bc1dac46ad591279343b863a9cc..b6cace72ab2f3389408a5e528981fcff3b511180 100644
index 9ab0a4638c36d46327435eec4745d2746819d9b0..7c3e36f62f4ab076807cd4b85a70528fffbbc2af 100644
--- a/src/main/java/net/minecraft/server/EntityFishingHook.java
+++ b/src/main/java/net/minecraft/server/EntityFishingHook.java
@@ -452,7 +452,7 @@ public class EntityFishingHook extends IProjectile {
@@ -464,7 +464,7 @@ public class EntityFishingHook extends IProjectile {
this.world.addEntity(entityitem);
// CraftBukkit start - this.random.nextInt(6) + 1 -> playerFishEvent.getExpToDrop()
if (playerFishEvent.getExpToDrop() > 0) {
@ -160,7 +160,7 @@ index 7dde9774106b7bc1dac46ad591279343b863a9cc..b6cace72ab2f3389408a5e528981fcff
// CraftBukkit end
if (itemstack1.getItem().a((Tag) TagsItem.FISHES)) {
diff --git a/src/main/java/net/minecraft/server/EntityFox.java b/src/main/java/net/minecraft/server/EntityFox.java
index 13dad7a2db788bf900a48bab0a4ef0c4f4b5ddc3..83fa99b1cf784eb7f30b14f9f0743cbab7136563 100644
index fef00b46e7cf3690044059f9ee527f799d535b81..a7bbf21e9736a0da38f95d93b013097b1e745306 100644
--- a/src/main/java/net/minecraft/server/EntityFox.java
+++ b/src/main/java/net/minecraft/server/EntityFox.java
@@ -1236,7 +1236,7 @@ public class EntityFox extends EntityAnimal {
@ -173,7 +173,7 @@ index 13dad7a2db788bf900a48bab0a4ef0c4f4b5ddc3..83fa99b1cf784eb7f30b14f9f0743cba
// CraftBukkit end
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index e6b1c3fc643599bf838c9616845d1eedd21c7725..f62653d5507a1f62e0521dc901283c2735b14e91 100644
index a67f6d3bf22c7f59a87ab2340a0a9a6c162f5364..3c36b6ea1d130a150afb4116d18af93de9236cad 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -1488,7 +1488,8 @@ public abstract class EntityLiving extends Entity {
@ -200,7 +200,7 @@ index 7a80b341ee7734cc289abdff8755834447cbef75..2d3ca8c424f2088027d51066d634c487
this.die();
diff --git a/src/main/java/net/minecraft/server/EntityTurtle.java b/src/main/java/net/minecraft/server/EntityTurtle.java
index 736db44db5420a6676af797ab3b6b06aad7dde44..a3dcb72c600034886137c24b22e64c54980c33f3 100644
index 61e24c2897a2cb93881caaa6fff86f44461765ac..19c92bea21ddcc3917eb011dcfe41006299356ef 100644
--- a/src/main/java/net/minecraft/server/EntityTurtle.java
+++ b/src/main/java/net/minecraft/server/EntityTurtle.java
@@ -499,7 +499,7 @@ public class EntityTurtle extends EntityAnimal {
@ -213,7 +213,7 @@ index 736db44db5420a6676af797ab3b6b06aad7dde44..a3dcb72c600034886137c24b22e64c54
}
diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java
index 17ae6530bda22144866e94e8449220d108084fe5..ea7fff8ff9922e038f71e887072c567cded10973 100644
index eedec25373cfc8adec7ac8a99b146770dc15c70e..732323ee1de01929c73bc5f98444c0f68f908a67 100644
--- a/src/main/java/net/minecraft/server/EntityVillager.java
+++ b/src/main/java/net/minecraft/server/EntityVillager.java
@@ -532,7 +532,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@ -239,7 +239,7 @@ index c830b3c2145effc16314c6216be8af935416cb58..f1a509063c09e603140c74255a3fb901
}
diff --git a/src/main/java/net/minecraft/server/PlayerInteractManager.java b/src/main/java/net/minecraft/server/PlayerInteractManager.java
index 1ebc0fcca6d22e0d6f4d8dac0b305a00437c82b2..d9ee5f7fd6a405547da0b162f11886d7b96dd622 100644
index 862b17e6226f1488167caf08afe7a37b942f7674..8e5975a4871b99329c78379153ad64575d08d123 100644
--- a/src/main/java/net/minecraft/server/PlayerInteractManager.java
+++ b/src/main/java/net/minecraft/server/PlayerInteractManager.java
@@ -377,7 +377,7 @@ public class PlayerInteractManager {

View file

@ -30,7 +30,7 @@ will have plugins and worlds saving to the disk has a high potential to result
in corruption/dataloss.
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 9dd54bea5f9a7d1cb638100312855135f83bcaf9..3f1ab69ac09c0c5ab50a99961a705254f3749f18 100644
index 365719e9f6228f19dfb598d4850dc7ef69377f7c..836fdfcedb6b878c69bfa22cbbe1fc10a25d8ad0 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -91,6 +91,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@ -41,7 +41,7 @@ index 9dd54bea5f9a7d1cb638100312855135f83bcaf9..3f1ab69ac09c0c5ab50a99961a705254
private boolean isStopped;
private int ticks;
protected final Proxy proxy;
@@ -739,7 +740,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -740,7 +741,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
if (this.playerList != null) {
MinecraftServer.LOGGER.info("Saving players");
this.playerList.savePlayers();
@ -50,7 +50,7 @@ index 9dd54bea5f9a7d1cb638100312855135f83bcaf9..3f1ab69ac09c0c5ab50a99961a705254
try { Thread.sleep(100); } catch (InterruptedException ex) {} // CraftBukkit - SPIGOT-625 - give server at least a chance to send packets
}
@@ -804,8 +805,13 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -805,8 +806,13 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
return this.isRunning;
}
@ -64,7 +64,7 @@ index 9dd54bea5f9a7d1cb638100312855135f83bcaf9..3f1ab69ac09c0c5ab50a99961a705254
if (flag) {
try {
this.serverThread.join();
@@ -815,6 +821,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -816,6 +822,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
}

View file

@ -186,7 +186,7 @@ index dc0cb79525adf0d5afee1f677e1fde546529cf97..750b1dc10ffb7adb9194e6cc8ace8fa9
System.setOut(IoBuilder.forLogger(logger).setLevel(Level.INFO).buildPrintStream());
System.setErr(IoBuilder.forLogger(logger).setLevel(Level.WARN).buildPrintStream());
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index f6e870bd5213cee48baf8d8f8159f43b65389e23..bf36e03b9be60c5be30944cae0b15809861b4e18 100644
index 836fdfcedb6b878c69bfa22cbbe1fc10a25d8ad0..b14381fd33b19a511106046d0c66d58353c57e7d 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -58,7 +58,7 @@ import org.apache.logging.log4j.LogManager;
@ -226,7 +226,7 @@ index f6e870bd5213cee48baf8d8f8159f43b65389e23..bf36e03b9be60c5be30944cae0b15809
Runtime.getRuntime().addShutdownHook(new org.bukkit.craftbukkit.util.ServerShutdownThread(this));
}
// CraftBukkit end
@@ -977,7 +981,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -978,7 +982,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
org.spigotmc.WatchdogThread.doStop(); // Spigot
// CraftBukkit start - Restore terminal to original settings
try {
@ -235,7 +235,7 @@ index f6e870bd5213cee48baf8d8f8159f43b65389e23..bf36e03b9be60c5be30944cae0b15809
} catch (Exception ignored) {
}
// CraftBukkit end
@@ -1348,7 +1352,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1349,7 +1353,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@Override
public void sendMessage(IChatBaseComponent ichatbasecomponent, UUID uuid) {

View file

@ -177,7 +177,7 @@ index 0000000000000000000000000000000000000000..26ddf92f86fccc2b2562f7abf4788d1e
+
+}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 08708a42737ce66794083116f55ea209dbf81dcf..aef859fbb975821dd952c9d339a43acac98c99ef 100644
index b14381fd33b19a511106046d0c66d58353c57e7d..983868ef2b2d9bbec19ba8a23cb6376de015b53e 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -2,6 +2,9 @@ package net.minecraft.server;
@ -190,7 +190,7 @@ index 08708a42737ce66794083116f55ea209dbf81dcf..aef859fbb975821dd952c9d339a43aca
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
@@ -1118,7 +1121,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1119,7 +1122,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
if (i - this.T >= 5000000000L) {
this.T = i;
this.serverPing.setPlayerSample(new ServerPing.ServerPingPlayerSample(this.getMaxPlayers(), this.getPlayerCount()));

View file

@ -9,7 +9,7 @@ thread dumps at an interval until the point of crash.
This will help diagnose what was going on in that time before the crash.
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 2e5c71d6b7d120a308076d95a3d5b73c5aca8bc9..1b21911c3e4fd1d4a3305176bb8477c370256906 100644
index e8d6cc7c116faaf168efdb0af0b2365bb7fb6eac..aaaaead8c740a22906612ca43147bd00eb4639f7 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -25,6 +25,7 @@ import org.bukkit.configuration.file.YamlConfiguration;
@ -36,10 +36,10 @@ index 2e5c71d6b7d120a308076d95a3d5b73c5aca8bc9..1b21911c3e4fd1d4a3305176bb8477c3
public static int tabSpamLimit = 500;
private static void tabSpamLimiters() {
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index aef859fbb975821dd952c9d339a43acac98c99ef..f9608bf0eb4e3dfc573fe626e7da9fccf69dc783 100644
index 983868ef2b2d9bbec19ba8a23cb6376de015b53e..aea9e169f9a11378c176c0cc3ee5a0d59e6a4c38 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -897,6 +897,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -898,6 +898,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.a(this.serverPing);
// Spigot start

View file

@ -8,10 +8,10 @@ the updates per world, so that we can re-use the same packet
object for every player unless they have per-player time enabled.
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index e08f913403c3cf3e6efec6c6409f046600c9eb7f..49f172a0c41293865ae20f935a92673aabe15ac5 100644
index 354109e5f7a8e1b0895e12002951a4bd3bf7dd0c..95f16188a94ba31e4b6a8ea7681eaad70b86ff90 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1194,12 +1194,24 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1195,12 +1195,24 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
MinecraftTimings.timeUpdateTimer.startTiming(); // Spigot // Paper
// Send time updates to everyone, it will get the right time from the world the player is in.

View file

@ -6,10 +6,10 @@ Subject: [PATCH] Server Tick Events
Fires event at start and end of a server tick
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 825fc9add1fd25fba4b71adef1e3201e51e0e1d2..949bc9b6f3fb64ae65060c3e909e040af83f4c8b 100644
index 95f16188a94ba31e4b6a8ea7681eaad70b86ff90..46503c75ced00902ef675ad1f3800fb9236a3703 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1117,6 +1117,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1118,6 +1118,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
});
isOversleep = false;MinecraftTimings.serverOversleep.stopTiming();
// Paper end
@ -17,7 +17,7 @@ index 825fc9add1fd25fba4b71adef1e3201e51e0e1d2..949bc9b6f3fb64ae65060c3e909e040a
++this.ticks;
this.b(booleansupplier);
@@ -1160,6 +1161,12 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1161,6 +1162,12 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
// Paper end

View file

@ -16,10 +16,10 @@ handling that should have been handled synchronously will be handled
synchronously when the server gets shut down.
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 949bc9b6f3fb64ae65060c3e909e040af83f4c8b..5816c8b367923a1722665b86e7fdcbe39cf51ee1 100644
index 46503c75ced00902ef675ad1f3800fb9236a3703..44991803a489a42842f79ce51bdd53a73ef35d71 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -2070,7 +2070,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -2071,7 +2071,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
// CraftBukkit start
@Override
public boolean isMainThread() {

View file

@ -62,7 +62,7 @@ index 0c5a14d98f824591c553684191b32ccb507ebe2f..4140de8bcd1ee93f77574d892d32e7c7
public void close() throws IOException {
// CraftBukkit start
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 8886572361e56e8006bcdf2b066267336634cd7d..35630b80d474d7ccbf17a610ff6297ccc828c7a1 100644
index 12866eec621d9ae8801d50bdda13e757f303010e..4a184a28ac6b55e59a57ad832392f3d19a48ac0e 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -152,6 +152,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@ -73,7 +73,7 @@ index 8886572361e56e8006bcdf2b066267336634cd7d..35630b80d474d7ccbf17a610ff6297cc
public CommandDispatcher vanillaCommandDispatcher;
private boolean forceTicks;
// CraftBukkit end
@@ -1141,14 +1142,24 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1142,14 +1143,24 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.serverPing.b().a(agameprofile);
}

View file

@ -2950,10 +2950,10 @@ index dacb8563bc823c8f6f1e1e10f2b8b9894819374f..80a95441ec2b8394b74818ab74de070b
DedicatedServer dedicatedserver1 = new DedicatedServer(optionset, datapackconfiguration1, thread, iregistrycustom_dimension, convertable_conversionsession, resourcepackrepository, datapackresources, null, dedicatedserversettings, DataConverterRegistry.a(), minecraftsessionservice, gameprofilerepository, usercache, WorldLoadListenerLogger::new);
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 35630b80d474d7ccbf17a610ff6297ccc828c7a1..23d700d055b0c80a412be349ed1c877792187eb8 100644
index 4a184a28ac6b55e59a57ad832392f3d19a48ac0e..416658a2ddfb11c4a6929807b4e9d8bd8f708e2d 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -805,7 +805,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -806,7 +806,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.getUserCache().b(false); // Paper
}
// Spigot end
@ -3505,7 +3505,7 @@ index 8e79200b23f2dee612b0cbdcd6359a25dc2323cb..e7d9674e25c06090d57bba6c8229bc3b
return this.m;
}
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index f0fd7ff6afb1522a41b3dc9f68b46c2f4f046eac..ce444b2ad1169f6b2607389d99b5a084420bb704 100644
index 6c2af33d0807634a79aa092edc363d6561d0cadc..5e74436908c35bfbdba95a39119f115a9512786d 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -582,6 +582,13 @@ public class PlayerConnection implements PacketListenerPlayIn {

View file

@ -73,10 +73,10 @@ index 63aa474c73f506737cb5de31977bffcd17d4dc11..b6703378e21a6cd7e140fd35756a20d4
itemstack.d(this.D());
if (this.tag != null) {
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 62b28103f26377a71c61d9282ac65de05286adca..63b0cc9d355d0a8e578514cc14ffe7729023c22c 100644
index bf3da57c1e709acb3fa9243fb3bb6eaf0613f145..7edc7bfe804a9b450d5873444923d26ffaa96ba0 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1245,6 +1245,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1246,6 +1246,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
while (iterator.hasNext()) {
WorldServer worldserver = (WorldServer) iterator.next();
worldserver.hasPhysicsEvent = org.bukkit.event.block.BlockPhysicsEvent.getHandlerList().getRegisteredListeners().length > 0; // Paper

View file

@ -28,7 +28,7 @@ index 29eaa572648113216a267462a79da7e3741d1cfe..51d30a92cbc1052b690b5565e403123c
+ }
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 60b018fb6865a4b73f944cffd79e7d246636360b..c97e8235b323b7ed69dda891fd73ea655c1e16f5 100644
index e57bda6223966171f15e0c6c24680a54c0edd83d..8e2300e22ca76562acf29c42c0025b4d4c2689b1 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -660,7 +660,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@ -37,6 +37,6 @@ index 60b018fb6865a4b73f944cffd79e7d246636360b..c97e8235b323b7ed69dda891fd73ea65
worldloadlistener.b();
- chunkproviderserver.getLightEngine().a(5);
+ chunkproviderserver.getLightEngine().a(worldserver.paperConfig.lightQueueSize); // Paper - increase light queue size
this.bc();
// CraftBukkit start
// this.bc();
worldserver.setSpawnFlags(this.getSpawnMonsters(), this.getSpawnAnimals());

View file

@ -135,10 +135,10 @@ index dea7ff47f7a2934708d887c2c40f9328b78fc84e..e31ebda893112b932ee314fc72263fc1
protected boolean executeNext() {
// CraftBukkit start - process pending Chunk loadCallback() and unloadCallback() after each run task
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index c97e8235b323b7ed69dda891fd73ea655c1e16f5..bb54413a6e8e42e04630e2ff4761bda3e5d46fe7 100644
index 8e2300e22ca76562acf29c42c0025b4d4c2689b1..664daf13341285a7e24c67a62e765627d79ee578 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -939,6 +939,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -940,6 +940,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
// Paper end
tickSection = curTime;
}
@ -146,7 +146,7 @@ index c97e8235b323b7ed69dda891fd73ea655c1e16f5..bb54413a6e8e42e04630e2ff4761bda3
// Spigot end
//MinecraftServer.currentTick = (int) (System.currentTimeMillis() / 50); // CraftBukkit // Paper - don't overwrite current tick time
@@ -1008,7 +1009,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1009,7 +1010,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
@ -155,7 +155,7 @@ index c97e8235b323b7ed69dda891fd73ea655c1e16f5..bb54413a6e8e42e04630e2ff4761bda3
// CraftBukkit start
if (isOversleep) return canOversleep();// Paper - because of our changes, this logic is broken
return this.forceTicks || this.isEntered() || SystemUtils.getMonotonicMillis() < (this.X ? this.W : this.nextTick);
@@ -1038,6 +1039,23 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1039,6 +1040,23 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
});
}
@ -179,7 +179,7 @@ index c97e8235b323b7ed69dda891fd73ea655c1e16f5..bb54413a6e8e42e04630e2ff4761bda3
@Override
protected TickTask postToMainThread(Runnable runnable) {
return new TickTask(this.ticks, runnable);
@@ -1124,6 +1142,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1125,6 +1143,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
// Paper start - move oversleep into full server tick
isOversleep = true;MinecraftTimings.serverOversleep.startTiming();
this.awaitTasks(() -> {
@ -187,7 +187,7 @@ index c97e8235b323b7ed69dda891fd73ea655c1e16f5..bb54413a6e8e42e04630e2ff4761bda3
return !this.canOversleep();
});
isOversleep = false;MinecraftTimings.serverOversleep.stopTiming();
@@ -1202,13 +1221,16 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1203,13 +1222,16 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
protected void b(BooleanSupplier booleansupplier) {
@ -204,7 +204,7 @@ index c97e8235b323b7ed69dda891fd73ea655c1e16f5..bb54413a6e8e42e04630e2ff4761bda3
this.methodProfiler.exitEnter("levels");
Iterator iterator = this.getWorlds().iterator();
@@ -1219,7 +1241,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1220,7 +1242,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
processQueue.remove().run();
}
MinecraftTimings.processQueueTimer.stopTiming(); // Spigot
@ -213,7 +213,7 @@ index c97e8235b323b7ed69dda891fd73ea655c1e16f5..bb54413a6e8e42e04630e2ff4761bda3
MinecraftTimings.timeUpdateTimer.startTiming(); // Spigot // Paper
// Send time updates to everyone, it will get the right time from the world the player is in.
// Paper start - optimize time updates
@@ -1261,9 +1283,11 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1262,9 +1284,11 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.methodProfiler.enter("tick");
try {

View file

@ -87,7 +87,7 @@ index 56b32e2319c5f89d12c0ca4ea0211c6d7cbb366f..273ed1c5537a69256f1020646f5cd0c1
version = getInt("config-version", 20);
set("config-version", 20);
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index bb54413a6e8e42e04630e2ff4761bda3e5d46fe7..b75237ecfefb9c560ef85ada1c036e168f25108a 100644
index 664daf13341285a7e24c67a62e765627d79ee578..dc9207189ed49f0fa45170042215584ddb274233 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -107,6 +107,11 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@ -102,7 +102,7 @@ index bb54413a6e8e42e04630e2ff4761bda3e5d46fe7..b75237ecfefb9c560ef85ada1c036e16
@Nullable
private KeyPair H;
@Nullable
@@ -1213,6 +1218,12 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1214,6 +1219,12 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.ag = this.ag * 0.8F + (float) l / 1000000.0F * 0.19999999F;
long i1 = SystemUtils.getMonotonicNanos();
@ -115,7 +115,7 @@ index bb54413a6e8e42e04630e2ff4761bda3e5d46fe7..b75237ecfefb9c560ef85ada1c036e16
this.circularTimer.a(i1 - i);
this.methodProfiler.exit();
org.spigotmc.WatchdogThread.tick(); // Spigot
@@ -2185,4 +2196,30 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -2186,4 +2197,30 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
public ITextFilter a(EntityPlayer entityplayer) {
return null;
}

View file

@ -109,7 +109,7 @@ index bc15da4640a4a6107c9c186a01ce76df87511b41..27db247aa40e0516302c74b9bf00c631
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index b75237ecfefb9c560ef85ada1c036e168f25108a..7ecd4c7d07d81672887c1e4b69a2ce82790de5a1 100644
index dc9207189ed49f0fa45170042215584ddb274233..3658b99ee4686f5b02191a59e3d64fe596b343ec 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -159,7 +159,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@ -130,7 +130,7 @@ index b75237ecfefb9c560ef85ada1c036e168f25108a..7ecd4c7d07d81672887c1e4b69a2ce82
public static <S extends MinecraftServer> S a(Function<Thread, S> function) {
AtomicReference<S> atomicreference = new AtomicReference();
Thread thread = new Thread(() -> {
@@ -735,6 +737,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -736,6 +738,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
// CraftBukkit start
private boolean hasStopped = false;
@ -138,7 +138,7 @@ index b75237ecfefb9c560ef85ada1c036e168f25108a..7ecd4c7d07d81672887c1e4b69a2ce82
private final Object stopLock = new Object();
public final boolean hasStopped() {
synchronized (stopLock) {
@@ -749,6 +752,19 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -750,6 +753,19 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
if (hasStopped) return;
hasStopped = true;
}
@ -158,7 +158,7 @@ index b75237ecfefb9c560ef85ada1c036e168f25108a..7ecd4c7d07d81672887c1e4b69a2ce82
// CraftBukkit end
MinecraftServer.LOGGER.info("Stopping server");
MinecraftTimings.stopServer(); // Paper
@@ -814,7 +830,18 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -815,7 +831,18 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.getUserCache().b(false); // Paper
}
// Spigot end
@ -177,7 +177,7 @@ index b75237ecfefb9c560ef85ada1c036e168f25108a..7ecd4c7d07d81672887c1e4b69a2ce82
}
public String getServerIp() {
@@ -907,6 +934,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -908,6 +935,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
protected void w() {
try {
@ -185,7 +185,7 @@ index b75237ecfefb9c560ef85ada1c036e168f25108a..7ecd4c7d07d81672887c1e4b69a2ce82
if (this.init()) {
this.nextTick = SystemUtils.getMonotonicMillis();
this.serverPing.setMOTD(new ChatComponentText(this.motd));
@@ -914,6 +942,18 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -915,6 +943,18 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.a(this.serverPing);
// Spigot start
@ -204,7 +204,7 @@ index b75237ecfefb9c560ef85ada1c036e168f25108a..7ecd4c7d07d81672887c1e4b69a2ce82
org.spigotmc.WatchdogThread.hasStarted = true; // Paper
Arrays.fill( recentTps, 20 );
long start = System.nanoTime(), curTime, tickSection = start; // Paper - Further improve server tick loop
@@ -969,6 +1009,12 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -970,6 +1010,12 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.a((CrashReport) null);
}
} catch (Throwable throwable) {
@ -217,7 +217,7 @@ index b75237ecfefb9c560ef85ada1c036e168f25108a..7ecd4c7d07d81672887c1e4b69a2ce82
MinecraftServer.LOGGER.error("Encountered an unexpected exception", throwable);
// Spigot Start
if ( throwable.getCause() != null )
@@ -1000,14 +1046,14 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1001,14 +1047,14 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
} catch (Throwable throwable1) {
MinecraftServer.LOGGER.error("Exception stopping the server", throwable1);
} finally {
@ -235,7 +235,7 @@ index b75237ecfefb9c560ef85ada1c036e168f25108a..7ecd4c7d07d81672887c1e4b69a2ce82
}
}
@@ -1063,6 +1109,12 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1064,6 +1110,12 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@Override
protected TickTask postToMainThread(Runnable runnable) {
@ -248,7 +248,7 @@ index b75237ecfefb9c560ef85ada1c036e168f25108a..7ecd4c7d07d81672887c1e4b69a2ce82
return new TickTask(this.ticks, runnable);
}
@@ -1305,6 +1357,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1306,6 +1358,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
try {
crashreport = CrashReport.a(throwable, "Exception ticking world");
} catch (Throwable t) {
@ -256,7 +256,7 @@ index b75237ecfefb9c560ef85ada1c036e168f25108a..7ecd4c7d07d81672887c1e4b69a2ce82
throw new RuntimeException("Error generating crash report", t);
}
// Spigot End
@@ -1762,7 +1815,8 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1763,7 +1816,8 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.resourcePackRepository.a(collection);
this.saveData.a(a(this.resourcePackRepository));
datapackresources.i();

View file

@ -44,10 +44,10 @@ index e9bc1d22825850a1f1ef3267428c19847d4c8ab8..4965d0fbc123071a2f2f44f559336f7a
List<Entity> list = this.tracker.getPassengers();
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 7ecd4c7d07d81672887c1e4b69a2ce82790de5a1..225709a27396cbfa29c16499728e42170a8fef08 100644
index 3658b99ee4686f5b02191a59e3d64fe596b343ec..674cb4556b5714e9d45a76795f2f3a15095be6a6 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1531,6 +1531,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1532,6 +1532,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
}

View file

@ -10,10 +10,10 @@ Adds a 5 second grace period for any async tasks to finish and warns
if any are still running after that delay just as reload does.
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 225709a27396cbfa29c16499728e42170a8fef08..1175f23558fe694bfb77dd478b0a3ec15109dd9b 100644
index 674cb4556b5714e9d45a76795f2f3a15095be6a6..c249a1c3bc9013a1e769d026f4826a8edb31f076 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -771,6 +771,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -772,6 +772,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
// CraftBukkit start
if (this.server != null) {
this.server.disablePlugins();

View file

@ -39,10 +39,10 @@ index f5792b999ce42acb13ae9a62ceb2ddec39abe209..5504facd2e453238caa71d98743be541
@Override
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 1175f23558fe694bfb77dd478b0a3ec15109dd9b..1439b874b9a825ea605c15aaacaecaed12218779 100644
index c249a1c3bc9013a1e769d026f4826a8edb31f076..1aabd16cd23a2bcdd6e29de63fca36226c05c428 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1524,11 +1524,14 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1525,11 +1525,14 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
}

View file

@ -25,7 +25,7 @@ index 53b62057a3edc3c211c4bade3a01fb065a523fcf..669653b5cfb057b277e509b630fd73a8
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index de70bce8d33a8f4e92d0b65e37cb1a624cb071e6..500d8914cc0faac53a728af016c85561c03491fe 100644
index b5aed60f7e5a8a74033700e40a4ccc3d99a9ad3e..56677b8bf45af217c0a4a50fc7aea76ca012cbd7 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -43,6 +43,7 @@ import org.bukkit.inventory.MainHand;
@ -37,10 +37,10 @@ index de70bce8d33a8f4e92d0b65e37cb1a624cb071e6..500d8914cc0faac53a728af016c85561
public NetworkManager networkManager; // Paper
public final MinecraftServer server;
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 1439b874b9a825ea605c15aaacaecaed12218779..3ef193958e653e7f39d97f11b9778a2242b3c985 100644
index 1aabd16cd23a2bcdd6e29de63fca36226c05c428..c52de0ad2496888e462bef6c9f751d03dbb6e550 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1226,9 +1226,15 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1227,9 +1227,15 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
//if (autosavePeriod > 0 && this.ticks % autosavePeriod == 0) { // CraftBukkit // Paper - move down
//MinecraftServer.LOGGER.debug("Autosave started"); // Paper
serverAutoSave = (autosavePeriod > 0 && this.ticks % autosavePeriod == 0); // Paper

View file

@ -5,10 +5,10 @@ Subject: [PATCH] Cache block data strings
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 3ef193958e653e7f39d97f11b9778a2242b3c985..dc511024a771a343b0fbebda3492bac258293a07 100644
index c52de0ad2496888e462bef6c9f751d03dbb6e550..43dbd070e00037fac31d3f122df2d51566b4d55f 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1831,6 +1831,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1832,6 +1832,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.getPlayerList().reload();
this.customFunctionData.a(this.dataPackResources.a());
this.ak.a(this.dataPackResources.h());

View file

@ -6,10 +6,10 @@ Subject: [PATCH] Fix deop kicking non-whitelisted player when white list is
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index dc511024a771a343b0fbebda3492bac258293a07..9c4ea5265e55d99f95c0e54abb2dbe8987da12fc 100644
index 43dbd070e00037fac31d3f122df2d51566b4d55f..d0ffe5790e98b65cd6035ad529e7da8172de9029 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1896,6 +1896,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1897,6 +1897,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
if (this.aN()) {
PlayerList playerlist = commandlistenerwrapper.getServer().getPlayerList();
WhiteList whitelist = playerlist.getWhitelist();

View file

@ -8,10 +8,10 @@ This can realistically only happen if there's custom loot active on fishing
which can return 0 items. This would disconnect the player who's fishing.
diff --git a/src/main/java/net/minecraft/server/EntityFishingHook.java b/src/main/java/net/minecraft/server/EntityFishingHook.java
index 379794366ee57e22d85bb27a9bd200ff389f51c3..3cee6beaba871c9e7b6966dd027e2f15e7038a3a 100644
index 7c3e36f62f4ab076807cd4b85a70528fffbbc2af..519df0002be34da47ea967e5c0d2cf828c166df8 100644
--- a/src/main/java/net/minecraft/server/EntityFishingHook.java
+++ b/src/main/java/net/minecraft/server/EntityFishingHook.java
@@ -433,9 +433,15 @@ public class EntityFishingHook extends IProjectile {
@@ -445,9 +445,15 @@ public class EntityFishingHook extends IProjectile {
while (iterator.hasNext()) {
ItemStack itemstack1 = (ItemStack) iterator.next();
@ -29,7 +29,7 @@ index 379794366ee57e22d85bb27a9bd200ff389f51c3..3cee6beaba871c9e7b6966dd027e2f15
playerFishEvent.setExpToDrop(this.random.nextInt(6) + 1);
this.world.getServer().getPluginManager().callEvent(playerFishEvent);
@@ -448,8 +454,12 @@ public class EntityFishingHook extends IProjectile {
@@ -460,8 +466,12 @@ public class EntityFishingHook extends IProjectile {
double d2 = entityhuman.locZ() - this.locZ();
double d3 = 0.1D;

@ -1 +1 @@
Subproject commit eda400d3d7f661c78c6128131d76f22f1dc113f5
Subproject commit f4f2ef4c27345098e83113b10cfd9d0718f53885

@ -1 +1 @@
Subproject commit 3eb7236e443d84d0cb8acb68c9bc6b324e4fbf62
Subproject commit bc6a175eff672c6c1ca469211dffd61f124fa6a3