From 6287e97b6bef022b05d7dff7c57a3e7223478d65 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Thu, 3 Mar 2016 03:46:26 -0600 Subject: [PATCH] Update for upstream changes --- .gitignore | 1 + Paperclip | 2 +- Spigot-API-Patches/0001-POM-changes.patch | 2 +- .../0007-Add-PlayerLocaleChangeEvent.patch | 4 +- Spigot-Server-Patches/0001-POM-Changes.patch | 2 +- ...4-Vanished-players-don-t-have-rights.patch | 6 +- ...0-Toggle-for-player-interact-limiter.patch | 8 +- .../0011-Player-Exhaustion-Multipliers.patch | 8 +- ...3-Allow-for-toggling-of-spawn-chunks.patch | 18 ++--- ...ient-crashes-server-lists-and-Mojang.patch | 6 +- .../0017-Player-affects-spawning-API.patch | 14 ++-- .../0020-Optimize-TileEntity-Ticking.patch | 12 +-- ...021-Further-improve-server-tick-loop.patch | 8 +- ...022-Only-refresh-abilities-if-needed.patch | 6 +- ...ck-and-TNTPrimed-source-location-API.patch | 8 +- ...event-tile-entity-and-entity-crashes.patch | 8 +- .../0028-Fix-redstone-lag-issues.patch | 12 +-- ...030-Configurable-async-light-updates.patch | 18 ++--- .../0035-Optimize-explosions.patch | 10 +-- .../0039-Add-player-view-distance-API.patch | 8 +- .../0041-Disable-thunder.patch | 6 +- .../0042-Disable-ice-and-snow.patch | 6 +- .../0050-Disable-spigot-tick-limiters.patch | 8 +- Spigot-Server-Patches/0058-Timings-v2.patch | 74 +++++++++---------- ...60-Ensure-commands-are-not-ran-async.patch | 6 +- ...port-to-tab-completers-vanilla-featu.patch | 6 +- ...Made-EntityDismountEvent-Cancellable.patch | 11 ++- ...e-informative-in-maxHealth-exception.patch | 6 +- .../0070-Player-Tab-List-and-Title-APIs.patch | 6 +- ...entation-of-tile-entity-removal-list.patch | 6 +- ...x-inter-world-teleportation-glitches.patch | 6 +- .../0076-Add-exception-reporting-event.patch | 16 ++-- upstreamMerge.sh | 1 + 33 files changed, 160 insertions(+), 159 deletions(-) diff --git a/.gitignore b/.gitignore index 78ec8315fc..3827bdefa8 100644 --- a/.gitignore +++ b/.gitignore @@ -47,3 +47,4 @@ Bukkit CraftBukkit Paperclip Paperclip.jar +paperclip.jar diff --git a/Paperclip b/Paperclip index 1b58efd4de..98c39e89d1 160000 --- a/Paperclip +++ b/Paperclip @@ -1 +1 @@ -Subproject commit 1b58efd4de067e40562ba01fefe70cc22a32ffeb +Subproject commit 98c39e89d130e39c75cf4ebeea914f7ceb359a84 diff --git a/Spigot-API-Patches/0001-POM-changes.patch b/Spigot-API-Patches/0001-POM-changes.patch index 4c5ab4393c..24a010aca6 100644 --- a/Spigot-API-Patches/0001-POM-changes.patch +++ b/Spigot-API-Patches/0001-POM-changes.patch @@ -24,7 +24,7 @@ index dec3b6c..b85201d 100644 - spigot-api + com.destroystokyo.paper + paper-api - 1.9-SNAPSHOT + 1.9-R0.1-SNAPSHOT jar - Spigot-API diff --git a/Spigot-API-Patches/0007-Add-PlayerLocaleChangeEvent.patch b/Spigot-API-Patches/0007-Add-PlayerLocaleChangeEvent.patch index 3626013763..5d41dc2763 100644 --- a/Spigot-API-Patches/0007-Add-PlayerLocaleChangeEvent.patch +++ b/Spigot-API-Patches/0007-Add-PlayerLocaleChangeEvent.patch @@ -1,5 +1,5 @@ -From 3c8bd87bc36a0c83f24b14609fe615824d1b6002 Mon Sep 17 00:00:00 2001 -From: Zach Brown +From 84ef6c67c70f704918f2d6d1ae00a1ae10b317be Mon Sep 17 00:00:00 2001 +From: Isaac Moore Date: Mon, 29 Feb 2016 18:02:25 -0600 Subject: [PATCH] Add PlayerLocaleChangeEvent diff --git a/Spigot-Server-Patches/0001-POM-Changes.patch b/Spigot-Server-Patches/0001-POM-Changes.patch index 4eb4c49baf..e09bdb7e46 100644 --- a/Spigot-Server-Patches/0001-POM-Changes.patch +++ b/Spigot-Server-Patches/0001-POM-Changes.patch @@ -17,7 +17,7 @@ index 953cdbc..ddbb829 100644 + com.destroystokyo.paper + paper jar - 1.9-SNAPSHOT + 1.9-R0.1-SNAPSHOT - Spigot - http://www.spigotmc.org + Paper diff --git a/Spigot-Server-Patches/0004-Vanished-players-don-t-have-rights.patch b/Spigot-Server-Patches/0004-Vanished-players-don-t-have-rights.patch index 7edbb142dc..27d4db0e18 100644 --- a/Spigot-Server-Patches/0004-Vanished-players-don-t-have-rights.patch +++ b/Spigot-Server-Patches/0004-Vanished-players-don-t-have-rights.patch @@ -1,4 +1,4 @@ -From de4a6a9e00d7de06c75df36b7b96ee4d3750a430 Mon Sep 17 00:00:00 2001 +From 9e8464320b6233bac928471a67ff7ff099d3915f Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Mon, 29 Feb 2016 21:20:21 -0600 Subject: [PATCH] Vanished players don't have rights @@ -75,10 +75,10 @@ index 300573a..6eeb03b 100644 IBlockData iblockdata1 = this.a.getPlacedState(world, blockposition, enumdirection, f, f1, f2, i, entityhuman); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 92f9e3d..93dbc9c 100644 +index 2c4e46e..e9c54ee 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java -@@ -1646,6 +1646,14 @@ public abstract class World implements IBlockAccess { +@@ -1649,6 +1649,14 @@ public abstract class World implements IBlockAccess { for (int i = 0; i < list.size(); ++i) { Entity entity1 = (Entity) list.get(i); diff --git a/Spigot-Server-Patches/0010-Toggle-for-player-interact-limiter.patch b/Spigot-Server-Patches/0010-Toggle-for-player-interact-limiter.patch index f8d0f5e59c..3a9b84a7f7 100644 --- a/Spigot-Server-Patches/0010-Toggle-for-player-interact-limiter.patch +++ b/Spigot-Server-Patches/0010-Toggle-for-player-interact-limiter.patch @@ -1,11 +1,11 @@ -From 6b7626be9f683f5e31323cdd56e10546437785c4 Mon Sep 17 00:00:00 2001 +From d61790e52a4e3c10ac24a44892afa270b1c06abb Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Tue, 1 Mar 2016 13:31:05 -0600 Subject: [PATCH] Toggle for player interact limiter diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index 881e989..c8638a8 100644 +index dca7763..0ffa733 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -119,4 +119,12 @@ public class PaperConfig { @@ -22,10 +22,10 @@ index 881e989..c8638a8 100644 + } } diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 0f873ae..b7db9b6 100644 +index 83befa9..3116227 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java -@@ -864,7 +864,8 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { +@@ -875,7 +875,8 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { this.player.resetIdleTimer(); // Spigot start boolean throttled = false; diff --git a/Spigot-Server-Patches/0011-Player-Exhaustion-Multipliers.patch b/Spigot-Server-Patches/0011-Player-Exhaustion-Multipliers.patch index 53c043cfe7..8472d09028 100644 --- a/Spigot-Server-Patches/0011-Player-Exhaustion-Multipliers.patch +++ b/Spigot-Server-Patches/0011-Player-Exhaustion-Multipliers.patch @@ -1,11 +1,11 @@ -From d5804afa686172f201f7d7f7cef178f54ba4a4f3 Mon Sep 17 00:00:00 2001 +From a595984e22203c305cc110aa23357e6afb0a91ee Mon Sep 17 00:00:00 2001 From: gsand Date: Tue, 1 Mar 2016 13:43:16 -0600 Subject: [PATCH] Player Exhaustion Multipliers diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 2f30b66..d5b4756 100644 +index f042253..7a7547f 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -94,4 +94,13 @@ public class PaperWorldConfig { @@ -36,10 +36,10 @@ index 1d2f580..bed5577 100644 ItemStack itemstack1 = this.u(iblockdata); diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 53936de..d8161a8 100644 +index 1ad18f4..7b7025f 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java -@@ -1446,13 +1446,13 @@ public abstract class EntityHuman extends EntityLiving { +@@ -1448,13 +1448,13 @@ public abstract class EntityHuman extends EntityLiving { i = Math.round(MathHelper.sqrt(d0 * d0 + d1 * d1 + d2 * d2) * 100.0F); if (i > 0) { this.a(StatisticList.q, i); diff --git a/Spigot-Server-Patches/0013-Allow-for-toggling-of-spawn-chunks.patch b/Spigot-Server-Patches/0013-Allow-for-toggling-of-spawn-chunks.patch index d3f7fa1770..d3f5b8b82a 100644 --- a/Spigot-Server-Patches/0013-Allow-for-toggling-of-spawn-chunks.patch +++ b/Spigot-Server-Patches/0013-Allow-for-toggling-of-spawn-chunks.patch @@ -1,11 +1,11 @@ -From 44d08ff1133630f18994c477b7408a9bca02da16 Mon Sep 17 00:00:00 2001 -From: Dmck2b -Date: Tue, 1 Mar 2016 13:59:50 -0600 +From 3c434790ac382eaa86a47efb3267c4f9db51db46 Mon Sep 17 00:00:00 2001 +From: Zach Brown +Date: Thu, 3 Mar 2016 03:53:43 -0600 Subject: [PATCH] Allow for toggling of spawn chunks diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index a662f26..41747bd 100644 +index 375ac89..22d68af 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -119,4 +119,10 @@ public class PaperWorldConfig { @@ -20,13 +20,13 @@ index a662f26..41747bd 100644 + } } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 93dbc9c..d3d92a3 100644 +index e9c54ee..7705d0d 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java -@@ -168,6 +168,7 @@ public abstract class World implements IBlockAccess { - this.isClientSide = flag; - this.N = worldprovider.getWorldBorder(); - this.getServer().addWorld(this.world); // CraftBukkit +@@ -171,6 +171,7 @@ public abstract class World implements IBlockAccess { + this.N.world = (WorldServer) this; + this.getServer().addWorld(this.world); + // CraftBukkit end + this.keepSpawnInMemory = this.paperConfig.keepSpawnInMemory; // Paper timings = new SpigotTimings.WorldTimingsHandler(this); // Spigot - code below can generate new world and access timings this.entityLimiter = new org.spigotmc.TickLimiter(spigotConfig.entityMaxTickTime); diff --git a/Spigot-Server-Patches/0016-Show-Paper-in-client-crashes-server-lists-and-Mojang.patch b/Spigot-Server-Patches/0016-Show-Paper-in-client-crashes-server-lists-and-Mojang.patch index 1f00bd43a5..48504985e5 100644 --- a/Spigot-Server-Patches/0016-Show-Paper-in-client-crashes-server-lists-and-Mojang.patch +++ b/Spigot-Server-Patches/0016-Show-Paper-in-client-crashes-server-lists-and-Mojang.patch @@ -1,4 +1,4 @@ -From 61ede748726903b893c445653d8efe03a567607d Mon Sep 17 00:00:00 2001 +From 451930ce992808fcdfd35ed1d385be7d1fb9c08b Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Tue, 1 Mar 2016 14:32:43 -0600 Subject: [PATCH] Show 'Paper' in client crashes, server lists, and Mojang @@ -6,10 +6,10 @@ Subject: [PATCH] Show 'Paper' in client crashes, server lists, and Mojang diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 89e6ad3..7b99c2f 100644 +index 4cc436d..11dbde5 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1017,7 +1017,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs +@@ -1022,7 +1022,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs } public String getServerModName() { diff --git a/Spigot-Server-Patches/0017-Player-affects-spawning-API.patch b/Spigot-Server-Patches/0017-Player-affects-spawning-API.patch index 94b4ec3bb1..e0fb0402f9 100644 --- a/Spigot-Server-Patches/0017-Player-affects-spawning-API.patch +++ b/Spigot-Server-Patches/0017-Player-affects-spawning-API.patch @@ -1,11 +1,11 @@ -From 068300d37fa5f1d5782feaf840b64294e69bd72e Mon Sep 17 00:00:00 2001 +From d64749677d07c4a81f77aba15e47315933ec6fb4 Mon Sep 17 00:00:00 2001 From: Jedediah Smith Date: Tue, 1 Mar 2016 14:47:52 -0600 Subject: [PATCH] Player affects spawning API diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index d8161a8..5fcd6b8 100644 +index 7b7025f..9534bf9 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -63,6 +63,7 @@ public abstract class EntityHuman extends EntityLiving { @@ -30,7 +30,7 @@ index 916c913..c04490a 100644 if (entityhuman != null) { double d0 = entityhuman.locX - this.locX; diff --git a/src/main/java/net/minecraft/server/MobSpawnerAbstract.java b/src/main/java/net/minecraft/server/MobSpawnerAbstract.java -index efe792b..917b626 100644 +index a7903a2..2eee845 100644 --- a/src/main/java/net/minecraft/server/MobSpawnerAbstract.java +++ b/src/main/java/net/minecraft/server/MobSpawnerAbstract.java @@ -32,7 +32,7 @@ public abstract class MobSpawnerAbstract { @@ -65,10 +65,10 @@ index 9e19dfd..b724586 100644 biomebase_biomemeta = worldserver.a(enumcreaturetype, (BlockPosition) blockposition_mutableblockposition); if (biomebase_biomemeta == null) { diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 9bee723..1c5718e 100644 +index 7705d0d..b4630c4 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java -@@ -2650,6 +2650,53 @@ public abstract class World implements IBlockAccess { +@@ -2653,6 +2653,53 @@ public abstract class World implements IBlockAccess { return i; } @@ -123,10 +123,10 @@ index 9bee723..1c5718e 100644 return this.a(entity.locX, entity.locY, entity.locZ, d0, false); } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 9298344..a9f55ac 100644 +index 250f112..03cdefd 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1416,6 +1416,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1412,6 +1412,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player { } diff --git a/Spigot-Server-Patches/0020-Optimize-TileEntity-Ticking.patch b/Spigot-Server-Patches/0020-Optimize-TileEntity-Ticking.patch index 2a4cf88120..35e948cdb4 100644 --- a/Spigot-Server-Patches/0020-Optimize-TileEntity-Ticking.patch +++ b/Spigot-Server-Patches/0020-Optimize-TileEntity-Ticking.patch @@ -1,4 +1,4 @@ -From 9d63918c050e6ef7fd07581bc6563a8076c62424 Mon Sep 17 00:00:00 2001 +From e240cad9f99160a8e690e0b7bc1f32b8557ea6d1 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Tue, 1 Mar 2016 22:01:19 -0600 Subject: [PATCH] Optimize TileEntity Ticking @@ -185,7 +185,7 @@ index e454622..d01b65a 100644 } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index f0988fa..d9a84b6 100644 +index b4630c4..43f0716 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -60,7 +60,7 @@ public abstract class World implements IBlockAccess { @@ -197,7 +197,7 @@ index f0988fa..d9a84b6 100644 public final List tileEntityListTick = Lists.newArrayList(); private final List b = Lists.newArrayList(); private final List tileEntityListUnload = Lists.newArrayList(); -@@ -1428,7 +1428,7 @@ public abstract class World implements IBlockAccess { +@@ -1431,7 +1431,7 @@ public abstract class World implements IBlockAccess { // CraftBukkit start - From below, clean up tile entities before ticking them if (!this.tileEntityListUnload.isEmpty()) { this.tileEntityListTick.removeAll(this.tileEntityListUnload); @@ -206,7 +206,7 @@ index f0988fa..d9a84b6 100644 this.tileEntityListUnload.clear(); } // CraftBukkit end -@@ -1476,7 +1476,7 @@ public abstract class World implements IBlockAccess { +@@ -1479,7 +1479,7 @@ public abstract class World implements IBlockAccess { if (tileentity.x()) { tilesThisCycle--; this.tileEntityListTick.remove(tileTickPosition--); @@ -215,7 +215,7 @@ index f0988fa..d9a84b6 100644 if (this.isLoaded(tileentity.getPosition())) { this.getChunkAtWorldCoords(tileentity.getPosition()).d(tileentity.getPosition()); } -@@ -1527,7 +1527,7 @@ public abstract class World implements IBlockAccess { +@@ -1530,7 +1530,7 @@ public abstract class World implements IBlockAccess { protected void l() {} public boolean a(TileEntity tileentity) { @@ -224,7 +224,7 @@ index f0988fa..d9a84b6 100644 if (flag && tileentity instanceof ITickable) { this.tileEntityListTick.add(tileentity); -@@ -2000,7 +2000,7 @@ public abstract class World implements IBlockAccess { +@@ -2003,7 +2003,7 @@ public abstract class World implements IBlockAccess { } else { if (tileentity != null) { this.b.remove(tileentity); diff --git a/Spigot-Server-Patches/0021-Further-improve-server-tick-loop.patch b/Spigot-Server-Patches/0021-Further-improve-server-tick-loop.patch index fcebb12d5a..c14bc2e7ba 100644 --- a/Spigot-Server-Patches/0021-Further-improve-server-tick-loop.patch +++ b/Spigot-Server-Patches/0021-Further-improve-server-tick-loop.patch @@ -1,4 +1,4 @@ -From b5989dbd8369d267021623b3426053f1e020a2e3 Mon Sep 17 00:00:00 2001 +From f9ee0e86f8a7e899e52e2d574ac9d91194452526 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 1 Mar 2016 23:09:29 -0600 Subject: [PATCH] Further improve server tick loop @@ -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 7b99c2f..0a23d2a 100644 +index 11dbde5..db425fb 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -109,17 +109,11 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs @@ -34,7 +34,7 @@ index 7b99c2f..0a23d2a 100644 public MinecraftServer(OptionSet options, Proxy proxy, DataConverterManager dataconvertermanager, YggdrasilAuthenticationService yggdrasilauthenticationservice, MinecraftSessionService minecraftsessionservice, GameProfileRepository gameprofilerepository, UserCache usercache) { io.netty.util.ResourceLeakDetector.setEnabled( false ); // Spigot - disable -@@ -510,12 +504,54 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs +@@ -515,12 +509,54 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs this.isRunning = false; } @@ -94,7 +94,7 @@ index 7b99c2f..0a23d2a 100644 public void run() { try { -@@ -529,24 +565,41 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs +@@ -534,24 +570,41 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs // Spigot start Arrays.fill( recentTps, 20 ); diff --git a/Spigot-Server-Patches/0022-Only-refresh-abilities-if-needed.patch b/Spigot-Server-Patches/0022-Only-refresh-abilities-if-needed.patch index de9a305c51..cd465b140d 100644 --- a/Spigot-Server-Patches/0022-Only-refresh-abilities-if-needed.patch +++ b/Spigot-Server-Patches/0022-Only-refresh-abilities-if-needed.patch @@ -1,14 +1,14 @@ -From 43233efe6e6330c3c626f395b56b566db354b57f Mon Sep 17 00:00:00 2001 +From c34fa8a780ab569ffb75fb59206f0675522e1ed8 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Tue, 1 Mar 2016 23:12:03 -0600 Subject: [PATCH] Only refresh abilities if needed diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 9298344..039a170 100644 +index 03cdefd..972ead0 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1143,12 +1143,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1139,12 +1139,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public void setFlying(boolean value) { diff --git a/Spigot-Server-Patches/0024-FallingBlock-and-TNTPrimed-source-location-API.patch b/Spigot-Server-Patches/0024-FallingBlock-and-TNTPrimed-source-location-API.patch index 74f9a2f751..0b792d6f6b 100644 --- a/Spigot-Server-Patches/0024-FallingBlock-and-TNTPrimed-source-location-API.patch +++ b/Spigot-Server-Patches/0024-FallingBlock-and-TNTPrimed-source-location-API.patch @@ -1,4 +1,4 @@ -From e235a4f67d0e1b770147f4666b04193a91e05314 Mon Sep 17 00:00:00 2001 +From 1b4d0016dc95c2e8fe1eba1a0d823f0da1292e41 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Tue, 1 Mar 2016 23:45:08 -0600 Subject: [PATCH] FallingBlock and TNTPrimed source location API @@ -74,7 +74,7 @@ index d7bea3d..c1c0c7c 100644 world.addEntity(entitytntprimed); diff --git a/src/main/java/net/minecraft/server/EntityFallingBlock.java b/src/main/java/net/minecraft/server/EntityFallingBlock.java -index 9c506ed..500163b 100644 +index 4c8e336..c44e493 100644 --- a/src/main/java/net/minecraft/server/EntityFallingBlock.java +++ b/src/main/java/net/minecraft/server/EntityFallingBlock.java @@ -17,13 +17,25 @@ public class EntityFallingBlock extends Entity { @@ -193,7 +193,7 @@ index 564ea37..1820c7b 100644 public EntityLiving getSource() { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 173f1c5..24ecfae 100644 +index db29976..dfb656a 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -880,7 +880,10 @@ public class CraftWorld implements World { @@ -220,7 +220,7 @@ index 173f1c5..24ecfae 100644 } else if (Projectile.class.isAssignableFrom(clazz)) { if (Snowball.class.isAssignableFrom(clazz)) { entity = new EntitySnowball(world, x, y, z); -@@ -1111,7 +1117,8 @@ public class CraftWorld implements World { +@@ -1108,7 +1114,8 @@ public class CraftWorld implements World { throw new IllegalArgumentException("Cannot spawn hanging entity for " + clazz.getName() + " at " + location); } } else if (TNTPrimed.class.isAssignableFrom(clazz)) { diff --git a/Spigot-Server-Patches/0025-Prevent-tile-entity-and-entity-crashes.patch b/Spigot-Server-Patches/0025-Prevent-tile-entity-and-entity-crashes.patch index 25a274e973..83112ec487 100644 --- a/Spigot-Server-Patches/0025-Prevent-tile-entity-and-entity-crashes.patch +++ b/Spigot-Server-Patches/0025-Prevent-tile-entity-and-entity-crashes.patch @@ -1,4 +1,4 @@ -From 45a92c6e251d7281edc48b071e4371b9467cd4a6 Mon Sep 17 00:00:00 2001 +From 94d3a4e3de2a7e6a19a82bfb5a59f69f6fb9c6e1 Mon Sep 17 00:00:00 2001 From: Aikar Date: Tue, 1 Mar 2016 23:52:34 -0600 Subject: [PATCH] Prevent tile entity and entity crashes @@ -23,10 +23,10 @@ index e6524e9..d898428 100644 public String a() throws Exception { int i = Block.getId(TileEntity.this.world.getType(TileEntity.this.position).getBlock()); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index d9a84b6..2406541 100644 +index 43f0716..58abd10 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java -@@ -1395,10 +1395,13 @@ public abstract class World implements IBlockAccess { +@@ -1398,10 +1398,13 @@ public abstract class World implements IBlockAccess { this.g(entity); SpigotTimings.tickEntityTimer.stopTiming(); // Spigot } catch (Throwable throwable1) { @@ -44,7 +44,7 @@ index d9a84b6..2406541 100644 } } -@@ -1460,10 +1463,14 @@ public abstract class World implements IBlockAccess { +@@ -1463,10 +1466,14 @@ public abstract class World implements IBlockAccess { ((ITickable) tileentity).c(); this.methodProfiler.b(); } catch (Throwable throwable2) { diff --git a/Spigot-Server-Patches/0028-Fix-redstone-lag-issues.patch b/Spigot-Server-Patches/0028-Fix-redstone-lag-issues.patch index 9968dbfe77..60f83a0f2c 100644 --- a/Spigot-Server-Patches/0028-Fix-redstone-lag-issues.patch +++ b/Spigot-Server-Patches/0028-Fix-redstone-lag-issues.patch @@ -1,11 +1,11 @@ -From aad4d45a696b28cd81f39fdcadea59802c9b08d7 Mon Sep 17 00:00:00 2001 +From 7cc8852fb82b77ed0c37f262cabbdd01c40c18de Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Wed, 2 Mar 2016 00:21:24 -0600 Subject: [PATCH] Fix redstone lag issues diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index a45bb02..3ac2edd 100644 +index a9489de..28e3e3c 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -147,4 +147,15 @@ public class PaperWorldConfig { @@ -25,10 +25,10 @@ index a45bb02..3ac2edd 100644 + } diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index c2ca2df..1c8f6a1 100644 +index 46004f0..14d92bb 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -689,6 +689,8 @@ public class WorldServer extends World implements IAsyncTaskHandler { +@@ -690,6 +690,8 @@ public class WorldServer extends World implements IAsyncTaskHandler { if (false) { // CraftBukkit throw new IllegalStateException("TickNextTick list out of synch"); } else { @@ -37,7 +37,7 @@ index c2ca2df..1c8f6a1 100644 if (i > 1000) { // CraftBukkit start - If the server has too much to process over time, try to alleviate that if (i > 20 * 1000) { -@@ -698,6 +700,11 @@ public class WorldServer extends World implements IAsyncTaskHandler { +@@ -699,6 +701,11 @@ public class WorldServer extends World implements IAsyncTaskHandler { } // CraftBukkit end } @@ -49,7 +49,7 @@ index c2ca2df..1c8f6a1 100644 this.methodProfiler.a("cleaning"); -@@ -715,6 +722,24 @@ public class WorldServer extends World implements IAsyncTaskHandler { +@@ -716,6 +723,24 @@ public class WorldServer extends World implements IAsyncTaskHandler { this.U.add(nextticklistentry); } diff --git a/Spigot-Server-Patches/0030-Configurable-async-light-updates.patch b/Spigot-Server-Patches/0030-Configurable-async-light-updates.patch index 0daf619a6c..71fffb7fd0 100644 --- a/Spigot-Server-Patches/0030-Configurable-async-light-updates.patch +++ b/Spigot-Server-Patches/0030-Configurable-async-light-updates.patch @@ -1,11 +1,11 @@ -From be968a89c4fbd89664c97deeeeaacbc8b004209b Mon Sep 17 00:00:00 2001 +From 229a02dbfcc982bb407cd6044c935c71a9dcd913 Mon Sep 17 00:00:00 2001 From: Byteflux Date: Wed, 2 Mar 2016 00:52:31 -0600 Subject: [PATCH] Configurable async light updates diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 3ac2edd..3506b1b 100644 +index 28e3e3c..402ed0a 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -158,4 +158,9 @@ public class PaperWorldConfig { @@ -85,7 +85,7 @@ index 2f37957..3e9b26f 100644 // Spigot Start /* diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java -index fd3f457..72c1fc7 100644 +index 21e7709..1f99e85 100644 --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java @@ -46,6 +46,12 @@ public class ChunkProviderServer implements IChunkProvider { @@ -102,7 +102,7 @@ index fd3f457..72c1fc7 100644 // CraftBukkit start this.unloadQueue.add(i, j); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 180eccb..79cd94d 100644 +index 58abd10..bbdfb3b 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -29,6 +29,12 @@ import org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason; @@ -126,7 +126,7 @@ index 180eccb..79cd94d 100644 public CraftWorld getWorld() { return this.world; -@@ -447,7 +454,7 @@ public abstract class World implements IBlockAccess { +@@ -450,7 +457,7 @@ public abstract class World implements IBlockAccess { if (!this.worldProvider.m()) { for (i1 = k; i1 <= l; ++i1) { @@ -135,7 +135,7 @@ index 180eccb..79cd94d 100644 } } -@@ -2215,10 +2222,10 @@ public abstract class World implements IBlockAccess { +@@ -2218,10 +2225,10 @@ public abstract class World implements IBlockAccess { boolean flag = false; if (!this.worldProvider.m()) { @@ -148,7 +148,7 @@ index 180eccb..79cd94d 100644 return flag; } -@@ -2268,10 +2275,15 @@ public abstract class World implements IBlockAccess { +@@ -2271,10 +2278,15 @@ public abstract class World implements IBlockAccess { } } @@ -166,7 +166,7 @@ index 180eccb..79cd94d 100644 // CraftBukkit end return false; } else { -@@ -2342,6 +2354,17 @@ public abstract class World implements IBlockAccess { +@@ -2345,6 +2357,17 @@ public abstract class World implements IBlockAccess { i = 0; } @@ -184,7 +184,7 @@ index 180eccb..79cd94d 100644 this.methodProfiler.b(); this.methodProfiler.a("checkedPosition < toCheckCount"); -@@ -2396,6 +2419,52 @@ public abstract class World implements IBlockAccess { +@@ -2399,6 +2422,52 @@ public abstract class World implements IBlockAccess { } } diff --git a/Spigot-Server-Patches/0035-Optimize-explosions.patch b/Spigot-Server-Patches/0035-Optimize-explosions.patch index e088f85883..c476008a31 100644 --- a/Spigot-Server-Patches/0035-Optimize-explosions.patch +++ b/Spigot-Server-Patches/0035-Optimize-explosions.patch @@ -1,4 +1,4 @@ -From d173d8966a5f250a5aac7191b46b297e26d72f3b Mon Sep 17 00:00:00 2001 +From 983be83bdbd9f5a39c09dd55eee555a6438dc434 Mon Sep 17 00:00:00 2001 From: Byteflux Date: Wed, 2 Mar 2016 11:59:48 -0600 Subject: [PATCH] Optimize explosions @@ -10,7 +10,7 @@ This patch adds a per-tick cache that is used for storing and retrieving an entity's exposure during an explosion. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 3cde5fd..ee50493 100644 +index 74d22f7..d022513 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -193,4 +193,10 @@ public class PaperWorldConfig { @@ -124,10 +124,10 @@ index 87e123c..afe402e 100644 + // Paper end } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 0a23d2a..ac1bec6 100644 +index db425fb..733f8e7 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -858,6 +858,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs +@@ -863,6 +863,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs worldserver.timings.tracker.stopTiming(); // Spigot this.methodProfiler.b(); this.methodProfiler.b(); @@ -136,7 +136,7 @@ index 0a23d2a..ac1bec6 100644 // this.i[i][this.ticks % 100] = System.nanoTime() - j; // CraftBukkit diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 79cd94d..8925c67 100644 +index bbdfb3b..ee4642f 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -32,6 +32,7 @@ import org.bukkit.generator.ChunkGenerator; diff --git a/Spigot-Server-Patches/0039-Add-player-view-distance-API.patch b/Spigot-Server-Patches/0039-Add-player-view-distance-API.patch index 0484f2825a..b8fb2848f7 100644 --- a/Spigot-Server-Patches/0039-Add-player-view-distance-API.patch +++ b/Spigot-Server-Patches/0039-Add-player-view-distance-API.patch @@ -1,11 +1,11 @@ -From 69fe942c444ac6c117ed54c4d8729cf2a70c7bdc Mon Sep 17 00:00:00 2001 +From 58791be2a7a101b811e2c0dce46d0ec39720c5cd Mon Sep 17 00:00:00 2001 From: Byteflux Date: Wed, 2 Mar 2016 14:35:27 -0600 Subject: [PATCH] Add player view distance API diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index b32617b..8be847d 100644 +index 94b487c..3536c34 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -53,6 +53,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting { @@ -88,10 +88,10 @@ index 8ef7eb2..5421026 100644 + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 8fcbba3..6fb4fb0 100644 +index 972ead0..1a3c6d7 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -1427,6 +1427,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1423,6 +1423,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player { public void setAffectsSpawning(boolean affects) { getHandle().affectsSpawning = affects; } diff --git a/Spigot-Server-Patches/0041-Disable-thunder.patch b/Spigot-Server-Patches/0041-Disable-thunder.patch index f28ec39b51..0fe172de02 100644 --- a/Spigot-Server-Patches/0041-Disable-thunder.patch +++ b/Spigot-Server-Patches/0041-Disable-thunder.patch @@ -1,4 +1,4 @@ -From 6ebaa01ec3801936dddbffe7fa626d99bb9bac5b Mon Sep 17 00:00:00 2001 +From 93f794b1ca83d9f2f5fd6df068114e597a31defd Mon Sep 17 00:00:00 2001 From: Sudzzy Date: Wed, 2 Mar 2016 14:52:43 -0600 Subject: [PATCH] Disable thunder @@ -19,10 +19,10 @@ index 6b5067a..b8262fc 100644 + } } diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 1c8f6a1..5afc655 100644 +index 14d92bb..36e4dab 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -416,7 +416,8 @@ public class WorldServer extends World implements IAsyncTaskHandler { +@@ -417,7 +417,8 @@ public class WorldServer extends World implements IAsyncTaskHandler { int l; BlockPosition blockposition; diff --git a/Spigot-Server-Patches/0042-Disable-ice-and-snow.patch b/Spigot-Server-Patches/0042-Disable-ice-and-snow.patch index 1aa739f657..7c8c811e14 100644 --- a/Spigot-Server-Patches/0042-Disable-ice-and-snow.patch +++ b/Spigot-Server-Patches/0042-Disable-ice-and-snow.patch @@ -1,4 +1,4 @@ -From 848f1ede210fd27e9b0177c78d6a620ce78f89a0 Mon Sep 17 00:00:00 2001 +From 2df4975985ef29a5bcd4710fdf9430ad856adb4e Mon Sep 17 00:00:00 2001 From: Sudzzy Date: Wed, 2 Mar 2016 14:57:24 -0600 Subject: [PATCH] Disable ice and snow @@ -19,10 +19,10 @@ index b8262fc..cd67b7d 100644 + } } diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 5afc655..6cc8d28 100644 +index 36e4dab..4c7a99f 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java -@@ -440,7 +440,7 @@ public class WorldServer extends World implements IAsyncTaskHandler { +@@ -441,7 +441,7 @@ public class WorldServer extends World implements IAsyncTaskHandler { } this.methodProfiler.c("iceandsnow"); diff --git a/Spigot-Server-Patches/0050-Disable-spigot-tick-limiters.patch b/Spigot-Server-Patches/0050-Disable-spigot-tick-limiters.patch index 3ac6d31267..497e3fd223 100644 --- a/Spigot-Server-Patches/0050-Disable-spigot-tick-limiters.patch +++ b/Spigot-Server-Patches/0050-Disable-spigot-tick-limiters.patch @@ -1,14 +1,14 @@ -From ee0074f3f7228f1a8975526964f30bfc917ddd2b Mon Sep 17 00:00:00 2001 +From 10e9ad852d5f1b56dd3eac57fb68df1f73ae5ef7 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Wed, 2 Mar 2016 23:45:17 -0600 Subject: [PATCH] Disable spigot tick limiters diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 8925c67..6e021c6 100644 +index ee4642f..195bfa5 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java -@@ -1380,10 +1380,10 @@ public abstract class World implements IBlockAccess { +@@ -1383,10 +1383,10 @@ public abstract class World implements IBlockAccess { guardEntityList = true; // Spigot // CraftBukkit start - Use field for loop variable int entitiesThisCycle = 0; @@ -23,7 +23,7 @@ index 8925c67..6e021c6 100644 tickPosition = (tickPosition < entityList.size()) ? tickPosition : 0; entity = (Entity) this.entityList.get(this.tickPosition); // CraftBukkit end -@@ -1448,9 +1448,7 @@ public abstract class World implements IBlockAccess { +@@ -1451,9 +1451,7 @@ public abstract class World implements IBlockAccess { // Spigot start // Iterator iterator = this.tileEntityListTick.iterator(); int tilesThisCycle = 0; diff --git a/Spigot-Server-Patches/0058-Timings-v2.patch b/Spigot-Server-Patches/0058-Timings-v2.patch index d9bc332d4a..f782a2e3f3 100644 --- a/Spigot-Server-Patches/0058-Timings-v2.patch +++ b/Spigot-Server-Patches/0058-Timings-v2.patch @@ -1,6 +1,6 @@ -From fa5b865733cbba448c5bfb411c1de56bae085cca Mon Sep 17 00:00:00 2001 +From 3d6af186058dc01e3be7ac63a873ee40c9fc9a9a Mon Sep 17 00:00:00 2001 From: Aikar -Date: Thu, 3 Mar 2016 01:03:42 -0600 +Date: Thu, 3 Mar 2016 04:00:11 -0600 Subject: [PATCH] Timings v2 @@ -277,7 +277,7 @@ index bed5577..0f71013 100644 public static int getId(Block block) { return Block.REGISTRY.a(block); // CraftBukkit - decompile error diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java -index 45680ed..a06ea85 100644 +index dd3abb8..a0186ef 100644 --- a/src/main/java/net/minecraft/server/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/DedicatedServer.java @@ -22,7 +22,7 @@ import java.io.PrintStream; @@ -290,7 +290,7 @@ index 45680ed..a06ea85 100644 import org.bukkit.craftbukkit.util.Waitable; import org.bukkit.event.server.RemoteServerCommandEvent; diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 7fa5440..d10fd67 100644 +index 429749a..b0aef4c 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -24,7 +24,8 @@ import org.bukkit.block.BlockFace; @@ -400,7 +400,7 @@ index 8d91f7c..a8e8557 100644 } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index ac1bec6..cf5dbd5 100644 +index 733f8e7..92b98a0 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -45,7 +45,7 @@ import org.bukkit.craftbukkit.CraftServer; @@ -417,10 +417,10 @@ index ac1bec6..cf5dbd5 100644 // CraftBukkit end MinecraftServer.LOGGER.info("Stopping server"); + SpigotTimings.stopServer(); // Paper - if (this.am() != null) { - this.am().b(); - } -@@ -694,7 +695,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs + // CraftBukkit start + if (this.server != null) { + this.server.disablePlugins(); +@@ -699,7 +700,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs protected void B() {} protected void C() throws ExceptionWorldConflict { // CraftBukkit - added throws @@ -429,7 +429,7 @@ index ac1bec6..cf5dbd5 100644 long i = System.nanoTime(); ++this.ticks; -@@ -754,11 +755,11 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs +@@ -759,11 +760,11 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs this.methodProfiler.b(); this.methodProfiler.b(); org.spigotmc.WatchdogThread.tick(); // Spigot @@ -443,7 +443,7 @@ index ac1bec6..cf5dbd5 100644 this.methodProfiler.a("jobs"); Queue queue = this.j; -@@ -769,13 +770,14 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs +@@ -774,13 +775,14 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs SystemUtils.a(entry, MinecraftServer.LOGGER); } // Spigot end @@ -461,7 +461,7 @@ index ac1bec6..cf5dbd5 100644 // Run tasks that are waiting on processing SpigotTimings.processQueueTimer.startTiming(); // Spigot diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index b7db9b6..0388f6d 100644 +index 3116227..4badf18 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -56,6 +56,7 @@ import org.bukkit.event.player.PlayerToggleSprintEvent; @@ -472,7 +472,7 @@ index b7db9b6..0388f6d 100644 // CraftBukkit end public class PlayerConnection implements PacketListenerPlayIn, ITickable { -@@ -1284,7 +1285,7 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { +@@ -1295,7 +1296,7 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { // CraftBukkit end private void handleCommand(String s) { @@ -481,7 +481,7 @@ index b7db9b6..0388f6d 100644 // CraftBukkit start - whole method if ( org.spigotmc.SpigotConfig.logCommands ) // Spigot this.LOGGER.info(this.player.getName() + " issued server command: " + s); -@@ -1295,22 +1296,22 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { +@@ -1306,22 +1307,22 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { this.server.getPluginManager().callEvent(event); if (event.isCancelled()) { @@ -529,7 +529,7 @@ index d898428..f579d28 100644 private static Map> f = Maps.newHashMap(); private static Map, String> g = Maps.newHashMap(); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 6e021c6..a1cdef6 100644 +index 195bfa5..a5eeef8 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -18,11 +18,11 @@ import com.google.common.collect.Maps; @@ -554,16 +554,16 @@ index 6e021c6..a1cdef6 100644 private boolean guardEntityList; // Spigot public static boolean haveWeSilencedAPhysicsCrash; public static String blockLocation; -@@ -178,7 +178,7 @@ public abstract class World implements IBlockAccess { - this.N = worldprovider.getWorldBorder(); - this.getServer().addWorld(this.world); // CraftBukkit +@@ -181,7 +181,7 @@ public abstract class World implements IBlockAccess { + this.getServer().addWorld(this.world); + // CraftBukkit end this.keepSpawnInMemory = this.paperConfig.keepSpawnInMemory; // Paper - timings = new SpigotTimings.WorldTimingsHandler(this); // Spigot - code below can generate new world and access timings + timings = new co.aikar.timings.WorldTimingsHandler(this); // Paper - code below can generate new world and access timings this.entityLimiter = new org.spigotmc.TickLimiter(spigotConfig.entityMaxTickTime); this.tileLimiter = new org.spigotmc.TickLimiter(spigotConfig.tileMaxTickTime); } -@@ -1350,6 +1350,7 @@ public abstract class World implements IBlockAccess { +@@ -1353,6 +1353,7 @@ public abstract class World implements IBlockAccess { } this.methodProfiler.c("remove"); @@ -571,7 +571,7 @@ index 6e021c6..a1cdef6 100644 this.entityList.removeAll(this.f); int j; -@@ -1370,6 +1371,7 @@ public abstract class World implements IBlockAccess { +@@ -1373,6 +1374,7 @@ public abstract class World implements IBlockAccess { this.f.clear(); this.l(); @@ -579,7 +579,7 @@ index 6e021c6..a1cdef6 100644 this.methodProfiler.c("regular"); CrashReportSystemDetails crashreportsystemdetails1; -@@ -1379,6 +1381,7 @@ public abstract class World implements IBlockAccess { +@@ -1382,6 +1384,7 @@ public abstract class World implements IBlockAccess { timings.entityTick.startTiming(); // Spigot guardEntityList = true; // Spigot // CraftBukkit start - Use field for loop variable @@ -587,7 +587,7 @@ index 6e021c6..a1cdef6 100644 int entitiesThisCycle = 0; // Paper start - Disable tick limiters //if (tickPosition < 0) tickPosition = 0; -@@ -1400,12 +1403,12 @@ public abstract class World implements IBlockAccess { +@@ -1403,12 +1406,12 @@ public abstract class World implements IBlockAccess { this.methodProfiler.a("tick"); if (!entity.dead && !(entity instanceof EntityPlayer)) { try { @@ -603,7 +603,7 @@ index 6e021c6..a1cdef6 100644 System.err.println("Entity threw exception at " + entity.world.getWorld().getName() + ":" + entity.locX + "," + entity.locY + "," + entity.locZ); throwable1.printStackTrace(); entity.dead = true; -@@ -1534,6 +1537,7 @@ public abstract class World implements IBlockAccess { +@@ -1537,6 +1540,7 @@ public abstract class World implements IBlockAccess { } timings.tileEntityPending.stopTiming(); // Spigot @@ -611,7 +611,7 @@ index 6e021c6..a1cdef6 100644 this.methodProfiler.b(); this.methodProfiler.b(); } -@@ -1579,7 +1583,6 @@ public abstract class World implements IBlockAccess { +@@ -1582,7 +1586,6 @@ public abstract class World implements IBlockAccess { entity.ticksLived++; entity.inactiveTick(); } else { @@ -619,7 +619,7 @@ index 6e021c6..a1cdef6 100644 // CraftBukkit end entity.M = entity.locX; entity.N = entity.locY; -@@ -1588,6 +1591,7 @@ public abstract class World implements IBlockAccess { +@@ -1591,6 +1594,7 @@ public abstract class World implements IBlockAccess { entity.lastPitch = entity.pitch; if (flag && entity.aa) { ++entity.ticksLived; @@ -627,7 +627,7 @@ index 6e021c6..a1cdef6 100644 if (entity.isPassenger()) { entity.aw(); } else { -@@ -1646,8 +1650,6 @@ public abstract class World implements IBlockAccess { +@@ -1649,8 +1653,6 @@ public abstract class World implements IBlockAccess { } } } @@ -637,7 +637,7 @@ index 6e021c6..a1cdef6 100644 } diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index 6cc8d28..3567133 100644 +index 4c7a99f..66b7e77 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java @@ -241,13 +241,13 @@ public class WorldServer extends World implements IAsyncTaskHandler { @@ -658,7 +658,7 @@ index 6cc8d28..3567133 100644 this.methodProfiler.c("chunkMap"); timings.doChunkMap.startTiming(); // Spigot this.manager.flush(); -@@ -477,7 +477,7 @@ public class WorldServer extends World implements IAsyncTaskHandler { +@@ -478,7 +478,7 @@ public class WorldServer extends World implements IAsyncTaskHandler { } } @@ -667,7 +667,7 @@ index 6cc8d28..3567133 100644 if (i > 0) { ChunkSection[] achunksection = chunk.getSections(); int i1 = achunksection.length; -@@ -505,6 +505,7 @@ public class WorldServer extends World implements IAsyncTaskHandler { +@@ -506,6 +506,7 @@ public class WorldServer extends World implements IAsyncTaskHandler { } } } @@ -675,7 +675,7 @@ index 6cc8d28..3567133 100644 } this.methodProfiler.b(); -@@ -709,6 +710,7 @@ public class WorldServer extends World implements IAsyncTaskHandler { +@@ -710,6 +711,7 @@ public class WorldServer extends World implements IAsyncTaskHandler { this.methodProfiler.a("cleaning"); @@ -683,7 +683,7 @@ index 6cc8d28..3567133 100644 NextTickListEntry nextticklistentry; for (int j = 0; j < i; ++j) { -@@ -722,6 +724,7 @@ public class WorldServer extends World implements IAsyncTaskHandler { +@@ -723,6 +725,7 @@ public class WorldServer extends World implements IAsyncTaskHandler { // this.nextTickListHash.remove(nextticklistentry); this.U.add(nextticklistentry); } @@ -691,7 +691,7 @@ index 6cc8d28..3567133 100644 // Paper start - Allow redstone ticks to bypass the tickNextTickListCap if (paperConfig.tickNextTickListCapIgnoresRedstone) { -@@ -743,6 +746,7 @@ public class WorldServer extends World implements IAsyncTaskHandler { +@@ -744,6 +747,7 @@ public class WorldServer extends World implements IAsyncTaskHandler { this.methodProfiler.b(); this.methodProfiler.a("ticking"); @@ -699,7 +699,7 @@ index 6cc8d28..3567133 100644 Iterator iterator = this.U.iterator(); while (iterator.hasNext()) { -@@ -752,6 +756,8 @@ public class WorldServer extends World implements IAsyncTaskHandler { +@@ -753,6 +757,8 @@ public class WorldServer extends World implements IAsyncTaskHandler { if (this.areChunksLoadedBetween(nextticklistentry.a.a(-b0, -b0, -b0), nextticklistentry.a.a(b0, b0, b0))) { IBlockData iblockdata = this.getType(nextticklistentry.a); @@ -708,7 +708,7 @@ index 6cc8d28..3567133 100644 if (iblockdata.getMaterial() != Material.AIR && Block.a(iblockdata.getBlock(), nextticklistentry.a())) { try { -@@ -764,10 +770,12 @@ public class WorldServer extends World implements IAsyncTaskHandler { +@@ -765,10 +771,12 @@ public class WorldServer extends World implements IAsyncTaskHandler { throw new ReportedException(crashreport); } } @@ -938,7 +938,7 @@ index 41d2d87..0000000 - } -} diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 6fb4fb0..a2f2b8e 100644 +index 1a3c6d7..e49057f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -37,15 +37,9 @@ import org.bukkit.configuration.serialization.DelegateDeserialization; @@ -958,7 +958,7 @@ index 6fb4fb0..a2f2b8e 100644 import org.bukkit.craftbukkit.map.CraftMapView; import org.bukkit.craftbukkit.map.RenderData; import org.bukkit.craftbukkit.scoreboard.CraftScoreboard; -@@ -1559,6 +1553,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1555,6 +1549,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player { packet.components = components; getHandle().playerConnection.sendPacket(packet); } @@ -1107,7 +1107,7 @@ index e52ef47..3d90b34 100644 this.value = value; } diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index df2fce7..4032dcb 100644 +index 75941ec..4d6362d 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java @@ -4,7 +4,7 @@ import java.util.List; diff --git a/Spigot-Server-Patches/0060-Ensure-commands-are-not-ran-async.patch b/Spigot-Server-Patches/0060-Ensure-commands-are-not-ran-async.patch index e566fcf038..c937512a8a 100644 --- a/Spigot-Server-Patches/0060-Ensure-commands-are-not-ran-async.patch +++ b/Spigot-Server-Patches/0060-Ensure-commands-are-not-ran-async.patch @@ -1,4 +1,4 @@ -From 8fbd7be5a61295bdb939a4a5f6eb8b7f9d0ba349 Mon Sep 17 00:00:00 2001 +From 44fe67033cd744250a99062291bb96543dffbaca Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 3 Mar 2016 01:17:12 -0600 Subject: [PATCH] Ensure commands are not ran async @@ -14,10 +14,10 @@ big slowdown in execution but throwing an exception at same time to raise awaren that it is happening so that plugin authors can fix their code to stop executing commands async. diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 0388f6d..15c9827 100644 +index 4badf18..d62d033 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java -@@ -1217,6 +1217,29 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { +@@ -1228,6 +1228,29 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { } if (!async && s.startsWith("/")) { diff --git a/Spigot-Server-Patches/0062-Add-Location-support-to-tab-completers-vanilla-featu.patch b/Spigot-Server-Patches/0062-Add-Location-support-to-tab-completers-vanilla-featu.patch index 4d25af51a2..372066e6d3 100644 --- a/Spigot-Server-Patches/0062-Add-Location-support-to-tab-completers-vanilla-featu.patch +++ b/Spigot-Server-Patches/0062-Add-Location-support-to-tab-completers-vanilla-featu.patch @@ -1,4 +1,4 @@ -From b55b954c4db1cb750cc40bb2d84b6e104d8fdec4 Mon Sep 17 00:00:00 2001 +From 4832c2374cfe6206c3684452864bb671a88d613e Mon Sep 17 00:00:00 2001 From: DemonWav Date: Thu, 3 Mar 2016 01:44:39 -0600 Subject: [PATCH] Add Location support to tab completers (vanilla feature @@ -20,10 +20,10 @@ index ed520d0..50fc4a0 100644 + } } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index cf5dbd5..1f9d56f 100644 +index 92b98a0..4c0b0ba 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1146,7 +1146,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs +@@ -1151,7 +1151,7 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs return arraylist; } */ diff --git a/Spigot-Server-Patches/0063-Made-EntityDismountEvent-Cancellable.patch b/Spigot-Server-Patches/0063-Made-EntityDismountEvent-Cancellable.patch index d88d7d68ed..cc3bda0664 100644 --- a/Spigot-Server-Patches/0063-Made-EntityDismountEvent-Cancellable.patch +++ b/Spigot-Server-Patches/0063-Made-EntityDismountEvent-Cancellable.patch @@ -1,11 +1,11 @@ -From 5c18f5c1534e3aa5152cbc64360cabecd1797e66 Mon Sep 17 00:00:00 2001 +From 1bed4e4301f897bbbfe538ff9fe93aa1d183c175 Mon Sep 17 00:00:00 2001 From: Nik Gil -Date: Thu, 3 Mar 2016 01:50:54 -0600 +Date: Thu, 3 Mar 2016 04:04:19 -0600 Subject: [PATCH] Made EntityDismountEvent Cancellable diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index d10fd67..4b66c59 100644 +index b0aef4c..a6dde74 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -38,6 +38,7 @@ import org.bukkit.craftbukkit.event.CraftEventFactory; @@ -16,11 +16,10 @@ index d10fd67..4b66c59 100644 // CraftBukkit end public abstract class Entity implements ICommandListener { -@@ -1734,7 +1735,11 @@ public abstract class Entity implements ICommandListener { - } +@@ -1735,6 +1736,11 @@ public abstract class Entity implements ICommandListener { } // CraftBukkit end -- Bukkit.getPluginManager().callEvent( new org.spigotmc.event.entity.EntityDismountEvent( this.getBukkitEntity(), entity.getBukkitEntity() ) ); // Spigot + Bukkit.getPluginManager().callEvent( new org.spigotmc.event.entity.EntityDismountEvent(entity.getBukkitEntity(), this.getBukkitEntity())); // Spigot + // Paper start - make EntityDismountEvent cancellable + EntityDismountEvent dismountEvent = new EntityDismountEvent(this.getBukkitEntity(), entity.getBukkitEntity()); // Spigot + Bukkit.getPluginManager().callEvent(dismountEvent); diff --git a/Spigot-Server-Patches/0068-Be-a-bit-more-informative-in-maxHealth-exception.patch b/Spigot-Server-Patches/0068-Be-a-bit-more-informative-in-maxHealth-exception.patch index 6c6654b901..84b536e30e 100644 --- a/Spigot-Server-Patches/0068-Be-a-bit-more-informative-in-maxHealth-exception.patch +++ b/Spigot-Server-Patches/0068-Be-a-bit-more-informative-in-maxHealth-exception.patch @@ -1,14 +1,14 @@ -From 2409601a3a2f0aeec28e4b2cbc03447b42e16d66 Mon Sep 17 00:00:00 2001 +From 4034b13cc0e4afe7c20fc0a85428978d4bccba8c Mon Sep 17 00:00:00 2001 From: kashike Date: Thu, 3 Mar 2016 02:18:39 -0600 Subject: [PATCH] Be a bit more informative in maxHealth exception diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 2895628..4b67dbe 100644 +index 0c234c7..c9a7091 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -@@ -83,7 +83,10 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { +@@ -84,7 +84,10 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { public void setHealth(double health) { if ((health < 0) || (health > getMaxHealth())) { diff --git a/Spigot-Server-Patches/0070-Player-Tab-List-and-Title-APIs.patch b/Spigot-Server-Patches/0070-Player-Tab-List-and-Title-APIs.patch index 7187f2a71c..016e0f801b 100644 --- a/Spigot-Server-Patches/0070-Player-Tab-List-and-Title-APIs.patch +++ b/Spigot-Server-Patches/0070-Player-Tab-List-and-Title-APIs.patch @@ -1,11 +1,11 @@ -From 6a8586923dd65b1afc26798d8f69a14a3a4c4d00 Mon Sep 17 00:00:00 2001 +From dcc0b3337d42767dacea1910dd3b872e27cd2199 Mon Sep 17 00:00:00 2001 From: Techcable Date: Thu, 3 Mar 2016 02:32:10 -0600 Subject: [PATCH] Player Tab List and Title APIs diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index c37ad0e..e360757 100644 +index e139217..3d5bccd 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1,5 +1,6 @@ @@ -99,7 +99,7 @@ index c37ad0e..e360757 100644 // Paper end @Override -@@ -1346,20 +1424,17 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -1342,20 +1420,17 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @Override public void sendTitle(String title, String subtitle) { if (title != null) { diff --git a/Spigot-Server-Patches/0072-Change-implementation-of-tile-entity-removal-list.patch b/Spigot-Server-Patches/0072-Change-implementation-of-tile-entity-removal-list.patch index 159ec5ddee..77c60173e6 100644 --- a/Spigot-Server-Patches/0072-Change-implementation-of-tile-entity-removal-list.patch +++ b/Spigot-Server-Patches/0072-Change-implementation-of-tile-entity-removal-list.patch @@ -1,11 +1,11 @@ -From 7c6aa404106093661e0c94a50910b7e076aba750 Mon Sep 17 00:00:00 2001 +From d9842022cfac2ac27871dc3b363954d3492528cc Mon Sep 17 00:00:00 2001 From: Joseph Hirschfeld Date: Thu, 3 Mar 2016 02:39:54 -0600 Subject: [PATCH] Change implementation of (tile)entity removal list diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index a1cdef6..05f3e45 100644 +index a5eeef8..1c95c96 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -33,6 +33,8 @@ import org.bukkit.generator.ChunkGenerator; @@ -31,7 +31,7 @@ index a1cdef6..05f3e45 100644 public final List players = Lists.newArrayList(); public final List j = Lists.newArrayList(); protected final IntHashMap entitiesById = new IntHashMap(); -@@ -1355,19 +1357,20 @@ public abstract class World implements IBlockAccess { +@@ -1358,19 +1360,20 @@ public abstract class World implements IBlockAccess { int j; diff --git a/Spigot-Server-Patches/0075-Fix-inter-world-teleportation-glitches.patch b/Spigot-Server-Patches/0075-Fix-inter-world-teleportation-glitches.patch index a171b33f32..ef1d3c6d65 100644 --- a/Spigot-Server-Patches/0075-Fix-inter-world-teleportation-glitches.patch +++ b/Spigot-Server-Patches/0075-Fix-inter-world-teleportation-glitches.patch @@ -1,4 +1,4 @@ -From f770b75020f976e76e313a997d49cc32dd37e37b Mon Sep 17 00:00:00 2001 +From 9434875bc68169f237fd9e2088bf99b0e0c2650f Mon Sep 17 00:00:00 2001 From: Sudzzy Date: Thu, 3 Mar 2016 02:50:31 -0600 Subject: [PATCH] Fix inter-world teleportation glitches @@ -25,10 +25,10 @@ index f42efe7..c5c49bf 100644 + } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index d8b4316..b5c9e04 100644 +index 3d5bccd..79f5352 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -@@ -557,7 +557,8 @@ public class CraftPlayer extends CraftHumanEntity implements Player { +@@ -553,7 +553,8 @@ public class CraftPlayer extends CraftHumanEntity implements Player { if (fromWorld == toWorld) { entity.playerConnection.teleport(to); } else { diff --git a/Spigot-Server-Patches/0076-Add-exception-reporting-event.patch b/Spigot-Server-Patches/0076-Add-exception-reporting-event.patch index 3ce53bb9ee..051f247edf 100644 --- a/Spigot-Server-Patches/0076-Add-exception-reporting-event.patch +++ b/Spigot-Server-Patches/0076-Add-exception-reporting-event.patch @@ -1,4 +1,4 @@ -From 2dc6b2c55d255fd4cbd996f7f01244739691260a Mon Sep 17 00:00:00 2001 +From 7437a350b5016312d44dd9cb22a39994063342ab Mon Sep 17 00:00:00 2001 From: Joseph Hirschfeld Date: Thu, 3 Mar 2016 03:15:41 -0600 Subject: [PATCH] Add exception reporting event @@ -89,7 +89,7 @@ index f0c464b..e0c0a26 100644 } } diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java -index 72c1fc7..aaf844a 100644 +index 1f99e85..71ab040 100644 --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java @@ -4,6 +4,7 @@ import java.io.IOException; @@ -100,7 +100,7 @@ index 72c1fc7..aaf844a 100644 import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; -@@ -220,7 +221,11 @@ public class ChunkProviderServer implements IChunkProvider { +@@ -221,7 +222,11 @@ public class ChunkProviderServer implements IChunkProvider { return chunk; } catch (Exception exception) { @@ -113,7 +113,7 @@ index 72c1fc7..aaf844a 100644 return null; } } -@@ -229,7 +234,11 @@ public class ChunkProviderServer implements IChunkProvider { +@@ -230,7 +235,11 @@ public class ChunkProviderServer implements IChunkProvider { try { this.chunkLoader.b(this.world, chunk); } catch (Exception exception) { @@ -126,7 +126,7 @@ index 72c1fc7..aaf844a 100644 } } -@@ -239,9 +248,14 @@ public class ChunkProviderServer implements IChunkProvider { +@@ -240,9 +249,14 @@ public class ChunkProviderServer implements IChunkProvider { chunk.setLastSaved(this.world.getTime()); this.chunkLoader.a(this.world, chunk); } catch (IOException ioexception) { @@ -292,7 +292,7 @@ index 320e52e..d40257f 100644 } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 05f3e45..2b22762 100644 +index 1c95c96..75b0d89 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -1,5 +1,7 @@ @@ -303,7 +303,7 @@ index 05f3e45..2b22762 100644 import com.google.common.base.Function; import com.google.common.base.Objects; import com.google.common.base.Predicate; -@@ -1412,8 +1414,10 @@ public abstract class World implements IBlockAccess { +@@ -1415,8 +1417,10 @@ public abstract class World implements IBlockAccess { } catch (Throwable throwable1) { // Paper start - Prevent tile entity and entity crashes entity.tickTimer.stopTiming(); @@ -315,7 +315,7 @@ index 05f3e45..2b22762 100644 entity.dead = true; continue; // Paper end -@@ -1478,8 +1482,10 @@ public abstract class World implements IBlockAccess { +@@ -1481,8 +1485,10 @@ public abstract class World implements IBlockAccess { } catch (Throwable throwable2) { // Paper start - Prevent tile entity and entity crashes tileentity.tickTimer.stopTiming(); diff --git a/upstreamMerge.sh b/upstreamMerge.sh index 7da28daf0a..d5e2868727 100755 --- a/upstreamMerge.sh +++ b/upstreamMerge.sh @@ -12,4 +12,5 @@ function update { update Bukkit update CraftBukkit +update Paperclip