Fix many light bugs by removing recheckGaps change

Fixes #1539
Fixes #1483
This commit is contained in:
Aikar 2018-10-06 00:56:20 -04:00
parent f21627490e
commit 49052de5e5
No known key found for this signature in database
GPG key ID: 401ADFC9891FAAFE
44 changed files with 207 additions and 250 deletions

View file

@ -1,4 +1,4 @@
From a8159e0501c03d8ee285f2bd6d19bdf3e52d5cf8 Mon Sep 17 00:00:00 2001
From b68fb842a8f61e937282e7393af67c24e18d0cd5 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Mon, 29 Feb 2016 21:02:09 -0600
Subject: [PATCH] Paper config files
@ -249,10 +249,10 @@ index 0000000000..961966e169
+}
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
new file mode 100644
index 0000000000..92e44befe0
index 0000000000..812a04204c
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -0,0 +1,177 @@
@@ -0,0 +1,178 @@
+package com.destroystokyo.paper;
+
+import com.google.common.base.Throwables;
@ -283,11 +283,12 @@ index 0000000000..92e44befe0
+ + "with caution, and make sure you know what each option does before configuring.\n"
+ + "\n"
+ + "If you need help with the configuration or have any questions related to Paper,\n"
+ + "join us in our IRC channel.\n"
+ + "join us in our Discord or IRC channel.\n"
+ + "\n"
+ + "Discord: https://paperdiscord.emc.gs\n"
+ + "IRC: #paper @ irc.spi.gt ( http://irc.spi.gt/iris/?channels=paper )\n"
+ + "Wiki: https://paper.readthedocs.org/ \n"
+ + "Paper Forums: https://aquifermc.org/ \n";
+ + "Website: https://papermc.io/ \n"
+ + "Docs: https://paper.readthedocs.org/ \n";
+ /*========================================================================*/
+ public static YamlConfiguration config;
+ static int version;

View file

@ -1,4 +1,4 @@
From 240642e5baed8846c03bd8543cab3c711a65965d Mon Sep 17 00:00:00 2001
From f44c5ffb3178eb3b188681407b8b7c689cdc64c5 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Fri, 24 Mar 2017 23:56:01 -0500
Subject: [PATCH] Paper Metrics
@ -15,7 +15,7 @@ decisions on behalf of the project.
diff --git a/src/main/java/com/destroystokyo/paper/Metrics.java b/src/main/java/com/destroystokyo/paper/Metrics.java
new file mode 100644
index 000000000..e257d6b36
index 0000000000..e257d6b36e
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/Metrics.java
@@ -0,0 +1,627 @@
@ -647,10 +647,10 @@ index 000000000..e257d6b36
+ }
+}
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index d5c6c37fa..b89ec4252 100644
index 812a04204c..581105dce8 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -39,6 +39,7 @@ public class PaperConfig {
@@ -40,6 +40,7 @@ public class PaperConfig {
static Map<String, Command> commands;
private static boolean verbose;
/*========================================================================*/
@ -658,7 +658,7 @@ index d5c6c37fa..b89ec4252 100644
public static void init(File configFile) {
CONFIG_FILE = configFile;
@@ -76,6 +77,11 @@ public class PaperConfig {
@@ -77,6 +78,11 @@ public class PaperConfig {
for (Map.Entry<String, Command> entry : commands.entrySet()) {
MinecraftServer.getServer().server.getCommandMap().register(entry.getKey(), "Paper", entry.getValue());
}
@ -671,7 +671,7 @@ index d5c6c37fa..b89ec4252 100644
static void readConfig(Class<?> clazz, Object instance) {
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index e12511291..ff85d45ab 100644
index 9b40db46c2..9dca5aeda1 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -84,6 +84,7 @@ public class SpigotConfig
@ -691,5 +691,5 @@ index e12511291..ff85d45ab 100644
static void readConfig(Class<?> clazz, Object instance)
--
2.18.0
2.19.0

View file

@ -1,4 +1,4 @@
From 150e167859181f578ce2a73a0382af5291aa72e8 Mon Sep 17 00:00:00 2001
From 2f756f6ba7b34e3cddeac50bb873b9bcfa00a1f2 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 3 Mar 2016 04:00:11 -0600
Subject: [PATCH] Timings v2
@ -6,7 +6,7 @@ Subject: [PATCH] Timings v2
diff --git a/src/main/java/co/aikar/timings/MinecraftTimings.java b/src/main/java/co/aikar/timings/MinecraftTimings.java
new file mode 100644
index 00000000..a6292f1d
index 0000000000..a6292f1d74
--- /dev/null
+++ b/src/main/java/co/aikar/timings/MinecraftTimings.java
@@ -0,0 +1,132 @@
@ -144,7 +144,7 @@ index 00000000..a6292f1d
+}
diff --git a/src/main/java/co/aikar/timings/WorldTimingsHandler.java b/src/main/java/co/aikar/timings/WorldTimingsHandler.java
new file mode 100644
index 00000000..145cb274
index 0000000000..145cb274b0
--- /dev/null
+++ b/src/main/java/co/aikar/timings/WorldTimingsHandler.java
@@ -0,0 +1,104 @@
@ -253,7 +253,7 @@ index 00000000..145cb274
+ }
+}
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 6019d582..6ab2eaa1 100644
index 581105dce8..8be079e26e 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -14,11 +14,14 @@ import java.util.concurrent.TimeUnit;
@ -271,7 +271,7 @@ index 6019d582..6ab2eaa1 100644
public class PaperConfig {
@@ -180,4 +183,24 @@ public class PaperConfig {
@@ -181,4 +184,24 @@ public class PaperConfig {
config.addDefault(path, def);
return config.getString(path, config.getString(path));
}
@ -297,7 +297,7 @@ index 6019d582..6ab2eaa1 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java
index 8811dbc9..7818a3b6 100644
index 8811dbc9b3..7818a3b6a7 100644
--- a/src/main/java/net/minecraft/server/Block.java
+++ b/src/main/java/net/minecraft/server/Block.java
@@ -23,6 +23,15 @@ public class Block implements IMaterial {
@ -317,7 +317,7 @@ index 8811dbc9..7818a3b6 100644
private final float frictionFactor;
protected final BlockStateList<Block, IBlockData> blockStateList;
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 9b931716..b81d3792 100644
index 9b9317167f..b81d379224 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -841,6 +841,7 @@ public class Chunk implements IChunkAccess {
@ -337,7 +337,7 @@ index 9b931716..b81d3792 100644
}
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/ChunkMap.java b/src/main/java/net/minecraft/server/ChunkMap.java
index 85a065f0..4b8b7771 100644
index 85a065f039..4b8b77710b 100644
--- a/src/main/java/net/minecraft/server/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/ChunkMap.java
@@ -14,6 +14,7 @@ public class ChunkMap extends Long2ObjectOpenHashMap<Chunk> {
@ -357,7 +357,7 @@ index 85a065f0..4b8b7771 100644
return chunk1;
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index 0c8c10b7..31ed3e43 100644
index 0c8c10b7a7..31ed3e43a5 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -90,7 +90,7 @@ public class ChunkProviderServer implements IChunkProvider {
@ -398,7 +398,7 @@ index 0c8c10b7..31ed3e43 100644
this.chunkLoader.saveChunk(this.world, ichunkaccess, unloaded); // Spigot
} catch (IOException ioexception) {
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
index 1a32149d..43f77a39 100644
index 1a32149dbf..43f77a3987 100644
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
@@ -1,5 +1,6 @@
@ -445,7 +445,7 @@ index 1a32149d..43f77a39 100644
}
diff --git a/src/main/java/net/minecraft/server/CustomFunction.java b/src/main/java/net/minecraft/server/CustomFunction.java
index b7cdc495..8b9b076d 100644
index b7cdc495a3..8b9b076ded 100644
--- a/src/main/java/net/minecraft/server/CustomFunction.java
+++ b/src/main/java/net/minecraft/server/CustomFunction.java
@@ -13,12 +13,22 @@ public class CustomFunction {
@ -472,7 +472,7 @@ index b7cdc495..8b9b076d 100644
return this.b;
}
diff --git a/src/main/java/net/minecraft/server/CustomFunctionData.java b/src/main/java/net/minecraft/server/CustomFunctionData.java
index 4d7e1517..40ff72f7 100644
index 4d7e151793..40ff72f725 100644
--- a/src/main/java/net/minecraft/server/CustomFunctionData.java
+++ b/src/main/java/net/minecraft/server/CustomFunctionData.java
@@ -109,7 +109,7 @@ public class CustomFunctionData implements ITickable, IResourcePackListener {
@ -485,7 +485,7 @@ index 4d7e1517..40ff72f7 100644
int j = 0;
CustomFunction.c[] acustomfunction_c = customfunction.b();
diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java
index d8535fdd..22f3a08e 100644
index d8535fdd9e..22f3a08e98 100644
--- a/src/main/java/net/minecraft/server/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/DedicatedServer.java
@@ -29,7 +29,7 @@ import org.apache.logging.log4j.Level;
@ -538,7 +538,7 @@ index d8535fdd..22f3a08e 100644
return waitable.get();
} catch (java.util.concurrent.ExecutionException e) {
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index aa9e4ef5..32014678 100644
index aa9e4ef5ee..320146783b 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -29,7 +29,8 @@ import org.bukkit.command.CommandSender;
@ -577,7 +577,7 @@ index aa9e4ef5..32014678 100644
protected float ab() {
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 76cc9085..ce79887c 100644
index 76cc9085bd..ce79887cf4 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -32,7 +32,7 @@ import org.bukkit.event.entity.EntityTeleportEvent;
@ -653,7 +653,7 @@ index 76cc9085..ce79887c 100644
}
diff --git a/src/main/java/net/minecraft/server/EntityTracker.java b/src/main/java/net/minecraft/server/EntityTracker.java
index ae31935c..70c9b1f5 100644
index ae31935c48..70c9b1f50c 100644
--- a/src/main/java/net/minecraft/server/EntityTracker.java
+++ b/src/main/java/net/minecraft/server/EntityTracker.java
@@ -168,7 +168,7 @@ public class EntityTracker {
@ -684,7 +684,7 @@ index ae31935c..70c9b1f5 100644
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index ac534ea3..bb4d2cab 100644
index ac534ea3ee..bb4d2cabfe 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1,5 +1,6 @@
@ -837,7 +837,7 @@ index ac534ea3..bb4d2cab 100644
this.methodProfiler.e();
}
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index ac6d8cc6..d975c2cc 100644
index ac6d8cc6e6..d975c2ccf1 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -1,5 +1,6 @@
@ -931,7 +931,7 @@ index ac6d8cc6..d975c2cc 100644
}
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 8db0b6a6..fa20e1d2 100644
index 8db0b6a6db..fa20e1d26c 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -59,6 +59,7 @@ import org.bukkit.inventory.CraftingInventory;
@ -970,7 +970,7 @@ index 8db0b6a6..fa20e1d2 100644
// this.minecraftServer.getCommandDispatcher().a(this.player.getCommandListener(), s);
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/PlayerConnectionUtils.java b/src/main/java/net/minecraft/server/PlayerConnectionUtils.java
index 616797dc..3a5daf67 100644
index 616797dc6e..3a5daf6705 100644
--- a/src/main/java/net/minecraft/server/PlayerConnectionUtils.java
+++ b/src/main/java/net/minecraft/server/PlayerConnectionUtils.java
@@ -1,10 +1,16 @@
@ -991,7 +991,7 @@ index 616797dc..3a5daf67 100644
throw CancelledPacketHandleException.INSTANCE;
}
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index 6e5922a9..ca129d22 100644
index 6e5922a98c..ca129d221d 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -1,5 +1,6 @@
@ -1015,7 +1015,7 @@ index 6e5922a9..ca129d22 100644
public WhiteList getWhitelist() {
diff --git a/src/main/java/net/minecraft/server/TickListServer.java b/src/main/java/net/minecraft/server/TickListServer.java
index a0789593..ee5c2421 100644
index a07895935e..ee5c2421bb 100644
--- a/src/main/java/net/minecraft/server/TickListServer.java
+++ b/src/main/java/net/minecraft/server/TickListServer.java
@@ -24,13 +24,19 @@ public class TickListServer<T> implements TickList<T> {
@ -1069,7 +1069,7 @@ index a0789593..ee5c2421 100644
}
diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java
index c6920949..68ac014a 100644
index c69209497b..68ac014aab 100644
--- a/src/main/java/net/minecraft/server/TileEntity.java
+++ b/src/main/java/net/minecraft/server/TileEntity.java
@@ -4,12 +4,13 @@ import javax.annotation.Nullable;
@ -1089,7 +1089,7 @@ index c6920949..68ac014a 100644
private final TileEntityTypes<?> e; public TileEntityTypes getTileEntityType() { return e; } // Paper - OBFHELPER
protected World world;
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index f381e23b..a934a4b3 100644
index f381e23beb..a934a4b307 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1,5 +1,6 @@
@ -1204,7 +1204,7 @@ index f381e23b..a934a4b3 100644
public boolean a(@Nullable Entity entity, VoxelShape voxelshape) {
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 4be2d8d3..e4d03b67 100644
index 4be2d8d3c4..e4d03b6779 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -1,5 +1,6 @@
@ -1311,7 +1311,7 @@ index 4be2d8d3..e4d03b67 100644
// CraftBukkit start
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index e659f3f3..944fca34 100644
index e659f3f339..944fca34c3 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1896,12 +1896,31 @@ public final class CraftServer implements Server {
@ -1348,7 +1348,7 @@ index e659f3f3..944fca34 100644
org.spigotmc.RestartCommand.restart();
diff --git a/src/main/java/org/bukkit/craftbukkit/SpigotTimings.java b/src/main/java/org/bukkit/craftbukkit/SpigotTimings.java
deleted file mode 100644
index 4c8ab2bc..00000000
index 4c8ab2bc97..0000000000
--- a/src/main/java/org/bukkit/craftbukkit/SpigotTimings.java
+++ /dev/null
@@ -1,174 +0,0 @@
@ -1527,7 +1527,7 @@ index 4c8ab2bc..00000000
- }
-}
diff --git a/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOProvider.java b/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOProvider.java
index 413dd35f..52a8c48f 100644
index 413dd35f06..52a8c48fa4 100644
--- a/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOProvider.java
+++ b/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOProvider.java
@@ -1,6 +1,8 @@
@ -1563,7 +1563,7 @@ index 413dd35f..52a8c48f 100644
public void callStage3(QueuedChunk queuedChunk, Chunk chunk, Runnable runnable) throws RuntimeException {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 9f78f2c4..832d2de4 100644
index 9f78f2c4ae..832d2de476 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1715,6 +1715,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@ -1582,7 +1582,7 @@ index 9f78f2c4..832d2de4 100644
public Player.Spigot spigot()
diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java
index f11bd754..93b9134d 100644
index f11bd7545f..93b9134d6e 100644
--- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java
+++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java
@@ -14,6 +14,7 @@ import java.util.concurrent.atomic.AtomicInteger;
@ -1658,7 +1658,7 @@ index f11bd754..93b9134d 100644
private boolean isReady(final int currentTick) {
diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java
index 7e7ce9a8..46029ce2 100644
index 7e7ce9a81b..46029ce246 100644
--- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java
+++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java
@@ -1,8 +1,8 @@
@ -1740,7 +1740,7 @@ index 7e7ce9a8..46029ce2 100644
- // Spigot end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftIconCache.java b/src/main/java/org/bukkit/craftbukkit/util/CraftIconCache.java
index e52ef47b..3d90b342 100644
index e52ef47b78..3d90b34268 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftIconCache.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftIconCache.java
@@ -5,6 +5,7 @@ import org.bukkit.util.CachedServerIcon;
@ -1752,7 +1752,7 @@ index e52ef47b..3d90b342 100644
this.value = value;
}
diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java
index e60fe5a9..f68e42c4 100644
index e60fe5a920..f68e42c4d4 100644
--- a/src/main/java/org/spigotmc/ActivationRange.java
+++ b/src/main/java/org/spigotmc/ActivationRange.java
@@ -30,7 +30,7 @@ import net.minecraft.server.EntityWither;

View file

@ -1,5 +1,5 @@
From 6c6649b7448fdcb1a1d3235b41294da22a232603 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
From 2944b419d467efe317df621fe747cb22aaf5c30b Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 2 Mar 2016 00:52:31 -0600
Subject: [PATCH] Lighting Queue
@ -28,16 +28,18 @@ index 145cb274b0..eff9dcf54f 100644
public static Timing getTickList(WorldServer worldserver, String timingsType) {
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 6ab2eaa169..27775476f9 100644
index 8be079e26e..0968852922 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -184,6 +184,11 @@ public class PaperConfig {
@@ -185,6 +185,13 @@ public class PaperConfig {
return config.getString(path, config.getString(path));
}
+ public static int maxTickMsLostLightQueue;
+ private static void lightQueue() {
+ maxTickMsLostLightQueue = getInt("queue-light-updates-max-loss", 10);
+ int badSetting = config.getInt("queue-light-updates-max-loss", 10);
+ config.set("queue-light-updates-max-loss", null);
+ maxTickMsLostLightQueue = getInt("settings.queue-light-updates-max-loss", badSetting);
+ }
+
private static void timings() {
@ -61,18 +63,9 @@ index 39d565db1f..8f6f0288be 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index af181d4bd7..4ec5fe739f 100644
index af181d4bd7..6fa379e580 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -38,7 +38,7 @@ public class Chunk implements IChunkAccess {
public final Map<HeightMap.Type, HeightMap> heightMap;
public final int locX;
public final int locZ;
- private boolean l;
+ private boolean l; public boolean needsGapCheck() { return l; } // Paper - OBFHELPER
private final ChunkConverter m;
public final Map<BlockPosition, TileEntity> tileEntities;
public final List<Entity>[] entitySlices; // Spigot
@@ -90,6 +90,7 @@ public class Chunk implements IChunkAccess {
return removed;
}
@ -81,11 +74,8 @@ index af181d4bd7..4ec5fe739f 100644
// Paper end
public boolean areNeighborsLoaded(final int radius) {
switch (radius) {
@@ -277,9 +278,10 @@ public class Chunk implements IChunkAccess {
this.l = true;
}
@@ -279,7 +280,7 @@ public class Chunk implements IChunkAccess {
+ private void recheckGaps(boolean flag) { g(flag); } // Paper - OBFHELPER
private void g(boolean flag) {
this.world.methodProfiler.a("recheckGaps");
- if (this.world.areChunksLoaded(new BlockPosition(this.locX * 16 + 8, 0, this.locZ * 16 + 8), 16)) {
@ -93,7 +83,7 @@ index af181d4bd7..4ec5fe739f 100644
for (int i = 0; i < 16; ++i) {
for (int j = 0; j < 16; ++j) {
if (this.g[i + j * 16]) {
@@ -330,7 +332,7 @@ public class Chunk implements IChunkAccess {
@@ -330,7 +331,7 @@ public class Chunk implements IChunkAccess {
}
private void a(int i, int j, int k, int l) {
@ -102,7 +92,7 @@ index af181d4bd7..4ec5fe739f 100644
for (int i1 = k; i1 < l; ++i1) {
this.world.c(EnumSkyBlock.SKY, new BlockPosition(i, i1, j));
}
@@ -530,6 +532,7 @@ public class Chunk implements IChunkAccess {
@@ -530,6 +531,7 @@ public class Chunk implements IChunkAccess {
if (flag1) {
this.initLighting();
} else {
@ -110,7 +100,7 @@ index af181d4bd7..4ec5fe739f 100644
int i1 = iblockdata.b(this.world, blockposition);
int j1 = iblockdata1.b(this.world, blockposition);
@@ -537,6 +540,7 @@ public class Chunk implements IChunkAccess {
@@ -537,6 +539,7 @@ public class Chunk implements IChunkAccess {
if (i1 != j1 && (i1 < j1 || this.getBrightness(EnumSkyBlock.SKY, blockposition) > 0 || this.getBrightness(EnumSkyBlock.BLOCK, blockposition) > 0)) {
this.c(i, k);
}
@ -118,27 +108,7 @@ index af181d4bd7..4ec5fe739f 100644
}
TileEntity tileentity;
@@ -1011,10 +1015,16 @@ public class Chunk implements IChunkAccess {
return false;
}
- public void d(boolean flag) {
- if (this.l && this.world.worldProvider.g() && !flag) {
- this.g(this.world.isClientSide);
+ // Paper start
+ private boolean shouldRecheckGaps = false;
+ public void doGapCheck() {
+ if (shouldRecheckGaps) {
+ this.recheckGaps(false);
+ shouldRecheckGaps = false;
}
+ }
+ public void d(boolean flag) {
+ shouldRecheckGaps = this.needsGapCheck() && this.world.worldProvider.hasNaturalLight() && !flag; // Paper
this.u = true;
@@ -1374,6 +1384,16 @@ public class Chunk implements IChunkAccess {
@@ -1374,6 +1377,16 @@ public class Chunk implements IChunkAccess {
return this.D == 8;
}
@ -190,10 +160,10 @@ index d6ea4ae532..5086fe4027 100644
}
diff --git a/src/main/java/net/minecraft/server/PaperLightingQueue.java b/src/main/java/net/minecraft/server/PaperLightingQueue.java
new file mode 100644
index 0000000000..d207266db3
index 0000000000..5fabc5b55c
--- /dev/null
+++ b/src/main/java/net/minecraft/server/PaperLightingQueue.java
@@ -0,0 +1,99 @@
@@ -0,0 +1,98 @@
+package net.minecraft.server;
+
+import co.aikar.timings.Timing;
@ -224,7 +194,6 @@ index 0000000000..d207266db3
+ if (chunk.lightingQueue.processQueue(startTime, maxTickTime)) {
+ break START;
+ }
+ chunk.doGapCheck();
+ }
+ }
+ }
@ -306,19 +275,6 @@ index 499d64ea2c..e06da6bef9 100644
this.methodProfiler.e();
}
diff --git a/src/main/java/net/minecraft/server/WorldProvider.java b/src/main/java/net/minecraft/server/WorldProvider.java
index 517b1e7124..53ce7d5e11 100644
--- a/src/main/java/net/minecraft/server/WorldProvider.java
+++ b/src/main/java/net/minecraft/server/WorldProvider.java
@@ -7,7 +7,7 @@ public abstract class WorldProvider {
protected World b;
protected boolean c;
protected boolean d;
- protected boolean e;
+ protected boolean e; public boolean hasNaturalLight() { return e; } // Paper - OBFHELPER
protected final float[] f = new float[16];
private final float[] g = new float[4];
--
2.19.0

View file

@ -1,4 +1,4 @@
From ada7db3a06c6a718dfb76ef7a52e15e1a165bdda Mon Sep 17 00:00:00 2001
From 3b7f8f6ddc6df313b6a5434a1ff7692dbe91c828 Mon Sep 17 00:00:00 2001
From: CullanP <cullanpage@gmail.com>
Date: Thu, 3 Mar 2016 02:13:38 -0600
Subject: [PATCH] Avoid hopper searches if there are no items
@ -14,7 +14,7 @@ And since minecart hoppers are used _very_ rarely near we can avoid alot of sear
Combined, this adds up a lot.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 397798cf28..3123c80db9 100644
index 6fa379e580..4a0be58e2f 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -91,6 +91,10 @@ public class Chunk implements IChunkAccess {
@ -28,7 +28,7 @@ index 397798cf28..3123c80db9 100644
// Paper end
public boolean areNeighborsLoaded(final int radius) {
switch (radius) {
@@ -685,6 +689,11 @@ public class Chunk implements IChunkAccess {
@@ -684,6 +688,11 @@ public class Chunk implements IChunkAccess {
entity.ag = this.locZ;
this.entitySlices[k].add(entity);
// Paper start
@ -40,7 +40,7 @@ index 397798cf28..3123c80db9 100644
entity.setCurrentChunk(this);
entityCounts.increment(entity.getMinecraftKeyString());
// Paper end
@@ -710,6 +719,11 @@ public class Chunk implements IChunkAccess {
@@ -709,6 +718,11 @@ public class Chunk implements IChunkAccess {
if (!this.entitySlices[i].remove(entity)) {
return;
}
@ -52,7 +52,7 @@ index 397798cf28..3123c80db9 100644
entity.setCurrentChunk(null);
entityCounts.decrement(entity.getMinecraftKeyString());
// Paper end
@@ -949,6 +963,15 @@ public class Chunk implements IChunkAccess {
@@ -948,6 +962,15 @@ public class Chunk implements IChunkAccess {
if (!this.entitySlices[k].isEmpty()) {
Iterator iterator = this.entitySlices[k].iterator();
@ -68,7 +68,7 @@ index 397798cf28..3123c80db9 100644
while (iterator.hasNext()) {
Entity entity1 = (Entity) iterator.next();
@@ -985,7 +1008,18 @@ public class Chunk implements IChunkAccess {
@@ -984,7 +1007,18 @@ public class Chunk implements IChunkAccess {
i = MathHelper.clamp(i, 0, this.entitySlices.length - 1);
j = MathHelper.clamp(j, 0, this.entitySlices.length - 1);

View file

@ -1,4 +1,4 @@
From 1974e5a1120239134abe1baa64fb13d61704831f Mon Sep 17 00:00:00 2001
From 7cf71d60b825ba6eabba9c27524c06824071106c Mon Sep 17 00:00:00 2001
From: Joseph Hirschfeld <joe@ibj.io>
Date: Thu, 3 Mar 2016 03:15:41 -0600
Subject: [PATCH] Add exception reporting event
@ -50,7 +50,7 @@ index 0000000000..93397188b7
+}
\ No newline at end of file
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 3123c80db9..968cf6ec65 100644
index 4a0be58e2f..7ad41d04d3 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -1,5 +1,6 @@
@ -60,7 +60,7 @@ index 3123c80db9..968cf6ec65 100644
import com.google.common.collect.Maps;
import com.google.common.collect.Queues;
import com.google.common.collect.Sets;
@@ -420,6 +421,7 @@ public class Chunk implements IChunkAccess {
@@ -419,6 +420,7 @@ public class Chunk implements IChunkAccess {
return this.getBlockData(i, j, k).b(this.world, new BlockPosition(i, j, k));
}
@ -68,7 +68,7 @@ index 3123c80db9..968cf6ec65 100644
public IBlockData getType(BlockPosition blockposition) {
return this.getBlockData(blockposition.getX(), blockposition.getY(), blockposition.getZ());
}
@@ -815,10 +817,15 @@ public class Chunk implements IChunkAccess {
@@ -814,10 +816,15 @@ public class Chunk implements IChunkAccess {
this.tileEntities.remove(blockposition);
// Paper end
} else {

View file

@ -1,4 +1,4 @@
From a9fa65bc8f28a373e04a504b000976a25c3ec2b7 Mon Sep 17 00:00:00 2001
From 5b15b220b15c6b7aeb79371ba68fe805fae1e828 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 4 Mar 2016 18:18:37 -0600
Subject: [PATCH] Chunk save queue improvements
@ -26,10 +26,10 @@ Then finally, Sleeping will by default be removed, but due to known issues with
But if sleeps are to remain enabled, we at least lower the sleep interval so it doesn't have as much negative impact.
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index d0eb7c0fc2..ad3433059d 100644
index 0968852922..e485c3053b 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -208,4 +208,10 @@ public class PaperConfig {
@@ -211,4 +211,10 @@ public class PaperConfig {
" - Interval: " + timeSummary(Timings.getHistoryInterval() / 20) +
" - Length: " + timeSummary(Timings.getHistoryLength() / 20));
}

View file

@ -1,4 +1,4 @@
From 03dc024bc7d536a6744622390a0bd01046d03cb9 Mon Sep 17 00:00:00 2001
From e383ab3f226d1585906752bb2ace164f65bcd183 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 13:17:38 -0400
Subject: [PATCH] Default loading permissions.yml before plugins
@ -16,10 +16,10 @@ modify that. Under the previous logic, plugins were unable (cleanly) override pe
A config option has been added for those who depend on the previous behavior, but I don't expect that.
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index ad3433059d..88c465ef1c 100644
index e485c3053b..41762a461e 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -214,4 +214,9 @@ public class PaperConfig {
@@ -217,4 +217,9 @@ public class PaperConfig {
enableFileIOThreadSleep = getBoolean("settings.sleep-between-chunk-saves", false);
if (enableFileIOThreadSleep) Bukkit.getLogger().info("Enabled sleeping between chunk saves, beware of memory issues");
}

View file

@ -1,4 +1,4 @@
From c4f46dc872cdc9d8a76ca4f785daa2cd89c1d1e7 Mon Sep 17 00:00:00 2001
From f0d99154ec0d953d8431bc1479a92b176abd2b92 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 20:16:03 -0400
Subject: [PATCH] Add World Util Methods
@ -6,10 +6,10 @@ Subject: [PATCH] Add World Util Methods
Methods that can be used for other patches to help improve logic.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 968cf6ec65..36def82bca 100644
index 7ad41d04d3..8756d39b6e 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -633,6 +633,7 @@ public class Chunk implements IChunkAccess {
@@ -632,6 +632,7 @@ public class Chunk implements IChunkAccess {
}
}

View file

@ -1,4 +1,4 @@
From 179f3a755d31a07486dddac8aa1e92254fa7cd9b Mon Sep 17 00:00:00 2001
From 250ceafb78749d981f6cb4e1eb3521c1f09cc803 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 3 Mar 2016 02:07:55 -0600
Subject: [PATCH] Optimize isValidLocation, getType and getBlockData for inling
@ -52,10 +52,10 @@ index 5c5f19b4b4..d81e2dc1c5 100644
public MutableBlockPosition() {
this(0, 0, 0);
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 38ef8ab6ad..a9c5a0b6f8 100644
index 8756d39b6e..c5e19383f1 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -421,12 +421,24 @@ public class Chunk implements IChunkAccess {
@@ -420,12 +420,24 @@ public class Chunk implements IChunkAccess {
return this.getBlockData(i, j, k).b(this.world, new BlockPosition(i, j, k));
}

View file

@ -1,4 +1,4 @@
From ac97f8b532d4178a91324a72b5e3d51d26397d53 Mon Sep 17 00:00:00 2001
From 25afef4cbcf72fb11820bfdbe02462f7e66fe40b Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 28 Mar 2016 20:46:14 -0400
Subject: [PATCH] Configurable Chunk Inhabited Timer
@ -23,10 +23,10 @@ index deb4ec2543..dd23ea45e5 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 0e84fd283d..41d3aaa80b 100644
index c5e19383f1..94f0fc697e 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -1283,7 +1283,7 @@ public class Chunk implements IChunkAccess {
@@ -1276,7 +1276,7 @@ public class Chunk implements IChunkAccess {
}
public long m() {

View file

@ -1,4 +1,4 @@
From 7d5b2bb1ce854b24a8ef1ec40574698774fb70f6 Mon Sep 17 00:00:00 2001
From a9fc3aa2020854829a249376f854ab39c42c19ca Mon Sep 17 00:00:00 2001
From: Antony Riley <antony@cyberiantiger.org>
Date: Tue, 29 Mar 2016 08:22:55 +0300
Subject: [PATCH] Sanitise RegionFileCache and make configurable.
@ -11,10 +11,10 @@ The implementation uses a LinkedHashMap as an LRU cache (modified from HashMap).
The maximum size of the RegionFileCache is also made configurable.
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 88c465ef1c..121a87662c 100644
index 41762a461e..31b35b113c 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -219,4 +219,9 @@ public class PaperConfig {
@@ -222,4 +222,9 @@ public class PaperConfig {
private static void loadPermsBeforePlugins() {
loadPermsBeforePlugins = getBoolean("settings.load-permissions-yml-before-plugins", true);
}

View file

@ -1,14 +1,14 @@
From 021d6a7e4b90772f02a126500d0fe4d209f022b7 Mon Sep 17 00:00:00 2001
From 1189b8519d5dfd48f1cd07d9fbfcf6d2cb476c3f Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 13 Apr 2016 02:10:49 -0400
Subject: [PATCH] Configurable Player Collision
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index db5770ef14..233e7c64ad 100644
index 31b35b113c..7ebab47835 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -224,4 +224,9 @@ public class PaperConfig {
@@ -227,4 +227,9 @@ public class PaperConfig {
private static void regionFileCacheSize() {
regionFileCacheSize = getInt("settings.region-file-cache-size", 256);
}

View file

@ -1,14 +1,14 @@
From 188642430a7453eecdf6057b7fc60e4b4ffea7df Mon Sep 17 00:00:00 2001
From 2d545f8fa238dff23b600d2668147533f6bd57e3 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sat, 7 May 2016 23:33:08 -0400
Subject: [PATCH] Don't save empty scoreboard teams to scoreboard.dat
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 93c964d315..6743d59f28 100644
index 7ebab47835..a266328daf 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -229,4 +229,9 @@ public class PaperConfig {
@@ -232,4 +232,9 @@ public class PaperConfig {
private static void enablePlayerCollisions() {
enablePlayerCollisions = getBoolean("settings.enable-player-collisions", true);
}

View file

@ -1,4 +1,4 @@
From 55ee472e8ef42a126e87749d723842dc3d7e3151 Mon Sep 17 00:00:00 2001
From e0e9bb45bf77190f4f76771b06f865521ee1035c Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sat, 18 Jun 2016 23:22:12 -0400
Subject: [PATCH] Delay Chunk Unloads based on Player Movement
@ -43,7 +43,7 @@ index ff1a2046f6..0cd15c17e8 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index e1c3e19029..bc4d6f127d 100644
index 94f0fc697e..7e371c278f 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -37,6 +37,7 @@ public class Chunk implements IChunkAccess {
@ -53,7 +53,7 @@ index e1c3e19029..bc4d6f127d 100644
+ public Long scheduledForUnload; // Paper - delay chunk unloads
public final int locX;
public final int locZ;
private boolean l; public boolean needsGapCheck() { return l; } // Paper - OBFHELPER
private boolean l;
diff --git a/src/main/java/net/minecraft/server/ChunkMap.java b/src/main/java/net/minecraft/server/ChunkMap.java
index df967ff07d..a3dc90fd2b 100644
--- a/src/main/java/net/minecraft/server/ChunkMap.java

View file

@ -1,14 +1,14 @@
From f0eaf43ef1bb3c22eae2971fc6ab747d1d6d7e77 Mon Sep 17 00:00:00 2001
From fda3c64ab22491da226c15cf67f83b890348c93e Mon Sep 17 00:00:00 2001
From: Gabriele C <sgdc3.mail@gmail.com>
Date: Fri, 5 Aug 2016 01:03:08 +0200
Subject: [PATCH] Add setting for proxy online mode status
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 6743d59f28..296601f21b 100644
index a266328daf..e1439ffe7d 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -234,4 +234,9 @@ public class PaperConfig {
@@ -237,4 +237,9 @@ public class PaperConfig {
private static void saveEmptyScoreboardTeams() {
saveEmptyScoreboardTeams = getBoolean("settings.save-empty-scoreboard-teams", false);
}

View file

@ -1,14 +1,14 @@
From a3048a43d2a729ed7415b9b721a8d180855a4e4b Mon Sep 17 00:00:00 2001
From bd5f96c4adcd7cb7aa0b37fff20b01bb1b403bf2 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Sun, 11 Sep 2016 14:30:57 -0500
Subject: [PATCH] Configurable packet in spam threshold
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 296601f21b..a702d1a286 100644
index e1439ffe7d..57d19d3326 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -239,4 +239,13 @@ public class PaperConfig {
@@ -242,4 +242,13 @@ public class PaperConfig {
private static void bungeeOnlineMode() {
bungeeOnlineMode = getBoolean("settings.bungee-online-mode", true);
}

View file

@ -1,14 +1,14 @@
From 55ddd455018817f6aa1105cf06e3c7e2334718cc Mon Sep 17 00:00:00 2001
From 3121456e3f2eeae6926ddcac212c3f0163efe28c Mon Sep 17 00:00:00 2001
From: kashike <kashike@vq.lc>
Date: Tue, 20 Sep 2016 00:58:01 +0000
Subject: [PATCH] Configurable flying kick messages
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index a702d1a286..4a91a9972d 100644
index 57d19d3326..44d8e99ff8 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -248,4 +248,11 @@ public class PaperConfig {
@@ -251,4 +251,11 @@ public class PaperConfig {
}
packetInSpamThreshold = getInt("settings.incoming-packet-spam-threshold", 300);
}

View file

@ -1,4 +1,4 @@
From 8c796a83aa01be7157f801a448bebc01918aa003 Mon Sep 17 00:00:00 2001
From bd52dfe82dc4a34ed3670bef25efdf3bb7e10a80 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 19 Sep 2016 23:16:39 -0400
Subject: [PATCH] Auto Save Improvements
@ -12,10 +12,10 @@ Re-introduce a cap per tick for auto save (Spigot disabled the vanilla cap) and
Adds incremental player auto saving too
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index a5fda804..93632dc0 100644
index 44d8e99ff8..b9acfaf51b 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -255,4 +255,15 @@ public class PaperConfig {
@@ -258,4 +258,15 @@ public class PaperConfig {
flyingKickPlayerMessage = getString("messages.kick.flying-player", flyingKickPlayerMessage);
flyingKickVehicleMessage = getString("messages.kick.flying-vehicle", flyingKickVehicleMessage);
}
@ -32,7 +32,7 @@ index a5fda804..93632dc0 100644
+ }
}
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index 0cd15c17..c43152f4 100644
index 0cd15c17e8..c43152f456 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -2,6 +2,7 @@ package com.destroystokyo.paper;
@ -64,7 +64,7 @@ index 0cd15c17..c43152f4 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index bc4d6f12..4748878f 100644
index 7e371c278f..a79b0b59d7 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -50,9 +50,9 @@ public class Chunk implements IChunkAccess {
@ -79,7 +79,7 @@ index bc4d6f12..4748878f 100644
private int y;
private long z;
private int A;
@@ -1059,11 +1059,11 @@ public class Chunk implements IChunkAccess {
@@ -1058,11 +1058,11 @@ public class Chunk implements IChunkAccess {
if (this.v && this.world.getTime() != this.lastSaved || this.x) {
return true;
}
@ -96,7 +96,7 @@ index bc4d6f12..4748878f 100644
public boolean isEmpty() {
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index 719d5deb..69219b13 100644
index 719d5deb2c..69219b13a6 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -241,7 +241,7 @@ public class ChunkProviderServer implements IChunkProvider {
@ -109,7 +109,7 @@ index 719d5deb..69219b13 100644
}
}
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 3d839002..690cff88 100644
index 3d83900298..690cff8828 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -37,6 +37,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@ -121,7 +121,7 @@ index 3d839002..690cff88 100644
public final MinecraftServer server;
public final PlayerInteractManager playerInteractManager;
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 04d8c108..a547ee5c 100644
index 04d8c108b4..a547ee5ca1 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -148,6 +148,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@ -168,7 +168,7 @@ index 04d8c108..a547ee5c 100644
this.methodProfiler.a("snooper");
if (getSnooperEnabled() && !this.i.d() && this.ticks > 100) { // Spigot
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index baf870ac..7d778ff3 100644
index baf870ac2a..7d778ff3e0 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -342,6 +342,7 @@ public abstract class PlayerList {
@ -207,7 +207,7 @@ index baf870ac..7d778ff3 100644
public WhiteList getWhitelist() {
return this.whitelist;
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index c5201697..ca2e027c 100644
index c5201697d5..ca2e027cda 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -872,8 +872,9 @@ public class WorldServer extends World implements IAsyncTaskHandler {

View file

@ -1,4 +1,4 @@
From 6064bc0431c7eacc56b8d7045632db0e0afd17f6 Mon Sep 17 00:00:00 2001
From b6c35d12e0d314f517e7ae851c1dac7608bf1e34 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Wed, 5 Oct 2016 16:27:36 -0500
Subject: [PATCH] Option to remove corrupt tile entities
@ -19,10 +19,10 @@ index c43152f456..0d456bcbac 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 5e6166cfe8..175a20e43c 100644
index a79b0b59d7..91b80ca0bc 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -839,6 +839,12 @@ public class Chunk implements IChunkAccess {
@@ -838,6 +838,12 @@ public class Chunk implements IChunkAccess {
"Chunk coordinates: " + (this.locX * 16) + "," + (this.locZ * 16));
e.printStackTrace();
ServerInternalException.reportInternalException(e);
@ -35,7 +35,7 @@ index 5e6166cfe8..175a20e43c 100644
// Paper end
// CraftBukkit end
}
@@ -848,6 +854,7 @@ public class Chunk implements IChunkAccess {
@@ -847,6 +853,7 @@ public class Chunk implements IChunkAccess {
this.h.put(new BlockPosition(nbttagcompound.getInt("x"), nbttagcompound.getInt("y"), nbttagcompound.getInt("z")), nbttagcompound);
}

View file

@ -1,14 +1,14 @@
From 3037a0a752877e38b6b03ab95371a177ce898e4e Mon Sep 17 00:00:00 2001
From f138a3dadfcfb5aaa2676e5b2e3c15b8996aba6b Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 20 Dec 2016 23:09:21 -0600
Subject: [PATCH] Add option to remove invalid statistics
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index ec2f0d269b..a848edfc10 100644
index b9acfaf51b..00ece7ec35 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -266,4 +266,13 @@ public class PaperConfig {
@@ -269,4 +269,13 @@ public class PaperConfig {
maxPlayerAutoSavePerTick = (playerAutoSaveRate == -1 || playerAutoSaveRate > 100) ? 10 : 20;
}
}

View file

@ -1,4 +1,4 @@
From b9afe5d1eebf933d456cfb4f549b62895bacf5b8 Mon Sep 17 00:00:00 2001
From 3282f82616cd0b6f2acec705705b760500052e7f Mon Sep 17 00:00:00 2001
From: kashike <kashike@vq.lc>
Date: Fri, 9 Jun 2017 07:24:34 -0700
Subject: [PATCH] Add configuration option to prevent player names from being
@ -6,10 +6,10 @@ Subject: [PATCH] Add configuration option to prevent player names from being
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 78dbcb919d..e255d3d1e8 100644
index 00ece7ec35..56cd386f34 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -275,4 +275,9 @@ public class PaperConfig {
@@ -278,4 +278,9 @@ public class PaperConfig {
}
removeInvalidStatistics = getBoolean("settings.remove-invalid-statistics", false);
}

View file

@ -1,4 +1,4 @@
From eb0e3b787bb3494aa30cc7ed15dbed3dd1cfc49f Mon Sep 17 00:00:00 2001
From 2e30a1f5ef931d524f5ef2f5299f5bae326b3226 Mon Sep 17 00:00:00 2001
From: kashike <kashike@vq.lc>
Date: Thu, 17 Aug 2017 16:08:20 -0700
Subject: [PATCH] Allow specifying a custom "authentication servers down" kick
@ -6,7 +6,7 @@ Subject: [PATCH] Allow specifying a custom "authentication servers down" kick
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index e255d3d1e8..6fcfeafc04 100644
index 56cd386f34..2d98052ad1 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -1,5 +1,6 @@
@ -16,7 +16,7 @@ index e255d3d1e8..6fcfeafc04 100644
import com.google.common.base.Throwables;
import java.io.File;
@@ -280,4 +281,9 @@ public class PaperConfig {
@@ -283,4 +284,9 @@ public class PaperConfig {
private static void suggestPlayersWhenNull() {
suggestPlayersWhenNullTabCompletions = getBoolean("settings.suggest-player-names-when-null-tab-completions", suggestPlayersWhenNullTabCompletions);
}

View file

@ -1,14 +1,14 @@
From 3963a8afce003d4c78d10807a75dfa6f3a1d6497 Mon Sep 17 00:00:00 2001
From 586681d2662bf0a7b2eb9f96d18cb536137cfa4e Mon Sep 17 00:00:00 2001
From: Mark Vainomaa <mikroskeem@mikroskeem.eu>
Date: Mon, 26 Mar 2018 18:30:53 +0300
Subject: [PATCH] Make player data saving configurable
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 6fcfeafc04..f9ad4f97ec 100644
index 2d98052ad1..588c626fbd 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -286,4 +286,13 @@ public class PaperConfig {
@@ -289,4 +289,13 @@ public class PaperConfig {
private static void authenticationServersDownKickMessage() {
authenticationServersDownKickMessage = Strings.emptyToNull(getString("messages.kick.authentication-servers-down", authenticationServersDownKickMessage));
}

View file

@ -1,4 +1,4 @@
From 476129ef8316c6789c51a1df5d7859ce53cf22a0 Mon Sep 17 00:00:00 2001
From 01447432ca043b572785e28926545e2982e05c7d Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 15 Jun 2018 00:30:32 -0400
Subject: [PATCH] Configurable Alternative LootPool Luck Formula
@ -36,10 +36,10 @@ This change will result in some major changes to fishing formulas.
I would love to see this change in Vanilla, so Mojang please pull :)
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index f9ad4f97ec..80bbdec480 100644
index 588c626fbd..ba5f21461f 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -295,4 +295,12 @@ public class PaperConfig {
@@ -298,4 +298,12 @@ public class PaperConfig {
"such as inventories, experience points, advancements and the like will not be saved when they log out.");
}
}

View file

@ -1,4 +1,4 @@
From 14c6eaa9f284ece0ff44ae652ce97d38b8ce592c Mon Sep 17 00:00:00 2001
From c166722f225ded601fa993cfaa6f1f03f405587a Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 3 Jul 2018 21:56:23 -0400
Subject: [PATCH] InventoryCloseEvent Reason API
@ -7,10 +7,10 @@ Allows you to determine why an inventory was closed, enabling plugin developers
to "confirm" things based on if it was player triggered close or not.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index b09aa1351c..1652d88298 100644
index 91b80ca0bc..8b00bf26c9 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -931,7 +931,7 @@ public class Chunk implements IChunkAccess {
@@ -930,7 +930,7 @@ public class Chunk implements IChunkAccess {
{
if ( h instanceof org.bukkit.craftbukkit.entity.CraftHumanEntity )
{
@ -19,7 +19,7 @@ index b09aa1351c..1652d88298 100644
}
}
}
@@ -956,7 +956,7 @@ public class Chunk implements IChunkAccess {
@@ -955,7 +955,7 @@ public class Chunk implements IChunkAccess {
{
if ( h instanceof org.bukkit.craftbukkit.entity.CraftHumanEntity )
{

View file

@ -1,4 +1,4 @@
From fe1b8ed7df7010ef1aa4dbac5e2c88df3962df29 Mon Sep 17 00:00:00 2001
From 9891974c3cbebbe0ce3bb1d6320d9692f3536cbd Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 4 Jul 2018 03:39:51 -0400
Subject: [PATCH] Avoid Chunk Lookups for Entity/TileEntity Current Chunk
@ -10,10 +10,10 @@ to the object directly on the Entity/TileEntity object we can directly grab.
Use that local value instead to reduce lookups in many hot places.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 1652d88298..982b3de65c 100644
index 8b00bf26c9..0a40488586 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -719,6 +719,7 @@ public class Chunk implements IChunkAccess {
@@ -718,6 +718,7 @@ public class Chunk implements IChunkAccess {
((HeightMap) this.heightMap.get(heightmap_type)).a(along);
}

View file

@ -1,4 +1,4 @@
From 215399669662d874fbd131be64dca7bea95d0c5f Mon Sep 17 00:00:00 2001
From ecfccf2374fd84352a1fa3fe4c2ea46d0720addd Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sat, 21 Jul 2018 14:27:34 -0400
Subject: [PATCH] Duplicate UUID Resolve Option
@ -85,7 +85,7 @@ index deb0d4f053..249af8b4c6 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 982b3de65c..42a437383a 100644
index 0a40488586..60829fded7 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -1,5 +1,10 @@
@ -106,8 +106,8 @@ index 982b3de65c..42a437383a 100644
+ private static final Logger logger = LogManager.getLogger(); // Paper
public final int locX;
public final int locZ;
private boolean l; public boolean needsGapCheck() { return l; } // Paper - OBFHELPER
@@ -687,6 +693,7 @@ public class Chunk implements IChunkAccess {
private boolean l;
@@ -686,6 +692,7 @@ public class Chunk implements IChunkAccess {
if (i != this.locX || j != this.locZ) {
Chunk.d.warn("Wrong location! ({}, {}) should be ({}, {}), {}", Integer.valueOf(i), Integer.valueOf(j), Integer.valueOf(this.locX), Integer.valueOf(this.locZ), entity);
entity.die();
@ -115,7 +115,7 @@ index 982b3de65c..42a437383a 100644
}
int k = MathHelper.floor(entity.locY / 16.0D);
@@ -875,6 +882,51 @@ public class Chunk implements IChunkAccess {
@@ -874,6 +881,51 @@ public class Chunk implements IChunkAccess {
for (int j = 0; j < i; ++j) {
List entityslice = aentityslice[j]; // Spigot

View file

@ -1,4 +1,4 @@
From 02f91d834c017cf38a77eeade14c5f1a064be4e6 Mon Sep 17 00:00:00 2001
From afaa779901a84d3127d03771f6d497dc6003937e Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 23 Jul 2018 22:18:31 -0400
Subject: [PATCH] Mark chunk dirty anytime entities change to guarantee it
@ -6,10 +6,10 @@ Subject: [PATCH] Mark chunk dirty anytime entities change to guarantee it
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 42a437383a..c7f67bce6c 100644
index 60829fded7..4e6ed1e349 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -712,6 +712,7 @@ public class Chunk implements IChunkAccess {
@@ -711,6 +711,7 @@ public class Chunk implements IChunkAccess {
entity.ag = this.locZ;
this.entitySlices[k].add(entity);
// Paper start
@ -17,7 +17,7 @@ index 42a437383a..c7f67bce6c 100644
if (entity instanceof EntityItem) {
itemCounts[k]++;
} else if (entity instanceof IInventory) {
@@ -743,6 +744,7 @@ public class Chunk implements IChunkAccess {
@@ -742,6 +743,7 @@ public class Chunk implements IChunkAccess {
if (!this.entitySlices[i].remove(entity)) {
return;
}

View file

@ -1,4 +1,4 @@
From be6b2c15dde0d4d8b87768e2d56809bacc5cf54a Mon Sep 17 00:00:00 2001
From ebdfbe03ae5e227f04106f96b53064b6567f64ae Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 23 Jul 2018 22:44:23 -0400
Subject: [PATCH] Add some Debug to Chunk Entity slices
@ -9,10 +9,10 @@ This should hopefully avoid duplicate entities ever being created
if the entity was to end up in 2 different chunk slices
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index c7f67bce6c..a7cbd9b201 100644
index 4e6ed1e349..d5937e4378 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -710,8 +710,34 @@ public class Chunk implements IChunkAccess {
@@ -709,8 +709,34 @@ public class Chunk implements IChunkAccess {
entity.ae = this.locX;
entity.af = k;
entity.ag = this.locZ;
@ -48,7 +48,7 @@ index c7f67bce6c..a7cbd9b201 100644
this.markDirty();
if (entity instanceof EntityItem) {
itemCounts[k]++;
@@ -741,9 +767,13 @@ public class Chunk implements IChunkAccess {
@@ -740,9 +766,13 @@ public class Chunk implements IChunkAccess {
i = this.entitySlices.length - 1;
}
// Paper start
@ -64,7 +64,7 @@ index c7f67bce6c..a7cbd9b201 100644
this.markDirty();
if (entity instanceof EntityItem) {
itemCounts[i]--;
@@ -1017,6 +1047,7 @@ public class Chunk implements IChunkAccess {
@@ -1016,6 +1046,7 @@ public class Chunk implements IChunkAccess {
}
// Spigot End
entity.setCurrentChunk(null); // Paper

View file

@ -1,4 +1,4 @@
From 4d82481bb8ea73a625a3d0a772d162e3b7c483d5 Mon Sep 17 00:00:00 2001
From c67e3a21f1ea66ff8358125b3f2307f4c4396dcf Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sun, 29 Jul 2018 15:48:50 -0400
Subject: [PATCH] Provide option to use a versioned world folder for testing
@ -19,7 +19,7 @@ may be some delay there, but region files are only copied on demand.
This is highly experiemental so backup your world before relying on this to not modify it
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 80bbdec480..4782ae8adc 100644
index ba5f21461f..29d1b89d8d 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -13,6 +13,7 @@ import java.util.List;
@ -30,7 +30,7 @@ index 80bbdec480..4782ae8adc 100644
import java.util.regex.Pattern;
import com.google.common.collect.Lists;
@@ -303,4 +304,27 @@ public class PaperConfig {
@@ -306,4 +307,27 @@ public class PaperConfig {
Bukkit.getLogger().log(Level.INFO, "Using Aikar's Alternative Luck Formula to apply Luck attribute to all loot pool calculations. See https://luckformula.emc.gs");
}
}

View file

@ -1,4 +1,4 @@
From 9538d5c2c04994e66b6e1174c189013df9c867d8 Mon Sep 17 00:00:00 2001
From 47ee93791bcc7201285fd2bdd7af8a2a538cb042 Mon Sep 17 00:00:00 2001
From: Shane Freeder <theboyetronic@gmail.com>
Date: Sun, 29 Jul 2018 05:02:15 +0100
Subject: [PATCH] Break up and make tab spam limits configurable
@ -22,10 +22,10 @@ to take the burden of this into their own hand without having to rely on
plugins doing unsafe things.
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 4782ae8adc..a2894da71b 100644
index 29d1b89d8d..71894865fb 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -327,4 +327,18 @@ public class PaperConfig {
@@ -330,4 +330,18 @@ public class PaperConfig {
logger.log(Level.INFO, "******************************************************");
}
}

View file

@ -1,4 +1,4 @@
From 9f68c9f8f80023f04a27ea0da3e57e46cfbe549e Mon Sep 17 00:00:00 2001
From 24e97f8ee3dbd0f98ede75c2621e80107ecfe129 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 3 Aug 2018 22:47:46 -0400
Subject: [PATCH] Entity add to world fixes
@ -14,10 +14,10 @@ Fix this by differing entity add to world for all entities at the same time
the original entity is dead, overwrite it as the logic does for unloaod queued entities.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index a7cbd9b201..ae7e00d81e 100644
index d5937e4378..dfc3047a84 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -911,6 +911,7 @@ public class Chunk implements IChunkAccess {
@@ -910,6 +910,7 @@ public class Chunk implements IChunkAccess {
this.world.a(this.tileEntities.values());
List[] aentityslice = this.entitySlices; // Spigot
int i = aentityslice.length;
@ -25,7 +25,7 @@ index a7cbd9b201..ae7e00d81e 100644
for (int j = 0; j < i; ++j) {
List entityslice = aentityslice[j]; // Spigot
@@ -958,12 +959,11 @@ public class Chunk implements IChunkAccess {
@@ -957,12 +958,11 @@ public class Chunk implements IChunkAccess {
thisChunk.put(entity.uniqueID, entity);
}
}

View file

@ -1,4 +1,4 @@
From 5a971613f06a4eb226e77a7047f55fe981be4237 Mon Sep 17 00:00:00 2001
From 66f9e55d387d524fca28f4315bc50a12684eee36 Mon Sep 17 00:00:00 2001
From: miclebrick <miclebrick@outlook.com>
Date: Wed, 8 Aug 2018 15:30:52 -0400
Subject: [PATCH] Add Early Warning Feature to WatchDog
@ -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 a2894da71b..6a70e5f4f5 100644
index 71894865fb..a739638c42 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -24,6 +24,8 @@ import org.bukkit.configuration.InvalidConfigurationException;
@ -21,7 +21,7 @@ index a2894da71b..6a70e5f4f5 100644
public class PaperConfig {
@@ -328,6 +330,14 @@ public class PaperConfig {
@@ -331,6 +333,14 @@ public class PaperConfig {
}
}

View file

@ -1,4 +1,4 @@
From 15bfb73a209c5a4aa1a0e0472189836fa020b3b0 Mon Sep 17 00:00:00 2001
From 7dda32f30dc80cb6811a908ce404318fdea0bb48 Mon Sep 17 00:00:00 2001
From: stonar96 <minecraft.stonar96@gmail.com>
Date: Mon, 20 Aug 2018 03:03:58 +0200
Subject: [PATCH] Anti-Xray
@ -1049,10 +1049,10 @@ index 0000000000..37093419cf
+ }
+}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index ae7e00d81e..a3c53c1d84 100644
index dfc3047a84..7857d871f4 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -535,7 +535,7 @@ public class Chunk implements IChunkAccess {
@@ -534,7 +534,7 @@ public class Chunk implements IChunkAccess {
return null;
}
@ -1061,7 +1061,7 @@ index ae7e00d81e..a3c53c1d84 100644
this.sections[j >> 4] = chunksection;
flag1 = j >= l;
}
@@ -635,7 +635,7 @@ public class Chunk implements IChunkAccess {
@@ -634,7 +634,7 @@ public class Chunk implements IChunkAccess {
return;
}

View file

@ -1,4 +1,4 @@
From 3deb5d8004055fe2f252cef42e39eea20a47b3fc Mon Sep 17 00:00:00 2001
From 8fd650d43ab3b4f17957a91e7cd42997898a7c63 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 28 Aug 2018 21:35:05 -0400
Subject: [PATCH] Optimize Chunk#getPos
@ -6,7 +6,7 @@ Subject: [PATCH] Optimize Chunk#getPos
Don't create an object just to get chunk coords.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index a3c53c1d84..f4b26bd999 100644
index 7857d871f4..6abbbc057f 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -169,8 +169,9 @@ public class Chunk implements IChunkAccess {
@ -20,7 +20,7 @@ index a3c53c1d84..f4b26bd999 100644
public org.bukkit.Chunk bukkitChunk;
public boolean mustSave;
private boolean needsDecoration;
@@ -1198,7 +1199,7 @@ public class Chunk implements IChunkAccess {
@@ -1191,7 +1192,7 @@ public class Chunk implements IChunkAccess {
}
public ChunkCoordIntPair getPos() {

View file

@ -1,14 +1,14 @@
From b7b5152e42f0919e1199cdbe053e6ac69233aad2 Mon Sep 17 00:00:00 2001
From c52528255ec4ec0bc1e80e31f069731a2376d6e8 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 10 Sep 2018 23:56:36 -0400
Subject: [PATCH] Prevent Mob AI Rules from Loading Chunks
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index c68cef1677..f81985a847 100644
index debf47d9fd..01244c1d37 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -482,6 +482,7 @@ public class Chunk implements IChunkAccess {
@@ -481,6 +481,7 @@ public class Chunk implements IChunkAccess {
}
}

View file

@ -1,4 +1,4 @@
From 6af19d0d92df6bcab75e2fb3f93b71674749bbdf Mon Sep 17 00:00:00 2001
From 2d69b54c39dcac6f9dc38b249d8b945d03f80947 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 17 Sep 2018 23:05:31 -0400
Subject: [PATCH] Support Overriding World Seeds
@ -15,7 +15,7 @@ This seed will end up being saved to the world data file, so it is
a permanent change in that it won't go back if you remove it from paper.yml
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 6a70e5f4f5..912c990404 100644
index a739638c42..886e97fec5 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -11,6 +11,7 @@ import java.lang.reflect.Modifier;
@ -34,7 +34,7 @@ index 6a70e5f4f5..912c990404 100644
import org.bukkit.configuration.InvalidConfigurationException;
import org.bukkit.configuration.file.YamlConfiguration;
import co.aikar.timings.Timings;
@@ -351,4 +353,23 @@ public class PaperConfig {
@@ -354,4 +356,23 @@ public class PaperConfig {
}
tabSpamLimit = getInt("settings.spam-limiter.tab-spam-limit", tabSpamLimit);
}

View file

@ -1,4 +1,4 @@
From 2c5daacb9fc24c9a32b96d1e1d1201b6f04b5d01 Mon Sep 17 00:00:00 2001
From 519017d8e23f0b537a948c732918ee9aec078549 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 20 Sep 2018 19:11:33 -0400
Subject: [PATCH] MC-134115: Fix Double Chest Conversion Error
@ -9,10 +9,10 @@ loss from chunks if they crossed chunk boundries.
This fixes the issue.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index f81985a847..9162151e2a 100644
index 01244c1d37..fe40d62692 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -515,6 +515,26 @@ public class Chunk implements IChunkAccess {
@@ -514,6 +514,26 @@ public class Chunk implements IChunkAccess {
return this.a(blockposition, iblockdata, flag, true);
}

View file

@ -1,4 +1,4 @@
From b704d57d14284281d3be51d0fca106762dbace06 Mon Sep 17 00:00:00 2001
From 0f3d0e30c390cce2fd05de204c44b8ec87965c35 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sat, 21 Jul 2018 16:55:04 -0400
Subject: [PATCH] Async Chunk Loading and Generation
@ -43,10 +43,10 @@ reading or writing to the chunk will be safe, so plugins still
should not be touching chunks asynchronously!
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 912c990404..2f6d7f2976 100644
index 886e97fec5..454ac2c091 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -372,4 +372,57 @@ public class PaperConfig {
@@ -375,4 +375,57 @@ public class PaperConfig {
}
}
}
@ -392,7 +392,7 @@ index 0000000000..5c77b6e8e1
+
+}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 9162151e2a..15a327923f 100644
index fe40d62692..33d52447be 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -184,6 +184,7 @@ public class Chunk implements IChunkAccess {

View file

@ -1,4 +1,4 @@
From b4d02104e408e22e9d1216717cf27a23f7a0c589 Mon Sep 17 00:00:00 2001
From dbce8545b454b4c8cbc4cb3d5e6d31eb400edce1 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 28 Sep 2018 20:46:29 -0400
Subject: [PATCH] Optimize Light Recalculations
@ -14,10 +14,10 @@ Also optimizes to not repeatedly look up the same chunk for
light lookups.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 15a327923f..0b2d9a05f4 100644
index 33d52447be..c6b002bb6b 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -348,7 +348,7 @@ public class Chunk implements IChunkAccess {
@@ -347,7 +347,7 @@ public class Chunk implements IChunkAccess {
private void a(int i, int j, int k, int l) {
if (l > k && this.areNeighborsLoaded(1)) { // Paper
for (int i1 = k; i1 < l; ++i1) {
@ -26,7 +26,7 @@ index 15a327923f..0b2d9a05f4 100644
}
this.x = true;
@@ -579,7 +579,7 @@ public class Chunk implements IChunkAccess {
@@ -578,7 +578,7 @@ public class Chunk implements IChunkAccess {
} else {
if (flag1) {
this.initLighting();

View file

@ -1,4 +1,4 @@
From 9fd45ea1c94c85f6d1a8e1e1674b0f8b5f6a407d Mon Sep 17 00:00:00 2001
From 95c58d4e96e3de983f565135f1f8816eb609e66f Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 28 Sep 2018 22:27:33 -0400
Subject: [PATCH] Don't recheck type after setting a block
@ -16,10 +16,10 @@ be having data corruption issues anyways.
This provides a small boost to all setType calls.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 0b2d9a05f4..8da88e1c3a 100644
index c6b002bb6b..6a6c68b066 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -574,7 +574,7 @@ public class Chunk implements IChunkAccess {
@@ -573,7 +573,7 @@ public class Chunk implements IChunkAccess {
this.world.n(blockposition);
}

View file

@ -1,4 +1,4 @@
From f76cc6c38660af7edaf2f57c9b19d8a8353f5703 Mon Sep 17 00:00:00 2001
From 0251a57dfdce649a258e23c9602f7fe6db686444 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sat, 29 Sep 2018 01:18:16 -0400
Subject: [PATCH] Fix Sending Chunks to Client
@ -14,10 +14,10 @@ This fix always sends chunks to the client, and simply updates
the client anytime post processing is triggered with the new chunk data.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 8da88e1c3a..64cec6d692 100644
index 6a6c68b066..bf800fcb72 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -1213,7 +1213,7 @@ public class Chunk implements IChunkAccess {
@@ -1206,7 +1206,7 @@ public class Chunk implements IChunkAccess {
}
public boolean isReady() {
@ -26,7 +26,7 @@ index 8da88e1c3a..64cec6d692 100644
}
public boolean v() {
@@ -1479,6 +1479,13 @@ public class Chunk implements IChunkAccess {
@@ -1472,6 +1472,13 @@ public class Chunk implements IChunkAccess {
this.h.clear();
this.a(ChunkStatus.POSTPROCESSED);
this.m.a(this);
@ -41,7 +41,7 @@ index 8da88e1c3a..64cec6d692 100644
}
diff --git a/src/main/java/net/minecraft/server/PlayerChunk.java b/src/main/java/net/minecraft/server/PlayerChunk.java
index 6d18cdeaf7..9584238859 100644
index aabd107fe1..dd89f305d2 100644
--- a/src/main/java/net/minecraft/server/PlayerChunk.java
+++ b/src/main/java/net/minecraft/server/PlayerChunk.java
@@ -23,7 +23,7 @@ public class PlayerChunk {

View file

@ -1,14 +1,14 @@
From 19ab64e9d4f2203808f7baf0fa7d45913de4f208 Mon Sep 17 00:00:00 2001
From 74b6a933697fd43afd5340453412d5571fe1fa7d Mon Sep 17 00:00:00 2001
From: Shane Freeder <theboyetronic@gmail.com>
Date: Tue, 2 Oct 2018 09:57:50 +0100
Subject: [PATCH] Configurable connection throttle kick message
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 2f6d7f2976..effc296e3e 100644
index 454ac2c091..03c15e7c9f 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -292,6 +292,11 @@ public class PaperConfig {
@@ -295,6 +295,11 @@ public class PaperConfig {
authenticationServersDownKickMessage = Strings.emptyToNull(getString("messages.kick.authentication-servers-down", authenticationServersDownKickMessage));
}