From dafc3dbcd56d7e3a98cf376a47c4c83c2237a64b Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Mon, 1 Jul 2019 23:51:06 -0500 Subject: [PATCH] Update upstream B/CB/S --- work/Bukkit Submodule work/Bukkit aba2aaaf..949124e0: > SPIGOT-5121: Method to set PierceLevel of arrows --- work/CraftBukkit Submodule work/CraftBukkit c6997924..bf329334: > SPIGOT-5133: Throwing items into secondary end world portal causes crash > SPIGOT-5121: Method to set PierceLevel of arrows > SPIGOT-5122: Skip world#notify if sign has no world. > SPIGOT-5105: The EntityTag nbt tag disappears from preset armor_stand items. > SPIGOT-5106: Config option to prevent plugins with incompatible API's from loading --- work/Spigot Submodule work/Spigot 595711b0..935adb34: > SPIGOT-5088: Additional growth modifiers --- .../0034-Arrow-pickup-rule-API.patch | 8 +- .../0002-Paper-config-files.patch | 24 +- Spigot-Server-Patches/0009-Timings-v2.patch | 68 ++-- .../0018-Implement-Paper-VersionChecker.patch | 10 +- ...023-Further-improve-server-tick-loop.patch | 10 +- ...event-tile-entity-and-entity-crashes.patch | 10 +- ...44-Ensure-commands-are-not-ran-async.patch | 16 +- .../0046-Expose-server-CommandMap.patch | 6 +- .../0052-Add-velocity-warnings.patch | 10 +- .../0054-Add-exception-reporting-event.patch | 26 +- ...ading-permissions.yml-before-plugins.patch | 10 +- ...llow-Reloading-of-Custom-Permissions.patch | 6 +- .../0062-Remove-Metadata-on-reload.patch | 6 +- ...Remove-unused-World-Tile-Entity-List.patch | 6 +- ...setting-for-proxy-online-mode-status.patch | 10 +- ...8-Allow-Reloading-of-Command-Aliases.patch | 6 +- ...n-option-to-prevent-player-names-fro.patch | 8 +- ...oleAppender-for-console-improvements.patch | 30 +- .../0160-Add-UnknownCommandEvent.patch | 6 +- .../0161-Basic-PlayerProfile-API.patch | 22 +- ...mplement-ensureServerConversions-API.patch | 6 +- .../0168-Implement-getI18NDisplayName.patch | 8 +- .../0190-AsyncTabCompleteEvent.patch | 10 +- .../0201-Add-ArmorStand-Item-Meta.patch | 323 ++++++------------ .../0213-getPlayerUniqueId-API.patch | 6 +- ...254-Use-asynchronous-Log4j-2-loggers.patch | 6 +- ...t-armor-stands-from-doing-entity-loo.patch | 8 +- ...on-t-call-getItemMeta-on-hasItemMeta.patch | 8 +- ...dd-Early-Warning-Feature-to-WatchDog.patch | 16 +- ...store-vanlla-default-mob-spawn-range.patch | 6 +- .../0311-Support-Overriding-World-Seeds.patch | 12 +- .../0315-Avoid-dimension-id-collisions.patch | 6 +- ...7-Add-Velocity-IP-Forwarding-Support.patch | 20 +- .../0341-Optimize-redstone-algorithm.patch | 12 +- ...ault-permission-message-configurable.patch | 8 +- ...-Optimize-Captured-TileEntity-Lookup.patch | 6 +- ...isPrimaryThread-and-MinecraftServer-.patch | 8 +- work/Bukkit | 2 +- work/CraftBukkit | 2 +- work/Spigot | 2 +- 40 files changed, 338 insertions(+), 435 deletions(-) diff --git a/Spigot-API-Patches/0034-Arrow-pickup-rule-API.patch b/Spigot-API-Patches/0034-Arrow-pickup-rule-API.patch index a1710c204..15a085893 100644 --- a/Spigot-API-Patches/0034-Arrow-pickup-rule-API.patch +++ b/Spigot-API-Patches/0034-Arrow-pickup-rule-API.patch @@ -1,14 +1,14 @@ -From 06faff5e0489233fecbe3cb2fda7aa50d92f696f Mon Sep 17 00:00:00 2001 +From fc20f0c50630c3172e924b34dfa1e912b8728a74 Mon Sep 17 00:00:00 2001 From: Jedediah Smith Date: Fri, 4 Mar 2016 03:13:18 -0500 Subject: [PATCH] Arrow pickup rule API diff --git a/src/main/java/org/bukkit/entity/AbstractArrow.java b/src/main/java/org/bukkit/entity/AbstractArrow.java -index 4460f6c9e..a1990fef2 100644 +index 88cebc00..b2bf62a5 100644 --- a/src/main/java/org/bukkit/entity/AbstractArrow.java +++ b/src/main/java/org/bukkit/entity/AbstractArrow.java -@@ -111,4 +111,38 @@ public interface AbstractArrow extends Projectile { +@@ -127,4 +127,38 @@ public interface AbstractArrow extends Projectile { */ CREATIVE_ONLY } @@ -48,5 +48,5 @@ index 4460f6c9e..a1990fef2 100644 + // Paper end } -- -2.21.0 +2.22.0 diff --git a/Spigot-Server-Patches/0002-Paper-config-files.patch b/Spigot-Server-Patches/0002-Paper-config-files.patch index 5f355ae08..4c5727d76 100644 --- a/Spigot-Server-Patches/0002-Paper-config-files.patch +++ b/Spigot-Server-Patches/0002-Paper-config-files.patch @@ -1,4 +1,4 @@ -From 6a4a86c8afd583b7bdeaf3b93595924f84c5da6a Mon Sep 17 00:00:00 2001 +From f5aa25001a33f90da1f7959558e4c0d3997d3eb7 Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Mon, 29 Feb 2016 21:02:09 -0600 Subject: [PATCH] Paper config files @@ -518,7 +518,7 @@ index 000000000..a73865739 + } +} diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java -index e1ba833f3..b60956218 100644 +index 82ff352d8..c088ff969 100644 --- a/src/main/java/net/minecraft/server/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/DedicatedServer.java @@ -152,6 +152,15 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer @@ -538,7 +538,7 @@ index e1ba833f3..b60956218 100644 this.setSpawnAnimals(dedicatedserverproperties.spawnAnimals); this.setSpawnNPCs(dedicatedserverproperties.spawnNpcs); diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 3495d8ecd..45e2ce618 100644 +index 2eb601f12..c4c6a03ad 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -134,9 +134,9 @@ public abstract class Entity implements INamableTileEntity, ICommandListener { @@ -555,7 +555,7 @@ index 3495d8ecd..45e2ce618 100644 public boolean impulse; public int portalCooldown; diff --git a/src/main/java/net/minecraft/server/EntityTypes.java b/src/main/java/net/minecraft/server/EntityTypes.java -index 659e0ea50..8c918d0d6 100644 +index eee82c20e..0c712f77d 100644 --- a/src/main/java/net/minecraft/server/EntityTypes.java +++ b/src/main/java/net/minecraft/server/EntityTypes.java @@ -4,6 +4,7 @@ import com.mojang.datafixers.DataFixUtils; @@ -578,7 +578,7 @@ index 659e0ea50..8c918d0d6 100644 + // Paper end } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index a8ac7be82..91e50ccea 100644 +index d375a4001..e9d65c927 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -86,6 +86,8 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -599,10 +599,10 @@ index a8ac7be82..91e50ccea 100644 this.world = new CraftWorld((WorldServer) this, gen, env); this.ticksPerAnimalSpawns = this.getServer().getTicksPerAnimalSpawns(); // CraftBukkit diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 95deac5b9..3a8e64aa7 100644 +index fdc0d3c1f..8a7e551cd 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -751,6 +751,7 @@ public final class CraftServer implements Server { +@@ -754,6 +754,7 @@ public final class CraftServer implements Server { } org.spigotmc.SpigotConfig.init((File) console.options.valueOf("spigot-settings")); // Spigot @@ -610,7 +610,7 @@ index 95deac5b9..3a8e64aa7 100644 for (WorldServer world : console.getWorlds()) { world.worldData.setDifficulty(config.difficulty); world.setSpawnFlags(config.spawnMonsters, config.spawnAnimals); -@@ -766,6 +767,7 @@ public final class CraftServer implements Server { +@@ -769,6 +770,7 @@ public final class CraftServer implements Server { world.ticksPerMonsterSpawns = this.getTicksPerMonsterSpawns(); } world.spigotConfig.init(); // Spigot @@ -618,7 +618,7 @@ index 95deac5b9..3a8e64aa7 100644 } pluginManager.clearPlugins(); -@@ -773,6 +775,7 @@ public final class CraftServer implements Server { +@@ -776,6 +778,7 @@ public final class CraftServer implements Server { resetRecipes(); reloadData(); org.spigotmc.SpigotConfig.registerCommands(); // Spigot @@ -626,7 +626,7 @@ index 95deac5b9..3a8e64aa7 100644 overrideAllCommandBlockCommands = commandsConfiguration.getStringList("command-block-overrides").contains("*"); ignoreVanillaPermissions = commandsConfiguration.getBoolean("ignore-vanilla-permissions"); -@@ -1953,4 +1956,35 @@ public final class CraftServer implements Server { +@@ -1956,4 +1959,35 @@ public final class CraftServer implements Server { { return spigot; } @@ -682,7 +682,7 @@ index e17d91418..f406464ef 100644 }; diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java -index 3949e659e..7f0adb70d 100644 +index dd8cb8e5b..255133903 100644 --- a/src/main/java/org/spigotmc/SpigotWorldConfig.java +++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java @@ -39,36 +39,36 @@ public class SpigotWorldConfig @@ -729,5 +729,5 @@ index 3949e659e..7f0adb70d 100644 config.addDefault( "world-settings.default." + path, def ); return config.getString( "world-settings." + worldName + "." + path, config.getString( "world-settings.default." + path ) ); -- -2.22.0.windows.1 +2.22.0 diff --git a/Spigot-Server-Patches/0009-Timings-v2.patch b/Spigot-Server-Patches/0009-Timings-v2.patch index 79acd898f..f367396c5 100644 --- a/Spigot-Server-Patches/0009-Timings-v2.patch +++ b/Spigot-Server-Patches/0009-Timings-v2.patch @@ -1,4 +1,4 @@ -From adfc95d1a4ac2ca834bc3a0e9f61e9e0cc1cd4e8 Mon Sep 17 00:00:00 2001 +From 26179c555fb44b89f2bb0ab90e1cbbfba49e27ce Mon Sep 17 00:00:00 2001 From: Aikar 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 0000000000..3f9fb6f906 +index 000000000..3f9fb6f90 --- /dev/null +++ b/src/main/java/co/aikar/timings/MinecraftTimings.java @@ -0,0 +1,133 @@ @@ -145,7 +145,7 @@ index 0000000000..3f9fb6f906 +} 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 0000000000..d5d3b2a20c +index 000000000..d5d3b2a20 --- /dev/null +++ b/src/main/java/co/aikar/timings/WorldTimingsHandler.java @@ -0,0 +1,105 @@ @@ -255,7 +255,7 @@ index 0000000000..d5d3b2a20c + } +} diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index 5518ec1e54..0c65afccfd 100644 +index 5518ec1e5..0c65afccf 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; @@ -302,7 +302,7 @@ index 5518ec1e54..0c65afccfd 100644 + } } diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java -index ee9a571bf2..4b9e51b30f 100644 +index ee9a571bf..4b9e51b30 100644 --- a/src/main/java/net/minecraft/server/Block.java +++ b/src/main/java/net/minecraft/server/Block.java @@ -31,6 +31,15 @@ public class Block implements IMaterial { @@ -322,7 +322,7 @@ index ee9a571bf2..4b9e51b30f 100644 private final float frictionFactor; protected final BlockStateList blockStateList; diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index f3c5c729ff..ab9b7bbd31 100644 +index f3c5c729f..ab9b7bbd3 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -573,6 +573,7 @@ public class Chunk implements IChunkAccess { @@ -342,7 +342,7 @@ index f3c5c729ff..ab9b7bbd31 100644 } } diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java -index 710d40b43a..22aba06270 100644 +index 710d40b43..22aba0627 100644 --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java @@ -301,7 +301,9 @@ public class ChunkProviderServer extends IChunkProvider { @@ -378,7 +378,7 @@ index 710d40b43a..22aba06270 100644 @Override diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -index 1894509df8..ad3ade3c5c 100644 +index 1894509df..ad3ade3c5 100644 --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java @@ -1,5 +1,6 @@ @@ -416,7 +416,7 @@ index 1894509df8..ad3ade3c5c 100644 } diff --git a/src/main/java/net/minecraft/server/CustomFunction.java b/src/main/java/net/minecraft/server/CustomFunction.java -index 12885cbd60..49de6e997a 100644 +index 12885cbd6..49de6e997 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 { @@ -443,7 +443,7 @@ index 12885cbd60..49de6e997a 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 8346778383..8bc74add6d 100644 +index 834677838..8bc74add6 100644 --- a/src/main/java/net/minecraft/server/CustomFunctionData.java +++ b/src/main/java/net/minecraft/server/CustomFunctionData.java @@ -101,7 +101,7 @@ public class CustomFunctionData implements IResourcePackListener { @@ -456,7 +456,7 @@ index 8346778383..8bc74add6d 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 c088ff9692..c7ea4ec4fe 100644 +index c088ff969..c7ea4ec4f 100644 --- a/src/main/java/net/minecraft/server/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/DedicatedServer.java @@ -19,6 +19,8 @@ import java.util.Collections; @@ -544,7 +544,7 @@ index c088ff9692..c7ea4ec4fe 100644 } diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 0c7bf3ae3f..49f64e1507 100644 +index 99b62e149..5d17b692d 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; @@ -583,7 +583,7 @@ index 0c7bf3ae3f..49f64e1507 100644 protected Vec3D a(Vec3D vec3d, EnumMoveType enummovetype) { diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index e0b12e1fd7..30aa4f56d3 100644 +index e0b12e1fd..30aa4f56d 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -35,7 +35,7 @@ import org.bukkit.event.entity.EntityTeleportEvent; @@ -659,7 +659,7 @@ index e0b12e1fd7..30aa4f56d3 100644 } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index f9ec2b0686..d0419119b3 100644 +index f9ec2b068..d0419119b 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -54,7 +54,7 @@ import org.bukkit.craftbukkit.CraftServer; @@ -779,7 +779,7 @@ index f9ec2b0686..d0419119b3 100644 this.methodProfiler.exit(); } diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java -index 9381734a3a..ef31a269e4 100644 +index 9381734a3..ef31a269e 100644 --- a/src/main/java/net/minecraft/server/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java @@ -1,7 +1,9 @@ @@ -827,7 +827,7 @@ index 9381734a3a..ef31a269e4 100644 } diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index d40600c103..fa37c19c69 100644 +index d40600c10..fa37c19c6 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -58,6 +58,7 @@ import org.bukkit.inventory.CraftingInventory; @@ -882,7 +882,7 @@ index d40600c103..fa37c19c69 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 cb6d50ea70..9ba03f8ed0 100644 +index cb6d50ea7..9ba03f8ed 100644 --- a/src/main/java/net/minecraft/server/PlayerConnectionUtils.java +++ b/src/main/java/net/minecraft/server/PlayerConnectionUtils.java @@ -1,5 +1,8 @@ @@ -908,7 +908,7 @@ index cb6d50ea70..9ba03f8ed0 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 ee22d6c81a..fb6b48e3fe 100644 +index ee22d6c81..fb6b48e3f 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -1,5 +1,6 @@ @@ -932,7 +932,7 @@ index ee22d6c81a..fb6b48e3fe 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 061730c560..c5890f5dcc 100644 +index 061730c56..c5890f5dc 100644 --- a/src/main/java/net/minecraft/server/TickListServer.java +++ b/src/main/java/net/minecraft/server/TickListServer.java @@ -28,13 +28,18 @@ public class TickListServer implements TickList { @@ -982,7 +982,7 @@ index 061730c560..c5890f5dcc 100644 this.g.clear(); } diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java -index e8a90e01f5..0956eff603 100644 +index e8a90e01f..0956eff60 100644 --- a/src/main/java/net/minecraft/server/TileEntity.java +++ b/src/main/java/net/minecraft/server/TileEntity.java @@ -9,11 +9,12 @@ import org.bukkit.craftbukkit.persistence.CraftPersistentDataContainer; @@ -1001,7 +1001,7 @@ index e8a90e01f5..0956eff603 100644 private static final CraftPersistentDataTypeRegistry DATA_TYPE_REGISTRY = new CraftPersistentDataTypeRegistry(); public final CraftPersistentDataContainer persistentDataContainer = new CraftPersistentDataContainer(DATA_TYPE_REGISTRY); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 32981c4422..4365383dd7 100644 +index 32981c442..0e09adf7d 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -1,5 +1,7 @@ @@ -1038,7 +1038,7 @@ index 32981c4422..4365383dd7 100644 this.entityLimiter = new org.spigotmc.TickLimiter(spigotConfig.entityMaxTickTime); this.tileLimiter = new org.spigotmc.TickLimiter(spigotConfig.tileMaxTickTime); } -@@ -773,21 +774,24 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -773,21 +774,26 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose } timings.tileEntityPending.stopTiming(); // Spigot @@ -1050,6 +1050,7 @@ index 32981c4422..4365383dd7 100644 public void a(Consumer consumer, Entity entity) { try { - SpigotTimings.tickEntityTimer.startTiming(); // Spigot ++ timings.tickEntities.startTiming(); + entity.tickTimer.startTiming(); + // Spigot end consumer.accept(entity); @@ -1062,11 +1063,12 @@ index 32981c4422..4365383dd7 100644 throw new ReportedException(crashreport); + } finally { + entity.tickTimer.stopTiming(); ++ timings.tickEntities.stopTiming(); } } diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java -index df518ff633..229cff562f 100644 +index df518ff63..229cff562 100644 --- a/src/main/java/net/minecraft/server/WorldServer.java +++ b/src/main/java/net/minecraft/server/WorldServer.java @@ -1,5 +1,7 @@ @@ -1158,10 +1160,10 @@ index df518ff633..229cff562f 100644 // CraftBukkit start - moved from MinecraftServer.saveChunks diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 61ed2ff50a..75b7d3cca8 100644 +index 8a7e551cd..940588dc5 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -1926,12 +1926,31 @@ public final class CraftServer implements Server { +@@ -1929,12 +1929,31 @@ public final class CraftServer implements Server { private final Spigot spigot = new Spigot() { @@ -1195,7 +1197,7 @@ index 61ed2ff50a..75b7d3cca8 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 38f211526b..0000000000 +index 38f211526..000000000 --- a/src/main/java/org/bukkit/craftbukkit/SpigotTimings.java +++ /dev/null @@ -1,166 +0,0 @@ @@ -1366,7 +1368,7 @@ index 38f211526b..0000000000 - } -} diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 00aecdc472..c6daf693c5 100644 +index 00aecdc47..c6daf693c 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1749,6 +1749,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -1385,7 +1387,7 @@ index 00aecdc472..c6daf693c5 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 b90979c7ba..8823f94f7b 100644 +index b90979c7b..8823f94f7 100644 --- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java +++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java @@ -1,5 +1,6 @@ @@ -1451,7 +1453,7 @@ index b90979c7ba..8823f94f7b 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 3f55381c15..0d9a466809 100644 +index 3f55381c1..0d9a46680 100644 --- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java +++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java @@ -1,9 +1,11 @@ @@ -1536,7 +1538,7 @@ index 3f55381c15..0d9a466809 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 e52ef47b78..3d90b34268 100644 +index e52ef47b7..3d90b3426 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; @@ -1548,10 +1550,10 @@ index e52ef47b78..3d90b34268 100644 this.value = value; } diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index 7ae4e7288b..fa32d4bb7e 100644 +index 8b6ec888e..2733c63aa 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -@@ -271,6 +271,13 @@ public final class CraftMagicNumbers implements UnsafeValues { +@@ -288,6 +288,13 @@ public final class CraftMagicNumbers implements UnsafeValues { return clazz; } @@ -1566,7 +1568,7 @@ index 7ae4e7288b..fa32d4bb7e 100644 * This helper class represents the different NBT Tags. *

diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index 4c947a9352..106e9d7e2d 100644 +index 4c947a935..106e9d7e2 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java @@ -31,7 +31,7 @@ import net.minecraft.server.EntityWither; diff --git a/Spigot-Server-Patches/0018-Implement-Paper-VersionChecker.patch b/Spigot-Server-Patches/0018-Implement-Paper-VersionChecker.patch index 09db0c5c2..dbb9d1aa5 100644 --- a/Spigot-Server-Patches/0018-Implement-Paper-VersionChecker.patch +++ b/Spigot-Server-Patches/0018-Implement-Paper-VersionChecker.patch @@ -1,4 +1,4 @@ -From 6383ef269e602f8ecc8b9043942b1f967dd2ce6a Mon Sep 17 00:00:00 2001 +From 66daf1aec0b98f36b7b650ab202b7284d518035a Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Mon, 27 May 2019 03:40:05 -0500 Subject: [PATCH] Implement Paper VersionChecker @@ -6,7 +6,7 @@ Subject: [PATCH] Implement Paper VersionChecker diff --git a/src/main/java/com/destroystokyo/paper/PaperVersionFetcher.java b/src/main/java/com/destroystokyo/paper/PaperVersionFetcher.java new file mode 100644 -index 0000000000..ded51d042b +index 000000000..ded51d042 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/PaperVersionFetcher.java @@ -0,0 +1,115 @@ @@ -126,10 +126,10 @@ index 0000000000..ded51d042b + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index f7fdd0727b..ee5616cdfc 100644 +index 2733c63aa..1b8d94d29 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -@@ -276,6 +276,11 @@ public final class CraftMagicNumbers implements UnsafeValues { +@@ -293,6 +293,11 @@ public final class CraftMagicNumbers implements UnsafeValues { public String getTimingsServerName() { return com.destroystokyo.paper.PaperConfig.timingsServerName; } @@ -142,5 +142,5 @@ index f7fdd0727b..ee5616cdfc 100644 /** -- -2.21.0 +2.22.0 diff --git a/Spigot-Server-Patches/0023-Further-improve-server-tick-loop.patch b/Spigot-Server-Patches/0023-Further-improve-server-tick-loop.patch index b13c0a4b9..0dc48879c 100644 --- a/Spigot-Server-Patches/0023-Further-improve-server-tick-loop.patch +++ b/Spigot-Server-Patches/0023-Further-improve-server-tick-loop.patch @@ -1,4 +1,4 @@ -From 172a0901aac5f304b6bcb900fd92729478dfb3c4 Mon Sep 17 00:00:00 2001 +From fe67d232fb520e04d0b16ba46a73633f1adabb9e 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 1346fc35c5..968ce67956 100644 +index 1346fc35c..968ce6795 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -147,7 +147,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant Date: Tue, 1 Mar 2016 23:52:34 -0600 Subject: [PATCH] Prevent tile entity and entity crashes diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java -index 0956eff603..e79e256138 100644 +index 0956eff60..e79e25613 100644 --- a/src/main/java/net/minecraft/server/TileEntity.java +++ b/src/main/java/net/minecraft/server/TileEntity.java @@ -199,7 +199,12 @@ public abstract class TileEntity implements KeyedObject { // Paper @@ -23,7 +23,7 @@ index 0956eff603..e79e256138 100644 } } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index b8366aa11b..aa0fab786f 100644 +index bdb69afab..1915dd914 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -714,11 +714,13 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -45,7 +45,7 @@ index b8366aa11b..aa0fab786f 100644 } // Spigot start finally { -@@ -786,11 +788,12 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -787,11 +789,12 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose // Spigot end consumer.accept(entity); } catch (Throwable throwable) { @@ -62,7 +62,7 @@ index b8366aa11b..aa0fab786f 100644 + // Paper end } finally { entity.tickTimer.stopTiming(); - } + timings.tickEntities.stopTiming(); -- 2.22.0 diff --git a/Spigot-Server-Patches/0044-Ensure-commands-are-not-ran-async.patch b/Spigot-Server-Patches/0044-Ensure-commands-are-not-ran-async.patch index 7c7ab5f7b..94613044a 100644 --- a/Spigot-Server-Patches/0044-Ensure-commands-are-not-ran-async.patch +++ b/Spigot-Server-Patches/0044-Ensure-commands-are-not-ran-async.patch @@ -1,4 +1,4 @@ -From a69796f7220513b3f5bed595d83e9e45b93e4f08 Mon Sep 17 00:00:00 2001 +From e27afc5b0a6df11326a835c89e378765b3a36a21 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,7 +14,7 @@ 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 d20037bd00..def713f495 100644 +index fa37c19c6..4ca45743d 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -1582,6 +1582,29 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -48,10 +48,10 @@ index d20037bd00..def713f495 100644 } else if (this.player.getChatFlags() == EnumChatVisibility.SYSTEM) { // Do nothing, this is coming from a plugin diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index d37f4cdf4a..6c595a4c84 100644 +index c2ba8e175..3883d6816 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -704,6 +704,29 @@ public final class CraftServer implements Server { +@@ -706,6 +706,29 @@ public final class CraftServer implements Server { Validate.notNull(commandLine, "CommandLine cannot be null"); org.spigotmc.AsyncCatcher.catchOp( "command dispatch" ); // Spigot @@ -82,7 +82,7 @@ index d37f4cdf4a..6c595a4c84 100644 return true; } diff --git a/src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java b/src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java -index ddef523ea8..70f8d42992 100644 +index ddef523ea..70f8d4299 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java +++ b/src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java @@ -13,6 +13,7 @@ public class ServerShutdownThread extends Thread { @@ -94,7 +94,7 @@ index ddef523ea8..70f8d42992 100644 } finally { try { diff --git a/src/main/java/org/spigotmc/AsyncCatcher.java b/src/main/java/org/spigotmc/AsyncCatcher.java -index aeed769725..9f7d2ef932 100644 +index aeed76972..9f7d2ef93 100644 --- a/src/main/java/org/spigotmc/AsyncCatcher.java +++ b/src/main/java/org/spigotmc/AsyncCatcher.java @@ -6,6 +6,7 @@ public class AsyncCatcher @@ -106,7 +106,7 @@ index aeed769725..9f7d2ef932 100644 public static void catchOp(String reason) { diff --git a/src/main/java/org/spigotmc/RestartCommand.java b/src/main/java/org/spigotmc/RestartCommand.java -index e7b953ca31..ccea803f58 100644 +index e7b953ca3..ccea803f5 100644 --- a/src/main/java/org/spigotmc/RestartCommand.java +++ b/src/main/java/org/spigotmc/RestartCommand.java @@ -43,6 +43,7 @@ public class RestartCommand extends Command @@ -118,5 +118,5 @@ index e7b953ca31..ccea803f58 100644 { String[] split = restartScript.split( " " ); -- -2.21.0 +2.22.0 diff --git a/Spigot-Server-Patches/0046-Expose-server-CommandMap.patch b/Spigot-Server-Patches/0046-Expose-server-CommandMap.patch index 158af0ac9..5fd99be5d 100644 --- a/Spigot-Server-Patches/0046-Expose-server-CommandMap.patch +++ b/Spigot-Server-Patches/0046-Expose-server-CommandMap.patch @@ -1,14 +1,14 @@ -From 7b1c27b9b534e8a68fb8a302f8bcb1488c990875 Mon Sep 17 00:00:00 2001 +From 0be1866a0173faf7f37d642e2aa563d50210ffe3 Mon Sep 17 00:00:00 2001 From: kashike Date: Thu, 3 Mar 2016 02:15:57 -0600 Subject: [PATCH] Expose server CommandMap diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 7f1620906c..5a745c76ad 100644 +index 3883d6816..63bd74f78 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -1582,6 +1582,7 @@ public final class CraftServer implements Server { +@@ -1585,6 +1585,7 @@ public final class CraftServer implements Server { return helpMap; } diff --git a/Spigot-Server-Patches/0052-Add-velocity-warnings.patch b/Spigot-Server-Patches/0052-Add-velocity-warnings.patch index b91be51df..c7913171e 100644 --- a/Spigot-Server-Patches/0052-Add-velocity-warnings.patch +++ b/Spigot-Server-Patches/0052-Add-velocity-warnings.patch @@ -1,14 +1,14 @@ -From 619562839dbcb3131940757679dc4ad75150b99f Mon Sep 17 00:00:00 2001 +From 404b45940ad785a62c5d7d90d72522e3cddd6a3e Mon Sep 17 00:00:00 2001 From: Joseph Hirschfeld Date: Thu, 3 Mar 2016 02:48:12 -0600 Subject: [PATCH] Add velocity warnings diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 5a745c76ad..3b50a66bf6 100644 +index 63bd74f78..576bdd3ce 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -230,6 +230,7 @@ public final class CraftServer implements Server { +@@ -231,6 +231,7 @@ public final class CraftServer implements Server { public boolean ignoreVanillaPermissions = false; private final List playerView; public int reloadCount; @@ -17,7 +17,7 @@ index 5a745c76ad..3b50a66bf6 100644 static { ConfigurationSerialization.registerClass(CraftOfflinePlayer.class); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index d1d37c06bf..ed496d03ae 100644 +index d1d37c06b..ed496d03a 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -405,10 +405,41 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { @@ -63,7 +63,7 @@ index d1d37c06bf..ed496d03ae 100644 public double getHeight() { return getHandle().getHeight(); diff --git a/src/main/java/org/spigotmc/WatchdogThread.java b/src/main/java/org/spigotmc/WatchdogThread.java -index 70b187190f..56f5f54bd1 100644 +index 70b187190..56f5f54bd 100644 --- a/src/main/java/org/spigotmc/WatchdogThread.java +++ b/src/main/java/org/spigotmc/WatchdogThread.java @@ -76,7 +76,19 @@ public class WatchdogThread extends Thread diff --git a/Spigot-Server-Patches/0054-Add-exception-reporting-event.patch b/Spigot-Server-Patches/0054-Add-exception-reporting-event.patch index 7fbfb3589..669ff116a 100644 --- a/Spigot-Server-Patches/0054-Add-exception-reporting-event.patch +++ b/Spigot-Server-Patches/0054-Add-exception-reporting-event.patch @@ -1,4 +1,4 @@ -From 39793650e302a903c286fa369bf9508d150a2a8a Mon Sep 17 00:00:00 2001 +From 794c8684336df9ed85fdfaa01cf427414789fff8 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 @@ -6,7 +6,7 @@ Subject: [PATCH] Add exception reporting event diff --git a/src/main/java/com/destroystokyo/paper/ServerSchedulerReportingWrapper.java b/src/main/java/com/destroystokyo/paper/ServerSchedulerReportingWrapper.java new file mode 100644 -index 0000000000..f699ce18ca +index 000000000..f699ce18c --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/ServerSchedulerReportingWrapper.java @@ -0,0 +1,38 @@ @@ -49,7 +49,7 @@ index 0000000000..f699ce18ca + } +} diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index f6f5b72de3..ec64391a4a 100644 +index f6f5b72de..ec64391a4 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -1,5 +1,6 @@ @@ -80,7 +80,7 @@ index f6f5b72de3..ec64391a4a 100644 } } diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java -index 22aba06270..3da7e10a92 100644 +index 22aba0627..3da7e10a9 100644 --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java @@ -14,6 +14,9 @@ import java.util.function.BooleanSupplier; @@ -94,7 +94,7 @@ index 22aba06270..3da7e10a92 100644 public class ChunkProviderServer extends IChunkProvider { diff --git a/src/main/java/net/minecraft/server/NameReferencingFileConverter.java b/src/main/java/net/minecraft/server/NameReferencingFileConverter.java -index 2cb0962ff1..21a8ed3231 100644 +index 2cb0962ff..21a8ed323 100644 --- a/src/main/java/net/minecraft/server/NameReferencingFileConverter.java +++ b/src/main/java/net/minecraft/server/NameReferencingFileConverter.java @@ -1,5 +1,6 @@ @@ -121,7 +121,7 @@ index 2cb0962ff1..21a8ed3231 100644 } // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java -index 07a1796c77..808c178157 100644 +index 07a1796c7..808c17815 100644 --- a/src/main/java/net/minecraft/server/PlayerChunkMap.java +++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java @@ -644,6 +644,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d { @@ -141,7 +141,7 @@ index 07a1796c77..808c178157 100644 } } diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java -index d4a9af975d..88b5aa3a51 100644 +index d4a9af975..88b5aa3a5 100644 --- a/src/main/java/net/minecraft/server/RegionFile.java +++ b/src/main/java/net/minecraft/server/RegionFile.java @@ -1,5 +1,6 @@ @@ -168,7 +168,7 @@ index d4a9af975d..88b5aa3a51 100644 } diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java -index a54d653372..4aa65c1934 100644 +index a54d65337..4aa65c193 100644 --- a/src/main/java/net/minecraft/server/SpawnerCreature.java +++ b/src/main/java/net/minecraft/server/SpawnerCreature.java @@ -8,6 +8,7 @@ import org.apache.logging.log4j.LogManager; @@ -196,7 +196,7 @@ index a54d653372..4aa65c1934 100644 } diff --git a/src/main/java/net/minecraft/server/VillageSiege.java b/src/main/java/net/minecraft/server/VillageSiege.java -index 0a1d342c13..347608531f 100644 +index 0a1d342c1..347608531 100644 --- a/src/main/java/net/minecraft/server/VillageSiege.java +++ b/src/main/java/net/minecraft/server/VillageSiege.java @@ -1,5 +1,7 @@ @@ -216,7 +216,7 @@ index 0a1d342c13..347608531f 100644 } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index e003246ea2..1809f7eecc 100644 +index 17d1dc93b..f3f10ca60 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -2,6 +2,9 @@ package net.minecraft.server; @@ -242,7 +242,7 @@ index e003246ea2..1809f7eecc 100644 tilesThisCycle--; this.tileEntityListTick.remove(tileTickPosition--); continue; -@@ -789,8 +795,10 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -790,8 +796,10 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose consumer.accept(entity); } catch (Throwable throwable) { // Paper start - Prevent tile entity and entity crashes @@ -255,7 +255,7 @@ index e003246ea2..1809f7eecc 100644 return; // Paper end diff --git a/src/main/java/net/minecraft/server/WorldPersistentData.java b/src/main/java/net/minecraft/server/WorldPersistentData.java -index f5f540032f..00e9a17355 100644 +index f5f540032..00e9a1735 100644 --- a/src/main/java/net/minecraft/server/WorldPersistentData.java +++ b/src/main/java/net/minecraft/server/WorldPersistentData.java @@ -121,6 +121,7 @@ public class WorldPersistentData { @@ -267,7 +267,7 @@ index f5f540032f..00e9a17355 100644 } finally { if (pushbackinputstream != null) { diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java -index 8823f94f7b..552daf4376 100644 +index 8823f94f7..552daf437 100644 --- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java +++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java @@ -16,6 +16,9 @@ import java.util.concurrent.atomic.AtomicInteger; diff --git a/Spigot-Server-Patches/0060-Default-loading-permissions.yml-before-plugins.patch b/Spigot-Server-Patches/0060-Default-loading-permissions.yml-before-plugins.patch index aca855946..b8c86c13c 100644 --- a/Spigot-Server-Patches/0060-Default-loading-permissions.yml-before-plugins.patch +++ b/Spigot-Server-Patches/0060-Default-loading-permissions.yml-before-plugins.patch @@ -1,4 +1,4 @@ -From da0f17fb2714ce06e8911f004def7869fcb9b729 Mon Sep 17 00:00:00 2001 +From b30a821bd79d7572c4d4d316bab6d73ef0c5aa9a Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 18 Mar 2016 13:17:38 -0400 Subject: [PATCH] Default loading permissions.yml before plugins @@ -16,7 +16,7 @@ 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 0c65afccfd..6cc99ffe43 100644 +index 0c65afccf..6cc99ffe4 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -213,4 +213,9 @@ public class PaperConfig { @@ -30,10 +30,10 @@ index 0c65afccfd..6cc99ffe43 100644 + } } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 3b50a66bf6..29a4b1da54 100644 +index 576bdd3ce..7b43683f8 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -364,6 +364,7 @@ public final class CraftServer implements Server { +@@ -366,6 +366,7 @@ public final class CraftServer implements Server { if (type == PluginLoadOrder.STARTUP) { helpMap.clear(); helpMap.initializeGeneralTopics(); @@ -41,7 +41,7 @@ index 3b50a66bf6..29a4b1da54 100644 } Plugin[] plugins = pluginManager.getPlugins(); -@@ -383,7 +384,7 @@ public final class CraftServer implements Server { +@@ -385,7 +386,7 @@ public final class CraftServer implements Server { commandMap.registerServerAliases(); DefaultPermissions.registerCorePermissions(); CraftDefaultPermissions.registerCorePermissions(); diff --git a/Spigot-Server-Patches/0061-Allow-Reloading-of-Custom-Permissions.patch b/Spigot-Server-Patches/0061-Allow-Reloading-of-Custom-Permissions.patch index f306bd528..dc546d92e 100644 --- a/Spigot-Server-Patches/0061-Allow-Reloading-of-Custom-Permissions.patch +++ b/Spigot-Server-Patches/0061-Allow-Reloading-of-Custom-Permissions.patch @@ -1,4 +1,4 @@ -From ac93c40a3941e664e02a4418a5de8f7e9f3cebfe Mon Sep 17 00:00:00 2001 +From 6b1faf392fb44f66c817d3ca0d583ae0dae98020 Mon Sep 17 00:00:00 2001 From: William Date: Fri, 18 Mar 2016 03:30:17 -0400 Subject: [PATCH] Allow Reloading of Custom Permissions @@ -6,10 +6,10 @@ Subject: [PATCH] Allow Reloading of Custom Permissions https://github.com/PaperMC/Paper/issues/49 diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 29a4b1da54..12dd89df53 100644 +index 7b43683f8..a15293daf 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2042,5 +2042,23 @@ public final class CraftServer implements Server { +@@ -2045,5 +2045,23 @@ public final class CraftServer implements Server { return null; } } diff --git a/Spigot-Server-Patches/0062-Remove-Metadata-on-reload.patch b/Spigot-Server-Patches/0062-Remove-Metadata-on-reload.patch index 4abe19cff..f168e8c96 100644 --- a/Spigot-Server-Patches/0062-Remove-Metadata-on-reload.patch +++ b/Spigot-Server-Patches/0062-Remove-Metadata-on-reload.patch @@ -1,4 +1,4 @@ -From e112cf694da0e15b006292f4bef3d565ecb51ca8 Mon Sep 17 00:00:00 2001 +From 2e8bfe6781f9d89e1bc8bb35123d4369ce8d5a57 Mon Sep 17 00:00:00 2001 From: Aikar Date: Fri, 18 Mar 2016 13:50:14 -0400 Subject: [PATCH] Remove Metadata on reload @@ -7,10 +7,10 @@ Metadata is not meant to persist reload as things break badly with non primitive This will remove metadata on reload so it does not crash everything if a plugin uses it. diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 12dd89df53..2bd50c24b9 100644 +index a15293daf..429f821e9 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -795,8 +795,18 @@ public final class CraftServer implements Server { +@@ -798,8 +798,18 @@ public final class CraftServer implements Server { world.paperConfig.init(); // Paper } diff --git a/Spigot-Server-Patches/0090-Remove-unused-World-Tile-Entity-List.patch b/Spigot-Server-Patches/0090-Remove-unused-World-Tile-Entity-List.patch index 5b82b98b0..9617b4637 100644 --- a/Spigot-Server-Patches/0090-Remove-unused-World-Tile-Entity-List.patch +++ b/Spigot-Server-Patches/0090-Remove-unused-World-Tile-Entity-List.patch @@ -1,4 +1,4 @@ -From 4e8a370e5466397c0d45a6af7c606a2f73c444a5 Mon Sep 17 00:00:00 2001 +From e0e40cd4d870115d0e2992bf5f62f2b436be5f28 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 13 Apr 2016 00:25:28 -0400 Subject: [PATCH] Remove unused World Tile Entity List @@ -6,7 +6,7 @@ Subject: [PATCH] Remove unused World Tile Entity List Massive hit to performance and it is completely unnecessary. diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index bb99fc506e..946a7365ca 100644 +index cde463c5a..f6cb4d45e 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -40,7 +40,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -57,7 +57,7 @@ index bb99fc506e..946a7365ca 100644 this.a(tileentity1); } // CraftBukkit end -@@ -1087,7 +1087,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -1089,7 +1089,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose } else { if (tileentity != null) { this.tileEntityListPending.remove(tileentity); diff --git a/Spigot-Server-Patches/0115-Add-setting-for-proxy-online-mode-status.patch b/Spigot-Server-Patches/0115-Add-setting-for-proxy-online-mode-status.patch index 118ce609f..fce5ef7aa 100644 --- a/Spigot-Server-Patches/0115-Add-setting-for-proxy-online-mode-status.patch +++ b/Spigot-Server-Patches/0115-Add-setting-for-proxy-online-mode-status.patch @@ -1,11 +1,11 @@ -From f9b2e14ab8d59acfe5808b30a40bd4615b0ab740 Mon Sep 17 00:00:00 2001 +From ebca21a88c026dfa6259040284efd58d1e4f8690 Mon Sep 17 00:00:00 2001 From: Gabriele C 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 cbfe12734d..1daa2e4535 100644 +index cbfe12734..1daa2e453 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -22,6 +22,7 @@ import org.bukkit.configuration.InvalidConfigurationException; @@ -31,7 +31,7 @@ index cbfe12734d..1daa2e4535 100644 + } } diff --git a/src/main/java/net/minecraft/server/NameReferencingFileConverter.java b/src/main/java/net/minecraft/server/NameReferencingFileConverter.java -index 21a8ed3231..0794aff5b7 100644 +index 21a8ed323..0794aff5b 100644 --- a/src/main/java/net/minecraft/server/NameReferencingFileConverter.java +++ b/src/main/java/net/minecraft/server/NameReferencingFileConverter.java @@ -58,7 +58,8 @@ public class NameReferencingFileConverter { @@ -45,10 +45,10 @@ index 21a8ed3231..0794aff5b7 100644 } else { String[] astring1 = astring; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 2bd50c24b9..064969774b 100644 +index 429f821e9..5fbfda21e 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -1352,7 +1352,8 @@ public final class CraftServer implements Server { +@@ -1355,7 +1355,8 @@ public final class CraftServer implements Server { // Spigot Start GameProfile profile = null; // Only fetch an online UUID in online mode diff --git a/Spigot-Server-Patches/0128-Allow-Reloading-of-Command-Aliases.patch b/Spigot-Server-Patches/0128-Allow-Reloading-of-Command-Aliases.patch index b46fe489e..4e1f47b86 100644 --- a/Spigot-Server-Patches/0128-Allow-Reloading-of-Command-Aliases.patch +++ b/Spigot-Server-Patches/0128-Allow-Reloading-of-Command-Aliases.patch @@ -1,4 +1,4 @@ -From ac9880ce3b57a21a033a6e6f6a50a02ba352718a Mon Sep 17 00:00:00 2001 +From 89adafea0a7dbd4857a820c53f54efcea74a2ede Mon Sep 17 00:00:00 2001 From: willies952002 Date: Mon, 28 Nov 2016 10:21:52 -0500 Subject: [PATCH] Allow Reloading of Command Aliases @@ -6,10 +6,10 @@ Subject: [PATCH] Allow Reloading of Command Aliases Reload the aliases stored in commands.yml diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 064969774b..5712560058 100644 +index 5fbfda21e..bf7b5a6fb 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2071,5 +2071,24 @@ public final class CraftServer implements Server { +@@ -2074,5 +2074,24 @@ public final class CraftServer implements Server { DefaultPermissions.registerCorePermissions(); CraftDefaultPermissions.registerCorePermissions(); } diff --git a/Spigot-Server-Patches/0154-Add-configuration-option-to-prevent-player-names-fro.patch b/Spigot-Server-Patches/0154-Add-configuration-option-to-prevent-player-names-fro.patch index ae4c01bfd..4dee9ad4b 100644 --- a/Spigot-Server-Patches/0154-Add-configuration-option-to-prevent-player-names-fro.patch +++ b/Spigot-Server-Patches/0154-Add-configuration-option-to-prevent-player-names-fro.patch @@ -1,4 +1,4 @@ -From 8a835287484b998c45492a6eabbd77e416d4a77a Mon Sep 17 00:00:00 2001 +From bc5938223a6d76a749fd4f4a9c842ce8e35c04d3 Mon Sep 17 00:00:00 2001 From: kashike Date: Fri, 9 Jun 2017 07:24:34 -0700 Subject: [PATCH] Add configuration option to prevent player names from being @@ -6,7 +6,7 @@ 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 b5a50afd24..11d2a1013b 100644 +index b5a50afd2..11d2a1013 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -259,4 +259,9 @@ public class PaperConfig { @@ -20,10 +20,10 @@ index b5a50afd24..11d2a1013b 100644 + } } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 5712560058..91618e1cc4 100644 +index bf7b5a6fb..6de6435da 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2090,5 +2090,10 @@ public final class CraftServer implements Server { +@@ -2093,5 +2093,10 @@ public final class CraftServer implements Server { commandMap.registerServerAliases(); return true; } diff --git a/Spigot-Server-Patches/0155-Use-TerminalConsoleAppender-for-console-improvements.patch b/Spigot-Server-Patches/0155-Use-TerminalConsoleAppender-for-console-improvements.patch index 6437780b5..19757aca8 100644 --- a/Spigot-Server-Patches/0155-Use-TerminalConsoleAppender-for-console-improvements.patch +++ b/Spigot-Server-Patches/0155-Use-TerminalConsoleAppender-for-console-improvements.patch @@ -1,4 +1,4 @@ -From 6f8be57e59c46637610960e4bb672fdaed914cec Mon Sep 17 00:00:00 2001 +From 1c9dbf3705ced6dced10d53a43d2333a704b267a Mon Sep 17 00:00:00 2001 From: Minecrell Date: Fri, 9 Jun 2017 19:03:43 +0200 Subject: [PATCH] Use TerminalConsoleAppender for console improvements @@ -19,7 +19,7 @@ Other changes: configuration diff --git a/pom.xml b/pom.xml -index 75c1b84f6a..58ccbaa1ae 100644 +index 75c1b84f6..58ccbaa1a 100644 --- a/pom.xml +++ b/pom.xml @@ -41,10 +41,27 @@ @@ -75,7 +75,7 @@ index 75c1b84f6a..58ccbaa1ae 100644 org.apache.maven.plugins diff --git a/src/main/java/com/destroystokyo/paper/console/PaperConsole.java b/src/main/java/com/destroystokyo/paper/console/PaperConsole.java new file mode 100644 -index 0000000000..cd6e259239 +index 000000000..cd6e25923 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/console/PaperConsole.java @@ -0,0 +1,40 @@ @@ -121,7 +121,7 @@ index 0000000000..cd6e259239 +} diff --git a/src/main/java/com/destroystokyo/paper/console/TerminalConsoleCommandSender.java b/src/main/java/com/destroystokyo/paper/console/TerminalConsoleCommandSender.java new file mode 100644 -index 0000000000..685deaa0e5 +index 000000000..685deaa0e --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/console/TerminalConsoleCommandSender.java @@ -0,0 +1,17 @@ @@ -143,7 +143,7 @@ index 0000000000..685deaa0e5 + +} diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java -index 6e1509c2c1..26b35855e1 100644 +index 6e1509c2c..26b35855e 100644 --- a/src/main/java/net/minecraft/server/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/DedicatedServer.java @@ -85,6 +85,9 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer @@ -185,7 +185,7 @@ index 6e1509c2c1..26b35855e1 100644 System.setOut(new PrintStream(new LoggerOutputStream(logger, Level.INFO), true)); System.setErr(new PrintStream(new LoggerOutputStream(logger, Level.WARN), true)); diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 36d29b3324..f340f4bfe3 100644 +index 36d29b332..f340f4bfe 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -48,7 +48,7 @@ import org.apache.commons.lang3.Validate; @@ -244,7 +244,7 @@ index 36d29b3324..f340f4bfe3 100644 public KeyPair getKeyPair() { diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index d23e4e5e3d..6a77707983 100644 +index d23e4e5e3..6a7770798 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -76,8 +76,7 @@ public abstract class PlayerList { @@ -258,7 +258,7 @@ index d23e4e5e3d..6a77707983 100644 this.k = new GameProfileBanList(PlayerList.a); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 91618e1cc4..6528705809 100644 +index 6de6435da..e78741914 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -41,7 +41,6 @@ import java.util.function.Consumer; @@ -269,7 +269,7 @@ index 91618e1cc4..6528705809 100644 import net.minecraft.server.Advancement; import net.minecraft.server.ArgumentEntity; import net.minecraft.server.Block; -@@ -1087,9 +1086,13 @@ public final class CraftServer implements Server { +@@ -1090,9 +1089,13 @@ public final class CraftServer implements Server { return logger; } @@ -284,7 +284,7 @@ index 91618e1cc4..6528705809 100644 @Override public PluginCommand getPluginCommand(String name) { diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index c5d5121fd9..4aebe53f8a 100644 +index c5d5121fd..4aebe53f8 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java @@ -13,7 +13,7 @@ import java.util.logging.Logger; @@ -326,7 +326,7 @@ index c5d5121fd9..4aebe53f8a 100644 if (Main.class.getPackage().getImplementationVendor() != null && System.getProperty("IReallyKnowWhatIAmDoingISwear") == null) { diff --git a/src/main/java/org/bukkit/craftbukkit/command/ColouredConsoleSender.java b/src/main/java/org/bukkit/craftbukkit/command/ColouredConsoleSender.java deleted file mode 100644 -index fdf2f075e2..0000000000 +index fdf2f075e..000000000 --- a/src/main/java/org/bukkit/craftbukkit/command/ColouredConsoleSender.java +++ /dev/null @@ -1,72 +0,0 @@ @@ -403,7 +403,7 @@ index fdf2f075e2..0000000000 - } -} diff --git a/src/main/java/org/bukkit/craftbukkit/command/ConsoleCommandCompleter.java b/src/main/java/org/bukkit/craftbukkit/command/ConsoleCommandCompleter.java -index befcc19f9b..5510266fb1 100644 +index befcc19f9..5510266fb 100644 --- a/src/main/java/org/bukkit/craftbukkit/command/ConsoleCommandCompleter.java +++ b/src/main/java/org/bukkit/craftbukkit/command/ConsoleCommandCompleter.java @@ -4,20 +4,31 @@ import java.util.Collections; @@ -486,7 +486,7 @@ index befcc19f9b..5510266fb1 100644 } } diff --git a/src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java b/src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java -index 70f8d42992..449e99d1b6 100644 +index 70f8d4299..449e99d1b 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java +++ b/src/main/java/org/bukkit/craftbukkit/util/ServerShutdownThread.java @@ -17,7 +17,7 @@ public class ServerShutdownThread extends Thread { @@ -500,7 +500,7 @@ index 70f8d42992..449e99d1b6 100644 } diff --git a/src/main/java/org/bukkit/craftbukkit/util/TerminalConsoleWriterThread.java b/src/main/java/org/bukkit/craftbukkit/util/TerminalConsoleWriterThread.java deleted file mode 100644 -index f267f99f96..0000000000 +index f267f99f9..000000000 --- a/src/main/java/org/bukkit/craftbukkit/util/TerminalConsoleWriterThread.java +++ /dev/null @@ -1,57 +0,0 @@ @@ -562,7 +562,7 @@ index f267f99f96..0000000000 - } -} diff --git a/src/main/resources/log4j2.xml b/src/main/resources/log4j2.xml -index 490a9acc70..08b6bb7f97 100644 +index 490a9acc7..08b6bb7f9 100644 --- a/src/main/resources/log4j2.xml +++ b/src/main/resources/log4j2.xml @@ -1,12 +1,11 @@ diff --git a/Spigot-Server-Patches/0160-Add-UnknownCommandEvent.patch b/Spigot-Server-Patches/0160-Add-UnknownCommandEvent.patch index edaaa2da5..cc7f9d756 100644 --- a/Spigot-Server-Patches/0160-Add-UnknownCommandEvent.patch +++ b/Spigot-Server-Patches/0160-Add-UnknownCommandEvent.patch @@ -1,11 +1,11 @@ -From 01d77313d73d18364ca1e8bc114f4094cdf77d7d Mon Sep 17 00:00:00 2001 +From 9e72864d6ca8bb9f8a54e80bf1f249c7828127df Mon Sep 17 00:00:00 2001 From: Sweepyoface Date: Sat, 17 Jun 2017 18:48:21 -0400 Subject: [PATCH] Add UnknownCommandEvent diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 6528705809..f1bacaa316 100644 +index e78741914..94d700e56 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -77,6 +77,7 @@ import net.minecraft.server.WorldServer; @@ -24,7 +24,7 @@ index 6528705809..f1bacaa316 100644 import org.bukkit.event.inventory.InventoryType; import org.bukkit.event.player.PlayerChatTabCompleteEvent; import org.bukkit.event.server.BroadcastMessageEvent; -@@ -734,7 +736,13 @@ public final class CraftServer implements Server { +@@ -736,7 +738,13 @@ public final class CraftServer implements Server { // Spigot start if (!org.spigotmc.SpigotConfig.unknownCommandMessage.isEmpty()) { diff --git a/Spigot-Server-Patches/0161-Basic-PlayerProfile-API.patch b/Spigot-Server-Patches/0161-Basic-PlayerProfile-API.patch index 2b57a1c64..2fcbfa0b0 100644 --- a/Spigot-Server-Patches/0161-Basic-PlayerProfile-API.patch +++ b/Spigot-Server-Patches/0161-Basic-PlayerProfile-API.patch @@ -1,4 +1,4 @@ -From 964f26c93dfb6aaf7285cc4441827b1932e071a0 Mon Sep 17 00:00:00 2001 +From 26c9c9af6a04dd3baf71626204014dea6bd94950 Mon Sep 17 00:00:00 2001 From: Aikar Date: Mon, 15 Jan 2018 22:11:48 -0500 Subject: [PATCH] Basic PlayerProfile API @@ -7,7 +7,7 @@ Establishes base extension of profile systems for future edits too diff --git a/src/main/java/com/destroystokyo/paper/profile/CraftPlayerProfile.java b/src/main/java/com/destroystokyo/paper/profile/CraftPlayerProfile.java new file mode 100644 -index 0000000000..b151a13c1b +index 000000000..b151a13c1 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/profile/CraftPlayerProfile.java @@ -0,0 +1,280 @@ @@ -293,7 +293,7 @@ index 0000000000..b151a13c1b +} diff --git a/src/main/java/com/destroystokyo/paper/profile/PaperAuthenticationService.java b/src/main/java/com/destroystokyo/paper/profile/PaperAuthenticationService.java new file mode 100644 -index 0000000000..25836b975b +index 000000000..25836b975 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/profile/PaperAuthenticationService.java @@ -0,0 +1,30 @@ @@ -329,7 +329,7 @@ index 0000000000..25836b975b +} diff --git a/src/main/java/com/destroystokyo/paper/profile/PaperGameProfileRepository.java b/src/main/java/com/destroystokyo/paper/profile/PaperGameProfileRepository.java new file mode 100644 -index 0000000000..3bcdb8f93f +index 000000000..3bcdb8f93 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/profile/PaperGameProfileRepository.java @@ -0,0 +1,17 @@ @@ -352,7 +352,7 @@ index 0000000000..3bcdb8f93f +} diff --git a/src/main/java/com/destroystokyo/paper/profile/PaperMinecraftSessionService.java b/src/main/java/com/destroystokyo/paper/profile/PaperMinecraftSessionService.java new file mode 100644 -index 0000000000..4b2a67423f +index 000000000..4b2a67423 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/profile/PaperMinecraftSessionService.java @@ -0,0 +1,29 @@ @@ -387,7 +387,7 @@ index 0000000000..4b2a67423f +} diff --git a/src/main/java/com/destroystokyo/paper/profile/PaperUserAuthentication.java b/src/main/java/com/destroystokyo/paper/profile/PaperUserAuthentication.java new file mode 100644 -index 0000000000..3aceb0ea8a +index 000000000..3aceb0ea8 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/profile/PaperUserAuthentication.java @@ -0,0 +1,11 @@ @@ -403,7 +403,7 @@ index 0000000000..3aceb0ea8a + } +} diff --git a/src/main/java/net/minecraft/server/MCUtil.java b/src/main/java/net/minecraft/server/MCUtil.java -index 1f6a126329..6d278a0da5 100644 +index 1f6a12632..6d278a0da 100644 --- a/src/main/java/net/minecraft/server/MCUtil.java +++ b/src/main/java/net/minecraft/server/MCUtil.java @@ -1,7 +1,10 @@ @@ -429,7 +429,7 @@ index 1f6a126329..6d278a0da5 100644 * Calculates distance between 2 entities * @param e1 diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index f340f4bfe3..c229651b50 100644 +index f340f4bfe..c229651b5 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1244,7 +1244,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant Date: Wed, 4 May 2016 22:43:12 -0400 Subject: [PATCH] Implement ensureServerConversions API @@ -7,10 +7,10 @@ This will take a Bukkit ItemStack and run it through any conversions a server pr to ensure it meets latest minecraft expectations. diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -index 133a80ee05..1dc21e08db 100644 +index e3bb1dffd..594a280e9 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -@@ -328,4 +328,10 @@ public final class CraftItemFactory implements ItemFactory { +@@ -330,4 +330,10 @@ public final class CraftItemFactory implements ItemFactory { public Material updateMaterial(ItemMeta meta, Material material) throws IllegalArgumentException { return ((CraftMetaItem) meta).updateMaterial(material); } diff --git a/Spigot-Server-Patches/0168-Implement-getI18NDisplayName.patch b/Spigot-Server-Patches/0168-Implement-getI18NDisplayName.patch index f3f2cc7bf..8acf09b17 100644 --- a/Spigot-Server-Patches/0168-Implement-getI18NDisplayName.patch +++ b/Spigot-Server-Patches/0168-Implement-getI18NDisplayName.patch @@ -1,4 +1,4 @@ -From 34dc27d1706f5947b85bc1c52b1cf45954d12551 Mon Sep 17 00:00:00 2001 +From aa9e4653f6594c2c7f44078afea4129c87ecdce4 Mon Sep 17 00:00:00 2001 From: Aikar Date: Wed, 4 May 2016 23:59:38 -0400 Subject: [PATCH] Implement getI18NDisplayName @@ -8,7 +8,7 @@ Currently the server only supports the English language. To override this, You must replace the language file embedded in the server jar. diff --git a/src/main/java/net/minecraft/server/LocaleLanguage.java b/src/main/java/net/minecraft/server/LocaleLanguage.java -index c0c13798f8..6012739331 100644 +index c0c13798f..601273933 100644 --- a/src/main/java/net/minecraft/server/LocaleLanguage.java +++ b/src/main/java/net/minecraft/server/LocaleLanguage.java @@ -65,10 +65,12 @@ public class LocaleLanguage { @@ -25,10 +25,10 @@ index c0c13798f8..6012739331 100644 return this.c(s); } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -index 1dc21e08db..7099eeda4e 100644 +index 594a280e9..80f71a77b 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -@@ -333,5 +333,18 @@ public final class CraftItemFactory implements ItemFactory { +@@ -335,5 +335,18 @@ public final class CraftItemFactory implements ItemFactory { public ItemStack ensureServerConversions(ItemStack item) { return CraftItemStack.asCraftMirror(CraftItemStack.asNMSCopy(item)); } diff --git a/Spigot-Server-Patches/0190-AsyncTabCompleteEvent.patch b/Spigot-Server-Patches/0190-AsyncTabCompleteEvent.patch index f3fba2c75..085df59be 100644 --- a/Spigot-Server-Patches/0190-AsyncTabCompleteEvent.patch +++ b/Spigot-Server-Patches/0190-AsyncTabCompleteEvent.patch @@ -1,4 +1,4 @@ -From 1a466ee597411c487d3c67762982498071c0597a Mon Sep 17 00:00:00 2001 +From 7203936c21c3c2aacff8f325529cd5947bedd0e9 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sun, 26 Nov 2017 13:19:58 -0500 Subject: [PATCH] AsyncTabCompleteEvent @@ -14,7 +14,7 @@ completion, such as offline players. Also adds isCommand and getLocation to the sync TabCompleteEvent diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index eb720814b2..0a9fc4653a 100644 +index eb720814b..0a9fc4653 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -520,10 +520,10 @@ public class PlayerConnection implements PacketListenerPlayIn { @@ -72,10 +72,10 @@ index eb720814b2..0a9fc4653a 100644 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 40ac5a9757..c72b68b03e 100644 +index 70ab0cb70..9df5440a5 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -1662,7 +1662,7 @@ public final class CraftServer implements Server { +@@ -1665,7 +1665,7 @@ public final class CraftServer implements Server { offers = tabCompleteChat(player, message); } @@ -85,7 +85,7 @@ index 40ac5a9757..c72b68b03e 100644 return tabEvent.isCancelled() ? Collections.EMPTY_LIST : tabEvent.getCompletions(); diff --git a/src/main/java/org/bukkit/craftbukkit/command/ConsoleCommandCompleter.java b/src/main/java/org/bukkit/craftbukkit/command/ConsoleCommandCompleter.java -index 5510266fb1..a51202ed53 100644 +index 5510266fb..a51202ed5 100644 --- a/src/main/java/org/bukkit/craftbukkit/command/ConsoleCommandCompleter.java +++ b/src/main/java/org/bukkit/craftbukkit/command/ConsoleCommandCompleter.java @@ -28,6 +28,39 @@ public class ConsoleCommandCompleter implements Completer { diff --git a/Spigot-Server-Patches/0201-Add-ArmorStand-Item-Meta.patch b/Spigot-Server-Patches/0201-Add-ArmorStand-Item-Meta.patch index b869f3cf7..60e36c56c 100644 --- a/Spigot-Server-Patches/0201-Add-ArmorStand-Item-Meta.patch +++ b/Spigot-Server-Patches/0201-Add-ArmorStand-Item-Meta.patch @@ -1,4 +1,4 @@ -From 2a61ec71281823d7d99f99230a669f200084ee35 Mon Sep 17 00:00:00 2001 +From 9ee6527ad6217948275aa16c1508073e8f3e53ef Mon Sep 17 00:00:00 2001 From: Zach Brown Date: Sat, 27 Jan 2018 17:04:14 -0500 Subject: [PATCH] Add ArmorStand Item Meta @@ -12,79 +12,37 @@ starting point for future additions in this area. Fixes GH-559 -diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -index 7099eeda4e..cb9f4af3f7 100644 ---- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -@@ -201,6 +201,8 @@ public final class CraftItemFactory implements ItemFactory { - return meta instanceof CraftMetaSpawnEgg ? meta : new CraftMetaSpawnEgg(meta); - case KNOWLEDGE_BOOK: - return meta instanceof CraftMetaKnowledgeBook ? meta : new CraftMetaKnowledgeBook(meta); -+ case ARMOR_STAND: -+ return meta instanceof CraftMetaArmorStand ? meta : new CraftMetaArmorStand(meta); // Paper - case FURNACE: - case CHEST: - case TRAPPED_CHEST: -diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index f2f4c8d3c3..6e018396e6 100644 ---- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -@@ -402,6 +402,8 @@ public final class CraftItemStack extends ItemStack { - return new CraftMetaSpawnEgg(item.getTag()); - case KNOWLEDGE_BOOK: - return new CraftMetaKnowledgeBook(item.getTag()); -+ case ARMOR_STAND: -+ return new CraftMetaArmorStand(item.getTag()); // Paper - case FURNACE: - case CHEST: - case TRAPPED_CHEST: diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaArmorStand.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaArmorStand.java -new file mode 100644 -index 0000000000..c00b89c8d4 ---- /dev/null +index f70052284..3723facca 100644 +--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaArmorStand.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaArmorStand.java -@@ -0,0 +1,311 @@ -+package org.bukkit.craftbukkit.inventory; -+ -+import com.destroystokyo.paper.inventory.meta.ArmorStandMeta; -+import com.google.common.collect.ImmutableMap; -+import com.mojang.datafixers.Dynamic; -+ -+import net.minecraft.server.DataConverterTypes; -+import net.minecraft.server.DynamicOpsNBT; -+import net.minecraft.server.MinecraftServer; -+import net.minecraft.server.NBTBase; -+import net.minecraft.server.NBTTagCompound; -+ -+import org.bukkit.Bukkit; -+import org.bukkit.Material; -+import org.bukkit.configuration.serialization.DelegateDeserialization; -+import org.bukkit.craftbukkit.util.CraftMagicNumbers; -+ -+import java.util.Map; -+ -+// Paper - Created entire class -+@DelegateDeserialization(CraftMetaItem.SerializableMeta.class) -+public class CraftMetaArmorStand extends CraftMetaItem implements ArmorStandMeta { -+ -+ static final ItemMetaKey ENTITY_TAG = new ItemMetaKey("EntityTag", "entity-tag"); +@@ -8,13 +8,39 @@ import org.bukkit.Material; + import org.bukkit.configuration.serialization.DelegateDeserialization; + + @DelegateDeserialization(CraftMetaItem.SerializableMeta.class) +-public class CraftMetaArmorStand extends CraftMetaItem { ++public class CraftMetaArmorStand extends CraftMetaItem implements com.destroystokyo.paper.inventory.meta.ArmorStandMeta { // Paper + + static final ItemMetaKey ENTITY_TAG = new ItemMetaKey("EntityTag", "entity-tag"); ++ // Paper start + static final ItemMetaKey INVISIBLE = new ItemMetaKey("Invisible", "invisible"); + static final ItemMetaKey NO_BASE_PLATE = new ItemMetaKey("NoBasePlate", "no-base-plate"); + static final ItemMetaKey SHOW_ARMS = new ItemMetaKey("ShowArms", "show-arms"); + static final ItemMetaKey SMALL = new ItemMetaKey("Small", "small"); + static final ItemMetaKey MARKER = new ItemMetaKey("Marker", "marker"); + -+ private NBTTagCompound entityTag; -+ + private boolean invisible; + private boolean noBasePlate; + private boolean showArms; + private boolean small; + private boolean marker; -+ -+ CraftMetaArmorStand(CraftMetaItem meta) { -+ super(meta); -+ ++ // Paper end + NBTTagCompound entityTag; + + CraftMetaArmorStand(CraftMetaItem meta) { + super(meta); ++ ++ // Paper start + if (!(meta instanceof CraftMetaArmorStand)) { + return; + } @@ -95,14 +53,16 @@ index 0000000000..c00b89c8d4 + this.showArms = standMeta.showArms; + this.small = standMeta.small; + this.marker = standMeta.marker; -+ } -+ -+ CraftMetaArmorStand(NBTTagCompound tag) { -+ super(tag); -+ -+ if (tag.hasKey(ENTITY_TAG.NBT)) { -+ entityTag = tag.getCompound(ENTITY_TAG.NBT); ++ // Paper end + } + + CraftMetaArmorStand(NBTTagCompound tag) { +@@ -22,11 +48,47 @@ public class CraftMetaArmorStand extends CraftMetaItem { + + if (tag.hasKey(ENTITY_TAG.NBT)) { + entityTag = tag.getCompound(ENTITY_TAG.NBT); + ++ // Paper start + if (entityTag.hasKey(INVISIBLE.NBT)) { + invisible = entityTag.getBoolean(INVISIBLE.NBT); + } @@ -122,12 +82,14 @@ index 0000000000..c00b89c8d4 + if (entityTag.hasKey(MARKER.NBT)) { + marker = entityTag.getBoolean(MARKER.NBT); + } -+ } -+ } -+ -+ CraftMetaArmorStand(Map map) { -+ super(map); ++ // Paper end + } + } + + CraftMetaArmorStand(Map map) { + super(map); + ++ // Paper start + boolean invis = SerializableMeta.getBoolean(map, INVISIBLE.BUKKIT); + boolean noBase = SerializableMeta.getBoolean(map, NO_BASE_PLATE.BUKKIT); + boolean showArms = SerializableMeta.getBoolean(map, SHOW_ARMS.BUKKIT); @@ -139,12 +101,15 @@ index 0000000000..c00b89c8d4 + this.showArms = showArms; + this.small = small; + this.marker = marker; -+ } -+ -+ @Override -+ void applyToItem(NBTTagCompound tag) { -+ super.applyToItem(tag); -+ ++ // Paper end + } + + @Override +@@ -49,6 +111,32 @@ public class CraftMetaArmorStand extends CraftMetaItem { + void applyToItem(NBTTagCompound tag) { + super.applyToItem(tag); + ++ // Paper start + if (!isArmorStandEmpty() && entityTag == null) { + entityTag = new NBTTagCompound(); + } @@ -168,35 +133,58 @@ index 0000000000..c00b89c8d4 + if (isMarker()) { + entityTag.setBoolean(MARKER.NBT, marker); + } ++ // Paper end + -+ if (entityTag != null) { -+ tag.set(ENTITY_TAG.NBT, entityTag); -+ } -+ } -+ -+ @Override -+ boolean applicableTo(Material type) { -+ switch (type) { -+ case ARMOR_STAND: -+ return true; -+ default: -+ return false; -+ } -+ } -+ -+ @Override -+ boolean isEmpty() { -+ return super.isEmpty() && isArmorStandEmpty(); -+ } -+ -+ boolean isArmorStandEmpty() { + if (entityTag != null) { + tag.set(ENTITY_TAG.NBT, entityTag); + } +@@ -70,7 +158,7 @@ public class CraftMetaArmorStand extends CraftMetaItem { + } + + boolean isArmorStandEmpty() { +- return !(entityTag != null); + return !(isInvisible() || hasNoBasePlate() || shouldShowArms() || isSmall() || isMarker() || entityTag != null); -+ } -+ -+ @Override -+ ImmutableMap.Builder serialize(ImmutableMap.Builder builder) { -+ super.serialize(builder); -+ + } + + @Override +@@ -81,7 +169,13 @@ public class CraftMetaArmorStand extends CraftMetaItem { + if (meta instanceof CraftMetaArmorStand) { + CraftMetaArmorStand that = (CraftMetaArmorStand) meta; + +- return entityTag != null ? that.entityTag != null && this.entityTag.equals(that.entityTag) : entityTag == null; ++ // Paper start ++ return invisible == that.invisible && ++ noBasePlate == that.noBasePlate && ++ showArms == that.showArms && ++ small == that.small && ++ marker == that.marker; ++ // Paper end + } + return true; + } +@@ -96,9 +190,14 @@ public class CraftMetaArmorStand extends CraftMetaItem { + final int original; + int hash = original = super.applyHash(); + +- if (entityTag != null) { +- hash = 73 * hash + entityTag.hashCode(); +- } ++ // Paper start ++ hash += entityTag != null ? 73 * hash + entityTag.hashCode() : 0; ++ hash += isInvisible() ? 61 * hash + 1231 : 0; ++ hash += hasNoBasePlate() ? 61 * hash + 1231 : 0; ++ hash += shouldShowArms() ? 61 * hash + 1231 : 0; ++ hash += isSmall() ? 61 * hash + 1231 : 0; ++ hash += isMarker() ? 61 * hash + 1231 : 0; ++ // Paper end + + return original != hash ? CraftMetaArmorStand.class.hashCode() ^ hash : hash; + } +@@ -107,6 +206,28 @@ public class CraftMetaArmorStand extends CraftMetaItem { + Builder serialize(Builder builder) { + super.serialize(builder); + ++ // Paper start + if (isInvisible()) { + builder.put(INVISIBLE.BUKKIT, invisible); + } @@ -216,69 +204,17 @@ index 0000000000..c00b89c8d4 + if (isMarker()) { + builder.put(MARKER.BUKKIT, marker); + } ++ // Paper end + -+ return builder; -+ } -+ -+ @Override -+ void deserializeInternal(NBTTagCompound tag, Object context) { -+ super.deserializeInternal(tag, context); -+ -+ if (tag.hasKey(ENTITY_TAG.NBT)) { -+ entityTag = tag.getCompound(ENTITY_TAG.NBT); -+ MinecraftServer.getServer().dataConverterManager.update(DataConverterTypes.ENTITY, new Dynamic(DynamicOpsNBT.a, entityTag), -1, Bukkit.getUnsafe().getDataVersion()); -+ -+ if (entityTag.hasKey(INVISIBLE.NBT)) { -+ invisible = entityTag.getBoolean(INVISIBLE.NBT); -+ } -+ -+ if (entityTag.hasKey(NO_BASE_PLATE.NBT)) { -+ noBasePlate = entityTag.getBoolean(NO_BASE_PLATE.NBT); -+ } -+ -+ if (entityTag.hasKey(SHOW_ARMS.NBT)) { -+ showArms = entityTag.getBoolean(SHOW_ARMS.NBT); -+ } -+ -+ if (entityTag.hasKey(SMALL.NBT)) { -+ small = entityTag.getBoolean(SMALL.NBT); -+ } -+ -+ if (entityTag.hasKey(MARKER.NBT)) { -+ marker = entityTag.getBoolean(MARKER.NBT); -+ } -+ } -+ } -+ -+ @Override -+ boolean equalsCommon(CraftMetaItem meta) { -+ if (!super.equalsCommon(meta)) { -+ return false; -+ } -+ if (meta instanceof CraftMetaArmorStand) { -+ CraftMetaArmorStand that = (CraftMetaArmorStand) meta; -+ -+ return invisible == that.invisible && -+ noBasePlate == that.noBasePlate && -+ showArms == that.showArms && -+ small == that.small && -+ marker == that.marker; -+ } -+ return true; -+ } -+ -+ @Override -+ boolean notUncommon(CraftMetaItem meta) { -+ return super.notUncommon(meta) && (meta instanceof CraftMetaArmorStand || isArmorStandEmpty()); -+ } -+ -+ @Override -+ void serializeInternal(Map internalTags) { -+ if (entityTag != null) { -+ internalTags.put(ENTITY_TAG.NBT, entityTag); -+ } -+ } + return builder; + } + +@@ -120,4 +241,56 @@ public class CraftMetaArmorStand extends CraftMetaItem { + + return clone; + } + ++ // Paper start + @Override + public boolean isInvisible() { + return invisible; @@ -328,35 +264,10 @@ index 0000000000..c00b89c8d4 + public void setMarker(boolean marker) { + this.marker = marker; + } -+ -+ @Override -+ int applyHash() { -+ final int original; -+ int hash = original = super.applyHash(); -+ -+ hash += entityTag != null ? 73 * hash + entityTag.hashCode() : 0; -+ hash += isInvisible() ? 61 * hash + 1231 : 0; -+ hash += hasNoBasePlate() ? 61 * hash + 1231 : 0; -+ hash += shouldShowArms() ? 61 * hash + 1231 : 0; -+ hash += isSmall() ? 61 * hash + 1231 : 0; -+ hash += isMarker() ? 61 * hash + 1231 : 0; -+ -+ return original != hash ? CraftMetaArmorStand.class.hashCode() ^ hash : hash; -+ } -+ -+ @Override -+ public CraftMetaArmorStand clone() { -+ CraftMetaArmorStand clone = (CraftMetaArmorStand) super.clone(); -+ -+ if (entityTag != null) { -+ clone.entityTag = entityTag.clone(); -+ } -+ -+ return clone; -+ } -+} ++ // Paper end + } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index bf7b226a4f..a8b267487f 100644 +index bf7b226a4..a8b267487 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java @@ -161,6 +161,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @@ -385,7 +296,7 @@ index bf7b226a4f..a8b267487f 100644 } return HANDLED_TAGS; diff --git a/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java b/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java -index 6abde9030d..2a0852675b 100644 +index dd4ba3874..48c5e0621 100644 --- a/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java +++ b/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java @@ -6,6 +6,7 @@ import java.util.ArrayList; @@ -396,24 +307,14 @@ index 6abde9030d..2a0852675b 100644 import net.minecraft.server.Block; import net.minecraft.server.IRegistry; import net.minecraft.server.ITileEntity; -@@ -344,7 +345,17 @@ public class ItemMetaTest extends AbstractTestingBase { +@@ -351,6 +352,7 @@ public class ItemMetaTest extends AbstractTestingBase { + final CraftMetaArmorStand meta = (CraftMetaArmorStand) cleanStack.getItemMeta(); + meta.entityTag = new NBTTagCompound(); + meta.entityTag.setBoolean("Small", true); ++ meta.setInvisible(true); // Paper cleanStack.setItemMeta(meta); return cleanStack; } -+ }, -+ // Paper start -+ new StackProvider(Material.ARMOR_STAND) { -+ @Override ItemStack operate(ItemStack cleanStack) { -+ final ArmorStandMeta meta = (ArmorStandMeta) cleanStack.getItemMeta(); -+ meta.setInvisible(true); -+ cleanStack.setItemMeta(meta); -+ return cleanStack; -+ } - } -+ // paper end - ); - - assertThat("Forgotten test?", providers, hasSize(ItemStackTest.COMPOUND_MATERIALS.length - 4/* Normal item meta, skulls, eggs and tile entities */)); -- 2.22.0 diff --git a/Spigot-Server-Patches/0213-getPlayerUniqueId-API.patch b/Spigot-Server-Patches/0213-getPlayerUniqueId-API.patch index c8fd57726..8ed791404 100644 --- a/Spigot-Server-Patches/0213-getPlayerUniqueId-API.patch +++ b/Spigot-Server-Patches/0213-getPlayerUniqueId-API.patch @@ -1,4 +1,4 @@ -From 4aceee276baf3321444685bfb475c8b4730fda66 Mon Sep 17 00:00:00 2001 +From 96196d8d6840b482d3a2b0343e30d979f8d0329c Mon Sep 17 00:00:00 2001 From: Aikar Date: Thu, 22 Mar 2018 01:40:24 -0400 Subject: [PATCH] getPlayerUniqueId API @@ -9,10 +9,10 @@ In Offline Mode, will return an Offline UUID This is a more performant way to obtain a UUID for a name than loading an OfflinePlayer diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index c72b68b03e..46c5a5bdc5 100644 +index 9df5440a5..967b62028 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -1355,6 +1355,26 @@ public final class CraftServer implements Server { +@@ -1358,6 +1358,26 @@ public final class CraftServer implements Server { return recipients.size(); } diff --git a/Spigot-Server-Patches/0254-Use-asynchronous-Log4j-2-loggers.patch b/Spigot-Server-Patches/0254-Use-asynchronous-Log4j-2-loggers.patch index e43faedfa..25b5cee30 100644 --- a/Spigot-Server-Patches/0254-Use-asynchronous-Log4j-2-loggers.patch +++ b/Spigot-Server-Patches/0254-Use-asynchronous-Log4j-2-loggers.patch @@ -1,4 +1,4 @@ -From 4c724f0548007a283243a22448e4b1696a7b474b Mon Sep 17 00:00:00 2001 +From fbe15453e7f5f1f99a66fb6dbc703a79c998d9d4 Mon Sep 17 00:00:00 2001 From: Minecrell Date: Tue, 17 Jul 2018 16:42:17 +0200 Subject: [PATCH] Use asynchronous Log4j 2 loggers @@ -52,8 +52,8 @@ index 000000000..f72f7425c +++ b/src/main/resources/log4j2.component.properties @@ -0,0 +1,2 @@ +Log4jContextSelector=org.apache.logging.log4j.core.async.AsyncLoggerContextSelector -+log4j2.AsyncQueueFullPolicy=com.destroystokyo.paper.log.LogFullPolicy ++log4j2.AsyncQueueFullPolicy="com.destroystokyo.paper.log.LogFullPolicy" \ No newline at end of file -- -2.21.0 +2.22.0 diff --git a/Spigot-Server-Patches/0262-Option-to-prevent-armor-stands-from-doing-entity-loo.patch b/Spigot-Server-Patches/0262-Option-to-prevent-armor-stands-from-doing-entity-loo.patch index 1c49cd4b8..7f73265d9 100644 --- a/Spigot-Server-Patches/0262-Option-to-prevent-armor-stands-from-doing-entity-loo.patch +++ b/Spigot-Server-Patches/0262-Option-to-prevent-armor-stands-from-doing-entity-loo.patch @@ -1,11 +1,11 @@ -From e328a8bc7b298b7bd9d6d6ca7ffb3a65c983903b Mon Sep 17 00:00:00 2001 +From ba41ae8e160eb3ee2acd9bdb3e56228e35fac954 Mon Sep 17 00:00:00 2001 From: Hugo Manrique Date: Mon, 23 Jul 2018 12:57:39 +0200 Subject: [PATCH] Option to prevent armor stands from doing entity lookups diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index 83e54cb904..f06bb3ae19 100644 +index 83e54cb90..f06bb3ae1 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -326,6 +326,11 @@ public class PaperWorldConfig { @@ -21,10 +21,10 @@ index 83e54cb904..f06bb3ae19 100644 private void maxEntityCollision() { maxCollisionsPerEntity = getInt( "max-entity-collisions", this.spigotConfig.getInt("max-entity-collisions", 8) ); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 8dca442abe..b3d0a0d856 100644 +index f476f326f..d08bd6d96 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java -@@ -871,6 +871,14 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -873,6 +873,14 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose } } diff --git a/Spigot-Server-Patches/0269-Don-t-call-getItemMeta-on-hasItemMeta.patch b/Spigot-Server-Patches/0269-Don-t-call-getItemMeta-on-hasItemMeta.patch index fd71f2de8..6717123a4 100644 --- a/Spigot-Server-Patches/0269-Don-t-call-getItemMeta-on-hasItemMeta.patch +++ b/Spigot-Server-Patches/0269-Don-t-call-getItemMeta-on-hasItemMeta.patch @@ -1,4 +1,4 @@ -From 543c30c4f40482908a726af61607a4fedf546721 Mon Sep 17 00:00:00 2001 +From 4d55f72df3fe8a0a5913e06f9fbf283619937337 Mon Sep 17 00:00:00 2001 From: Hugo Manrique Date: Thu, 26 Jul 2018 14:10:23 +0200 Subject: [PATCH] Don't call getItemMeta on hasItemMeta @@ -11,7 +11,7 @@ Returns true if getDamage() == 0 or has damage tag or other tag is set. Check the `ItemMetaTest#testTaggedButNotMeta` method to see how this method behaves. diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index bd85d9ec49..ee2f82162c 100644 +index e6aac0cff..b8775dee9 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java @@ -543,7 +543,7 @@ public final class CraftItemStack extends ItemStack { @@ -24,7 +24,7 @@ index bd85d9ec49..ee2f82162c 100644 static boolean hasItemMeta(net.minecraft.server.ItemStack item) { diff --git a/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java b/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java -index 2a0852675b..f30f743121 100644 +index 48c5e0621..761494fa4 100644 --- a/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java +++ b/src/test/java/org/bukkit/craftbukkit/inventory/ItemMetaTest.java @@ -4,6 +4,7 @@ import static org.hamcrest.Matchers.*; @@ -35,7 +35,7 @@ index 2a0852675b..f30f743121 100644 import java.util.List; import java.util.UUID; import com.destroystokyo.paper.inventory.meta.ArmorStandMeta; // Paper -@@ -180,7 +181,47 @@ public class ItemMetaTest extends AbstractTestingBase { +@@ -181,7 +182,47 @@ public class ItemMetaTest extends AbstractTestingBase { assertThat("noTag and enchanted stacks should not be similar", noTag.isSimilar(enchanted), is(false)); assertThat("noTag and enchanted stacks should not be equal", noTag.equals(enchanted), is(false)); diff --git a/Spigot-Server-Patches/0280-Add-Early-Warning-Feature-to-WatchDog.patch b/Spigot-Server-Patches/0280-Add-Early-Warning-Feature-to-WatchDog.patch index 5e4336cd1..9b1fe0d40 100644 --- a/Spigot-Server-Patches/0280-Add-Early-Warning-Feature-to-WatchDog.patch +++ b/Spigot-Server-Patches/0280-Add-Early-Warning-Feature-to-WatchDog.patch @@ -1,4 +1,4 @@ -From 3a38581c5e2448ea2245459ccd395a728ede17e2 Mon Sep 17 00:00:00 2001 +From 5bcf3df122c32d514c7572702f06f6d7093ffce5 Mon Sep 17 00:00:00 2001 From: miclebrick 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 207e5d3e23..a13c8c68b6 100644 +index 207e5d3e2..a13c8c68b 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -25,6 +25,7 @@ import org.bukkit.configuration.file.YamlConfiguration; @@ -36,7 +36,7 @@ index 207e5d3e23..a13c8c68b6 100644 public static int tabSpamLimit = 500; private static void tabSpamLimiters() { diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 946803e2be..fe8647bbc6 100644 +index 946803e2b..fe8647bbc 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -850,6 +850,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant Date: Sat, 18 Aug 2018 12:43:16 -0400 Subject: [PATCH] Restore vanlla default mob-spawn-range diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java -index 7f0adb70d1..4c1cb6d7bf 100644 +index 255133903..b3afb901a 100644 --- a/src/main/java/org/spigotmc/SpigotWorldConfig.java +++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java -@@ -152,7 +152,7 @@ public class SpigotWorldConfig +@@ -158,7 +158,7 @@ public class SpigotWorldConfig public byte mobSpawnRange; private void mobSpawnRange() { diff --git a/Spigot-Server-Patches/0311-Support-Overriding-World-Seeds.patch b/Spigot-Server-Patches/0311-Support-Overriding-World-Seeds.patch index ed7a80cdd..3cf11adbe 100644 --- a/Spigot-Server-Patches/0311-Support-Overriding-World-Seeds.patch +++ b/Spigot-Server-Patches/0311-Support-Overriding-World-Seeds.patch @@ -1,4 +1,4 @@ -From f968159774149efaa627b6042ffda9aea3243cd7 Mon Sep 17 00:00:00 2001 +From 6a2b53f69074260dd869097f479e0a8fe05e7724 Mon Sep 17 00:00:00 2001 From: Aikar 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 a13c8c68b6..ea3695b021 100644 +index a13c8c68b..ea3695b02 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; @@ -59,7 +59,7 @@ index a13c8c68b6..ea3695b021 100644 + } } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 6c7ce47c5a..ac80ec7aeb 100644 +index 6c7ce47c5..ac80ec7ae 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -362,7 +362,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant Date: Tue, 25 Sep 2018 06:53:43 +0200 Subject: [PATCH] Avoid dimension id collisions @@ -8,10 +8,10 @@ we would reuse an existing dimension id, if some other dimension was unloaded before. diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 4e91047fac..5dfca97313 100644 +index 642b34a37..bab0ca869 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -971,7 +971,7 @@ public final class CraftServer implements Server { +@@ -974,7 +974,7 @@ public final class CraftServer implements Server { boolean used = false; do { for (WorldServer server : console.getWorlds()) { diff --git a/Spigot-Server-Patches/0327-Add-Velocity-IP-Forwarding-Support.patch b/Spigot-Server-Patches/0327-Add-Velocity-IP-Forwarding-Support.patch index d49e4a6db..91cdd67e9 100644 --- a/Spigot-Server-Patches/0327-Add-Velocity-IP-Forwarding-Support.patch +++ b/Spigot-Server-Patches/0327-Add-Velocity-IP-Forwarding-Support.patch @@ -1,4 +1,4 @@ -From 2eecaca566d12da917e349630a72487f49b69f18 Mon Sep 17 00:00:00 2001 +From 2ffc793952ad747948fa8d5e1645aa4da931c36f Mon Sep 17 00:00:00 2001 From: Andrew Steinborn Date: Mon, 8 Oct 2018 14:36:14 -0400 Subject: [PATCH] Add Velocity IP Forwarding Support @@ -14,7 +14,7 @@ forwarding, and is integrated into the Minecraft login process by using the 1.13 login plugin message packet. diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index d2c039ea2f..63d8602927 100644 +index d2c039ea2..63d860292 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -8,6 +8,7 @@ import java.io.IOException; @@ -55,7 +55,7 @@ index d2c039ea2f..63d8602927 100644 } diff --git a/src/main/java/com/destroystokyo/paper/proxy/VelocityProxy.java b/src/main/java/com/destroystokyo/paper/proxy/VelocityProxy.java new file mode 100644 -index 0000000000..fdd8708f97 +index 000000000..fdd8708f9 --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/proxy/VelocityProxy.java @@ -0,0 +1,67 @@ @@ -127,7 +127,7 @@ index 0000000000..fdd8708f97 + } +} diff --git a/src/main/java/net/minecraft/server/LoginListener.java b/src/main/java/net/minecraft/server/LoginListener.java -index d4d752ddb4..5d46a975e3 100644 +index d4d752ddb..5d46a975e 100644 --- a/src/main/java/net/minecraft/server/LoginListener.java +++ b/src/main/java/net/minecraft/server/LoginListener.java @@ -42,6 +42,7 @@ public class LoginListener implements PacketLoginInListener { @@ -203,7 +203,7 @@ index d4d752ddb4..5d46a975e3 100644 } diff --git a/src/main/java/net/minecraft/server/NetworkManager.java b/src/main/java/net/minecraft/server/NetworkManager.java -index efd02bd67d..c073b04aa9 100644 +index efd02bd67..c073b04aa 100644 --- a/src/main/java/net/minecraft/server/NetworkManager.java +++ b/src/main/java/net/minecraft/server/NetworkManager.java @@ -46,7 +46,7 @@ public class NetworkManager extends SimpleChannelInboundHandler> { @@ -216,7 +216,7 @@ index efd02bd67d..c073b04aa9 100644 public java.util.UUID spoofedUUID; public com.mojang.authlib.properties.Property[] spoofedProfile; diff --git a/src/main/java/net/minecraft/server/PacketDataSerializer.java b/src/main/java/net/minecraft/server/PacketDataSerializer.java -index fa2d3ce8cb..dac560c63f 100644 +index fa2d3ce8c..dac560c63 100644 --- a/src/main/java/net/minecraft/server/PacketDataSerializer.java +++ b/src/main/java/net/minecraft/server/PacketDataSerializer.java @@ -140,6 +140,7 @@ public class PacketDataSerializer extends ByteBuf { @@ -244,7 +244,7 @@ index fa2d3ce8cb..dac560c63f 100644 int j = this.i(); diff --git a/src/main/java/net/minecraft/server/PacketLoginInCustomPayload.java b/src/main/java/net/minecraft/server/PacketLoginInCustomPayload.java -index 4d1f441395..c1ca6f9501 100644 +index 4d1f44139..c1ca6f950 100644 --- a/src/main/java/net/minecraft/server/PacketLoginInCustomPayload.java +++ b/src/main/java/net/minecraft/server/PacketLoginInCustomPayload.java @@ -4,8 +4,8 @@ import java.io.IOException; @@ -259,7 +259,7 @@ index 4d1f441395..c1ca6f9501 100644 public PacketLoginInCustomPayload() {} diff --git a/src/main/java/net/minecraft/server/PacketLoginOutCustomPayload.java b/src/main/java/net/minecraft/server/PacketLoginOutCustomPayload.java -index ae74dc9e18..7eb230f1b2 100644 +index ae74dc9e1..7eb230f1b 100644 --- a/src/main/java/net/minecraft/server/PacketLoginOutCustomPayload.java +++ b/src/main/java/net/minecraft/server/PacketLoginOutCustomPayload.java @@ -10,6 +10,14 @@ public class PacketLoginOutCustomPayload implements Packet Date: Thu, 27 Sep 2018 01:43:35 -0600 Subject: [PATCH] Optimize redstone algorithm @@ -19,7 +19,7 @@ Aside from making the obvious class/function renames and obfhelpers I didn't nee Just added Bukkit's event system and took a few liberties with dead code and comment misspellings. diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java -index ad793ffa38..ef882b897f 100644 +index ad793ffa3..ef882b897 100644 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java @@ -439,4 +439,14 @@ public class PaperWorldConfig { @@ -39,7 +39,7 @@ index ad793ffa38..ef882b897f 100644 } diff --git a/src/main/java/com/destroystokyo/paper/util/RedstoneWireTurbo.java b/src/main/java/com/destroystokyo/paper/util/RedstoneWireTurbo.java new file mode 100644 -index 0000000000..cf5661f1c5 +index 000000000..cf5661f1c --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/util/RedstoneWireTurbo.java @@ -0,0 +1,912 @@ @@ -956,7 +956,7 @@ index 0000000000..cf5661f1c5 + } +} diff --git a/src/main/java/net/minecraft/server/BlockRedstoneWire.java b/src/main/java/net/minecraft/server/BlockRedstoneWire.java -index 7ce9cdb853..6b5015ce5f 100644 +index 7ce9cdb85..6b5015ce5 100644 --- a/src/main/java/net/minecraft/server/BlockRedstoneWire.java +++ b/src/main/java/net/minecraft/server/BlockRedstoneWire.java @@ -1,5 +1,7 @@ @@ -1124,7 +1124,7 @@ index 7ce9cdb853..6b5015ce5f 100644 c(iblockdata, world, blockposition); world.a(blockposition, false); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 0887707380..4afbd0f1c5 100644 +index 26f3b4720..1eb689c62 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -594,6 +594,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose @@ -1135,7 +1135,7 @@ index 0887707380..4afbd0f1c5 100644 public void a(BlockPosition blockposition, Block block, BlockPosition blockposition1) { if (!this.isClientSide) { IBlockData iblockdata = this.getType(blockposition); -@@ -1338,6 +1339,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -1340,6 +1341,7 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose return this.getBlockFacePower(blockposition.down(), EnumDirection.DOWN) > 0 ? true : (this.getBlockFacePower(blockposition.up(), EnumDirection.UP) > 0 ? true : (this.getBlockFacePower(blockposition.north(), EnumDirection.NORTH) > 0 ? true : (this.getBlockFacePower(blockposition.south(), EnumDirection.SOUTH) > 0 ? true : (this.getBlockFacePower(blockposition.west(), EnumDirection.WEST) > 0 ? true : this.getBlockFacePower(blockposition.east(), EnumDirection.EAST) > 0)))); } diff --git a/Spigot-Server-Patches/0344-Make-the-default-permission-message-configurable.patch b/Spigot-Server-Patches/0344-Make-the-default-permission-message-configurable.patch index a2492700c..7cc8f6cb5 100644 --- a/Spigot-Server-Patches/0344-Make-the-default-permission-message-configurable.patch +++ b/Spigot-Server-Patches/0344-Make-the-default-permission-message-configurable.patch @@ -1,11 +1,11 @@ -From baa2446be323e18bb1a110e05b1be5b84ac16c79 Mon Sep 17 00:00:00 2001 +From 5433a4f870f7d2e8b648abb82a1a8c437d5e8384 Mon Sep 17 00:00:00 2001 From: Shane Freeder Date: Sun, 18 Nov 2018 19:49:56 +0000 Subject: [PATCH] Make the default permission message configurable diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index 8feb0efdcd..81987e4ad9 100644 +index 8feb0efdc..81987e4ad 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -21,6 +21,7 @@ import java.util.regex.Pattern; @@ -29,10 +29,10 @@ index 8feb0efdcd..81987e4ad9 100644 private static void savePlayerData() { savePlayerData = getBoolean("settings.save-player-data", savePlayerData); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 89b13b00be..605c81f8e3 100644 +index 4adb12b1b..9f68ec82c 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -@@ -2132,6 +2132,11 @@ public final class CraftServer implements Server { +@@ -2135,6 +2135,11 @@ public final class CraftServer implements Server { return com.destroystokyo.paper.PaperConfig.suggestPlayersWhenNullTabCompletions; } diff --git a/Spigot-Server-Patches/0379-Optimize-Captured-TileEntity-Lookup.patch b/Spigot-Server-Patches/0379-Optimize-Captured-TileEntity-Lookup.patch index 1966b8d45..e5a6de0f9 100644 --- a/Spigot-Server-Patches/0379-Optimize-Captured-TileEntity-Lookup.patch +++ b/Spigot-Server-Patches/0379-Optimize-Captured-TileEntity-Lookup.patch @@ -1,4 +1,4 @@ -From a741c7f97d9b029f6c6db9e58a904ca39ea47b39 Mon Sep 17 00:00:00 2001 +From 96e37fe923fb5a9887e0d89eac3259ebff2ece30 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 6 Apr 2019 10:16:48 -0400 Subject: [PATCH] Optimize Captured TileEntity Lookup @@ -10,10 +10,10 @@ Optimize to check if the captured list even has values in it, and also to just do a get call since the value can never be null. diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 59f4b3262d..dcd66943fb 100644 +index f1552f23e..ef080f957 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java -@@ -1085,12 +1085,13 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose +@@ -1087,12 +1087,13 @@ public abstract class World implements IIBlockAccess, GeneratorAccess, AutoClose return null; } else { // CraftBukkit start diff --git a/Spigot-Server-Patches/0387-Fix-CraftServer-isPrimaryThread-and-MinecraftServer-.patch b/Spigot-Server-Patches/0387-Fix-CraftServer-isPrimaryThread-and-MinecraftServer-.patch index d343ec041..127b0ae94 100644 --- a/Spigot-Server-Patches/0387-Fix-CraftServer-isPrimaryThread-and-MinecraftServer-.patch +++ b/Spigot-Server-Patches/0387-Fix-CraftServer-isPrimaryThread-and-MinecraftServer-.patch @@ -1,4 +1,4 @@ -From 34999dd23b213717db26a3394c9786c06b9569c8 Mon Sep 17 00:00:00 2001 +From e37ae76273ff0def648ceccd3ee73b7c1f6218ee Mon Sep 17 00:00:00 2001 From: Spottedleaf Date: Mon, 13 May 2019 21:10:59 -0700 Subject: [PATCH] Fix CraftServer#isPrimaryThread and MinecraftServer @@ -16,7 +16,7 @@ handling that should have been handled synchronously will be handled synchronously when the server gets shut down. diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 55e8db8a09..8136a97f44 100644 +index 55e8db8a0..8136a97f4 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1943,7 +1943,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant