From 4340ef97ca4299462d5e76099b3f30a4e80d7f3f Mon Sep 17 00:00:00 2001 From: Zach Brown <1254957+zachbr@users.noreply.github.com> Date: Sat, 25 Mar 2017 00:22:02 -0500 Subject: [PATCH] Switch to a bStats based Metrics system --- .../Access-items-by-EquipmentSlot.patch | 2 +- .../Activation-Range-Improvements.patch | 2 +- .../Add-BeaconEffectEvent.patch | 2 +- .../Add-EntityZapEvent.patch | 6 +- .../Add-PlayerInitialSpawnEvent.patch | 2 +- .../Add-ProjectileCollideEvent.patch | 10 +- .../Add-World-Util-Methods.patch | 2 +- .../Add-async-chunk-load-API.patch | 2 +- .../Add-exception-reporting-event.patch | 22 +- ...ent-to-allow-plugins-to-handle-clien.patch | 2 +- ...working-with-arrows-stuck-in-living-.patch | 4 +- ...-option-to-remove-invalid-statistics.patch | 2 +- .../Add-server-name-parameter.patch | 2 +- ...setting-for-proxy-online-mode-status.patch | 2 +- .../Add-source-to-PlayerExpChangeEvent.patch | 4 +- .../Add-velocity-warnings.patch | 6 +- ...llow-Reloading-of-Custom-Permissions.patch | 2 +- .../Always-tick-falling-blocks.patch | 2 +- .../Auto-Save-Improvements.patch | 2 +- ...uto-fix-bad-Y-levels-on-player-login.patch | 2 +- ...blocking-on-Network-Manager-creation.patch | 2 +- ...opper-searches-if-there-are-no-items.patch | 2 +- ...e-informative-in-maxHealth-exception.patch | 2 +- ...entation-of-tile-entity-removal-list.patch | 4 +- ...heck-async-remove-unused-vars-GH-159.patch | 2 +- ...e-before-converting-and-renaming-pla.patch | 2 +- .../Chunk-Save-Reattempt.patch | 4 +- .../Chunk-Save-Stats-Debug-Option.patch | 2 +- .../Chunk-save-queue-improvements.patch | 2 +- ...figurable-Chunk-IO-Thread-Base-Count.patch | 2 +- .../Configurable-Player-Collision.patch | 2 +- .../Configurable-RCON-IP-address.patch | 2 +- .../Configurable-flying-kick-messages.patch | 2 +- ...onfigurable-packet-in-spam-threshold.patch | 2 +- .../Custom-replacement-for-eaten-items.patch | 2 +- ...ading-permissions.yml-before-plugins.patch | 2 +- .../Disable-spigot-tick-limiters.patch | 2 +- .../Disable-ticking-of-snow-blocks.patch | 2 +- .../Do-not-let-armorstands-drown.patch | 4 +- .../Do-not-load-chunks-for-light-checks.patch | 2 +- .../Do-not-load-chunks-for-pathfinding.patch | 2 +- ...hunks-as-active-for-neighbor-updates.patch | 2 +- ...ion-File-s-when-checking-if-chunk-ex.patch | 4 +- .../Don-t-let-fishinghooks-use-portals.patch | 2 +- ...e-profiles-that-have-no-UUID-and-no-.patch | 2 +- ...-don-t-need-to-when-cerealising-text.patch | 2 +- ...y-scoreboard-teams-to-scoreboard.dat.patch | 2 +- .../Don-t-tick-Skulls-unused-code.patch | 2 +- .../Enforce-Sync-Chunk-Unloads.patch | 2 +- .../Ensure-Chunks-never-ever-load-async.patch | 4 +- .../Ensure-inv-drag-is-in-bounds.patch | 2 +- ...Entity-AddTo-RemoveFrom-World-Events.patch | 2 +- .../Entity-Tracking-Improvements.patch | 4 +- .../EntityPathfindEvent.patch | 2 +- ...ityRegainHealthEvent-isFastRegen-API.patch | 4 +- .../Expose-server-CommandMap.patch | 2 +- ...r-redstone-torch-rapid-clock-removal.patch | 2 +- ...Fix-Bugs-with-Spigot-Mob-Spawn-Logic.patch | 4 +- ...g-BlockPlaceEvent-triggering-physics.patch | 2 +- .../Fix-Double-World-Add-issues.patch | 4 +- .../Fix-Old-Sign-Conversion.patch | 6 +- .../Fix-SkullCache-case-bug.patch | 2 +- .../Fix-cooked-fish-legacy-import.patch | 2 +- ...-explosions-processing-dead-entities.patch | 2 +- ...dDebugInfo-not-initialized-on-client.patch | 2 +- .../Handle-Item-Meta-Inconsistencies.patch | 4 +- ...item-frames-performance-and-bug-fixe.patch | 10 +- ...Improve-Minecraft-Hopper-Performance.patch | 4 +- Spigot-Server-Patches/Metrics.patch | 2 +- ...mative-vehicle-moved-wrongly-message.patch | 2 +- ...on-Wither-Death-sounds-to-same-world.patch | 4 +- ...e-BlockStateEnum-hashCode-and-equals.patch | 2 +- .../Optimise-removeQueue.patch | 2 +- .../Optimize-Chunk-Access.patch | 2 +- Spigot-Server-Patches/Optimize-EAR.patch | 2 +- .../Optimize-Network-Queue.patch | 2 +- .../Optimize-Pathfinding.patch | 2 +- .../Optimize-TileEntity-Ticking.patch | 4 +- .../Optimize-UserCache-Thread-Safe.patch | 2 +- ...imize-World.isLoaded-BlockPosition-Z.patch | 2 +- .../Optimized-Light-Level-Comparisons.patch | 12 +- Spigot-Server-Patches/Paper-Metrics.patch | 1052 +++++++++++++++++ .../Pass-world-to-Village-creation.patch | 4 +- .../Player-Tab-List-and-Title-APIs.patch | 6 +- .../Prevent-Fire-from-loading-chunks.patch | 2 +- ...w-BlockFromToEvent-from-loading-chun.patch | 2 +- ...event-tile-entity-and-entity-crashes.patch | 4 +- ...rovide-E-TE-Chunk-count-stat-methods.patch | 2 +- ...ers-that-dismount-from-other-players.patch | 2 +- ...uce-IO-ops-opening-a-new-region-file.patch | 2 +- .../Remove-Debug-checks-from-DataBits.patch | 2 +- .../Remove-Metadata-on-reload.patch | 2 +- ...ve-invalid-mob-spawner-tile-entities.patch | 2 +- ...-dispenser-dropper-furnace-placement.patch | 4 +- ...egionFileCache-and-make-configurable.patch | 2 +- ...sition-the-first-time-an-entity-is-s.patch | 2 +- .../Set-health-before-death-event.patch | 2 +- ...lowing-block-if-material-has-changed.patch | 2 +- .../String-based-Action-Bar-API.patch | 4 +- ...ne-mode-in-whitelist-command-as-well.patch | 2 +- ...tem-property-for-disabling-watchdoge.patch | 2 +- Spigot-Server-Patches/Timings-v2.patch | 2 +- .../Use-Optimized-Collections.patch | 4 +- .../Use-UserCache-for-player-heads.patch | 2 +- .../Use-a-Shared-Random-for-Entities.patch | 2 +- ...-mobs-should-only-spawn-in-the-water.patch | 2 +- .../Waving-banner-workaround.patch | 2 +- ...nd-for-setting-passengers-on-players.patch | 2 +- ...-possibility-for-getServer-singleton.patch | 2 +- 109 files changed, 1211 insertions(+), 159 deletions(-) create mode 100644 Spigot-Server-Patches/Paper-Metrics.patch diff --git a/Spigot-Server-Patches/Access-items-by-EquipmentSlot.patch b/Spigot-Server-Patches/Access-items-by-EquipmentSlot.patch index 9db5d62370..03ad4db5cd 100644 --- a/Spigot-Server-Patches/Access-items-by-EquipmentSlot.patch +++ b/Spigot-Server-Patches/Access-items-by-EquipmentSlot.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Access items by EquipmentSlot diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index d8c5364df..120ec897f 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java @@ -0,0 +0,0 @@ public class CraftInventoryPlayer extends CraftInventory implements org.bukkit.i diff --git a/Spigot-Server-Patches/Activation-Range-Improvements.patch b/Spigot-Server-Patches/Activation-Range-Improvements.patch index d11e053bbe..f8d9dbc8c7 100644 --- a/Spigot-Server-Patches/Activation-Range-Improvements.patch +++ b/Spigot-Server-Patches/Activation-Range-Improvements.patch @@ -18,7 +18,7 @@ index fdfe5b9ed..ce3907438 100644 private float b; private float c; diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 4ec6bc972..07688b1ce 100644 +index b8ac99e5d..7242da9cc 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -0,0 +0,0 @@ public abstract class EntityLiving extends Entity { diff --git a/Spigot-Server-Patches/Add-BeaconEffectEvent.patch b/Spigot-Server-Patches/Add-BeaconEffectEvent.patch index 65ada97fde..059169251b 100644 --- a/Spigot-Server-Patches/Add-BeaconEffectEvent.patch +++ b/Spigot-Server-Patches/Add-BeaconEffectEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add BeaconEffectEvent diff --git a/src/main/java/net/minecraft/server/TileEntityBeacon.java b/src/main/java/net/minecraft/server/TileEntityBeacon.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 6f2fcd22e..71ecc5493 100644 --- a/src/main/java/net/minecraft/server/TileEntityBeacon.java +++ b/src/main/java/net/minecraft/server/TileEntityBeacon.java @@ -0,0 +0,0 @@ import org.bukkit.entity.HumanEntity; diff --git a/Spigot-Server-Patches/Add-EntityZapEvent.patch b/Spigot-Server-Patches/Add-EntityZapEvent.patch index 1d2dc482b3..fe0eecc612 100644 --- a/Spigot-Server-Patches/Add-EntityZapEvent.patch +++ b/Spigot-Server-Patches/Add-EntityZapEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add EntityZapEvent diff --git a/src/main/java/net/minecraft/server/EntityPig.java b/src/main/java/net/minecraft/server/EntityPig.java -index 88bd674b..80ad25c1 100644 +index 88bd674ba..80ad25c1b 100644 --- a/src/main/java/net/minecraft/server/EntityPig.java +++ b/src/main/java/net/minecraft/server/EntityPig.java @@ -0,0 +0,0 @@ public class EntityPig extends EntityAnimal { @@ -22,7 +22,7 @@ index 88bd674b..80ad25c1 100644 if (CraftEventFactory.callPigZapEvent(this, entitylightning, entitypigzombie).isCancelled()) { return; diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java -index ee11691b..4ad75468 100644 +index ee11691bf..4ad75468c 100644 --- a/src/main/java/net/minecraft/server/EntityVillager.java +++ b/src/main/java/net/minecraft/server/EntityVillager.java @@ -0,0 +0,0 @@ public class EntityVillager extends EntityAgeable implements NPC, IMerchant { @@ -48,7 +48,7 @@ index ee11691b..4ad75468 100644 } } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 95b12331..4d252aa4 100644 +index 95b12331e..4d252aa47 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -0,0 +0,0 @@ public class CraftEventFactory { diff --git a/Spigot-Server-Patches/Add-PlayerInitialSpawnEvent.patch b/Spigot-Server-Patches/Add-PlayerInitialSpawnEvent.patch index e1b19841a2..8452840819 100644 --- a/Spigot-Server-Patches/Add-PlayerInitialSpawnEvent.patch +++ b/Spigot-Server-Patches/Add-PlayerInitialSpawnEvent.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Add PlayerInitialSpawnEvent For modifying a player's initial spawn location as they join the server diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 676cc3f3e..4e35e9102 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -0,0 +0,0 @@ public abstract class PlayerList { diff --git a/Spigot-Server-Patches/Add-ProjectileCollideEvent.patch b/Spigot-Server-Patches/Add-ProjectileCollideEvent.patch index 14bc4120cf..f5c9227db3 100644 --- a/Spigot-Server-Patches/Add-ProjectileCollideEvent.patch +++ b/Spigot-Server-Patches/Add-ProjectileCollideEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add ProjectileCollideEvent diff --git a/src/main/java/net/minecraft/server/EntityArrow.java b/src/main/java/net/minecraft/server/EntityArrow.java -index 8cda4751..79ca071b 100644 +index 8cda47518..79ca071bc 100644 --- a/src/main/java/net/minecraft/server/EntityArrow.java +++ b/src/main/java/net/minecraft/server/EntityArrow.java @@ -0,0 +0,0 @@ public abstract class EntityArrow extends Entity implements IProjectile { @@ -25,7 +25,7 @@ index 8cda4751..79ca071b 100644 this.a(movingobjectposition); } diff --git a/src/main/java/net/minecraft/server/EntityFireball.java b/src/main/java/net/minecraft/server/EntityFireball.java -index 789de85d..d5c9d24c 100644 +index 789de85d1..d5c9d24cf 100644 --- a/src/main/java/net/minecraft/server/EntityFireball.java +++ b/src/main/java/net/minecraft/server/EntityFireball.java @@ -0,0 +0,0 @@ public abstract class EntityFireball extends Entity { @@ -45,7 +45,7 @@ index 789de85d..d5c9d24c 100644 this.a(movingobjectposition); diff --git a/src/main/java/net/minecraft/server/EntityFishingHook.java b/src/main/java/net/minecraft/server/EntityFishingHook.java -index 606160a1..b78e0e49 100644 +index 606160a17..b78e0e49e 100644 --- a/src/main/java/net/minecraft/server/EntityFishingHook.java +++ b/src/main/java/net/minecraft/server/EntityFishingHook.java @@ -0,0 +0,0 @@ public class EntityFishingHook extends Entity { @@ -66,7 +66,7 @@ index 606160a1..b78e0e49 100644 vec3d1 = new Vec3D(movingobjectposition.pos.x, movingobjectposition.pos.y, movingobjectposition.pos.z); } diff --git a/src/main/java/net/minecraft/server/EntityProjectile.java b/src/main/java/net/minecraft/server/EntityProjectile.java -index 6fbc8455..a8b9d926 100644 +index 6fbc84559..a8b9d9263 100644 --- a/src/main/java/net/minecraft/server/EntityProjectile.java +++ b/src/main/java/net/minecraft/server/EntityProjectile.java @@ -0,0 +0,0 @@ public abstract class EntityProjectile extends Entity implements IProjectile { @@ -86,7 +86,7 @@ index 6fbc8455..a8b9d926 100644 if (movingobjectposition.type == MovingObjectPosition.EnumMovingObjectType.BLOCK && this.world.getType(movingobjectposition.a()).getBlock() == Blocks.PORTAL) { this.e(movingobjectposition.a()); diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 7e4982d9..a850a963 100644 +index 7e4982d93..a850a9634 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -0,0 +0,0 @@ public class CraftEventFactory { diff --git a/Spigot-Server-Patches/Add-World-Util-Methods.patch b/Spigot-Server-Patches/Add-World-Util-Methods.patch index 0ad6f42c9b..e80eddfbed 100644 --- a/Spigot-Server-Patches/Add-World-Util-Methods.patch +++ b/Spigot-Server-Patches/Add-World-Util-Methods.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Add World Util Methods Methods that can be used for other patches to help improve logic. diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index cc7369e52..1d2d174e8 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -0,0 +0,0 @@ public abstract class World implements IBlockAccess { diff --git a/Spigot-Server-Patches/Add-async-chunk-load-API.patch b/Spigot-Server-Patches/Add-async-chunk-load-API.patch index 6c3fa9ae4f..4654e4d41f 100644 --- a/Spigot-Server-Patches/Add-async-chunk-load-API.patch +++ b/Spigot-Server-Patches/Add-async-chunk-load-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add async chunk load API diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 822d73b9e..f65611a6a 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -0,0 +0,0 @@ public class CraftWorld implements World { diff --git a/Spigot-Server-Patches/Add-exception-reporting-event.patch b/Spigot-Server-Patches/Add-exception-reporting-event.patch index a763fcd808..b4f74e6485 100644 --- a/Spigot-Server-Patches/Add-exception-reporting-event.patch +++ b/Spigot-Server-Patches/Add-exception-reporting-event.patch @@ -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 00000000..93397188 +index 000000000..93397188b --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/ServerSchedulerReportingWrapper.java @@ -0,0 +0,0 @@ @@ -50,7 +50,7 @@ index 00000000..93397188 +} \ No newline at end of file diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index e1fc4ea6..8f1a68d6 100644 +index e1fc4ea6c..8f1a68d67 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -0,0 +0,0 @@ @@ -89,7 +89,7 @@ index e1fc4ea6..8f1a68d6 100644 } } diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java -index f7f2d12c..b0a82e7e 100644 +index f7f2d12cf..b0a82e7ed 100644 --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java @@ -0,0 +0,0 @@ import java.util.Iterator; @@ -144,7 +144,7 @@ index f7f2d12c..b0a82e7e 100644 } diff --git a/src/main/java/net/minecraft/server/NameReferencingFileConverter.java b/src/main/java/net/minecraft/server/NameReferencingFileConverter.java -index 016c64e8..2ff8a6da 100644 +index 016c64e82..2ff8a6da0 100644 --- a/src/main/java/net/minecraft/server/NameReferencingFileConverter.java +++ b/src/main/java/net/minecraft/server/NameReferencingFileConverter.java @@ -0,0 +0,0 @@ @@ -171,7 +171,7 @@ index 016c64e8..2ff8a6da 100644 } // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/PersistentCollection.java b/src/main/java/net/minecraft/server/PersistentCollection.java -index 936d6c64..50056f49 100644 +index 936d6c640..50056f49a 100644 --- a/src/main/java/net/minecraft/server/PersistentCollection.java +++ b/src/main/java/net/minecraft/server/PersistentCollection.java @@ -0,0 +0,0 @@ @@ -198,7 +198,7 @@ index 936d6c64..50056f49 100644 } diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java -index b0279ac3..be13c113 100644 +index b0279ac3e..be13c1131 100644 --- a/src/main/java/net/minecraft/server/RegionFile.java +++ b/src/main/java/net/minecraft/server/RegionFile.java @@ -0,0 +0,0 @@ @@ -225,7 +225,7 @@ index b0279ac3..be13c113 100644 } diff --git a/src/main/java/net/minecraft/server/RegionFileCache.java b/src/main/java/net/minecraft/server/RegionFileCache.java -index 933934fb..19fbf9b4 100644 +index 933934fb6..19fbf9b4a 100644 --- a/src/main/java/net/minecraft/server/RegionFileCache.java +++ b/src/main/java/net/minecraft/server/RegionFileCache.java @@ -0,0 +0,0 @@ @@ -244,7 +244,7 @@ index 933934fb..19fbf9b4 100644 } diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java -index a05fad54..29219ec7 100644 +index a05fad54f..29219ec7b 100644 --- a/src/main/java/net/minecraft/server/SpawnerCreature.java +++ b/src/main/java/net/minecraft/server/SpawnerCreature.java @@ -0,0 +0,0 @@ import java.util.Random; @@ -272,7 +272,7 @@ index a05fad54..29219ec7 100644 } diff --git a/src/main/java/net/minecraft/server/VillageSiege.java b/src/main/java/net/minecraft/server/VillageSiege.java -index 7af5b7dd..2b498024 100644 +index 7af5b7dd7..2b498024c 100644 --- a/src/main/java/net/minecraft/server/VillageSiege.java +++ b/src/main/java/net/minecraft/server/VillageSiege.java @@ -0,0 +0,0 @@ @@ -292,7 +292,7 @@ index 7af5b7dd..2b498024 100644 } diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 412854b6..22e191ef 100644 +index 354a7309b..cc7369e52 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -0,0 +0,0 @@ @@ -328,7 +328,7 @@ index 412854b6..22e191ef 100644 this.tileEntityListTick.remove(tileTickPosition--); continue; diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java -index 9952b64b..e30cfb7b 100644 +index 9952b64be..e30cfb7b7 100644 --- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java +++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java @@ -0,0 +0,0 @@ import java.util.concurrent.atomic.AtomicReference; diff --git a/Spigot-Server-Patches/Add-handshake-event-to-allow-plugins-to-handle-clien.patch b/Spigot-Server-Patches/Add-handshake-event-to-allow-plugins-to-handle-clien.patch index a95cf48d46..2fcfbed69a 100644 --- a/Spigot-Server-Patches/Add-handshake-event-to-allow-plugins-to-handle-clien.patch +++ b/Spigot-Server-Patches/Add-handshake-event-to-allow-plugins-to-handle-clien.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Add handshake event to allow plugins to handle client diff --git a/src/main/java/net/minecraft/server/HandshakeListener.java b/src/main/java/net/minecraft/server/HandshakeListener.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index a46df4b7f..f02263c34 100644 --- a/src/main/java/net/minecraft/server/HandshakeListener.java +++ b/src/main/java/net/minecraft/server/HandshakeListener.java @@ -0,0 +0,0 @@ public class HandshakeListener implements PacketHandshakingInListener { diff --git a/Spigot-Server-Patches/Add-methods-for-working-with-arrows-stuck-in-living-.patch b/Spigot-Server-Patches/Add-methods-for-working-with-arrows-stuck-in-living-.patch index 8ebae1ecda..75f852ed1e 100644 --- a/Spigot-Server-Patches/Add-methods-for-working-with-arrows-stuck-in-living-.patch +++ b/Spigot-Server-Patches/Add-methods-for-working-with-arrows-stuck-in-living-.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add methods for working with arrows stuck in living entities diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index e5fa1c3ba..247224117 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -0,0 +0,0 @@ public abstract class EntityLiving extends Entity { @@ -22,7 +22,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 this.datawatcher.set(EntityLiving.bq, Integer.valueOf(i)); } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 61032eb2f..348a8c758 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -0,0 +0,0 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/Spigot-Server-Patches/Add-option-to-remove-invalid-statistics.patch b/Spigot-Server-Patches/Add-option-to-remove-invalid-statistics.patch index 3644612948..045e1d3a88 100644 --- a/Spigot-Server-Patches/Add-option-to-remove-invalid-statistics.patch +++ b/Spigot-Server-Patches/Add-option-to-remove-invalid-statistics.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add option to remove invalid statistics diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index 17102d95d..2c3d30364 100644 +index ae69751c3..687c9d5ad 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -0,0 +0,0 @@ public class PaperConfig { diff --git a/Spigot-Server-Patches/Add-server-name-parameter.patch b/Spigot-Server-Patches/Add-server-name-parameter.patch index 92c7bd6b27..f85ff9521d 100644 --- a/Spigot-Server-Patches/Add-server-name-parameter.patch +++ b/Spigot-Server-Patches/Add-server-name-parameter.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add server-name parameter diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 4399faf69..59d4e2e6f 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java @@ -0,0 +0,0 @@ public class Main { diff --git a/Spigot-Server-Patches/Add-setting-for-proxy-online-mode-status.patch b/Spigot-Server-Patches/Add-setting-for-proxy-online-mode-status.patch index 2ab3dc60ea..cf84f95eb5 100644 --- a/Spigot-Server-Patches/Add-setting-for-proxy-online-mode-status.patch +++ b/Spigot-Server-Patches/Add-setting-for-proxy-online-mode-status.patch @@ -5,7 +5,7 @@ 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 923cc2b5c..c0a83cccb 100644 +index 5fbaa99e9..d1d50f0db 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -0,0 +0,0 @@ public class PaperConfig { diff --git a/Spigot-Server-Patches/Add-source-to-PlayerExpChangeEvent.patch b/Spigot-Server-Patches/Add-source-to-PlayerExpChangeEvent.patch index 504cdd52ad..49aaf97aa6 100644 --- a/Spigot-Server-Patches/Add-source-to-PlayerExpChangeEvent.patch +++ b/Spigot-Server-Patches/Add-source-to-PlayerExpChangeEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add source to PlayerExpChangeEvent diff --git a/src/main/java/net/minecraft/server/EntityExperienceOrb.java b/src/main/java/net/minecraft/server/EntityExperienceOrb.java -index 4b381646..14431b8a 100644 +index 4b3816465..14431b8ad 100644 --- a/src/main/java/net/minecraft/server/EntityExperienceOrb.java +++ b/src/main/java/net/minecraft/server/EntityExperienceOrb.java @@ -0,0 +0,0 @@ public class EntityExperienceOrb extends Entity { @@ -18,7 +18,7 @@ index 4b381646..14431b8a 100644 this.die(); diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 4d252aa4..7e4982d9 100644 +index 4d252aa47..7e4982d93 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -0,0 +0,0 @@ import org.bukkit.entity.Player; diff --git a/Spigot-Server-Patches/Add-velocity-warnings.patch b/Spigot-Server-Patches/Add-velocity-warnings.patch index 1a6711e31e..c3d8a074a5 100644 --- a/Spigot-Server-Patches/Add-velocity-warnings.patch +++ b/Spigot-Server-Patches/Add-velocity-warnings.patch @@ -5,7 +5,7 @@ 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 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 03bc0171b..c61752bc3 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -0,0 +0,0 @@ public final class CraftServer implements Server { @@ -17,7 +17,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 private final class BooleanWrapper { private boolean value = true; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 6497905b9..463289199 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -0,0 +0,0 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { @@ -33,7 +33,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 entity.motY = vel.getY(); entity.motZ = vel.getZ(); diff --git a/src/main/java/org/spigotmc/WatchdogThread.java b/src/main/java/org/spigotmc/WatchdogThread.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 3ed983cc0..6384d50e7 100644 --- a/src/main/java/org/spigotmc/WatchdogThread.java +++ b/src/main/java/org/spigotmc/WatchdogThread.java @@ -0,0 +0,0 @@ public class WatchdogThread extends Thread diff --git a/Spigot-Server-Patches/Allow-Reloading-of-Custom-Permissions.patch b/Spigot-Server-Patches/Allow-Reloading-of-Custom-Permissions.patch index db2b994f13..379846e67c 100644 --- a/Spigot-Server-Patches/Allow-Reloading-of-Custom-Permissions.patch +++ b/Spigot-Server-Patches/Allow-Reloading-of-Custom-Permissions.patch @@ -6,7 +6,7 @@ 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 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index e2afd9d93..40091231e 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -0,0 +0,0 @@ public final class CraftServer implements Server { diff --git a/Spigot-Server-Patches/Always-tick-falling-blocks.patch b/Spigot-Server-Patches/Always-tick-falling-blocks.patch index 93141bee8c..b40807999a 100644 --- a/Spigot-Server-Patches/Always-tick-falling-blocks.patch +++ b/Spigot-Server-Patches/Always-tick-falling-blocks.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Always tick falling blocks diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 5c2fb0058..c411ce886 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java @@ -0,0 +0,0 @@ import net.minecraft.server.EntityCreature; diff --git a/Spigot-Server-Patches/Auto-Save-Improvements.patch b/Spigot-Server-Patches/Auto-Save-Improvements.patch index 67f9fb1131..dd8339f24e 100644 --- a/Spigot-Server-Patches/Auto-Save-Improvements.patch +++ b/Spigot-Server-Patches/Auto-Save-Improvements.patch @@ -12,7 +12,7 @@ Re-introduce a cap per tick for auto save (Spigot disabled the vanilla cap) and Adds incremental player auto saving too diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index cc0ae9224..17102d95d 100644 +index 468095a44..ae69751c3 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -0,0 +0,0 @@ public class PaperConfig { diff --git a/Spigot-Server-Patches/Auto-fix-bad-Y-levels-on-player-login.patch b/Spigot-Server-Patches/Auto-fix-bad-Y-levels-on-player-login.patch index d286a858d2..04951f47fe 100644 --- a/Spigot-Server-Patches/Auto-fix-bad-Y-levels-on-player-login.patch +++ b/Spigot-Server-Patches/Auto-fix-bad-Y-levels-on-player-login.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Auto fix bad Y levels on player login Bring down to a saner Y level if super high, as this can cause the server to crash diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index d67493666..9576264f6 100644 +index 0cd350254..4da83a1bf 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -0,0 +0,0 @@ public class EntityPlayer extends EntityHuman implements ICrafting { diff --git a/Spigot-Server-Patches/Avoid-blocking-on-Network-Manager-creation.patch b/Spigot-Server-Patches/Avoid-blocking-on-Network-Manager-creation.patch index 9bc3d55ee5..57d63e098d 100644 --- a/Spigot-Server-Patches/Avoid-blocking-on-Network-Manager-creation.patch +++ b/Spigot-Server-Patches/Avoid-blocking-on-Network-Manager-creation.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Avoid blocking on Network Manager creation Per Paper issue 294 diff --git a/src/main/java/net/minecraft/server/ServerConnection.java b/src/main/java/net/minecraft/server/ServerConnection.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 6a71ebbd2..faf7b60af 100644 --- a/src/main/java/net/minecraft/server/ServerConnection.java +++ b/src/main/java/net/minecraft/server/ServerConnection.java @@ -0,0 +0,0 @@ public class ServerConnection { diff --git a/Spigot-Server-Patches/Avoid-hopper-searches-if-there-are-no-items.patch b/Spigot-Server-Patches/Avoid-hopper-searches-if-there-are-no-items.patch index 89de1be817..f1ccd995ae 100644 --- a/Spigot-Server-Patches/Avoid-hopper-searches-if-there-are-no-items.patch +++ b/Spigot-Server-Patches/Avoid-hopper-searches-if-there-are-no-items.patch @@ -14,7 +14,7 @@ And since minecart hoppers are used _very_ rarely near we can avoid alot of sear Combined, this adds up a lot. diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index b80f95159..e1fc4ea6c 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -0,0 +0,0 @@ public class Chunk { diff --git a/Spigot-Server-Patches/Be-a-bit-more-informative-in-maxHealth-exception.patch b/Spigot-Server-Patches/Be-a-bit-more-informative-in-maxHealth-exception.patch index 53bcab5c92..cbe8836843 100644 --- a/Spigot-Server-Patches/Be-a-bit-more-informative-in-maxHealth-exception.patch +++ b/Spigot-Server-Patches/Be-a-bit-more-informative-in-maxHealth-exception.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Be a bit more informative in maxHealth exception diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index c00260f67..5520c707e 100644 +index 27cd0d43d..61032eb2f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -0,0 +0,0 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/Spigot-Server-Patches/Change-implementation-of-tile-entity-removal-list.patch b/Spigot-Server-Patches/Change-implementation-of-tile-entity-removal-list.patch index a3f299ceeb..26bf53234f 100644 --- a/Spigot-Server-Patches/Change-implementation-of-tile-entity-removal-list.patch +++ b/Spigot-Server-Patches/Change-implementation-of-tile-entity-removal-list.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Change implementation of (tile)entity removal list diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index e851e78a..223b0512 100644 +index 7feed2995..5b5e0e73c 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -0,0 +0,0 @@ public abstract class Entity implements ICommandListener { @@ -24,7 +24,7 @@ index e851e78a..223b0512 100644 public boolean impulse; public int portalCooldown; diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 3c5a3532..412854b6 100644 +index a1cdcd71b..354a7309b 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -0,0 +0,0 @@ import org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason; diff --git a/Spigot-Server-Patches/Check-async-remove-unused-vars-GH-159.patch b/Spigot-Server-Patches/Check-async-remove-unused-vars-GH-159.patch index 539de02c8b..58fe156655 100644 --- a/Spigot-Server-Patches/Check-async-remove-unused-vars-GH-159.patch +++ b/Spigot-Server-Patches/Check-async-remove-unused-vars-GH-159.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Check async, remove unused vars, GH-159 diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 29219ec7b..c95fb7f30 100644 --- a/src/main/java/net/minecraft/server/SpawnerCreature.java +++ b/src/main/java/net/minecraft/server/SpawnerCreature.java @@ -0,0 +0,0 @@ public final class SpawnerCreature { diff --git a/Spigot-Server-Patches/Check-online-mode-before-converting-and-renaming-pla.patch b/Spigot-Server-Patches/Check-online-mode-before-converting-and-renaming-pla.patch index 137d196c70..5d015afe24 100644 --- a/Spigot-Server-Patches/Check-online-mode-before-converting-and-renaming-pla.patch +++ b/Spigot-Server-Patches/Check-online-mode-before-converting-and-renaming-pla.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Check online mode before converting and renaming player data diff --git a/src/main/java/net/minecraft/server/WorldNBTStorage.java b/src/main/java/net/minecraft/server/WorldNBTStorage.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index caec56824..30b54a50e 100644 --- a/src/main/java/net/minecraft/server/WorldNBTStorage.java +++ b/src/main/java/net/minecraft/server/WorldNBTStorage.java @@ -0,0 +0,0 @@ public class WorldNBTStorage implements IDataManager, IPlayerFileData { diff --git a/Spigot-Server-Patches/Chunk-Save-Reattempt.patch b/Spigot-Server-Patches/Chunk-Save-Reattempt.patch index 204c4bc873..809d8e87ea 100644 --- a/Spigot-Server-Patches/Chunk-Save-Reattempt.patch +++ b/Spigot-Server-Patches/Chunk-Save-Reattempt.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Chunk Save Reattempt We commonly have "Stream Closed" errors on chunk saving, so this code should re-try to save the chunk in the event of failure and hopefully prevent rollbacks. diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 7f3e874ba..310ab96ab 100644 --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java @@ -0,0 +0,0 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { @@ -28,7 +28,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 synchronized (lock) { if (this.b.get(chunkcoordintpair) == nbttagcompound) { this.b.remove(chunkcoordintpair); } }// Paper - This will not equal if a newer version is still pending diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index be13c1131..9cfc46bc2 100644 --- a/src/main/java/net/minecraft/server/RegionFile.java +++ b/src/main/java/net/minecraft/server/RegionFile.java @@ -0,0 +0,0 @@ public class RegionFile { diff --git a/Spigot-Server-Patches/Chunk-Save-Stats-Debug-Option.patch b/Spigot-Server-Patches/Chunk-Save-Stats-Debug-Option.patch index fd693bffb9..a760360587 100644 --- a/Spigot-Server-Patches/Chunk-Save-Stats-Debug-Option.patch +++ b/Spigot-Server-Patches/Chunk-Save-Stats-Debug-Option.patch @@ -8,7 +8,7 @@ Adds a command line flag to enable stats on how chunk saves are processing. Stats on current queue, how many was processed and how many were queued. diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java -index b7afcb204..3b82627eb 100644 +index 916bf53f4..7006466b5 100644 --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java @@ -0,0 +0,0 @@ public class ChunkProviderServer implements IChunkProvider { diff --git a/Spigot-Server-Patches/Chunk-save-queue-improvements.patch b/Spigot-Server-Patches/Chunk-save-queue-improvements.patch index bd714f8e8e..30ca2c2c72 100644 --- a/Spigot-Server-Patches/Chunk-save-queue-improvements.patch +++ b/Spigot-Server-Patches/Chunk-save-queue-improvements.patch @@ -26,7 +26,7 @@ Then finally, Sleeping will by default be removed, but due to known issues with But if sleeps are to remain enabled, we at least lower the sleep interval so it doesn't have as much negative impact. diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index 18cabc4f3..797f794de 100644 +index 8c8bc4c86..b2fa32e41 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -0,0 +0,0 @@ public class PaperConfig { diff --git a/Spigot-Server-Patches/Configurable-Chunk-IO-Thread-Base-Count.patch b/Spigot-Server-Patches/Configurable-Chunk-IO-Thread-Base-Count.patch index cac0ee46b6..992b97cbe3 100644 --- a/Spigot-Server-Patches/Configurable-Chunk-IO-Thread-Base-Count.patch +++ b/Spigot-Server-Patches/Configurable-Chunk-IO-Thread-Base-Count.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Configurable Chunk IO Thread Base Count diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index 0a6f9b256..18cabc4f3 100644 +index 1ea799d59..8c8bc4c86 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -0,0 +0,0 @@ public class PaperConfig { diff --git a/Spigot-Server-Patches/Configurable-Player-Collision.patch b/Spigot-Server-Patches/Configurable-Player-Collision.patch index c99130271c..f7ae6f529a 100644 --- a/Spigot-Server-Patches/Configurable-Player-Collision.patch +++ b/Spigot-Server-Patches/Configurable-Player-Collision.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Configurable Player Collision diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index ab796a959..e823f5979 100644 +index 6b694705b..ee884ba57 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -0,0 +0,0 @@ public class PaperConfig { diff --git a/Spigot-Server-Patches/Configurable-RCON-IP-address.patch b/Spigot-Server-Patches/Configurable-RCON-IP-address.patch index 2196c5697d..73e4d896ec 100644 --- a/Spigot-Server-Patches/Configurable-RCON-IP-address.patch +++ b/Spigot-Server-Patches/Configurable-RCON-IP-address.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Configurable RCON IP address For servers with multiple IP's, ability to bind to a specific interface. diff --git a/src/main/java/net/minecraft/server/RemoteControlListener.java b/src/main/java/net/minecraft/server/RemoteControlListener.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index a6a0d5a29..efcafe77f 100644 --- a/src/main/java/net/minecraft/server/RemoteControlListener.java +++ b/src/main/java/net/minecraft/server/RemoteControlListener.java @@ -0,0 +0,0 @@ public class RemoteControlListener extends RemoteConnectionThread { diff --git a/Spigot-Server-Patches/Configurable-flying-kick-messages.patch b/Spigot-Server-Patches/Configurable-flying-kick-messages.patch index d96a7d521f..847016d0a1 100644 --- a/Spigot-Server-Patches/Configurable-flying-kick-messages.patch +++ b/Spigot-Server-Patches/Configurable-flying-kick-messages.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Configurable flying kick messages diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index 20f6742f4..cc0ae9224 100644 +index 2f17b9013..468095a44 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -0,0 +0,0 @@ public class PaperConfig { diff --git a/Spigot-Server-Patches/Configurable-packet-in-spam-threshold.patch b/Spigot-Server-Patches/Configurable-packet-in-spam-threshold.patch index 341224ab8d..438ed1337f 100644 --- a/Spigot-Server-Patches/Configurable-packet-in-spam-threshold.patch +++ b/Spigot-Server-Patches/Configurable-packet-in-spam-threshold.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Configurable packet in spam threshold diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index c0a83cccb..20f6742f4 100644 +index d1d50f0db..2f17b9013 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -0,0 +0,0 @@ public class PaperConfig { diff --git a/Spigot-Server-Patches/Custom-replacement-for-eaten-items.patch b/Spigot-Server-Patches/Custom-replacement-for-eaten-items.patch index 6e032fa787..b1ba654ea1 100644 --- a/Spigot-Server-Patches/Custom-replacement-for-eaten-items.patch +++ b/Spigot-Server-Patches/Custom-replacement-for-eaten-items.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Custom replacement for eaten items diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 247224117..9cb3b22fb 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -0,0 +0,0 @@ public abstract class EntityLiving extends Entity { diff --git a/Spigot-Server-Patches/Default-loading-permissions.yml-before-plugins.patch b/Spigot-Server-Patches/Default-loading-permissions.yml-before-plugins.patch index b80687dc82..95657ae46a 100644 --- a/Spigot-Server-Patches/Default-loading-permissions.yml-before-plugins.patch +++ b/Spigot-Server-Patches/Default-loading-permissions.yml-before-plugins.patch @@ -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 797f794de..7f02ac219 100644 +index b2fa32e41..078e0d989 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -0,0 +0,0 @@ public class PaperConfig { diff --git a/Spigot-Server-Patches/Disable-spigot-tick-limiters.patch b/Spigot-Server-Patches/Disable-spigot-tick-limiters.patch index d6a2ab96f5..62f47dc2e5 100644 --- a/Spigot-Server-Patches/Disable-spigot-tick-limiters.patch +++ b/Spigot-Server-Patches/Disable-spigot-tick-limiters.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Disable spigot tick limiters diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index d2b90fda..3c5a3532 100644 +index 5f7590e11..a1cdcd71b 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -0,0 +0,0 @@ public abstract class World implements IBlockAccess { diff --git a/Spigot-Server-Patches/Disable-ticking-of-snow-blocks.patch b/Spigot-Server-Patches/Disable-ticking-of-snow-blocks.patch index b9b7d622a6..5f2288f255 100644 --- a/Spigot-Server-Patches/Disable-ticking-of-snow-blocks.patch +++ b/Spigot-Server-Patches/Disable-ticking-of-snow-blocks.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Disable ticking of snow blocks diff --git a/src/main/java/net/minecraft/server/BlockSnowBlock.java b/src/main/java/net/minecraft/server/BlockSnowBlock.java -index 8123d729..b6765e5b 100644 +index 8123d7295..b6765e5bc 100644 --- a/src/main/java/net/minecraft/server/BlockSnowBlock.java +++ b/src/main/java/net/minecraft/server/BlockSnowBlock.java @@ -0,0 +0,0 @@ public class BlockSnowBlock extends Block { diff --git a/Spigot-Server-Patches/Do-not-let-armorstands-drown.patch b/Spigot-Server-Patches/Do-not-let-armorstands-drown.patch index aaa7805a5b..2691a2ddb6 100644 --- a/Spigot-Server-Patches/Do-not-let-armorstands-drown.patch +++ b/Spigot-Server-Patches/Do-not-let-armorstands-drown.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Do not let armorstands drown diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 7738ca385..5818aa5e9 100644 --- a/src/main/java/net/minecraft/server/EntityArmorStand.java +++ b/src/main/java/net/minecraft/server/EntityArmorStand.java @@ -0,0 +0,0 @@ public class EntityArmorStand extends EntityLiving { @@ -20,7 +20,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 // Paper end } diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 53486e205..9b7159450 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -0,0 +0,0 @@ public abstract class EntityLiving extends Entity { diff --git a/Spigot-Server-Patches/Do-not-load-chunks-for-light-checks.patch b/Spigot-Server-Patches/Do-not-load-chunks-for-light-checks.patch index 08c19f1120..d4fa9e92d6 100644 --- a/Spigot-Server-Patches/Do-not-load-chunks-for-light-checks.patch +++ b/Spigot-Server-Patches/Do-not-load-chunks-for-light-checks.patch @@ -7,7 +7,7 @@ Should only happen for blocks on the edge that uses neighbors light level (certain blocks). In that case, there will be 3-4 other neighbors to get a light level from. diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index f86c64cb2..7e6459654 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -0,0 +0,0 @@ public abstract class World implements IBlockAccess { diff --git a/Spigot-Server-Patches/Do-not-load-chunks-for-pathfinding.patch b/Spigot-Server-Patches/Do-not-load-chunks-for-pathfinding.patch index b94da4c9b5..148374e2b1 100644 --- a/Spigot-Server-Patches/Do-not-load-chunks-for-pathfinding.patch +++ b/Spigot-Server-Patches/Do-not-load-chunks-for-pathfinding.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Do not load chunks for pathfinding diff --git a/src/main/java/net/minecraft/server/ChunkCache.java b/src/main/java/net/minecraft/server/ChunkCache.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 08b986fd7..786d1dd22 100644 --- a/src/main/java/net/minecraft/server/ChunkCache.java +++ b/src/main/java/net/minecraft/server/ChunkCache.java @@ -0,0 +0,0 @@ public class ChunkCache implements IBlockAccess { diff --git a/Spigot-Server-Patches/Do-not-mark-chunks-as-active-for-neighbor-updates.patch b/Spigot-Server-Patches/Do-not-mark-chunks-as-active-for-neighbor-updates.patch index f517436e8a..f7f8892001 100644 --- a/Spigot-Server-Patches/Do-not-mark-chunks-as-active-for-neighbor-updates.patch +++ b/Spigot-Server-Patches/Do-not-mark-chunks-as-active-for-neighbor-updates.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Do not mark chunks as active for neighbor updates Fixes chunk unload issues diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index a6cf1d83d..3db29161d 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -0,0 +0,0 @@ public class Chunk { diff --git a/Spigot-Server-Patches/Don-t-create-Region-File-s-when-checking-if-chunk-ex.patch b/Spigot-Server-Patches/Don-t-create-Region-File-s-when-checking-if-chunk-ex.patch index f1d3bd83f4..a856694281 100644 --- a/Spigot-Server-Patches/Don-t-create-Region-File-s-when-checking-if-chunk-ex.patch +++ b/Spigot-Server-Patches/Don-t-create-Region-File-s-when-checking-if-chunk-ex.patch @@ -7,7 +7,7 @@ Plugins like Dynmap can end up creating tons of emtpy Region Files when using chunkExists. diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 4890023d7..79cb3953b 100644 --- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java +++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java @@ -0,0 +0,0 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver { @@ -23,7 +23,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/RegionFileCache.java b/src/main/java/net/minecraft/server/RegionFileCache.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index f23429898..933934fb6 100644 --- a/src/main/java/net/minecraft/server/RegionFileCache.java +++ b/src/main/java/net/minecraft/server/RegionFileCache.java @@ -0,0 +0,0 @@ public class RegionFileCache { diff --git a/Spigot-Server-Patches/Don-t-let-fishinghooks-use-portals.patch b/Spigot-Server-Patches/Don-t-let-fishinghooks-use-portals.patch index 8f45375669..6a3503936c 100644 --- a/Spigot-Server-Patches/Don-t-let-fishinghooks-use-portals.patch +++ b/Spigot-Server-Patches/Don-t-let-fishinghooks-use-portals.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Don't let fishinghooks use portals diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index a3685ec57..66563584f 100644 +index 0479b7551..44fdf92ff 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -0,0 +0,0 @@ public abstract class Entity implements ICommandListener { diff --git a/Spigot-Server-Patches/Don-t-lookup-game-profiles-that-have-no-UUID-and-no-.patch b/Spigot-Server-Patches/Don-t-lookup-game-profiles-that-have-no-UUID-and-no-.patch index 0b39b2bb78..1627259664 100644 --- a/Spigot-Server-Patches/Don-t-lookup-game-profiles-that-have-no-UUID-and-no-.patch +++ b/Spigot-Server-Patches/Don-t-lookup-game-profiles-that-have-no-UUID-and-no-.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Don't lookup game profiles that have no UUID and no name diff --git a/src/main/java/net/minecraft/server/UserCache.java b/src/main/java/net/minecraft/server/UserCache.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 989758cdf..1c619c596 100644 --- a/src/main/java/net/minecraft/server/UserCache.java +++ b/src/main/java/net/minecraft/server/UserCache.java @@ -0,0 +0,0 @@ public class UserCache { diff --git a/Spigot-Server-Patches/Don-t-nest-if-we-don-t-need-to-when-cerealising-text.patch b/Spigot-Server-Patches/Don-t-nest-if-we-don-t-need-to-when-cerealising-text.patch index 4687b6bfc0..c59208529d 100644 --- a/Spigot-Server-Patches/Don-t-nest-if-we-don-t-need-to-when-cerealising-text.patch +++ b/Spigot-Server-Patches/Don-t-nest-if-we-don-t-need-to-when-cerealising-text.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Don't nest if we don't need to when cerealising text diff --git a/src/main/java/net/minecraft/server/PacketPlayOutChat.java b/src/main/java/net/minecraft/server/PacketPlayOutChat.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 9fc83c4a3..b3b13ba11 100644 --- a/src/main/java/net/minecraft/server/PacketPlayOutChat.java +++ b/src/main/java/net/minecraft/server/PacketPlayOutChat.java @@ -0,0 +0,0 @@ public class PacketPlayOutChat implements Packet { diff --git a/Spigot-Server-Patches/Don-t-save-empty-scoreboard-teams-to-scoreboard.dat.patch b/Spigot-Server-Patches/Don-t-save-empty-scoreboard-teams-to-scoreboard.dat.patch index ebca725656..1443fedc35 100644 --- a/Spigot-Server-Patches/Don-t-save-empty-scoreboard-teams-to-scoreboard.dat.patch +++ b/Spigot-Server-Patches/Don-t-save-empty-scoreboard-teams-to-scoreboard.dat.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Don't save empty scoreboard teams to scoreboard.dat diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index e823f5979..923cc2b5c 100644 +index ee884ba57..5fbaa99e9 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -0,0 +0,0 @@ public class PaperConfig { diff --git a/Spigot-Server-Patches/Don-t-tick-Skulls-unused-code.patch b/Spigot-Server-Patches/Don-t-tick-Skulls-unused-code.patch index 8468e1db59..d943a8ab39 100644 --- a/Spigot-Server-Patches/Don-t-tick-Skulls-unused-code.patch +++ b/Spigot-Server-Patches/Don-t-tick-Skulls-unused-code.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Don't tick Skulls - unused code diff --git a/src/main/java/net/minecraft/server/TileEntitySkull.java b/src/main/java/net/minecraft/server/TileEntitySkull.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index edd6fb69e..380373c0e 100644 --- a/src/main/java/net/minecraft/server/TileEntitySkull.java +++ b/src/main/java/net/minecraft/server/TileEntitySkull.java @@ -0,0 +0,0 @@ import com.mojang.authlib.Agent; diff --git a/Spigot-Server-Patches/Enforce-Sync-Chunk-Unloads.patch b/Spigot-Server-Patches/Enforce-Sync-Chunk-Unloads.patch index e31a691e0b..4eca5dd83b 100644 --- a/Spigot-Server-Patches/Enforce-Sync-Chunk-Unloads.patch +++ b/Spigot-Server-Patches/Enforce-Sync-Chunk-Unloads.patch @@ -7,7 +7,7 @@ Unloading Chunks async is extremely dangerous. This will force it to main the same way we handle async chunk loads. diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index da478ef81..95dcb9f81 100644 +index b42074706..b837a921c 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -0,0 +0,0 @@ public class CraftWorld implements World { diff --git a/Spigot-Server-Patches/Ensure-Chunks-never-ever-load-async.patch b/Spigot-Server-Patches/Ensure-Chunks-never-ever-load-async.patch index 279bdbcd03..88d97a7c02 100644 --- a/Spigot-Server-Patches/Ensure-Chunks-never-ever-load-async.patch +++ b/Spigot-Server-Patches/Ensure-Chunks-never-ever-load-async.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Ensure Chunks never ever load async Safely pushes the operation to main thread, then back to the posting thread diff --git a/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOExecutor.java b/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOExecutor.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 7b7a3d01b..9aaca21a7 100644 --- a/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOExecutor.java +++ b/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOExecutor.java @@ -0,0 +0,0 @@ import com.destroystokyo.paper.PaperConfig; @@ -27,7 +27,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 public static void queueChunkLoad(World world, ChunkRegionLoader loader, ChunkProviderServer provider, int x, int z, Runnable runnable) { diff --git a/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOProvider.java b/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOProvider.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index b5efb9c3f..ef9529add 100644 --- a/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOProvider.java +++ b/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOProvider.java @@ -0,0 +0,0 @@ class ChunkIOProvider implements AsynchronousExecutor.CallBackProvider iterator() { diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index d2662ae14..e6b79a571 100644 --- a/src/main/java/net/minecraft/server/TileEntity.java +++ b/src/main/java/net/minecraft/server/TileEntity.java @@ -0,0 +0,0 @@ import org.bukkit.inventory.InventoryHolder; // CraftBukkit @@ -46,7 +46,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 private static final RegistryMaterials> f = new RegistryMaterials(); protected World world; diff --git a/src/main/java/net/minecraft/server/TileEntitySign.java b/src/main/java/net/minecraft/server/TileEntitySign.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 34ade146c..242552c36 100644 --- a/src/main/java/net/minecraft/server/TileEntitySign.java +++ b/src/main/java/net/minecraft/server/TileEntitySign.java @@ -0,0 +0,0 @@ public class TileEntitySign extends TileEntity { diff --git a/Spigot-Server-Patches/Fix-SkullCache-case-bug.patch b/Spigot-Server-Patches/Fix-SkullCache-case-bug.patch index 022b9d1d3c..3c9c364fec 100644 --- a/Spigot-Server-Patches/Fix-SkullCache-case-bug.patch +++ b/Spigot-Server-Patches/Fix-SkullCache-case-bug.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix SkullCache case bug diff --git a/src/main/java/net/minecraft/server/TileEntitySkull.java b/src/main/java/net/minecraft/server/TileEntitySkull.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 91ca4a279..edd6fb69e 100644 --- a/src/main/java/net/minecraft/server/TileEntitySkull.java +++ b/src/main/java/net/minecraft/server/TileEntitySkull.java @@ -0,0 +0,0 @@ public class TileEntitySkull extends TileEntity implements ITickable { diff --git a/Spigot-Server-Patches/Fix-cooked-fish-legacy-import.patch b/Spigot-Server-Patches/Fix-cooked-fish-legacy-import.patch index d8bb685e87..27d13ecc3f 100644 --- a/Spigot-Server-Patches/Fix-cooked-fish-legacy-import.patch +++ b/Spigot-Server-Patches/Fix-cooked-fish-legacy-import.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix cooked fish legacy import diff --git a/src/main/java/net/minecraft/server/DataConverterMaterialId.java b/src/main/java/net/minecraft/server/DataConverterMaterialId.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 87b82eb35..a7c71f406 100644 --- a/src/main/java/net/minecraft/server/DataConverterMaterialId.java +++ b/src/main/java/net/minecraft/server/DataConverterMaterialId.java @@ -0,0 +0,0 @@ public class DataConverterMaterialId implements IDataConverter { diff --git a/Spigot-Server-Patches/Fix-lag-from-explosions-processing-dead-entities.patch b/Spigot-Server-Patches/Fix-lag-from-explosions-processing-dead-entities.patch index 03cf322a72..9ea6757b6d 100644 --- a/Spigot-Server-Patches/Fix-lag-from-explosions-processing-dead-entities.patch +++ b/Spigot-Server-Patches/Fix-lag-from-explosions-processing-dead-entities.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix lag from explosions processing dead entities diff --git a/src/main/java/net/minecraft/server/Explosion.java b/src/main/java/net/minecraft/server/Explosion.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 904bee8b5..4e05bcdfa 100644 --- a/src/main/java/net/minecraft/server/Explosion.java +++ b/src/main/java/net/minecraft/server/Explosion.java @@ -0,0 +0,0 @@ public class Explosion { diff --git a/Spigot-Server-Patches/Fix-reducedDebugInfo-not-initialized-on-client.patch b/Spigot-Server-Patches/Fix-reducedDebugInfo-not-initialized-on-client.patch index a27a618ddc..8090d97529 100644 --- a/Spigot-Server-Patches/Fix-reducedDebugInfo-not-initialized-on-client.patch +++ b/Spigot-Server-Patches/Fix-reducedDebugInfo-not-initialized-on-client.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix reducedDebugInfo not initialized on client diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 4e35e9102..a55a6fca0 100644 --- a/src/main/java/net/minecraft/server/PlayerList.java +++ b/src/main/java/net/minecraft/server/PlayerList.java @@ -0,0 +0,0 @@ public abstract class PlayerList { diff --git a/Spigot-Server-Patches/Handle-Item-Meta-Inconsistencies.patch b/Spigot-Server-Patches/Handle-Item-Meta-Inconsistencies.patch index 08b92f767d..1fdcbbdd67 100644 --- a/Spigot-Server-Patches/Handle-Item-Meta-Inconsistencies.patch +++ b/Spigot-Server-Patches/Handle-Item-Meta-Inconsistencies.patch @@ -18,7 +18,7 @@ For consistency, the old API methods now forward to use the ItemMeta API equivalents, and should deprecate the old API's. diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index a54bc7c42..81ec8f69e 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java @@ -0,0 +0,0 @@ import static org.bukkit.craftbukkit.inventory.CraftMetaItem.ENCHANTMENTS; @@ -144,7 +144,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 static Map getEnchantments(net.minecraft.server.ItemStack item) { diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index ec5680633..9e7f9c661 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java @@ -0,0 +0,0 @@ import java.lang.annotation.RetentionPolicy; diff --git a/Spigot-Server-Patches/Improve-Maps-in-item-frames-performance-and-bug-fixe.patch b/Spigot-Server-Patches/Improve-Maps-in-item-frames-performance-and-bug-fixe.patch index 6c9859de34..4b4603c8c7 100644 --- a/Spigot-Server-Patches/Improve-Maps-in-item-frames-performance-and-bug-fixe.patch +++ b/Spigot-Server-Patches/Improve-Maps-in-item-frames-performance-and-bug-fixe.patch @@ -13,7 +13,7 @@ custom renderers are in use, defaulting to the much simpler Vanilla system. Additionally, numerous issues to player position tracking on maps has been fixed. diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java -index 43e28d61..af173a13 100644 +index 43e28d61c..af173a137 100644 --- a/src/main/java/net/minecraft/server/EntityHuman.java +++ b/src/main/java/net/minecraft/server/EntityHuman.java @@ -0,0 +0,0 @@ public abstract class EntityHuman extends EntityLiving { @@ -30,7 +30,7 @@ index 43e28d61..af173a13 100644 ItemStack itemstack1 = this.a(entityitem); diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java -index f542bf49..fbda70a3 100644 +index f542bf491..fbda70a39 100644 --- a/src/main/java/net/minecraft/server/EntityTrackerEntry.java +++ b/src/main/java/net/minecraft/server/EntityTrackerEntry.java @@ -0,0 +0,0 @@ public class EntityTrackerEntry { @@ -48,7 +48,7 @@ index f542bf49..fbda70a3 100644 Iterator iterator = this.trackedPlayers.iterator(); // CraftBukkit diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index 0c44377f..64deb12d 100644 +index 2f4728b0d..7ed3a0677 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -0,0 +0,0 @@ public abstract class World implements IBlockAccess { @@ -60,7 +60,7 @@ index 0c44377f..64deb12d 100644 } } diff --git a/src/main/java/net/minecraft/server/WorldMap.java b/src/main/java/net/minecraft/server/WorldMap.java -index dd5412e6..dbe6a80f 100644 +index dd5412e69..dbe6a80f2 100644 --- a/src/main/java/net/minecraft/server/WorldMap.java +++ b/src/main/java/net/minecraft/server/WorldMap.java @@ -0,0 +0,0 @@ public class WorldMap extends PersistentBase { @@ -132,7 +132,7 @@ index dd5412e6..dbe6a80f 100644 for ( org.bukkit.map.MapCursor cursor : render.cursors) { diff --git a/src/main/java/org/bukkit/craftbukkit/map/RenderData.java b/src/main/java/org/bukkit/craftbukkit/map/RenderData.java -index 256a1317..5768cd51 100644 +index 256a13178..5768cd512 100644 --- a/src/main/java/org/bukkit/craftbukkit/map/RenderData.java +++ b/src/main/java/org/bukkit/craftbukkit/map/RenderData.java @@ -0,0 +0,0 @@ import org.bukkit.map.MapCursor; diff --git a/Spigot-Server-Patches/Improve-Minecraft-Hopper-Performance.patch b/Spigot-Server-Patches/Improve-Minecraft-Hopper-Performance.patch index 9204d58c32..329f3b716c 100644 --- a/Spigot-Server-Patches/Improve-Minecraft-Hopper-Performance.patch +++ b/Spigot-Server-Patches/Improve-Minecraft-Hopper-Performance.patch @@ -8,7 +8,7 @@ Also reset cooldown each hopper tick that a hopper is full. Also don't constantly clone ItemStacks without merit diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index d0c0371fc..d2662ae14 100644 --- a/src/main/java/net/minecraft/server/TileEntity.java +++ b/src/main/java/net/minecraft/server/TileEntity.java @@ -0,0 +0,0 @@ public abstract class TileEntity { @@ -28,7 +28,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 this.g = iblockdata.getBlock().toLegacyData(iblockdata); diff --git a/src/main/java/net/minecraft/server/TileEntityHopper.java b/src/main/java/net/minecraft/server/TileEntityHopper.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 6acce15e7..44b6ecc5d 100644 --- a/src/main/java/net/minecraft/server/TileEntityHopper.java +++ b/src/main/java/net/minecraft/server/TileEntityHopper.java @@ -0,0 +0,0 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper, ITi diff --git a/Spigot-Server-Patches/Metrics.patch b/Spigot-Server-Patches/Metrics.patch index 2d29db6afe..dcbe47a7c5 100644 --- a/Spigot-Server-Patches/Metrics.patch +++ b/Spigot-Server-Patches/Metrics.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Metrics diff --git a/src/main/java/org/spigotmc/Metrics.java b/src/main/java/org/spigotmc/Metrics.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index a5fd59d5e..680283ce0 100644 --- a/src/main/java/org/spigotmc/Metrics.java +++ b/src/main/java/org/spigotmc/Metrics.java @@ -0,0 +0,0 @@ public class Metrics { diff --git a/Spigot-Server-Patches/More-informative-vehicle-moved-wrongly-message.patch b/Spigot-Server-Patches/More-informative-vehicle-moved-wrongly-message.patch index bf009129a7..d19408e89f 100644 --- a/Spigot-Server-Patches/More-informative-vehicle-moved-wrongly-message.patch +++ b/Spigot-Server-Patches/More-informative-vehicle-moved-wrongly-message.patch @@ -5,7 +5,7 @@ Subject: [PATCH] More informative vehicle moved wrongly message diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 6dfeb9be9..e01787021 100644 --- a/src/main/java/net/minecraft/server/PlayerConnection.java +++ b/src/main/java/net/minecraft/server/PlayerConnection.java @@ -0,0 +0,0 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable { diff --git a/Spigot-Server-Patches/Only-send-Dragon-Wither-Death-sounds-to-same-world.patch b/Spigot-Server-Patches/Only-send-Dragon-Wither-Death-sounds-to-same-world.patch index 3aa7b29631..1df52b3c65 100644 --- a/Spigot-Server-Patches/Only-send-Dragon-Wither-Death-sounds-to-same-world.patch +++ b/Spigot-Server-Patches/Only-send-Dragon-Wither-Death-sounds-to-same-world.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Only send Dragon/Wither Death sounds to same world Also fix view distance lookup diff --git a/src/main/java/net/minecraft/server/EntityEnderDragon.java b/src/main/java/net/minecraft/server/EntityEnderDragon.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index e24be3ccd..e93819fc1 100644 --- a/src/main/java/net/minecraft/server/EntityEnderDragon.java +++ b/src/main/java/net/minecraft/server/EntityEnderDragon.java @@ -0,0 +0,0 @@ public class EntityEnderDragon extends EntityInsentient implements IComplex, IMo @@ -25,7 +25,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 double deltaZ = this.locZ - player.locZ; double distanceSquared = deltaX * deltaX + deltaZ * deltaZ; diff --git a/src/main/java/net/minecraft/server/EntityWither.java b/src/main/java/net/minecraft/server/EntityWither.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 9af34ba60..031507574 100644 --- a/src/main/java/net/minecraft/server/EntityWither.java +++ b/src/main/java/net/minecraft/server/EntityWither.java @@ -0,0 +0,0 @@ public class EntityWither extends EntityMonster implements IRangedEntity { diff --git a/Spigot-Server-Patches/Optimise-BlockStateEnum-hashCode-and-equals.patch b/Spigot-Server-Patches/Optimise-BlockStateEnum-hashCode-and-equals.patch index 638bb41551..71dc7ad8f1 100644 --- a/Spigot-Server-Patches/Optimise-BlockStateEnum-hashCode-and-equals.patch +++ b/Spigot-Server-Patches/Optimise-BlockStateEnum-hashCode-and-equals.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Optimise BlockStateEnum hashCode and equals diff --git a/src/main/java/net/minecraft/server/BlockStateEnum.java b/src/main/java/net/minecraft/server/BlockStateEnum.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 288c52c55..66c459d83 100644 --- a/src/main/java/net/minecraft/server/BlockStateEnum.java +++ b/src/main/java/net/minecraft/server/BlockStateEnum.java @@ -0,0 +0,0 @@ public class BlockStateEnum & INamable> extends BlockState diff --git a/Spigot-Server-Patches/Optimise-removeQueue.patch b/Spigot-Server-Patches/Optimise-removeQueue.patch index 2c1e3435f1..4f328ecad8 100644 --- a/Spigot-Server-Patches/Optimise-removeQueue.patch +++ b/Spigot-Server-Patches/Optimise-removeQueue.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Optimise removeQueue diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 9576264f6..cff21dd8d 100644 +index 4da83a1bf..a7a71242e 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -0,0 +0,0 @@ import com.google.common.collect.Lists; diff --git a/Spigot-Server-Patches/Optimize-Chunk-Access.patch b/Spigot-Server-Patches/Optimize-Chunk-Access.patch index ebeb5234d1..85a7988b76 100644 --- a/Spigot-Server-Patches/Optimize-Chunk-Access.patch +++ b/Spigot-Server-Patches/Optimize-Chunk-Access.patch @@ -9,7 +9,7 @@ getChunkAt is called for the same chunk multiple times in a row, often from getT Optimize this look up by using a Last Access cache. diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index b0a82e7ed..a7e8a3f7d 100644 --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java @@ -0,0 +0,0 @@ public class ChunkProviderServer implements IChunkProvider { diff --git a/Spigot-Server-Patches/Optimize-EAR.patch b/Spigot-Server-Patches/Optimize-EAR.patch index f20bbbdfc0..f2171c5d2a 100644 --- a/Spigot-Server-Patches/Optimize-EAR.patch +++ b/Spigot-Server-Patches/Optimize-EAR.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Optimize EAR diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index c411ce886..c8a6ff3d4 100644 --- a/src/main/java/org/spigotmc/ActivationRange.java +++ b/src/main/java/org/spigotmc/ActivationRange.java @@ -0,0 +0,0 @@ package org.spigotmc; diff --git a/Spigot-Server-Patches/Optimize-Network-Queue.patch b/Spigot-Server-Patches/Optimize-Network-Queue.patch index e77aa133ae..b9b88d4ab2 100644 --- a/Spigot-Server-Patches/Optimize-Network-Queue.patch +++ b/Spigot-Server-Patches/Optimize-Network-Queue.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Optimize Network Queue diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index e04bade5b..fc5be09ad 100644 +index d49a4ded0..044ae22d4 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -0,0 +0,0 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs diff --git a/Spigot-Server-Patches/Optimize-Pathfinding.patch b/Spigot-Server-Patches/Optimize-Pathfinding.patch index 8164543ce5..82770dc7da 100644 --- a/Spigot-Server-Patches/Optimize-Pathfinding.patch +++ b/Spigot-Server-Patches/Optimize-Pathfinding.patch @@ -7,7 +7,7 @@ Prevents pathfinding from spamming failures for things such as arrow attacks. diff --git a/src/main/java/net/minecraft/server/NavigationAbstract.java b/src/main/java/net/minecraft/server/NavigationAbstract.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 4f28b8819..43b2be505 100644 --- a/src/main/java/net/minecraft/server/NavigationAbstract.java +++ b/src/main/java/net/minecraft/server/NavigationAbstract.java @@ -0,0 +0,0 @@ public abstract class NavigationAbstract { diff --git a/Spigot-Server-Patches/Optimize-TileEntity-Ticking.patch b/Spigot-Server-Patches/Optimize-TileEntity-Ticking.patch index 4f740324d9..9ff36a8cc9 100644 --- a/Spigot-Server-Patches/Optimize-TileEntity-Ticking.patch +++ b/Spigot-Server-Patches/Optimize-TileEntity-Ticking.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Optimize TileEntity Ticking diff --git a/src/main/java/net/minecraft/server/TileEntityChest.java b/src/main/java/net/minecraft/server/TileEntityChest.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 28a514a64..60452e83b 100644 --- a/src/main/java/net/minecraft/server/TileEntityChest.java +++ b/src/main/java/net/minecraft/server/TileEntityChest.java @@ -0,0 +0,0 @@ import org.bukkit.craftbukkit.entity.CraftHumanEntity; @@ -117,7 +117,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 this.world.applyPhysics(this.position, this.getBlock(), false); diff --git a/src/main/java/net/minecraft/server/TileEntityEnderChest.java b/src/main/java/net/minecraft/server/TileEntityEnderChest.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 3d61c2d68..586ceaa67 100644 --- a/src/main/java/net/minecraft/server/TileEntityEnderChest.java +++ b/src/main/java/net/minecraft/server/TileEntityEnderChest.java @@ -0,0 +0,0 @@ diff --git a/Spigot-Server-Patches/Optimize-UserCache-Thread-Safe.patch b/Spigot-Server-Patches/Optimize-UserCache-Thread-Safe.patch index 02fafbad45..97fe576793 100644 --- a/Spigot-Server-Patches/Optimize-UserCache-Thread-Safe.patch +++ b/Spigot-Server-Patches/Optimize-UserCache-Thread-Safe.patch @@ -10,7 +10,7 @@ Additionally, move Saving of the User cache to be done async, incase the user never changed the default setting for Spigot's save on stop only. diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 15e543368..4078824f7 100644 +index 410c9834b..f83cc7641 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -0,0 +0,0 @@ public abstract class MinecraftServer implements Runnable, ICommandListener, IAs diff --git a/Spigot-Server-Patches/Optimize-World.isLoaded-BlockPosition-Z.patch b/Spigot-Server-Patches/Optimize-World.isLoaded-BlockPosition-Z.patch index 795e7487b2..c87fb98e22 100644 --- a/Spigot-Server-Patches/Optimize-World.isLoaded-BlockPosition-Z.patch +++ b/Spigot-Server-Patches/Optimize-World.isLoaded-BlockPosition-Z.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Optimize World.isLoaded(BlockPosition)Z Reduce method invocations for World.isLoaded(BlockPosition)Z diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index ee3f14cca..5ea201ed9 100644 +index ec0a28cff..2fa63a27f 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -0,0 +0,0 @@ public abstract class World implements IBlockAccess { diff --git a/Spigot-Server-Patches/Optimized-Light-Level-Comparisons.patch b/Spigot-Server-Patches/Optimized-Light-Level-Comparisons.patch index de3ab7f578..eb39487372 100644 --- a/Spigot-Server-Patches/Optimized-Light-Level-Comparisons.patch +++ b/Spigot-Server-Patches/Optimized-Light-Level-Comparisons.patch @@ -8,7 +8,7 @@ Use an optimized method to test if a block position meets a desired light level. This method benefits from returning as soon as the desired light level matches. diff --git a/src/main/java/net/minecraft/server/BlockCrops.java b/src/main/java/net/minecraft/server/BlockCrops.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index e9c5d1465..9015affc5 100644 --- a/src/main/java/net/minecraft/server/BlockCrops.java +++ b/src/main/java/net/minecraft/server/BlockCrops.java @@ -0,0 +0,0 @@ public class BlockCrops extends BlockPlant implements IBlockFragilePlantElement @@ -21,7 +21,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 if (i < this.g()) { diff --git a/src/main/java/net/minecraft/server/BlockGrass.java b/src/main/java/net/minecraft/server/BlockGrass.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index fb1bf80b8..8b43e6070 100644 --- a/src/main/java/net/minecraft/server/BlockGrass.java +++ b/src/main/java/net/minecraft/server/BlockGrass.java @@ -0,0 +0,0 @@ public class BlockGrass extends Block implements IBlockFragilePlantElement { @@ -65,7 +65,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 // world.setTypeUpdate(blockposition1, Blocks.GRASS.getBlockData()); org.bukkit.World bworld = world.getWorld(); diff --git a/src/main/java/net/minecraft/server/BlockSapling.java b/src/main/java/net/minecraft/server/BlockSapling.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index f463b7113..89458cd77 100644 --- a/src/main/java/net/minecraft/server/BlockSapling.java +++ b/src/main/java/net/minecraft/server/BlockSapling.java @@ -0,0 +0,0 @@ public class BlockSapling extends BlockPlant implements IBlockFragilePlantElemen @@ -78,7 +78,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 world.captureTreeGeneration = true; // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/BlockStem.java b/src/main/java/net/minecraft/server/BlockStem.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index c74b6284f..bb96e164e 100644 --- a/src/main/java/net/minecraft/server/BlockStem.java +++ b/src/main/java/net/minecraft/server/BlockStem.java @@ -0,0 +0,0 @@ public class BlockStem extends BlockPlant implements IBlockFragilePlantElement { @@ -91,7 +91,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 if (random.nextInt((int) ((100.0F / (this == Blocks.PUMPKIN_STEM ? world.spigotConfig.pumpkinModifier : world.spigotConfig.melonModifier)) * (25.0F / f)) + 1) == 0) { // Spigot diff --git a/src/main/java/net/minecraft/server/EntityMonster.java b/src/main/java/net/minecraft/server/EntityMonster.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 3ee52139c..59d8bb6e7 100644 --- a/src/main/java/net/minecraft/server/EntityMonster.java +++ b/src/main/java/net/minecraft/server/EntityMonster.java @@ -0,0 +0,0 @@ public abstract class EntityMonster extends EntityCreature implements IMonster { @@ -118,7 +118,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 } diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 897882c97..970fabf71 100644 --- a/src/main/java/net/minecraft/server/EntityZombie.java +++ b/src/main/java/net/minecraft/server/EntityZombie.java @@ -0,0 +0,0 @@ public class EntityZombie extends EntityMonster { diff --git a/Spigot-Server-Patches/Paper-Metrics.patch b/Spigot-Server-Patches/Paper-Metrics.patch new file mode 100644 index 0000000000..24bb7c81ae --- /dev/null +++ b/Spigot-Server-Patches/Paper-Metrics.patch @@ -0,0 +1,1052 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Zach Brown <1254957+zachbr@users.noreply.github.com> +Date: Fri, 24 Mar 2017 23:56:01 -0500 +Subject: [PATCH] Paper Metrics + +Removes Spigot's mcstats metrics in favor of a system using bStats + +To disable for privacy or other reasons go to the bStats folder in your plugins folder +and edit the config.yml file present there. + +Please keep in mind the data collected is anonymous and collection should have no +tangible effect on server performance. The data is used to allow the authors of +PaperMC to track version and platform usage so that we can make better management +decisions on behalf of the project. + +diff --git a/src/main/java/com/destroystokyo/paper/Metrics.java b/src/main/java/com/destroystokyo/paper/Metrics.java +new file mode 100644 +index 000000000..3084096c0 +--- /dev/null ++++ b/src/main/java/com/destroystokyo/paper/Metrics.java +@@ -0,0 +0,0 @@ ++/* ++ * This is a modified version of the bStats-Metrics class, licensed under the GNU LGPL v3 ++ * ++ * The original version of this file, as of the creation of this modified version, can be found here: ++ * https://github.com/BtoBastian/bStats-Metrics/blob/94acfb0e97831d866b9e6a28d442a27e4862d954/bstats-bukkit/src/main/java/org/bstats/Metrics.java ++ * ++ * The license that accompanies that file, as of the creation of this modified version, can be found here: ++ * https://github.com/BtoBastian/bStats-Metrics/blob/94acfb0e97831d866b9e6a28d442a27e4862d954/LICENSE ++ */ ++ ++package com.destroystokyo.paper; ++ ++import net.minecraft.server.MinecraftServer; ++import org.bukkit.Bukkit; ++import org.bukkit.configuration.file.YamlConfiguration; ++import org.json.simple.JSONArray; ++import org.json.simple.JSONObject; ++ ++import javax.net.ssl.HttpsURLConnection; ++import java.io.*; ++import java.net.URL; ++import java.util.ArrayList; ++import java.util.HashMap; ++import java.util.List; ++import java.util.Locale; ++import java.util.Map; ++import java.util.Timer; ++import java.util.TimerTask; ++import java.util.UUID; ++import java.util.logging.Level; ++import java.util.zip.GZIPOutputStream; ++ ++/** ++ * bStats collects some data for plugin authors. ++ * ++ * Check out https://bStats.org/ to learn more about bStats! ++ */ ++public class Metrics { ++ ++ static { ++ // Maven's Relocate is clever and changes strings, too. So we have to use this little "trick" ... :D ++ final String defaultPackage = new String(new byte[] { 'o', 'r', 'g', '.', 'b', 's', 't', 'a', 't', 's' }); ++ final String examplePackage = new String(new byte[] { 'y', 'o', 'u', 'r', '.', 'p', 'a', 'c', 'k', 'a', 'g', 'e' }); ++ // We want to make sure nobody just copy & pastes the example and use the wrong package names ++ if (Metrics.class.getPackage().getName().equals(defaultPackage) || Metrics.class.getPackage().getName().equals(examplePackage)) { ++ throw new IllegalStateException("bStats Metrics class has not been relocated correctly!"); ++ } ++ } ++ ++ // The version of this bStats class ++ public static final int B_STATS_VERSION = 1; ++ ++ // The url to which the data is sent ++ private static final String URL = "https://bStats.org/submitData/bukkit"; ++ ++ // Should failed requests be logged? ++ private static boolean logFailedRequests; ++ ++ // The uuid of the server ++ private static String serverUUID; ++ ++ // A list with all custom charts ++ private final List charts = new ArrayList<>(); ++ ++ /** ++ * Class constructor. ++ */ ++ public Metrics() { ++ ++ // Get the config file ++ File configFile = new File(new File((File) MinecraftServer.getServer().options.valueOf("plugins"), "bStats"), "config.yml"); ++ YamlConfiguration config = YamlConfiguration.loadConfiguration(configFile); ++ ++ // Check if the config file exists ++ if (!config.isSet("serverUuid")) { ++ ++ // Add default values ++ config.addDefault("enabled", true); ++ // Every server gets it's unique random id. ++ config.addDefault("serverUuid", UUID.randomUUID().toString()); ++ // Should failed request be logged? ++ config.addDefault("logFailedRequests", false); ++ ++ // Inform the server owners about bStats ++ config.options().header( ++ "bStats collects some data for plugin authors like how many servers are using their plugins.\n" + ++ "To honor their work, you should not disable it.\n" + ++ "This has nearly no effect on the server performance!\n" + ++ "Check out https://bStats.org/ to learn more :)" ++ ).copyDefaults(true); ++ try { ++ config.save(configFile); ++ } catch (IOException ignored) { } ++ } ++ ++ // Load the data ++ serverUUID = config.getString("serverUuid"); ++ logFailedRequests = config.getBoolean("logFailedRequests", false); ++ if (config.getBoolean("enabled", true)) { ++ startSubmitting(); ++ } ++ } ++ ++ /** ++ * Adds a custom chart. ++ * ++ * @param chart The chart to add. ++ */ ++ public void addCustomChart(CustomChart chart) { ++ if (chart == null) { ++ throw new IllegalArgumentException("Chart cannot be null!"); ++ } ++ charts.add(chart); ++ } ++ ++ /** ++ * Starts the Scheduler which submits our data every 30 minutes. ++ */ ++ private void startSubmitting() { ++ final Timer timer = new Timer(true); // We use a timer cause the Bukkit scheduler is affected by server lags ++ timer.scheduleAtFixedRate(new TimerTask() { ++ @Override ++ public void run() { ++ // Nevertheless we want our code to run in the Bukkit main thread, so we have to use the Bukkit scheduler ++ // Don't be afraid! The connection to the bStats server is still async, only the stats collection is sync ;) ++ MinecraftServer.getServer().postToMainThread(() -> submitData()); ++ } ++ }, 1000*60*5, 1000*60*30); ++ // Submit the data every 30 minutes, first time after 5 minutes to give other plugins enough time to start ++ // WARNING: Changing the frequency has no effect but your plugin WILL be blocked/deleted! ++ // WARNING: Just don't do it! ++ } ++ ++ /** ++ * Gets the plugin specific data. ++ * ++ * @return The plugin specific data. ++ */ ++ public JSONObject getPluginData() { ++ JSONObject data = new JSONObject(); ++ ++ String pluginName = "Paper"; ++ String pluginVersion = (Metrics.class.getPackage().getImplementationVersion() != null) ? Metrics.class.getPackage().getImplementationVersion() : "unknown"; ++ ++ data.put("pluginName", pluginName); // Append the name of the plugin ++ data.put("pluginVersion", pluginVersion); // Append the version of the plugin ++ JSONArray customCharts = new JSONArray(); ++ for (CustomChart customChart : charts) { ++ // Add the data of the custom charts ++ JSONObject chart = customChart.getRequestJsonObject(); ++ if (chart == null) { // If the chart is null, we skip it ++ continue; ++ } ++ customCharts.add(chart); ++ } ++ data.put("customCharts", customCharts); ++ ++ return data; ++ } ++ ++ /** ++ * Gets the server specific data. ++ * ++ * @return The server specific data. ++ */ ++ private JSONObject getServerData() { ++ // Minecraft specific data ++ int playerAmount = Bukkit.getOnlinePlayers().size(); ++ int onlineMode = Bukkit.getOnlineMode() ? 1 : 0; ++ String bukkitVersion = org.bukkit.Bukkit.getVersion(); ++ bukkitVersion = bukkitVersion.substring(bukkitVersion.indexOf("MC: ") + 4, bukkitVersion.length() - 1); ++ ++ // OS/Java specific data ++ String javaVersion = System.getProperty("java.version"); ++ String osName = System.getProperty("os.name"); ++ String osArch = System.getProperty("os.arch"); ++ String osVersion = System.getProperty("os.version"); ++ int coreCount = Runtime.getRuntime().availableProcessors(); ++ ++ JSONObject data = new JSONObject(); ++ ++ data.put("serverUUID", serverUUID); ++ ++ data.put("playerAmount", playerAmount); ++ data.put("onlineMode", onlineMode); ++ data.put("bukkitVersion", bukkitVersion); ++ ++ data.put("javaVersion", javaVersion); ++ data.put("osName", osName); ++ data.put("osArch", osArch); ++ data.put("osVersion", osVersion); ++ data.put("coreCount", coreCount); ++ ++ return data; ++ } ++ ++ /** ++ * Collects the data and sends it afterwards. ++ */ ++ private void submitData() { ++ final JSONObject data = getServerData(); ++ ++ JSONArray pluginData = new JSONArray(); ++ pluginData.add(this.getPluginData()); ++ data.put("plugins", pluginData); ++ ++ // Create a new thread for the connection to the bStats server ++ new Thread(() -> { ++ try { ++ // Send the data ++ sendData(data); ++ } catch (Exception e) { ++ // Something went wrong! :( ++ if (logFailedRequests) { ++ Bukkit.getLogger().log(Level.WARNING, "Could not submit stats for Paper", e); ++ } ++ } ++ }, "Paper Metrics Submission Thread").start(); ++ } ++ ++ /** ++ * Sends the data to the bStats server. ++ * ++ * @param data The data to send. ++ * @throws Exception If the request failed. ++ */ ++ private static void sendData(JSONObject data) throws Exception { ++ if (data == null) { ++ throw new IllegalArgumentException("Data cannot be null!"); ++ } ++ if (Bukkit.isPrimaryThread()) { ++ throw new IllegalAccessException("This method must not be called from the main thread!"); ++ } ++ HttpsURLConnection connection = (HttpsURLConnection) new URL(URL).openConnection(); ++ ++ // Compress the data to save bandwidth ++ byte[] compressedData = compress(data.toString()); ++ ++ // Add headers ++ connection.setRequestMethod("POST"); ++ connection.addRequestProperty("Accept", "application/json"); ++ connection.addRequestProperty("Connection", "close"); ++ connection.addRequestProperty("Content-Encoding", "gzip"); // We gzip our request ++ connection.addRequestProperty("Content-Length", String.valueOf(compressedData.length)); ++ connection.setRequestProperty("Content-Type", "application/json"); // We send our data in JSON format ++ connection.setRequestProperty("User-Agent", "MC-Server/" + B_STATS_VERSION); ++ ++ // Send data ++ connection.setDoOutput(true); ++ DataOutputStream outputStream = new DataOutputStream(connection.getOutputStream()); ++ outputStream.write(compressedData); ++ outputStream.flush(); ++ outputStream.close(); ++ ++ connection.getInputStream().close(); // We don't care about the response - Just send our data :) ++ } ++ ++ /** ++ * Gzips the given String. ++ * ++ * @param str The string to gzip. ++ * @return The gzipped String. ++ * @throws IOException If the compression failed. ++ */ ++ private static byte[] compress(final String str) throws IOException { ++ if (str == null) { ++ return null; ++ } ++ ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); ++ GZIPOutputStream gzip = new GZIPOutputStream(outputStream); ++ gzip.write(str.getBytes("UTF-8")); ++ gzip.close(); ++ return outputStream.toByteArray(); ++ } ++ ++ /** ++ * Represents a custom chart. ++ */ ++ public static abstract class CustomChart { ++ ++ // The id of the chart ++ protected final String chartId; ++ ++ /** ++ * Class constructor. ++ * ++ * @param chartId The id of the chart. ++ */ ++ public CustomChart(String chartId) { ++ if (chartId == null || chartId.isEmpty()) { ++ throw new IllegalArgumentException("ChartId cannot be null or empty!"); ++ } ++ this.chartId = chartId; ++ } ++ ++ protected JSONObject getRequestJsonObject() { ++ JSONObject chart = new JSONObject(); ++ chart.put("chartId", chartId); ++ try { ++ JSONObject data = getChartData(); ++ if (data == null) { ++ // If the data is null we don't send the chart. ++ return null; ++ } ++ chart.put("data", data); ++ } catch (Throwable t) { ++ if (logFailedRequests) { ++ Bukkit.getLogger().log(Level.WARNING, "Failed to get data for custom chart with id " + chartId, t); ++ } ++ return null; ++ } ++ return chart; ++ } ++ ++ protected abstract JSONObject getChartData(); ++ ++ } ++ ++ /** ++ * Represents a custom simple pie. ++ */ ++ public static abstract class SimplePie extends CustomChart { ++ ++ /** ++ * Class constructor. ++ * ++ * @param chartId The id of the chart. ++ */ ++ public SimplePie(String chartId) { ++ super(chartId); ++ } ++ ++ /** ++ * Gets the value of the pie. ++ * ++ * @return The value of the pie. ++ */ ++ public abstract String getValue(); ++ ++ @Override ++ protected JSONObject getChartData() { ++ JSONObject data = new JSONObject(); ++ String value = getValue(); ++ if (value == null || value.isEmpty()) { ++ // Null = skip the chart ++ return null; ++ } ++ data.put("value", value); ++ return data; ++ } ++ } ++ ++ /** ++ * Represents a custom advanced pie. ++ */ ++ public static abstract class AdvancedPie extends CustomChart { ++ ++ /** ++ * Class constructor. ++ * ++ * @param chartId The id of the chart. ++ */ ++ public AdvancedPie(String chartId) { ++ super(chartId); ++ } ++ ++ /** ++ * Gets the values of the pie. ++ * ++ * @param valueMap Just an empty map. The only reason it exists is to make your life easier. ++ * You don't have to create a map yourself! ++ * @return The values of the pie. ++ */ ++ public abstract HashMap getValues(HashMap valueMap); ++ ++ @Override ++ protected JSONObject getChartData() { ++ JSONObject data = new JSONObject(); ++ JSONObject values = new JSONObject(); ++ HashMap map = getValues(new HashMap()); ++ if (map == null || map.isEmpty()) { ++ // Null = skip the chart ++ return null; ++ } ++ boolean allSkipped = true; ++ for (Map.Entry entry : map.entrySet()) { ++ if (entry.getValue() == 0) { ++ continue; // Skip this invalid ++ } ++ allSkipped = false; ++ values.put(entry.getKey(), entry.getValue()); ++ } ++ if (allSkipped) { ++ // Null = skip the chart ++ return null; ++ } ++ data.put("values", values); ++ return data; ++ } ++ } ++ ++ /** ++ * Represents a custom single line chart. ++ */ ++ public static abstract class SingleLineChart extends CustomChart { ++ ++ /** ++ * Class constructor. ++ * ++ * @param chartId The id of the chart. ++ */ ++ public SingleLineChart(String chartId) { ++ super(chartId); ++ } ++ ++ /** ++ * Gets the value of the chart. ++ * ++ * @return The value of the chart. ++ */ ++ public abstract int getValue(); ++ ++ @Override ++ protected JSONObject getChartData() { ++ JSONObject data = new JSONObject(); ++ int value = getValue(); ++ if (value == 0) { ++ // Null = skip the chart ++ return null; ++ } ++ data.put("value", value); ++ return data; ++ } ++ ++ } ++ ++ /** ++ * Represents a custom multi line chart. ++ */ ++ public static abstract class MultiLineChart extends CustomChart { ++ ++ /** ++ * Class constructor. ++ * ++ * @param chartId The id of the chart. ++ */ ++ public MultiLineChart(String chartId) { ++ super(chartId); ++ } ++ ++ /** ++ * Gets the values of the chart. ++ * ++ * @param valueMap Just an empty map. The only reason it exists is to make your life easier. ++ * You don't have to create a map yourself! ++ * @return The values of the chart. ++ */ ++ public abstract HashMap getValues(HashMap valueMap); ++ ++ @Override ++ protected JSONObject getChartData() { ++ JSONObject data = new JSONObject(); ++ JSONObject values = new JSONObject(); ++ HashMap map = getValues(new HashMap()); ++ if (map == null || map.isEmpty()) { ++ // Null = skip the chart ++ return null; ++ } ++ boolean allSkipped = true; ++ for (Map.Entry entry : map.entrySet()) { ++ if (entry.getValue() == 0) { ++ continue; // Skip this invalid ++ } ++ allSkipped = false; ++ values.put(entry.getKey(), entry.getValue()); ++ } ++ if (allSkipped) { ++ // Null = skip the chart ++ return null; ++ } ++ data.put("values", values); ++ return data; ++ } ++ ++ } ++ ++ /** ++ * Represents a custom simple bar chart. ++ */ ++ public static abstract class SimpleBarChart extends CustomChart { ++ ++ /** ++ * Class constructor. ++ * ++ * @param chartId The id of the chart. ++ */ ++ public SimpleBarChart(String chartId) { ++ super(chartId); ++ } ++ ++ /** ++ * Gets the value of the chart. ++ * ++ * @param valueMap Just an empty map. The only reason it exists is to make your life easier. ++ * You don't have to create a map yourself! ++ * @return The value of the chart. ++ */ ++ public abstract HashMap getValues(HashMap valueMap); ++ ++ @Override ++ protected JSONObject getChartData() { ++ JSONObject data = new JSONObject(); ++ JSONObject values = new JSONObject(); ++ HashMap map = getValues(new HashMap()); ++ if (map == null || map.isEmpty()) { ++ // Null = skip the chart ++ return null; ++ } ++ for (Map.Entry entry : map.entrySet()) { ++ JSONArray categoryValues = new JSONArray(); ++ categoryValues.add(entry.getValue()); ++ values.put(entry.getKey(), categoryValues); ++ } ++ data.put("values", values); ++ return data; ++ } ++ ++ } ++ ++ /** ++ * Represents a custom advanced bar chart. ++ */ ++ public static abstract class AdvancedBarChart extends CustomChart { ++ ++ /** ++ * Class constructor. ++ * ++ * @param chartId The id of the chart. ++ */ ++ public AdvancedBarChart(String chartId) { ++ super(chartId); ++ } ++ ++ /** ++ * Gets the value of the chart. ++ * ++ * @param valueMap Just an empty map. The only reason it exists is to make your life easier. ++ * You don't have to create a map yourself! ++ * @return The value of the chart. ++ */ ++ public abstract HashMap getValues(HashMap valueMap); ++ ++ @Override ++ protected JSONObject getChartData() { ++ JSONObject data = new JSONObject(); ++ JSONObject values = new JSONObject(); ++ HashMap map = getValues(new HashMap()); ++ if (map == null || map.isEmpty()) { ++ // Null = skip the chart ++ return null; ++ } ++ boolean allSkipped = true; ++ for (Map.Entry entry : map.entrySet()) { ++ if (entry.getValue().length == 0) { ++ continue; // Skip this invalid ++ } ++ allSkipped = false; ++ JSONArray categoryValues = new JSONArray(); ++ for (int categoryValue : entry.getValue()) { ++ categoryValues.add(categoryValue); ++ } ++ values.put(entry.getKey(), categoryValues); ++ } ++ if (allSkipped) { ++ // Null = skip the chart ++ return null; ++ } ++ data.put("values", values); ++ return data; ++ } ++ ++ } ++ ++ /** ++ * Represents a custom simple map chart. ++ */ ++ public static abstract class SimpleMapChart extends CustomChart { ++ ++ /** ++ * Class constructor. ++ * ++ * @param chartId The id of the chart. ++ */ ++ public SimpleMapChart(String chartId) { ++ super(chartId); ++ } ++ ++ /** ++ * Gets the value of the chart. ++ * ++ * @return The value of the chart. ++ */ ++ public abstract Country getValue(); ++ ++ @Override ++ protected JSONObject getChartData() { ++ JSONObject data = new JSONObject(); ++ Country value = getValue(); ++ ++ if (value == null) { ++ // Null = skip the chart ++ return null; ++ } ++ data.put("value", value.getCountryIsoTag()); ++ return data; ++ } ++ ++ } ++ ++ /** ++ * Represents a custom advanced map chart. ++ */ ++ public static abstract class AdvancedMapChart extends CustomChart { ++ ++ /** ++ * Class constructor. ++ * ++ * @param chartId The id of the chart. ++ */ ++ public AdvancedMapChart(String chartId) { ++ super(chartId); ++ } ++ ++ /** ++ * Gets the value of the chart. ++ * ++ * @param valueMap Just an empty map. The only reason it exists is to make your life easier. ++ * You don't have to create a map yourself! ++ * @return The value of the chart. ++ */ ++ public abstract HashMap getValues(HashMap valueMap); ++ ++ @Override ++ protected JSONObject getChartData() { ++ JSONObject data = new JSONObject(); ++ JSONObject values = new JSONObject(); ++ HashMap map = getValues(new HashMap()); ++ if (map == null || map.isEmpty()) { ++ // Null = skip the chart ++ return null; ++ } ++ boolean allSkipped = true; ++ for (Map.Entry entry : map.entrySet()) { ++ if (entry.getValue() == 0) { ++ continue; // Skip this invalid ++ } ++ allSkipped = false; ++ values.put(entry.getKey().getCountryIsoTag(), entry.getValue()); ++ } ++ if (allSkipped) { ++ // Null = skip the chart ++ return null; ++ } ++ data.put("values", values); ++ return data; ++ } ++ ++ } ++ ++ /** ++ * A enum which is used for custom maps. ++ */ ++ public enum Country { ++ ++ /** ++ * bStats will use the country of the server. ++ */ ++ AUTO_DETECT("AUTO", "Auto Detected"), ++ ++ ANDORRA("AD", "Andorra"), ++ UNITED_ARAB_EMIRATES("AE", "United Arab Emirates"), ++ AFGHANISTAN("AF", "Afghanistan"), ++ ANTIGUA_AND_BARBUDA("AG", "Antigua and Barbuda"), ++ ANGUILLA("AI", "Anguilla"), ++ ALBANIA("AL", "Albania"), ++ ARMENIA("AM", "Armenia"), ++ NETHERLANDS_ANTILLES("AN", "Netherlands Antilles"), ++ ANGOLA("AO", "Angola"), ++ ANTARCTICA("AQ", "Antarctica"), ++ ARGENTINA("AR", "Argentina"), ++ AMERICAN_SAMOA("AS", "American Samoa"), ++ AUSTRIA("AT", "Austria"), ++ AUSTRALIA("AU", "Australia"), ++ ARUBA("AW", "Aruba"), ++ ALAND_ISLANDS("AX", "Åland Islands"), ++ AZERBAIJAN("AZ", "Azerbaijan"), ++ BOSNIA_AND_HERZEGOVINA("BA", "Bosnia and Herzegovina"), ++ BARBADOS("BB", "Barbados"), ++ BANGLADESH("BD", "Bangladesh"), ++ BELGIUM("BE", "Belgium"), ++ BURKINA_FASO("BF", "Burkina Faso"), ++ BULGARIA("BG", "Bulgaria"), ++ BAHRAIN("BH", "Bahrain"), ++ BURUNDI("BI", "Burundi"), ++ BENIN("BJ", "Benin"), ++ SAINT_BARTHELEMY("BL", "Saint Barthélemy"), ++ BERMUDA("BM", "Bermuda"), ++ BRUNEI("BN", "Brunei"), ++ BOLIVIA("BO", "Bolivia"), ++ BONAIRE_SINT_EUSTATIUS_AND_SABA("BQ", "Bonaire, Sint Eustatius and Saba"), ++ BRAZIL("BR", "Brazil"), ++ BAHAMAS("BS", "Bahamas"), ++ BHUTAN("BT", "Bhutan"), ++ BOUVET_ISLAND("BV", "Bouvet Island"), ++ BOTSWANA("BW", "Botswana"), ++ BELARUS("BY", "Belarus"), ++ BELIZE("BZ", "Belize"), ++ CANADA("CA", "Canada"), ++ COCOS_ISLANDS("CC", "Cocos Islands"), ++ THE_DEMOCRATIC_REPUBLIC_OF_CONGO("CD", "The Democratic Republic Of Congo"), ++ CENTRAL_AFRICAN_REPUBLIC("CF", "Central African Republic"), ++ CONGO("CG", "Congo"), ++ SWITZERLAND("CH", "Switzerland"), ++ COTE_D_IVOIRE("CI", "Côte d'Ivoire"), ++ COOK_ISLANDS("CK", "Cook Islands"), ++ CHILE("CL", "Chile"), ++ CAMEROON("CM", "Cameroon"), ++ CHINA("CN", "China"), ++ COLOMBIA("CO", "Colombia"), ++ COSTA_RICA("CR", "Costa Rica"), ++ CUBA("CU", "Cuba"), ++ CAPE_VERDE("CV", "Cape Verde"), ++ CURACAO("CW", "Curaçao"), ++ CHRISTMAS_ISLAND("CX", "Christmas Island"), ++ CYPRUS("CY", "Cyprus"), ++ CZECH_REPUBLIC("CZ", "Czech Republic"), ++ GERMANY("DE", "Germany"), ++ DJIBOUTI("DJ", "Djibouti"), ++ DENMARK("DK", "Denmark"), ++ DOMINICA("DM", "Dominica"), ++ DOMINICAN_REPUBLIC("DO", "Dominican Republic"), ++ ALGERIA("DZ", "Algeria"), ++ ECUADOR("EC", "Ecuador"), ++ ESTONIA("EE", "Estonia"), ++ EGYPT("EG", "Egypt"), ++ WESTERN_SAHARA("EH", "Western Sahara"), ++ ERITREA("ER", "Eritrea"), ++ SPAIN("ES", "Spain"), ++ ETHIOPIA("ET", "Ethiopia"), ++ FINLAND("FI", "Finland"), ++ FIJI("FJ", "Fiji"), ++ FALKLAND_ISLANDS("FK", "Falkland Islands"), ++ MICRONESIA("FM", "Micronesia"), ++ FAROE_ISLANDS("FO", "Faroe Islands"), ++ FRANCE("FR", "France"), ++ GABON("GA", "Gabon"), ++ UNITED_KINGDOM("GB", "United Kingdom"), ++ GRENADA("GD", "Grenada"), ++ GEORGIA("GE", "Georgia"), ++ FRENCH_GUIANA("GF", "French Guiana"), ++ GUERNSEY("GG", "Guernsey"), ++ GHANA("GH", "Ghana"), ++ GIBRALTAR("GI", "Gibraltar"), ++ GREENLAND("GL", "Greenland"), ++ GAMBIA("GM", "Gambia"), ++ GUINEA("GN", "Guinea"), ++ GUADELOUPE("GP", "Guadeloupe"), ++ EQUATORIAL_GUINEA("GQ", "Equatorial Guinea"), ++ GREECE("GR", "Greece"), ++ SOUTH_GEORGIA_AND_THE_SOUTH_SANDWICH_ISLANDS("GS", "South Georgia And The South Sandwich Islands"), ++ GUATEMALA("GT", "Guatemala"), ++ GUAM("GU", "Guam"), ++ GUINEA_BISSAU("GW", "Guinea-Bissau"), ++ GUYANA("GY", "Guyana"), ++ HONG_KONG("HK", "Hong Kong"), ++ HEARD_ISLAND_AND_MCDONALD_ISLANDS("HM", "Heard Island And McDonald Islands"), ++ HONDURAS("HN", "Honduras"), ++ CROATIA("HR", "Croatia"), ++ HAITI("HT", "Haiti"), ++ HUNGARY("HU", "Hungary"), ++ INDONESIA("ID", "Indonesia"), ++ IRELAND("IE", "Ireland"), ++ ISRAEL("IL", "Israel"), ++ ISLE_OF_MAN("IM", "Isle Of Man"), ++ INDIA("IN", "India"), ++ BRITISH_INDIAN_OCEAN_TERRITORY("IO", "British Indian Ocean Territory"), ++ IRAQ("IQ", "Iraq"), ++ IRAN("IR", "Iran"), ++ ICELAND("IS", "Iceland"), ++ ITALY("IT", "Italy"), ++ JERSEY("JE", "Jersey"), ++ JAMAICA("JM", "Jamaica"), ++ JORDAN("JO", "Jordan"), ++ JAPAN("JP", "Japan"), ++ KENYA("KE", "Kenya"), ++ KYRGYZSTAN("KG", "Kyrgyzstan"), ++ CAMBODIA("KH", "Cambodia"), ++ KIRIBATI("KI", "Kiribati"), ++ COMOROS("KM", "Comoros"), ++ SAINT_KITTS_AND_NEVIS("KN", "Saint Kitts And Nevis"), ++ NORTH_KOREA("KP", "North Korea"), ++ SOUTH_KOREA("KR", "South Korea"), ++ KUWAIT("KW", "Kuwait"), ++ CAYMAN_ISLANDS("KY", "Cayman Islands"), ++ KAZAKHSTAN("KZ", "Kazakhstan"), ++ LAOS("LA", "Laos"), ++ LEBANON("LB", "Lebanon"), ++ SAINT_LUCIA("LC", "Saint Lucia"), ++ LIECHTENSTEIN("LI", "Liechtenstein"), ++ SRI_LANKA("LK", "Sri Lanka"), ++ LIBERIA("LR", "Liberia"), ++ LESOTHO("LS", "Lesotho"), ++ LITHUANIA("LT", "Lithuania"), ++ LUXEMBOURG("LU", "Luxembourg"), ++ LATVIA("LV", "Latvia"), ++ LIBYA("LY", "Libya"), ++ MOROCCO("MA", "Morocco"), ++ MONACO("MC", "Monaco"), ++ MOLDOVA("MD", "Moldova"), ++ MONTENEGRO("ME", "Montenegro"), ++ SAINT_MARTIN("MF", "Saint Martin"), ++ MADAGASCAR("MG", "Madagascar"), ++ MARSHALL_ISLANDS("MH", "Marshall Islands"), ++ MACEDONIA("MK", "Macedonia"), ++ MALI("ML", "Mali"), ++ MYANMAR("MM", "Myanmar"), ++ MONGOLIA("MN", "Mongolia"), ++ MACAO("MO", "Macao"), ++ NORTHERN_MARIANA_ISLANDS("MP", "Northern Mariana Islands"), ++ MARTINIQUE("MQ", "Martinique"), ++ MAURITANIA("MR", "Mauritania"), ++ MONTSERRAT("MS", "Montserrat"), ++ MALTA("MT", "Malta"), ++ MAURITIUS("MU", "Mauritius"), ++ MALDIVES("MV", "Maldives"), ++ MALAWI("MW", "Malawi"), ++ MEXICO("MX", "Mexico"), ++ MALAYSIA("MY", "Malaysia"), ++ MOZAMBIQUE("MZ", "Mozambique"), ++ NAMIBIA("NA", "Namibia"), ++ NEW_CALEDONIA("NC", "New Caledonia"), ++ NIGER("NE", "Niger"), ++ NORFOLK_ISLAND("NF", "Norfolk Island"), ++ NIGERIA("NG", "Nigeria"), ++ NICARAGUA("NI", "Nicaragua"), ++ NETHERLANDS("NL", "Netherlands"), ++ NORWAY("NO", "Norway"), ++ NEPAL("NP", "Nepal"), ++ NAURU("NR", "Nauru"), ++ NIUE("NU", "Niue"), ++ NEW_ZEALAND("NZ", "New Zealand"), ++ OMAN("OM", "Oman"), ++ PANAMA("PA", "Panama"), ++ PERU("PE", "Peru"), ++ FRENCH_POLYNESIA("PF", "French Polynesia"), ++ PAPUA_NEW_GUINEA("PG", "Papua New Guinea"), ++ PHILIPPINES("PH", "Philippines"), ++ PAKISTAN("PK", "Pakistan"), ++ POLAND("PL", "Poland"), ++ SAINT_PIERRE_AND_MIQUELON("PM", "Saint Pierre And Miquelon"), ++ PITCAIRN("PN", "Pitcairn"), ++ PUERTO_RICO("PR", "Puerto Rico"), ++ PALESTINE("PS", "Palestine"), ++ PORTUGAL("PT", "Portugal"), ++ PALAU("PW", "Palau"), ++ PARAGUAY("PY", "Paraguay"), ++ QATAR("QA", "Qatar"), ++ REUNION("RE", "Reunion"), ++ ROMANIA("RO", "Romania"), ++ SERBIA("RS", "Serbia"), ++ RUSSIA("RU", "Russia"), ++ RWANDA("RW", "Rwanda"), ++ SAUDI_ARABIA("SA", "Saudi Arabia"), ++ SOLOMON_ISLANDS("SB", "Solomon Islands"), ++ SEYCHELLES("SC", "Seychelles"), ++ SUDAN("SD", "Sudan"), ++ SWEDEN("SE", "Sweden"), ++ SINGAPORE("SG", "Singapore"), ++ SAINT_HELENA("SH", "Saint Helena"), ++ SLOVENIA("SI", "Slovenia"), ++ SVALBARD_AND_JAN_MAYEN("SJ", "Svalbard And Jan Mayen"), ++ SLOVAKIA("SK", "Slovakia"), ++ SIERRA_LEONE("SL", "Sierra Leone"), ++ SAN_MARINO("SM", "San Marino"), ++ SENEGAL("SN", "Senegal"), ++ SOMALIA("SO", "Somalia"), ++ SURINAME("SR", "Suriname"), ++ SOUTH_SUDAN("SS", "South Sudan"), ++ SAO_TOME_AND_PRINCIPE("ST", "Sao Tome And Principe"), ++ EL_SALVADOR("SV", "El Salvador"), ++ SINT_MAARTEN_DUTCH_PART("SX", "Sint Maarten (Dutch part)"), ++ SYRIA("SY", "Syria"), ++ SWAZILAND("SZ", "Swaziland"), ++ TURKS_AND_CAICOS_ISLANDS("TC", "Turks And Caicos Islands"), ++ CHAD("TD", "Chad"), ++ FRENCH_SOUTHERN_TERRITORIES("TF", "French Southern Territories"), ++ TOGO("TG", "Togo"), ++ THAILAND("TH", "Thailand"), ++ TAJIKISTAN("TJ", "Tajikistan"), ++ TOKELAU("TK", "Tokelau"), ++ TIMOR_LESTE("TL", "Timor-Leste"), ++ TURKMENISTAN("TM", "Turkmenistan"), ++ TUNISIA("TN", "Tunisia"), ++ TONGA("TO", "Tonga"), ++ TURKEY("TR", "Turkey"), ++ TRINIDAD_AND_TOBAGO("TT", "Trinidad and Tobago"), ++ TUVALU("TV", "Tuvalu"), ++ TAIWAN("TW", "Taiwan"), ++ TANZANIA("TZ", "Tanzania"), ++ UKRAINE("UA", "Ukraine"), ++ UGANDA("UG", "Uganda"), ++ UNITED_STATES_MINOR_OUTLYING_ISLANDS("UM", "United States Minor Outlying Islands"), ++ UNITED_STATES("US", "United States"), ++ URUGUAY("UY", "Uruguay"), ++ UZBEKISTAN("UZ", "Uzbekistan"), ++ VATICAN("VA", "Vatican"), ++ SAINT_VINCENT_AND_THE_GRENADINES("VC", "Saint Vincent And The Grenadines"), ++ VENEZUELA("VE", "Venezuela"), ++ BRITISH_VIRGIN_ISLANDS("VG", "British Virgin Islands"), ++ U_S__VIRGIN_ISLANDS("VI", "U.S. Virgin Islands"), ++ VIETNAM("VN", "Vietnam"), ++ VANUATU("VU", "Vanuatu"), ++ WALLIS_AND_FUTUNA("WF", "Wallis And Futuna"), ++ SAMOA("WS", "Samoa"), ++ YEMEN("YE", "Yemen"), ++ MAYOTTE("YT", "Mayotte"), ++ SOUTH_AFRICA("ZA", "South Africa"), ++ ZAMBIA("ZM", "Zambia"), ++ ZIMBABWE("ZW", "Zimbabwe"); ++ ++ private String isoTag; ++ private String name; ++ ++ Country(String isoTag, String name) { ++ this.isoTag = isoTag; ++ this.name = name; ++ } ++ ++ /** ++ * Gets the name of the country. ++ * ++ * @return The name of the country. ++ */ ++ public String getCountryName() { ++ return name; ++ } ++ ++ /** ++ * Gets the iso tag of the country. ++ * ++ * @return The iso tag of the country. ++ */ ++ public String getCountryIsoTag() { ++ return isoTag; ++ } ++ ++ /** ++ * Gets a country by it's iso tag. ++ * ++ * @param isoTag The iso tag of the county. ++ * @return The country with the given iso tag or null if unknown. ++ */ ++ public static Country byIsoTag(String isoTag) { ++ for (Country country : Country.values()) { ++ if (country.getCountryIsoTag().equals(isoTag)) { ++ return country; ++ } ++ } ++ return null; ++ } ++ ++ /** ++ * Gets a country by a locale. ++ * ++ * @param locale The locale. ++ * @return The country from the giben locale or null if unknown country or ++ * if the locale does not contain a country. ++ */ ++ public static Country byLocale(Locale locale) { ++ return byIsoTag(locale.getCountry()); ++ } ++ ++ } ++ ++} +diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java +index 328ff012b..75d4048a9 100644 +--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java ++++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java +@@ -0,0 +0,0 @@ public class PaperConfig { + static Map commands; + private static boolean verbose; + /*========================================================================*/ +- ++ private static Metrics metrics; ++ + public static void init(File configFile) { + CONFIG_FILE = configFile; + config = new YamlConfiguration(); +@@ -0,0 +0,0 @@ public class PaperConfig { + for (Map.Entry entry : commands.entrySet()) { + MinecraftServer.getServer().server.getCommandMap().register(entry.getKey(), "Paper", entry.getValue()); + } ++ ++ if (metrics == null) { ++ metrics = new Metrics(); ++ } + } + + static void readConfig(Class clazz, Object instance) { +diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java +index d386a876b..ba51303b2 100644 +--- a/src/main/java/org/spigotmc/SpigotConfig.java ++++ b/src/main/java/org/spigotmc/SpigotConfig.java +@@ -0,0 +0,0 @@ public class SpigotConfig + MinecraftServer.getServer().server.getCommandMap().register( entry.getKey(), "Spigot", entry.getValue() ); + } + ++ /* // Paper - Replace with our own + if ( metrics == null ) + { + try +@@ -0,0 +0,0 @@ public class SpigotConfig + Bukkit.getServer().getLogger().log( Level.SEVERE, "Could not start metrics service", ex ); + } + } ++ */ // Paper end + } + + static void readConfig(Class clazz, Object instance) +-- \ No newline at end of file diff --git a/Spigot-Server-Patches/Pass-world-to-Village-creation.patch b/Spigot-Server-Patches/Pass-world-to-Village-creation.patch index f1eb36dc2c..7f11e4cf99 100644 --- a/Spigot-Server-Patches/Pass-world-to-Village-creation.patch +++ b/Spigot-Server-Patches/Pass-world-to-Village-creation.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Pass world to Village creation fixes NPE bug #95 diff --git a/src/main/java/net/minecraft/server/PersistentVillage.java b/src/main/java/net/minecraft/server/PersistentVillage.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index a5b79ecad..01f7cee38 100644 --- a/src/main/java/net/minecraft/server/PersistentVillage.java +++ b/src/main/java/net/minecraft/server/PersistentVillage.java @@ -0,0 +0,0 @@ public class PersistentVillage extends PersistentBase { @@ -19,7 +19,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 village.a(nbttagcompound1); this.villages.add(village); diff --git a/src/main/java/net/minecraft/server/Village.java b/src/main/java/net/minecraft/server/Village.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 2ab381d50..817c836c3 100644 --- a/src/main/java/net/minecraft/server/Village.java +++ b/src/main/java/net/minecraft/server/Village.java @@ -0,0 +0,0 @@ public class Village { diff --git a/Spigot-Server-Patches/Player-Tab-List-and-Title-APIs.patch b/Spigot-Server-Patches/Player-Tab-List-and-Title-APIs.patch index a887b51617..c49aa69be3 100644 --- a/Spigot-Server-Patches/Player-Tab-List-and-Title-APIs.patch +++ b/Spigot-Server-Patches/Player-Tab-List-and-Title-APIs.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Player Tab List and Title APIs diff --git a/src/main/java/net/minecraft/server/PacketPlayOutPlayerListHeaderFooter.java b/src/main/java/net/minecraft/server/PacketPlayOutPlayerListHeaderFooter.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 5f5b3825d..242efb0b9 100644 --- a/src/main/java/net/minecraft/server/PacketPlayOutPlayerListHeaderFooter.java +++ b/src/main/java/net/minecraft/server/PacketPlayOutPlayerListHeaderFooter.java @@ -0,0 +0,0 @@ import java.io.IOException; @@ -40,7 +40,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 public void a(PacketListenerPlayOut packetlistenerplayout) { diff --git a/src/main/java/net/minecraft/server/PacketPlayOutTitle.java b/src/main/java/net/minecraft/server/PacketPlayOutTitle.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 7bcafa8bb..4f6c1c2e7 100644 --- a/src/main/java/net/minecraft/server/PacketPlayOutTitle.java +++ b/src/main/java/net/minecraft/server/PacketPlayOutTitle.java @@ -0,0 +0,0 @@ public class PacketPlayOutTitle implements Packet { @@ -78,7 +78,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 if (this.a == PacketPlayOutTitle.EnumTitleAction.TIMES) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index cc26aa748..2bcf3976f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -0,0 +0,0 @@ diff --git a/Spigot-Server-Patches/Prevent-Fire-from-loading-chunks.patch b/Spigot-Server-Patches/Prevent-Fire-from-loading-chunks.patch index b11785f93e..c62bd75e29 100644 --- a/Spigot-Server-Patches/Prevent-Fire-from-loading-chunks.patch +++ b/Spigot-Server-Patches/Prevent-Fire-from-loading-chunks.patch @@ -7,7 +7,7 @@ This causes the nether to spam unload/reload chunks, plus overall bad behavior. diff --git a/src/main/java/net/minecraft/server/BlockFire.java b/src/main/java/net/minecraft/server/BlockFire.java -index 94cb9d46..dfc32885 100644 +index 94cb9d462..dfc328850 100644 --- a/src/main/java/net/minecraft/server/BlockFire.java +++ b/src/main/java/net/minecraft/server/BlockFire.java @@ -0,0 +0,0 @@ public class BlockFire extends Block { diff --git a/Spigot-Server-Patches/Prevent-Waterflow-BlockFromToEvent-from-loading-chun.patch b/Spigot-Server-Patches/Prevent-Waterflow-BlockFromToEvent-from-loading-chun.patch index ee9e112f0f..cc94fc5cfd 100644 --- a/Spigot-Server-Patches/Prevent-Waterflow-BlockFromToEvent-from-loading-chun.patch +++ b/Spigot-Server-Patches/Prevent-Waterflow-BlockFromToEvent-from-loading-chun.patch @@ -12,7 +12,7 @@ of unloaded chunks anyways. This keeps behavior consistent, vs inconsistent flowing based on plugin triggered loads. diff --git a/src/main/java/net/minecraft/server/BlockFlowing.java b/src/main/java/net/minecraft/server/BlockFlowing.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 0a2823686..8eba70b01 100644 --- a/src/main/java/net/minecraft/server/BlockFlowing.java +++ b/src/main/java/net/minecraft/server/BlockFlowing.java @@ -0,0 +0,0 @@ public class BlockFlowing extends BlockFluids { diff --git a/Spigot-Server-Patches/Prevent-tile-entity-and-entity-crashes.patch b/Spigot-Server-Patches/Prevent-tile-entity-and-entity-crashes.patch index 070646098f..2b2b9ede07 100644 --- a/Spigot-Server-Patches/Prevent-tile-entity-and-entity-crashes.patch +++ b/Spigot-Server-Patches/Prevent-tile-entity-and-entity-crashes.patch @@ -5,7 +5,7 @@ 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 b3d3df4c..d0c0371f 100644 +index b3d3df4cf..d0c0371fc 100644 --- a/src/main/java/net/minecraft/server/TileEntity.java +++ b/src/main/java/net/minecraft/server/TileEntity.java @@ -0,0 +0,0 @@ public abstract class TileEntity { @@ -23,7 +23,7 @@ index b3d3df4c..d0c0371f 100644 public String a() throws Exception { int i = Block.getId(TileEntity.this.world.getType(TileEntity.this.position).getBlock()); diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java -index e39b966c..9cdc94be 100644 +index 39919ab1c..632d5c760 100644 --- a/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java @@ -0,0 +0,0 @@ public abstract class World implements IBlockAccess { diff --git a/Spigot-Server-Patches/Provide-E-TE-Chunk-count-stat-methods.patch b/Spigot-Server-Patches/Provide-E-TE-Chunk-count-stat-methods.patch index daf47907df..089b785824 100644 --- a/Spigot-Server-Patches/Provide-E-TE-Chunk-count-stat-methods.patch +++ b/Spigot-Server-Patches/Provide-E-TE-Chunk-count-stat-methods.patch @@ -7,7 +7,7 @@ Provides counts without the ineffeciency of using .getEntities().size() which creates copy of the collections. diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 5a44a9f38..da478ef81 100644 +index 3f8859a1f..b42074706 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -0,0 +0,0 @@ public class CraftWorld implements World { diff --git a/Spigot-Server-Patches/Re-track-players-that-dismount-from-other-players.patch b/Spigot-Server-Patches/Re-track-players-that-dismount-from-other-players.patch index fff06560f7..f53419edcb 100644 --- a/Spigot-Server-Patches/Re-track-players-that-dismount-from-other-players.patch +++ b/Spigot-Server-Patches/Re-track-players-that-dismount-from-other-players.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Re-track players that dismount from other players diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 80b313b47..93c4babd9 100644 --- a/src/main/java/net/minecraft/server/EntityPlayer.java +++ b/src/main/java/net/minecraft/server/EntityPlayer.java @@ -0,0 +0,0 @@ public class EntityPlayer extends EntityHuman implements ICrafting { diff --git a/Spigot-Server-Patches/Reduce-IO-ops-opening-a-new-region-file.patch b/Spigot-Server-Patches/Reduce-IO-ops-opening-a-new-region-file.patch index 491647fff7..4010ef69be 100644 --- a/Spigot-Server-Patches/Reduce-IO-ops-opening-a-new-region-file.patch +++ b/Spigot-Server-Patches/Reduce-IO-ops-opening-a-new-region-file.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Reduce IO ops opening a new region file. diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 9cfc46bc2..637e5baaf 100644 --- a/src/main/java/net/minecraft/server/RegionFile.java +++ b/src/main/java/net/minecraft/server/RegionFile.java @@ -0,0 +0,0 @@ import java.io.ByteArrayInputStream; diff --git a/Spigot-Server-Patches/Remove-Debug-checks-from-DataBits.patch b/Spigot-Server-Patches/Remove-Debug-checks-from-DataBits.patch index 3e722c92a0..be49b431ac 100644 --- a/Spigot-Server-Patches/Remove-Debug-checks-from-DataBits.patch +++ b/Spigot-Server-Patches/Remove-Debug-checks-from-DataBits.patch @@ -9,7 +9,7 @@ Before: http://i.imgur.com/nQsMzAE.png After: http://i.imgur.com/nJ46crB.png diff --git a/src/main/java/net/minecraft/server/DataBits.java b/src/main/java/net/minecraft/server/DataBits.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index f3a6799a8..fa0fd8a9c 100644 --- a/src/main/java/net/minecraft/server/DataBits.java +++ b/src/main/java/net/minecraft/server/DataBits.java @@ -0,0 +0,0 @@ public class DataBits { diff --git a/Spigot-Server-Patches/Remove-Metadata-on-reload.patch b/Spigot-Server-Patches/Remove-Metadata-on-reload.patch index ccc2fd48a7..0a67e3c594 100644 --- a/Spigot-Server-Patches/Remove-Metadata-on-reload.patch +++ b/Spigot-Server-Patches/Remove-Metadata-on-reload.patch @@ -7,7 +7,7 @@ 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 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 40091231e..540d57855 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -0,0 +0,0 @@ public final class CraftServer implements Server { diff --git a/Spigot-Server-Patches/Remove-invalid-mob-spawner-tile-entities.patch b/Spigot-Server-Patches/Remove-invalid-mob-spawner-tile-entities.patch index 676cf46c49..e016094aa7 100644 --- a/Spigot-Server-Patches/Remove-invalid-mob-spawner-tile-entities.patch +++ b/Spigot-Server-Patches/Remove-invalid-mob-spawner-tile-entities.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Remove invalid mob spawner tile entities diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index bd3b16025..1c0108ef1 100644 --- a/src/main/java/net/minecraft/server/Chunk.java +++ b/src/main/java/net/minecraft/server/Chunk.java @@ -0,0 +0,0 @@ public class Chunk { diff --git a/Spigot-Server-Patches/SPIGOT-1401-Fix-dispenser-dropper-furnace-placement.patch b/Spigot-Server-Patches/SPIGOT-1401-Fix-dispenser-dropper-furnace-placement.patch index c4af51e3d7..91e703a629 100644 --- a/Spigot-Server-Patches/SPIGOT-1401-Fix-dispenser-dropper-furnace-placement.patch +++ b/Spigot-Server-Patches/SPIGOT-1401-Fix-dispenser-dropper-furnace-placement.patch @@ -5,7 +5,7 @@ Subject: [PATCH] SPIGOT-1401: Fix dispenser, dropper, furnace placement diff --git a/src/main/java/net/minecraft/server/BlockDispenser.java b/src/main/java/net/minecraft/server/BlockDispenser.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index f8eaf2ac3..8e7884490 100644 --- a/src/main/java/net/minecraft/server/BlockDispenser.java +++ b/src/main/java/net/minecraft/server/BlockDispenser.java @@ -0,0 +0,0 @@ public class BlockDispenser extends BlockTileEntity { @@ -28,7 +28,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 public boolean interact(World world, BlockPosition blockposition, IBlockData iblockdata, EntityHuman entityhuman, EnumHand enumhand, EnumDirection enumdirection, float f, float f1, float f2) { if (world.isClientSide) { diff --git a/src/main/java/net/minecraft/server/BlockFurnace.java b/src/main/java/net/minecraft/server/BlockFurnace.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 528005446..b0d03e408 100644 --- a/src/main/java/net/minecraft/server/BlockFurnace.java +++ b/src/main/java/net/minecraft/server/BlockFurnace.java @@ -0,0 +0,0 @@ public class BlockFurnace extends BlockTileEntity { diff --git a/Spigot-Server-Patches/Sanitise-RegionFileCache-and-make-configurable.patch b/Spigot-Server-Patches/Sanitise-RegionFileCache-and-make-configurable.patch index 3abdeb647d..a42e70cbd5 100644 --- a/Spigot-Server-Patches/Sanitise-RegionFileCache-and-make-configurable.patch +++ b/Spigot-Server-Patches/Sanitise-RegionFileCache-and-make-configurable.patch @@ -11,7 +11,7 @@ The implementation uses a LinkedHashMap as an LRU cache (modified from HashMap). The maximum size of the RegionFileCache is also made configurable. diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index 0b4468726..ab796a959 100644 +index a48f5cb51..6b694705b 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -0,0 +0,0 @@ public class PaperConfig { diff --git a/Spigot-Server-Patches/Send-absolute-position-the-first-time-an-entity-is-s.patch b/Spigot-Server-Patches/Send-absolute-position-the-first-time-an-entity-is-s.patch index b5289f71fe..708870d822 100644 --- a/Spigot-Server-Patches/Send-absolute-position-the-first-time-an-entity-is-s.patch +++ b/Spigot-Server-Patches/Send-absolute-position-the-first-time-an-entity-is-s.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Send absolute position the first time an entity is seen diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 1493f9ab3..f542bf491 100644 --- a/src/main/java/net/minecraft/server/EntityTrackerEntry.java +++ b/src/main/java/net/minecraft/server/EntityTrackerEntry.java @@ -0,0 +0,0 @@ public class EntityTrackerEntry { diff --git a/Spigot-Server-Patches/Set-health-before-death-event.patch b/Spigot-Server-Patches/Set-health-before-death-event.patch index fda5c5ca9e..137d54c56a 100644 --- a/Spigot-Server-Patches/Set-health-before-death-event.patch +++ b/Spigot-Server-Patches/Set-health-before-death-event.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Set health before death event diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index 7f02ac219..0b4468726 100644 +index 078e0d989..a48f5cb51 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -0,0 +0,0 @@ public class PaperConfig { diff --git a/Spigot-Server-Patches/Stop-updating-flowing-block-if-material-has-changed.patch b/Spigot-Server-Patches/Stop-updating-flowing-block-if-material-has-changed.patch index dba51e382e..b36fec7d8d 100644 --- a/Spigot-Server-Patches/Stop-updating-flowing-block-if-material-has-changed.patch +++ b/Spigot-Server-Patches/Stop-updating-flowing-block-if-material-has-changed.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Stop updating flowing block if material has changed diff --git a/src/main/java/net/minecraft/server/BlockFlowing.java b/src/main/java/net/minecraft/server/BlockFlowing.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index f4ac7bafa..801b9cb7b 100644 --- a/src/main/java/net/minecraft/server/BlockFlowing.java +++ b/src/main/java/net/minecraft/server/BlockFlowing.java @@ -0,0 +0,0 @@ public class BlockFlowing extends BlockFluids { diff --git a/Spigot-Server-Patches/String-based-Action-Bar-API.patch b/Spigot-Server-Patches/String-based-Action-Bar-API.patch index e78817b131..0882e6e885 100644 --- a/Spigot-Server-Patches/String-based-Action-Bar-API.patch +++ b/Spigot-Server-Patches/String-based-Action-Bar-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] String based Action Bar API diff --git a/src/main/java/net/minecraft/server/MCUtil.java b/src/main/java/net/minecraft/server/MCUtil.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 1159eea1a..38359517c 100644 --- a/src/main/java/net/minecraft/server/MCUtil.java +++ b/src/main/java/net/minecraft/server/MCUtil.java @@ -0,0 +0,0 @@ @@ -62,7 +62,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index a2fb7d2be..2d8018a7c 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -0,0 +0,0 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/Spigot-Server-Patches/Support-offline-mode-in-whitelist-command-as-well.patch b/Spigot-Server-Patches/Support-offline-mode-in-whitelist-command-as-well.patch index 89ece1d34b..791bcbc1ee 100644 --- a/Spigot-Server-Patches/Support-offline-mode-in-whitelist-command-as-well.patch +++ b/Spigot-Server-Patches/Support-offline-mode-in-whitelist-command-as-well.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Support offline mode in whitelist command as well diff --git a/src/main/java/net/minecraft/server/CommandWhitelist.java b/src/main/java/net/minecraft/server/CommandWhitelist.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index c74d1d2be..0f4237db1 100644 --- a/src/main/java/net/minecraft/server/CommandWhitelist.java +++ b/src/main/java/net/minecraft/server/CommandWhitelist.java @@ -0,0 +0,0 @@ public class CommandWhitelist extends CommandAbstract { diff --git a/Spigot-Server-Patches/System-property-for-disabling-watchdoge.patch b/Spigot-Server-Patches/System-property-for-disabling-watchdoge.patch index 7ec4d8aa14..c6f1f7cf16 100644 --- a/Spigot-Server-Patches/System-property-for-disabling-watchdoge.patch +++ b/Spigot-Server-Patches/System-property-for-disabling-watchdoge.patch @@ -5,7 +5,7 @@ Subject: [PATCH] System property for disabling watchdoge diff --git a/src/main/java/org/spigotmc/WatchdogThread.java b/src/main/java/org/spigotmc/WatchdogThread.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 6384d50e7..cb1fcf0f4 100644 --- a/src/main/java/org/spigotmc/WatchdogThread.java +++ b/src/main/java/org/spigotmc/WatchdogThread.java @@ -0,0 +0,0 @@ public class WatchdogThread extends Thread diff --git a/Spigot-Server-Patches/Timings-v2.patch b/Spigot-Server-Patches/Timings-v2.patch index ede0dcc4d8..eb82857901 100644 --- a/Spigot-Server-Patches/Timings-v2.patch +++ b/Spigot-Server-Patches/Timings-v2.patch @@ -391,7 +391,7 @@ index 000000000..e7789117b + } +} diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java -index 328ff012b..0a6f9b256 100644 +index 75d4048a9..1ea799d59 100644 --- a/src/main/java/com/destroystokyo/paper/PaperConfig.java +++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java @@ -0,0 +0,0 @@ import java.util.concurrent.TimeUnit; diff --git a/Spigot-Server-Patches/Use-Optimized-Collections.patch b/Spigot-Server-Patches/Use-Optimized-Collections.patch index d5152da952..bdfa739eb0 100644 --- a/Spigot-Server-Patches/Use-Optimized-Collections.patch +++ b/Spigot-Server-Patches/Use-Optimized-Collections.patch @@ -13,7 +13,7 @@ These collections are super fast as seen http://java-performance.info/hashmap-overview-jdk-fastutil-goldman-sachs-hppc-koloboke-trove-january-2015/ diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index a7e8a3f7d..54b454fe3 100644 --- a/src/main/java/net/minecraft/server/ChunkProviderServer.java +++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java @@ -0,0 +0,0 @@ import org.bukkit.event.world.ChunkUnloadEvent; @@ -26,7 +26,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 private final IChunkLoader chunkLoader; // Paper start diff --git a/src/main/java/net/minecraft/server/DataWatcher.java b/src/main/java/net/minecraft/server/DataWatcher.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 419add5db..820c15278 100644 --- a/src/main/java/net/minecraft/server/DataWatcher.java +++ b/src/main/java/net/minecraft/server/DataWatcher.java @@ -0,0 +0,0 @@ import java.util.Map; diff --git a/Spigot-Server-Patches/Use-UserCache-for-player-heads.patch b/Spigot-Server-Patches/Use-UserCache-for-player-heads.patch index 726b1f17e6..902cc5d175 100644 --- a/Spigot-Server-Patches/Use-UserCache-for-player-heads.patch +++ b/Spigot-Server-Patches/Use-UserCache-for-player-heads.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Use UserCache for player heads diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index f07eb2f75..18cc74639 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java @@ -0,0 +0,0 @@ import net.minecraft.server.GameProfileSerializer; diff --git a/Spigot-Server-Patches/Use-a-Shared-Random-for-Entities.patch b/Spigot-Server-Patches/Use-a-Shared-Random-for-Entities.patch index e3e87b8733..857f9e7672 100644 --- a/Spigot-Server-Patches/Use-a-Shared-Random-for-Entities.patch +++ b/Spigot-Server-Patches/Use-a-Shared-Random-for-Entities.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Use a Shared Random for Entities Reduces memory usage and provides ensures more randomness, Especially since a lot of garbage entity objects get created. diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index be54c807b..42bd79b10 100644 --- a/src/main/java/net/minecraft/server/Entity.java +++ b/src/main/java/net/minecraft/server/Entity.java @@ -0,0 +0,0 @@ public abstract class Entity implements ICommandListener { diff --git a/Spigot-Server-Patches/Water-mobs-should-only-spawn-in-the-water.patch b/Spigot-Server-Patches/Water-mobs-should-only-spawn-in-the-water.patch index dc778546f7..077ca63b3b 100644 --- a/Spigot-Server-Patches/Water-mobs-should-only-spawn-in-the-water.patch +++ b/Spigot-Server-Patches/Water-mobs-should-only-spawn-in-the-water.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Water mobs should only spawn in the water diff --git a/src/main/java/net/minecraft/server/EntityWaterAnimal.java b/src/main/java/net/minecraft/server/EntityWaterAnimal.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index 90d33af95..251555713 100644 --- a/src/main/java/net/minecraft/server/EntityWaterAnimal.java +++ b/src/main/java/net/minecraft/server/EntityWaterAnimal.java @@ -0,0 +0,0 @@ public abstract class EntityWaterAnimal extends EntityInsentient implements IAni diff --git a/Spigot-Server-Patches/Waving-banner-workaround.patch b/Spigot-Server-Patches/Waving-banner-workaround.patch index bd62639cb3..06231a3e6d 100644 --- a/Spigot-Server-Patches/Waving-banner-workaround.patch +++ b/Spigot-Server-Patches/Waving-banner-workaround.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Waving banner workaround This patch is a workaround for MC-63720 diff --git a/src/main/java/net/minecraft/server/PacketPlayOutUpdateTime.java b/src/main/java/net/minecraft/server/PacketPlayOutUpdateTime.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index c5c3f40ce..6413f76e7 100644 --- a/src/main/java/net/minecraft/server/PacketPlayOutUpdateTime.java +++ b/src/main/java/net/minecraft/server/PacketPlayOutUpdateTime.java @@ -0,0 +0,0 @@ import java.io.IOException; diff --git a/Spigot-Server-Patches/Workaround-for-setting-passengers-on-players.patch b/Spigot-Server-Patches/Workaround-for-setting-passengers-on-players.patch index f9c98dcbad..ec3a3d714a 100644 --- a/Spigot-Server-Patches/Workaround-for-setting-passengers-on-players.patch +++ b/Spigot-Server-Patches/Workaround-for-setting-passengers-on-players.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Workaround for setting passengers on players SPIGOT-1915 & GH-114 diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +index b2fe1afc0..a74d6c768 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -0,0 +0,0 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/Spigot-Server-Patches/remove-null-possibility-for-getServer-singleton.patch b/Spigot-Server-Patches/remove-null-possibility-for-getServer-singleton.patch index ed52bdc221..5e29fa290b 100644 --- a/Spigot-Server-Patches/remove-null-possibility-for-getServer-singleton.patch +++ b/Spigot-Server-Patches/remove-null-possibility-for-getServer-singleton.patch @@ -6,7 +6,7 @@ Subject: [PATCH] remove null possibility for getServer singleton to stop IDE complaining about potential NPE diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index b9d4d65a6..15e543368 100644 +index 988439a0a..410c9834b 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -0,0 +0,0 @@ import co.aikar.timings.MinecraftTimings; // Paper