From 9105e06867c53c350d1b2eb6b546d059014b6a38 Mon Sep 17 00:00:00 2001
From: Nikita Rudy <qlniklp@gmail.com>
Date: Tue, 13 Feb 2018 03:44:50 +0300
Subject: [PATCH] Added options to disable additional ore generation in Mesa
 and Extreme Hills (#1006)

---
 ...-to-configure-frosted_ice-properties.patch |  4 +-
 ...dd-configurable-portal-search-radius.patch |  6 +-
 ...ke-parrots-stay-on-shoulders-despite.patch |  6 +-
 ...chunks-are-slime-spawn-chunks-toggle.patch |  4 +-
 Spigot-Server-Patches/Anti-Xray.patch         |  2 +-
 .../Auto-Save-Improvements.patch              |  2 +-
 .../Cap-Entity-Collisions.patch               |  6 +-
 ...figurable-Cartographer-Treasure-Maps.patch |  4 +-
 .../Configurable-Chunk-Inhabited-Timer.patch  |  4 +-
 ...urable-Chunks-Sends-per-Tick-setting.patch |  2 +-
 .../Configurable-Grass-Spread-Tick-Rate.patch |  4 +-
 ...le-Keep-Spawn-Loaded-range-per-world.patch | 10 +--
 ...Configurable-Max-Chunk-Gens-per-Tick.patch |  2 +-
 ...urable-Non-Player-Arrow-Despawn-Rate.patch |  4 +-
 ...figurable-container-update-tick-rate.patch |  4 +-
 .../Configurable-lava-flow-speed.patch        |  6 +-
 .../Configurable-mob-spawner-tick-rate.patch  |  2 +-
 ...le-spawn-chances-for-skeleton-horses.patch |  4 +-
 ...unk-Unloads-based-on-Player-Movement.patch | 12 ++--
 ...oreboards-for-non-players-by-default.patch |  6 +-
 .../Disable-chest-cat-detection.patch         |  4 +-
 .../Disable-explosion-knockback.patch         |  6 +-
 .../Disable-ice-and-snow.patch                |  4 +-
 Spigot-Server-Patches/Disable-thunder.patch   |  4 +-
 Spigot-Server-Patches/Fast-draining.patch     |  4 +-
 ...a-from-ArmorStand-and-SpawnEgg-items.patch |  6 +-
 ...-FallingBlocks-being-stuck-on-fences.patch |  6 +-
 ...x-inter-world-teleportation-glitches.patch |  2 +-
 .../Generator-Settings.patch                  | 65 +++++++++++++++++--
 ...-API-Replenishable-Lootables-Feature.patch | 30 ++++-----
 .../Make-entities-look-for-hoppers.patch      |  2 +-
 ...-max-squid-spawn-height-configurable.patch |  2 +-
 .../Optimize-explosions.patch                 | 12 ++--
 ...-maximum-exp-value-when-merging-orbs.patch |  2 +-
 ...sable-BlockPhysicsEvent-for-Redstone.patch |  6 +-
 ...t-armor-stands-from-doing-entity-loo.patch |  4 +-
 ...tion-to-remove-corrupt-tile-entities.patch |  4 +-
 ...nilla-per-world-scoreboard-coloring-.patch |  6 +-
 .../Optional-TNT-doesn-t-move-in-water.patch  |  6 +-
 ...vent-Auto-Save-if-Save-Queue-is-full.patch |  6 +-
 .../Toggleable-Elytra-Wall-Damage.patch       |  4 +-
 .../Undead-horse-leashing.patch               |  4 +-
 ...urable-option-to-disable-creeper-lin.patch |  4 +-
 scripts/importmcdev.sh                        |  1 +
 44 files changed, 170 insertions(+), 118 deletions(-)

diff --git a/Spigot-Server-Patches/Add-ability-to-configure-frosted_ice-properties.patch b/Spigot-Server-Patches/Add-ability-to-configure-frosted_ice-properties.patch
index 0bb310e234..e788a0ead3 100644
--- a/Spigot-Server-Patches/Add-ability-to-configure-frosted_ice-properties.patch
+++ b/Spigot-Server-Patches/Add-ability-to-configure-frosted_ice-properties.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Add ability to configure frosted_ice properties
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index c159871c..609a068c 100644
+index 6ea608ba9..d96311f6b 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -24,7 +24,7 @@ index c159871c..609a068c 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/BlockIceFrost.java b/src/main/java/net/minecraft/server/BlockIceFrost.java
-index 950863fb..a8dbbf20 100644
+index 950863fb9..a8dbbf20a 100644
 --- a/src/main/java/net/minecraft/server/BlockIceFrost.java
 +++ b/src/main/java/net/minecraft/server/BlockIceFrost.java
 @@ -0,0 +0,0 @@ public class BlockIceFrost extends BlockIce {
diff --git a/Spigot-Server-Patches/Add-configurable-portal-search-radius.patch b/Spigot-Server-Patches/Add-configurable-portal-search-radius.patch
index 87a7066a06..3a594b2c32 100644
--- a/Spigot-Server-Patches/Add-configurable-portal-search-radius.patch
+++ b/Spigot-Server-Patches/Add-configurable-portal-search-radius.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Add configurable portal search radius
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 3176379c..27fac9ef 100644
+index a289ba019..38ccabc0d 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -19,7 +19,7 @@ index 3176379c..27fac9ef 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/PortalTravelAgent.java b/src/main/java/net/minecraft/server/PortalTravelAgent.java
-index d1c67e39..f4972979 100644
+index d1c67e396..f49729796 100644
 --- a/src/main/java/net/minecraft/server/PortalTravelAgent.java
 +++ b/src/main/java/net/minecraft/server/PortalTravelAgent.java
 @@ -0,0 +0,0 @@ import org.bukkit.util.Vector;
@@ -41,7 +41,7 @@ index d1c67e39..f4972979 100644
              return false;
          }
 diff --git a/src/main/java/org/bukkit/craftbukkit/CraftTravelAgent.java b/src/main/java/org/bukkit/craftbukkit/CraftTravelAgent.java
-index 1d5dce10..7ca2617a 100644
+index 1d5dce10e..7ca2617a8 100644
 --- a/src/main/java/org/bukkit/craftbukkit/CraftTravelAgent.java
 +++ b/src/main/java/org/bukkit/craftbukkit/CraftTravelAgent.java
 @@ -0,0 +0,0 @@ public class CraftTravelAgent extends PortalTravelAgent implements TravelAgent {
diff --git a/Spigot-Server-Patches/Add-option-to-make-parrots-stay-on-shoulders-despite.patch b/Spigot-Server-Patches/Add-option-to-make-parrots-stay-on-shoulders-despite.patch
index e75af11f89..e44530c720 100644
--- a/Spigot-Server-Patches/Add-option-to-make-parrots-stay-on-shoulders-despite.patch
+++ b/Spigot-Server-Patches/Add-option-to-make-parrots-stay-on-shoulders-despite.patch
@@ -11,7 +11,7 @@ I suspect Mojang may switch to this behavior before full release.
 To be converted into a Paper-API event at some point in the future?
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 3b0234ae..9a4d3f85 100644
+index 3ba465305..79b12a6e9 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -26,7 +26,7 @@ index 3b0234ae..9a4d3f85 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java
-index 0f1d9963..9cda8a17 100644
+index 0f1d99636..9cda8a177 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 {
@@ -39,7 +39,7 @@ index 0f1d9963..9cda8a17 100644
  
      }
 diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
-index 2367ff1f..9c8828eb 100644
+index 2367ff1f0..9c8828ebd 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/All-chunks-are-slime-spawn-chunks-toggle.patch b/Spigot-Server-Patches/All-chunks-are-slime-spawn-chunks-toggle.patch
index b188394da4..e5a2c91c07 100644
--- a/Spigot-Server-Patches/All-chunks-are-slime-spawn-chunks-toggle.patch
+++ b/Spigot-Server-Patches/All-chunks-are-slime-spawn-chunks-toggle.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] All chunks are slime spawn chunks toggle
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 0355b711..3176379c 100644
+index 4c57b9cbf..a289ba019 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -19,7 +19,7 @@ index 0355b711..3176379c 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/EntitySlime.java b/src/main/java/net/minecraft/server/EntitySlime.java
-index 272b2265..3d3a9ca0 100644
+index 272b22652..3d3a9ca04 100644
 --- a/src/main/java/net/minecraft/server/EntitySlime.java
 +++ b/src/main/java/net/minecraft/server/EntitySlime.java
 @@ -0,0 +0,0 @@ public class EntitySlime extends EntityInsentient implements IMonster {
diff --git a/Spigot-Server-Patches/Anti-Xray.patch b/Spigot-Server-Patches/Anti-Xray.patch
index f8125e9197..ed73c31329 100644
--- a/Spigot-Server-Patches/Anti-Xray.patch
+++ b/Spigot-Server-Patches/Anti-Xray.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Anti-Xray
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index ca1dce687..37b26827d 100644
+index 7802cc1f4..69fd81898 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@
diff --git a/Spigot-Server-Patches/Auto-Save-Improvements.patch b/Spigot-Server-Patches/Auto-Save-Improvements.patch
index 5327cb3714..7fd22d18c9 100644
--- a/Spigot-Server-Patches/Auto-Save-Improvements.patch
+++ b/Spigot-Server-Patches/Auto-Save-Improvements.patch
@@ -26,7 +26,7 @@ index 621c585e7..da0984a35 100644
 +    }
  }
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 64e31dd20..a59865930 100644
+index d182e716a..d1655de42 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ package com.destroystokyo.paper;
diff --git a/Spigot-Server-Patches/Cap-Entity-Collisions.patch b/Spigot-Server-Patches/Cap-Entity-Collisions.patch
index e87d6ba0d1..d0630f70f5 100644
--- a/Spigot-Server-Patches/Cap-Entity-Collisions.patch
+++ b/Spigot-Server-Patches/Cap-Entity-Collisions.patch
@@ -12,7 +12,7 @@ just as it does in Vanilla, but entity pushing logic will be capped.
 You can set this to 0 to disable collisions.
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index d3f612b6..3b0234ae 100644
+index 7871406e4..3ba465305 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -27,7 +27,7 @@ index d3f612b6..3b0234ae 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
-index a6ffe144..f08f4ae5 100644
+index a6ffe144f..f08f4ae56 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 {
@@ -39,7 +39,7 @@ index a6ffe144..f08f4ae5 100644
      // Spigot end
  
 diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index 73643bc7..28eb1330 100644
+index ab3ab3889..6829f8f9c 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/Configurable-Cartographer-Treasure-Maps.patch b/Spigot-Server-Patches/Configurable-Cartographer-Treasure-Maps.patch
index 3db9b69beb..8df5762ca6 100644
--- a/Spigot-Server-Patches/Configurable-Cartographer-Treasure-Maps.patch
+++ b/Spigot-Server-Patches/Configurable-Cartographer-Treasure-Maps.patch
@@ -9,7 +9,7 @@ Also allow turning off treasure maps all together as they can eat up Map ID's
 which are limited in quantity.
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index ed7ddbb2..bbb5c942 100644
+index 513c4b020..631aa6eb9 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -28,7 +28,7 @@ index ed7ddbb2..bbb5c942 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java
-index 09b466fc..df009e19 100644
+index 09b466fcb..df009e190 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 {
diff --git a/Spigot-Server-Patches/Configurable-Chunk-Inhabited-Timer.patch b/Spigot-Server-Patches/Configurable-Chunk-Inhabited-Timer.patch
index 365de7a2f2..294b756ea6 100644
--- a/Spigot-Server-Patches/Configurable-Chunk-Inhabited-Timer.patch
+++ b/Spigot-Server-Patches/Configurable-Chunk-Inhabited-Timer.patch
@@ -9,7 +9,7 @@ aspects of vanilla gameplay to this factor.
 For people who want all chunks to be treated equally, you can disable the timer.
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 923a7200..aa923406 100644
+index e634c3afd..54f23ea75 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -23,7 +23,7 @@ index 923a7200..aa923406 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
-index 172d00bd..300a5619 100644
+index 172d00bdc..300a56191 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/Configurable-Chunks-Sends-per-Tick-setting.patch b/Spigot-Server-Patches/Configurable-Chunks-Sends-per-Tick-setting.patch
index 9b5abb4ec7..bca6be8f3f 100644
--- a/Spigot-Server-Patches/Configurable-Chunks-Sends-per-Tick-setting.patch
+++ b/Spigot-Server-Patches/Configurable-Chunks-Sends-per-Tick-setting.patch
@@ -8,7 +8,7 @@ Vanilla already had this limited, make it configurable.
 Limit how much exploration lags the server
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index fe6710f61..acf32d51d 100644
+index e6ee13ee5..8949b0290 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
diff --git a/Spigot-Server-Patches/Configurable-Grass-Spread-Tick-Rate.patch b/Spigot-Server-Patches/Configurable-Grass-Spread-Tick-Rate.patch
index a39298b58d..e84cd684e9 100644
--- a/Spigot-Server-Patches/Configurable-Grass-Spread-Tick-Rate.patch
+++ b/Spigot-Server-Patches/Configurable-Grass-Spread-Tick-Rate.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable Grass Spread Tick Rate
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index aa923406..afbfbdf8 100644
+index 54f23ea75..6555f1373 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -20,7 +20,7 @@ index aa923406..afbfbdf8 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/BlockGrass.java b/src/main/java/net/minecraft/server/BlockGrass.java
-index 8fc736d6..b656994b 100644
+index 8fc736d6a..b656994b2 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 {
diff --git a/Spigot-Server-Patches/Configurable-Keep-Spawn-Loaded-range-per-world.patch b/Spigot-Server-Patches/Configurable-Keep-Spawn-Loaded-range-per-world.patch
index ab20ccc5ef..62b5349920 100644
--- a/Spigot-Server-Patches/Configurable-Keep-Spawn-Loaded-range-per-world.patch
+++ b/Spigot-Server-Patches/Configurable-Keep-Spawn-Loaded-range-per-world.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Configurable Keep Spawn Loaded range per world
 This lets you disable it for some worlds and lower it for others.
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index afbfbdf8..8136d223 100644
+index 6555f1373..abc1aabdd 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -21,7 +21,7 @@ index afbfbdf8..8136d223 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
-index 4e8ce79f..2300ee10 100644
+index 4e8ce79ff..2300ee10b 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 ICommandListener, Runnable, IAs
@@ -39,7 +39,7 @@ index 4e8ce79f..2300ee10 100644
  
                      if (i1 - j > 1000L) {
 diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 279f0a26..a0b36b6b 100644
+index 279f0a261..a0b36b6ba 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 {
@@ -54,7 +54,7 @@ index 279f0a26..a0b36b6b 100644
  
      public void a(Packet<?> packet) {
 diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
-index 5d15d584..bc048f29 100644
+index 5d15d5846..bc048f292 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 {
@@ -67,7 +67,7 @@ index 5d15d584..bc048f29 100644
              for (int j = -short1; j <= short1; j += 16) {
                  for (int k = -short1; k <= short1; k += 16) {
 diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
-index 01fc193d..69dc11e2 100644
+index 01fc193db..69dc11e2b 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/Configurable-Max-Chunk-Gens-per-Tick.patch b/Spigot-Server-Patches/Configurable-Max-Chunk-Gens-per-Tick.patch
index 7c82a61e02..7888b8a59c 100644
--- a/Spigot-Server-Patches/Configurable-Max-Chunk-Gens-per-Tick.patch
+++ b/Spigot-Server-Patches/Configurable-Max-Chunk-Gens-per-Tick.patch
@@ -13,7 +13,7 @@ This should result in no noticeable speed reduction in generation for servers no
 lagging, and let larger servers reduce this value according to their own desires.
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index acf32d51d..19c4148c6 100644
+index 8949b0290..cd036b440 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
diff --git a/Spigot-Server-Patches/Configurable-Non-Player-Arrow-Despawn-Rate.patch b/Spigot-Server-Patches/Configurable-Non-Player-Arrow-Despawn-Rate.patch
index 06ea5c8643..3df24448f1 100644
--- a/Spigot-Server-Patches/Configurable-Non-Player-Arrow-Despawn-Rate.patch
+++ b/Spigot-Server-Patches/Configurable-Non-Player-Arrow-Despawn-Rate.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Configurable Non Player Arrow Despawn Rate
 Can set a much shorter despawn rate for arrows that players can not pick up.
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 47738624..db40db0d 100644
+index faacd86ba..f71580393 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -24,7 +24,7 @@ index 47738624..db40db0d 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/EntityArrow.java b/src/main/java/net/minecraft/server/EntityArrow.java
-index 3ff8b96f..f55eb654 100644
+index 3ff8b96f1..f55eb654b 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 {
diff --git a/Spigot-Server-Patches/Configurable-container-update-tick-rate.patch b/Spigot-Server-Patches/Configurable-container-update-tick-rate.patch
index ffef59f5ab..acd01f180e 100644
--- a/Spigot-Server-Patches/Configurable-container-update-tick-rate.patch
+++ b/Spigot-Server-Patches/Configurable-container-update-tick-rate.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable container update tick rate
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 1fd29332..83f9512f 100644
+index f431000d1..abcfb9216 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -19,7 +19,7 @@ index 1fd29332..83f9512f 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 5b067571..e48121b4 100644
+index 5b0675718..e48121b4a 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/Configurable-lava-flow-speed.patch b/Spigot-Server-Patches/Configurable-lava-flow-speed.patch
index 8efa8bbf40..76a85308c4 100644
--- a/Spigot-Server-Patches/Configurable-lava-flow-speed.patch
+++ b/Spigot-Server-Patches/Configurable-lava-flow-speed.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable lava flow speed
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 3b96b16f..e2d4f4bf 100644
+index dbd82d5a9..b0b3033e7 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -21,7 +21,7 @@ index 3b96b16f..e2d4f4bf 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/BlockFlowing.java b/src/main/java/net/minecraft/server/BlockFlowing.java
-index 3aaa19b2..739b9aac 100644
+index 3aaa19b2f..739b9aac3 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 {
@@ -35,7 +35,7 @@ index 3aaa19b2..739b9aac 100644
                  world.getType(blockposition.north(1)).getBlock().material == Material.LAVA ||
                          world.getType(blockposition.south(1)).getBlock().material == Material.LAVA ||
 diff --git a/src/main/java/net/minecraft/server/WorldProvider.java b/src/main/java/net/minecraft/server/WorldProvider.java
-index f3eb2a79..d0265f96 100644
+index f3eb2a797..d0265f960 100644
 --- a/src/main/java/net/minecraft/server/WorldProvider.java
 +++ b/src/main/java/net/minecraft/server/WorldProvider.java
 @@ -0,0 +0,0 @@ public abstract class WorldProvider {
diff --git a/Spigot-Server-Patches/Configurable-mob-spawner-tick-rate.patch b/Spigot-Server-Patches/Configurable-mob-spawner-tick-rate.patch
index 4b1e627a9b..5ed4f16be0 100644
--- a/Spigot-Server-Patches/Configurable-mob-spawner-tick-rate.patch
+++ b/Spigot-Server-Patches/Configurable-mob-spawner-tick-rate.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable mob spawner tick rate
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 49d14b8e9..1fd29332f 100644
+index 70b02f020..f431000d1 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
diff --git a/Spigot-Server-Patches/Configurable-spawn-chances-for-skeleton-horses.patch b/Spigot-Server-Patches/Configurable-spawn-chances-for-skeleton-horses.patch
index 4f43203b44..05ffc83e29 100644
--- a/Spigot-Server-Patches/Configurable-spawn-chances-for-skeleton-horses.patch
+++ b/Spigot-Server-Patches/Configurable-spawn-chances-for-skeleton-horses.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable spawn chances for skeleton horses
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index db40db0d..8027700d 100644
+index f71580393..38d664e00 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -19,7 +19,7 @@ index db40db0d..8027700d 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 9ef492f1..72dc2008 100644
+index 9ef492f1b..72dc20087 100644
 --- a/src/main/java/net/minecraft/server/WorldServer.java
 +++ b/src/main/java/net/minecraft/server/WorldServer.java
 @@ -0,0 +0,0 @@ public class WorldServer extends World implements IAsyncTaskHandler {
diff --git a/Spigot-Server-Patches/Delay-Chunk-Unloads-based-on-Player-Movement.patch b/Spigot-Server-Patches/Delay-Chunk-Unloads-based-on-Player-Movement.patch
index 423bb8fbaf..297c0bf350 100644
--- a/Spigot-Server-Patches/Delay-Chunk-Unloads-based-on-Player-Movement.patch
+++ b/Spigot-Server-Patches/Delay-Chunk-Unloads-based-on-Player-Movement.patch
@@ -17,7 +17,7 @@ This allows servers with smaller worlds who do less long distance exploring to s
 wasting cpu cycles on saving/unloading/reloading chunks repeatedly.
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 71cdb811..70642451 100644
+index ce43e7bb7..112c447e2 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -35,7 +35,7 @@ index 71cdb811..70642451 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
-index a847aa07..8ec26b97 100644
+index a847aa079..8ec26b97c 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 {
@@ -47,7 +47,7 @@ index a847aa07..8ec26b97 100644
      public final int locZ;
      private boolean m;
 diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
-index c7af8da6..0adfcaa8 100644
+index c7af8da61..0adfcaa8b 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 {
@@ -71,7 +71,7 @@ index c7af8da6..0adfcaa8 100644
              this.chunkLoader.b();
          }
 diff --git a/src/main/java/net/minecraft/server/PlayerChunk.java b/src/main/java/net/minecraft/server/PlayerChunk.java
-index 3d30e183..48a008e0 100644
+index 3d30e1831..48a008e0a 100644
 --- a/src/main/java/net/minecraft/server/PlayerChunk.java
 +++ b/src/main/java/net/minecraft/server/PlayerChunk.java
 @@ -0,0 +0,0 @@ public class PlayerChunk {
@@ -108,7 +108,7 @@ index 3d30e183..48a008e0 100644
              // CraftBukkit end
  
 diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
-index ad1d90b5..0b10f168 100644
+index ad1d90b56..0b10f1684 100644
 --- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
 +++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
 @@ -0,0 +0,0 @@ public class PlayerChunkMap {
@@ -127,7 +127,7 @@ index ad1d90b5..0b10f168 100644
  
      }
 diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
-index 69dc11e2..284dc639 100644
+index 69dc11e2b..284dc6391 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/Disable-Scoreboards-for-non-players-by-default.patch b/Spigot-Server-Patches/Disable-Scoreboards-for-non-players-by-default.patch
index d7cb806905..96b5152393 100644
--- a/Spigot-Server-Patches/Disable-Scoreboards-for-non-players-by-default.patch
+++ b/Spigot-Server-Patches/Disable-Scoreboards-for-non-players-by-default.patch
@@ -11,7 +11,7 @@ So avoid looking up scoreboards and short circuit to the "not on a team"
 logic which is most likely to be true.
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 1fb9cff9..f002ef27 100644
+index b241c0380..a4c94845b 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -25,7 +25,7 @@ index 1fb9cff9..f002ef27 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/CommandScoreboard.java b/src/main/java/net/minecraft/server/CommandScoreboard.java
-index ec9a8723..b08274d9 100644
+index ec9a87239..b08274d93 100644
 --- a/src/main/java/net/minecraft/server/CommandScoreboard.java
 +++ b/src/main/java/net/minecraft/server/CommandScoreboard.java
 @@ -0,0 +0,0 @@ public class CommandScoreboard extends CommandAbstract {
@@ -37,7 +37,7 @@ index ec9a8723..b08274d9 100644
  
                          if (scoreboard.addPlayerToTeam(s2, s)) {
 diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
-index 438624dd..9a1cac84 100644
+index 438624dd7..9a1cac844 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/Disable-chest-cat-detection.patch b/Spigot-Server-Patches/Disable-chest-cat-detection.patch
index e2dc88ec0b..09e861c169 100644
--- a/Spigot-Server-Patches/Disable-chest-cat-detection.patch
+++ b/Spigot-Server-Patches/Disable-chest-cat-detection.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Disable chest cat detection
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 83f9512f..0355b711 100644
+index abcfb9216..4c57b9cbf 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -19,7 +19,7 @@ index 83f9512f..0355b711 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/BlockChest.java b/src/main/java/net/minecraft/server/BlockChest.java
-index da2cfe20..bc398ec5 100644
+index da2cfe206..bc398ec52 100644
 --- a/src/main/java/net/minecraft/server/BlockChest.java
 +++ b/src/main/java/net/minecraft/server/BlockChest.java
 @@ -0,0 +0,0 @@ public class BlockChest extends BlockTileEntity {
diff --git a/Spigot-Server-Patches/Disable-explosion-knockback.patch b/Spigot-Server-Patches/Disable-explosion-knockback.patch
index 3e8483e8a7..7bf27ffa75 100644
--- a/Spigot-Server-Patches/Disable-explosion-knockback.patch
+++ b/Spigot-Server-Patches/Disable-explosion-knockback.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Disable explosion knockback
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index e2d4f4bf..23a78adb 100644
+index b0b3033e7..afc13e851 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -19,7 +19,7 @@ index e2d4f4bf..23a78adb 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index e8401bba..5a6b3398 100644
+index 756590ac0..05d1fc10d 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 {
@@ -48,7 +48,7 @@ index e8401bba..5a6b3398 100644
                      if (!this.e(damagesource)) {
                          SoundEffect soundeffect = this.cf();
 diff --git a/src/main/java/net/minecraft/server/Explosion.java b/src/main/java/net/minecraft/server/Explosion.java
-index e7f0e84d..e148901e 100644
+index e7f0e84d4..e148901e5 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/Disable-ice-and-snow.patch b/Spigot-Server-Patches/Disable-ice-and-snow.patch
index 337d39baf5..07080f436c 100644
--- a/Spigot-Server-Patches/Disable-ice-and-snow.patch
+++ b/Spigot-Server-Patches/Disable-ice-and-snow.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Disable ice and snow
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 675c8c87..49d14b8e 100644
+index 4ae2f9af1..70b02f020 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -19,7 +19,7 @@ index 675c8c87..49d14b8e 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 95ea3924..9ef492f1 100644
+index 95ea3924e..9ef492f1b 100644
 --- a/src/main/java/net/minecraft/server/WorldServer.java
 +++ b/src/main/java/net/minecraft/server/WorldServer.java
 @@ -0,0 +0,0 @@ public class WorldServer extends World implements IAsyncTaskHandler {
diff --git a/Spigot-Server-Patches/Disable-thunder.patch b/Spigot-Server-Patches/Disable-thunder.patch
index 29b7a35e5b..52636f051c 100644
--- a/Spigot-Server-Patches/Disable-thunder.patch
+++ b/Spigot-Server-Patches/Disable-thunder.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Disable thunder
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 23a78adb..675c8c87 100644
+index afc13e851..4ae2f9af1 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -19,7 +19,7 @@ index 23a78adb..675c8c87 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index e492913a..95ea3924 100644
+index e492913a2..95ea3924e 100644
 --- a/src/main/java/net/minecraft/server/WorldServer.java
 +++ b/src/main/java/net/minecraft/server/WorldServer.java
 @@ -0,0 +0,0 @@ public class WorldServer extends World implements IAsyncTaskHandler {
diff --git a/Spigot-Server-Patches/Fast-draining.patch b/Spigot-Server-Patches/Fast-draining.patch
index 07053a0b8e..88cedb3968 100644
--- a/Spigot-Server-Patches/Fast-draining.patch
+++ b/Spigot-Server-Patches/Fast-draining.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Fast draining
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 20e1e0c2..3b96b16f 100644
+index 15675efbf..dbd82d5a9 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -21,7 +21,7 @@ index 20e1e0c2..3b96b16f 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/BlockFlowing.java b/src/main/java/net/minecraft/server/BlockFlowing.java
-index 3b47253a..3aaa19b2 100644
+index 3b47253a4..3aaa19b2f 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/Filter-bad-data-from-ArmorStand-and-SpawnEgg-items.patch b/Spigot-Server-Patches/Filter-bad-data-from-ArmorStand-and-SpawnEgg-items.patch
index 9365a0af2f..959f503191 100644
--- a/Spigot-Server-Patches/Filter-bad-data-from-ArmorStand-and-SpawnEgg-items.patch
+++ b/Spigot-Server-Patches/Filter-bad-data-from-ArmorStand-and-SpawnEgg-items.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Filter bad data from ArmorStand and SpawnEgg items
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index e87c9863..ed7ddbb2 100644
+index f84fc54ec..513c4b020 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ package com.destroystokyo.paper;
@@ -30,7 +30,7 @@ index e87c9863..ed7ddbb2 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/EntityFallingBlock.java b/src/main/java/net/minecraft/server/EntityFallingBlock.java
-index 59acc908..d0b67d8f 100644
+index 59acc9088..d0b67d8fd 100644
 --- a/src/main/java/net/minecraft/server/EntityFallingBlock.java
 +++ b/src/main/java/net/minecraft/server/EntityFallingBlock.java
 @@ -0,0 +0,0 @@ public class EntityFallingBlock extends Entity {
@@ -49,7 +49,7 @@ index 59acc908..d0b67d8f 100644
          Block block = this.block.getBlock();
  
 diff --git a/src/main/java/net/minecraft/server/ItemMonsterEgg.java b/src/main/java/net/minecraft/server/ItemMonsterEgg.java
-index b24f7d8b..5a08f6b4 100644
+index b24f7d8b2..5a08f6b4e 100644
 --- a/src/main/java/net/minecraft/server/ItemMonsterEgg.java
 +++ b/src/main/java/net/minecraft/server/ItemMonsterEgg.java
 @@ -0,0 +0,0 @@ public class ItemMonsterEgg extends Item {
diff --git a/Spigot-Server-Patches/Fix-FallingBlocks-being-stuck-on-fences.patch b/Spigot-Server-Patches/Fix-FallingBlocks-being-stuck-on-fences.patch
index 7b7c482f92..db0a98e291 100644
--- a/Spigot-Server-Patches/Fix-FallingBlocks-being-stuck-on-fences.patch
+++ b/Spigot-Server-Patches/Fix-FallingBlocks-being-stuck-on-fences.patch
@@ -11,7 +11,7 @@ We now first check, if if we are already on the ground.
 if not, we check if the falling block is inside of the hitbox of the block at y - 1.
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index c42fa157..670d3d9a 100644
+index 06acdaaf0..600e603bd 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -25,7 +25,7 @@ index c42fa157..670d3d9a 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/BlockFalling.java b/src/main/java/net/minecraft/server/BlockFalling.java
-index 67439575..1086e311 100644
+index 674395756..1086e3117 100644
 --- a/src/main/java/net/minecraft/server/BlockFalling.java
 +++ b/src/main/java/net/minecraft/server/BlockFalling.java
 @@ -0,0 +0,0 @@ public class BlockFalling extends Block {
@@ -42,7 +42,7 @@ index 67439575..1086e311 100644
  
      public void a_(World world, BlockPosition blockposition) {}
 diff --git a/src/main/java/net/minecraft/server/EntityFallingBlock.java b/src/main/java/net/minecraft/server/EntityFallingBlock.java
-index abdc2dea..59acc908 100644
+index abdc2dea9..59acc9088 100644
 --- a/src/main/java/net/minecraft/server/EntityFallingBlock.java
 +++ b/src/main/java/net/minecraft/server/EntityFallingBlock.java
 @@ -0,0 +0,0 @@ package net.minecraft.server;
diff --git a/Spigot-Server-Patches/Fix-inter-world-teleportation-glitches.patch b/Spigot-Server-Patches/Fix-inter-world-teleportation-glitches.patch
index 5ee57cee4e..632f6e4e57 100644
--- a/Spigot-Server-Patches/Fix-inter-world-teleportation-glitches.patch
+++ b/Spigot-Server-Patches/Fix-inter-world-teleportation-glitches.patch
@@ -11,7 +11,7 @@ Example setup to perform the glitch: http://puu.sh/ng3PC/cf072dcbdb.png
 The wanted destination was on top of the emerald block however the player ended on top of the diamond block. This only is the case if the player is teleporting between worlds.
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 27fac9efb..1fb9cff93 100644
+index 38ccabc0d..b241c0380 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
diff --git a/Spigot-Server-Patches/Generator-Settings.patch b/Spigot-Server-Patches/Generator-Settings.patch
index 7000118e87..a2cd11b84e 100644
--- a/Spigot-Server-Patches/Generator-Settings.patch
+++ b/Spigot-Server-Patches/Generator-Settings.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Generator Settings
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index db09711e..80500108 100644
+index db09711e4..7e5cd8042 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -23,6 +23,9 @@ index db09711e..80500108 100644
 +    public boolean generateTemple;
 +    public boolean generateVillage;
 +    public boolean generateFlatBedrock;
++    public boolean disableExtremeHillsEmeralds;
++    public boolean disableExtremeHillsMonsterEggs;
++    public boolean disableMesaAdditionalGold;
 +
 +    private void generatorSettings() {
 +        generateCanyon = getBoolean("generator-settings.canyon", true);
@@ -35,10 +38,13 @@ index db09711e..80500108 100644
 +        generateTemple = getBoolean("generator-settings.temple", true);
 +        generateVillage = getBoolean("generator-settings.village", true);
 +        generateFlatBedrock = getBoolean("generator-settings.flat-bedrock", false);
++        disableExtremeHillsEmeralds = getBoolean("generator-settings.disable-extreme-hills-emeralds", false);
++        disableExtremeHillsMonsterEggs = getBoolean("generator-settings.disable-extreme-hills-monster-eggs", false);
++        disableMesaAdditionalGold = getBoolean("generator-settings.disable-mesa-additional-gold", false);
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/BiomeBase.java b/src/main/java/net/minecraft/server/BiomeBase.java
-index 1b759976..ab6db746 100644
+index 1b7599769..ab6db7468 100644
 --- a/src/main/java/net/minecraft/server/BiomeBase.java
 +++ b/src/main/java/net/minecraft/server/BiomeBase.java
 @@ -0,0 +0,0 @@ public abstract class BiomeBase {
@@ -50,8 +56,45 @@ index 1b759976..ab6db746 100644
                  chunksnapshot.a(k1, l1, j1, BiomeBase.c);
              } else {
                  IBlockData iblockdata2 = chunksnapshot.a(k1, l1, j1);
+diff --git a/src/main/java/net/minecraft/server/BiomeBigHills.java b/src/main/java/net/minecraft/server/BiomeBigHills.java
+index 9c39bf7af..61680ab50 100644
+--- a/src/main/java/net/minecraft/server/BiomeBigHills.java
++++ b/src/main/java/net/minecraft/server/BiomeBigHills.java
+@@ -0,0 +0,0 @@ public class BiomeBigHills extends BiomeBase {
+         int k;
+         int l;
+ 
++        // Paper start - Disable extreme hills emeralds
++        if (!world.paperConfig.disableExtremeHillsEmeralds) {
++
+         for (j = 0; j < i; ++j) {
+             k = random.nextInt(16);
+             l = random.nextInt(28) + 4;
+@@ -0,0 +0,0 @@ public class BiomeBigHills extends BiomeBase {
+             }
+         }
+ 
++        }
++        // Paper end block
++
++        // Paper start - Disable extreme hills monster eggs
++        if (!world.paperConfig.disableExtremeHillsMonsterEggs) {
++
+         for (i = 0; i < 7; ++i) {
+             j = random.nextInt(16);
+             k = random.nextInt(64);
+@@ -0,0 +0,0 @@ public class BiomeBigHills extends BiomeBase {
+             this.x.generate(world, random, blockposition.a(j, k, l));
+         }
+ 
++        }
++        // Paper end block
++
+     }
+ 
+     public void a(World world, Random random, ChunkSnapshot chunksnapshot, int i, int j, double d0) {
 diff --git a/src/main/java/net/minecraft/server/BiomeMesa.java b/src/main/java/net/minecraft/server/BiomeMesa.java
-index f2dd96a3..0541403f 100644
+index f2dd96a32..67f8ad8ed 100644
 --- a/src/main/java/net/minecraft/server/BiomeMesa.java
 +++ b/src/main/java/net/minecraft/server/BiomeMesa.java
 @@ -0,0 +0,0 @@ public class BiomeMesa extends BiomeBase {
@@ -63,8 +106,16 @@ index f2dd96a3..0541403f 100644
                  chunksnapshot.a(l, i2, k, BiomeMesa.c);
              } else if (l1 < 15 || this.I) {
                  IBlockData iblockdata2 = chunksnapshot.a(l, i2, k);
+@@ -0,0 +0,0 @@ public class BiomeMesa extends BiomeBase {
+ 
+         protected void a(World world, Random random) {
+             super.a(world, random);
++            if (world.paperConfig.disableMesaAdditionalGold) return; // Paper
+             this.a(world, random, 20, this.n, 32, 80);
+         }
+ 
 diff --git a/src/main/java/net/minecraft/server/ChunkProviderFlat.java b/src/main/java/net/minecraft/server/ChunkProviderFlat.java
-index 1452ff65..8b1b7938 100644
+index 1452ff657..8b1b79380 100644
 --- a/src/main/java/net/minecraft/server/ChunkProviderFlat.java
 +++ b/src/main/java/net/minecraft/server/ChunkProviderFlat.java
 @@ -0,0 +0,0 @@ public class ChunkProviderFlat implements ChunkGenerator {
@@ -110,7 +161,7 @@ index 1452ff65..8b1b7938 100644
          int k = 0;
          boolean flag1 = true;
 diff --git a/src/main/java/net/minecraft/server/ChunkProviderGenerate.java b/src/main/java/net/minecraft/server/ChunkProviderGenerate.java
-index 22a24a39..ee9e00e6 100644
+index 22a24a39f..ee9e00e64 100644
 --- a/src/main/java/net/minecraft/server/ChunkProviderGenerate.java
 +++ b/src/main/java/net/minecraft/server/ChunkProviderGenerate.java
 @@ -0,0 +0,0 @@ public class ChunkProviderGenerate implements ChunkGenerator {
@@ -221,7 +272,7 @@ index 22a24a39..ee9e00e6 100644
              }
  
 diff --git a/src/main/java/net/minecraft/server/ChunkProviderHell.java b/src/main/java/net/minecraft/server/ChunkProviderHell.java
-index 9f738749..12bc10ff 100644
+index 9f738749f..12bc10ff0 100644
 --- a/src/main/java/net/minecraft/server/ChunkProviderHell.java
 +++ b/src/main/java/net/minecraft/server/ChunkProviderHell.java
 @@ -0,0 +0,0 @@ public class ChunkProviderHell implements ChunkGenerator {
@@ -245,7 +296,7 @@ index 9f738749..12bc10ff 100644
      }
  }
 diff --git a/src/main/java/net/minecraft/server/StructureGenerator.java b/src/main/java/net/minecraft/server/StructureGenerator.java
-index 66a80a77..34fd7edf 100644
+index 66a80a776..34fd7edfe 100644
 --- a/src/main/java/net/minecraft/server/StructureGenerator.java
 +++ b/src/main/java/net/minecraft/server/StructureGenerator.java
 @@ -0,0 +0,0 @@ public abstract class StructureGenerator extends WorldGenBase {
diff --git a/Spigot-Server-Patches/LootTable-API-Replenishable-Lootables-Feature.patch b/Spigot-Server-Patches/LootTable-API-Replenishable-Lootables-Feature.patch
index e41a33524b..6916d0f19c 100644
--- a/Spigot-Server-Patches/LootTable-API-Replenishable-Lootables-Feature.patch
+++ b/Spigot-Server-Patches/LootTable-API-Replenishable-Lootables-Feature.patch
@@ -11,7 +11,7 @@ This feature is good for long term worlds so that newer players
 do not suffer with "Every chest has been looted"
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 609a068c..7ee8d4e7 100644
+index d96311f6b..067cb233e 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -43,7 +43,7 @@ index 609a068c..7ee8d4e7 100644
  }
 diff --git a/src/main/java/com/destroystokyo/paper/loottable/CraftLootable.java b/src/main/java/com/destroystokyo/paper/loottable/CraftLootable.java
 new file mode 100644
-index 00000000..36c36d15
+index 000000000..36c36d158
 --- /dev/null
 +++ b/src/main/java/com/destroystokyo/paper/loottable/CraftLootable.java
 @@ -0,0 +0,0 @@
@@ -61,7 +61,7 @@ index 00000000..36c36d15
 +}
 diff --git a/src/main/java/com/destroystokyo/paper/loottable/CraftLootableBlockInventory.java b/src/main/java/com/destroystokyo/paper/loottable/CraftLootableBlockInventory.java
 new file mode 100644
-index 00000000..20d236c4
+index 000000000..20d236c45
 --- /dev/null
 +++ b/src/main/java/com/destroystokyo/paper/loottable/CraftLootableBlockInventory.java
 @@ -0,0 +0,0 @@
@@ -100,7 +100,7 @@ index 00000000..20d236c4
 +}
 diff --git a/src/main/java/com/destroystokyo/paper/loottable/CraftLootableEntityInventory.java b/src/main/java/com/destroystokyo/paper/loottable/CraftLootableEntityInventory.java
 new file mode 100644
-index 00000000..1150dee0
+index 000000000..1150dee01
 --- /dev/null
 +++ b/src/main/java/com/destroystokyo/paper/loottable/CraftLootableEntityInventory.java
 @@ -0,0 +0,0 @@
@@ -137,7 +137,7 @@ index 00000000..1150dee0
 +}
 diff --git a/src/main/java/com/destroystokyo/paper/loottable/CraftLootableInventory.java b/src/main/java/com/destroystokyo/paper/loottable/CraftLootableInventory.java
 new file mode 100644
-index 00000000..66809762
+index 000000000..668097620
 --- /dev/null
 +++ b/src/main/java/com/destroystokyo/paper/loottable/CraftLootableInventory.java
 @@ -0,0 +0,0 @@
@@ -231,7 +231,7 @@ index 00000000..66809762
 +}
 diff --git a/src/main/java/com/destroystokyo/paper/loottable/CraftLootableInventoryData.java b/src/main/java/com/destroystokyo/paper/loottable/CraftLootableInventoryData.java
 new file mode 100644
-index 00000000..01c2713d
+index 000000000..01c2713d3
 --- /dev/null
 +++ b/src/main/java/com/destroystokyo/paper/loottable/CraftLootableInventoryData.java
 @@ -0,0 +0,0 @@
@@ -418,7 +418,7 @@ index 00000000..01c2713d
 +    }
 +}
 diff --git a/src/main/java/net/minecraft/server/EntityMinecartContainer.java b/src/main/java/net/minecraft/server/EntityMinecartContainer.java
-index d6afa4aa..50d7d34b 100644
+index d6afa4aa6..50d7d34b8 100644
 --- a/src/main/java/net/minecraft/server/EntityMinecartContainer.java
 +++ b/src/main/java/net/minecraft/server/EntityMinecartContainer.java
 @@ -0,0 +0,0 @@ import javax.annotation.Nullable;
@@ -541,7 +541,7 @@ index d6afa4aa..50d7d34b 100644
 +    // Paper end
  }
 diff --git a/src/main/java/net/minecraft/server/TileEntityLootable.java b/src/main/java/net/minecraft/server/TileEntityLootable.java
-index a97ad203..61852130 100644
+index a97ad2037..618521304 100644
 --- a/src/main/java/net/minecraft/server/TileEntityLootable.java
 +++ b/src/main/java/net/minecraft/server/TileEntityLootable.java
 @@ -0,0 +0,0 @@
@@ -658,7 +658,7 @@ index a97ad203..61852130 100644
 +
  }
 diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java
-index 8328ed00..266f87d7 100644
+index 8328ed005..266f87d7f 100644
 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java
 +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java
 @@ -0,0 +0,0 @@ public class CraftBlockEntityState<T extends TileEntity> extends CraftBlockState
@@ -671,7 +671,7 @@ index 8328ed00..266f87d7 100644
      }
  
 diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftChest.java b/src/main/java/org/bukkit/craftbukkit/block/CraftChest.java
-index 85f3bb27..733c04ef 100644
+index 85f3bb272..733c04ef7 100644
 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftChest.java
 +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftChest.java
 @@ -0,0 +0,0 @@
@@ -691,7 +691,7 @@ index 85f3bb27..733c04ef 100644
      public CraftChest(final Block block) {
          super(block, TileEntityChest.class);
 diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftDispenser.java b/src/main/java/org/bukkit/craftbukkit/block/CraftDispenser.java
-index 1dc8bfec..bfcf9b6c 100644
+index 1dc8bfecd..bfcf9b6c4 100644
 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftDispenser.java
 +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftDispenser.java
 @@ -0,0 +0,0 @@
@@ -711,7 +711,7 @@ index 1dc8bfec..bfcf9b6c 100644
      public CraftDispenser(final Block block) {
          super(block, TileEntityDispenser.class);
 diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftHopper.java b/src/main/java/org/bukkit/craftbukkit/block/CraftHopper.java
-index 6566554a..df156d0d 100644
+index 6566554ab..df156d0d9 100644
 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftHopper.java
 +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftHopper.java
 @@ -0,0 +0,0 @@
@@ -731,7 +731,7 @@ index 6566554a..df156d0d 100644
      public CraftHopper(final Block block) {
          super(block, TileEntityHopper.class);
 diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftShulkerBox.java b/src/main/java/org/bukkit/craftbukkit/block/CraftShulkerBox.java
-index c029a124..c26f0b5a 100644
+index c029a1244..c26f0b5af 100644
 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftShulkerBox.java
 +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftShulkerBox.java
 @@ -0,0 +0,0 @@
@@ -751,7 +751,7 @@ index c029a124..c26f0b5a 100644
      public CraftShulkerBox(final Block block) {
          super(block, TileEntityShulkerBox.class);
 diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecartChest.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecartChest.java
-index 69435c45..4291edf2 100644
+index 69435c457..4291edf25 100644
 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecartChest.java
 +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecartChest.java
 @@ -0,0 +0,0 @@
@@ -771,7 +771,7 @@ index 69435c45..4291edf2 100644
  
      public CraftMinecartChest(CraftServer server, EntityMinecartChest entity) {
 diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecartHopper.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecartHopper.java
-index e9963e21..acb4dee0 100644
+index e9963e21c..acb4dee04 100644
 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecartHopper.java
 +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftMinecartHopper.java
 @@ -0,0 +0,0 @@
diff --git a/Spigot-Server-Patches/Make-entities-look-for-hoppers.patch b/Spigot-Server-Patches/Make-entities-look-for-hoppers.patch
index 88760fedcb..d6d16db105 100644
--- a/Spigot-Server-Patches/Make-entities-look-for-hoppers.patch
+++ b/Spigot-Server-Patches/Make-entities-look-for-hoppers.patch
@@ -79,7 +79,7 @@ index 000000000..52457e3d8
 +    double getZ();
 +}
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 670d3d9a9..71cdb8118 100644
+index 600e603bd..ce43e7bb7 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
diff --git a/Spigot-Server-Patches/Make-max-squid-spawn-height-configurable.patch b/Spigot-Server-Patches/Make-max-squid-spawn-height-configurable.patch
index e05ae6cae0..8fd8a15c89 100644
--- a/Spigot-Server-Patches/Make-max-squid-spawn-height-configurable.patch
+++ b/Spigot-Server-Patches/Make-max-squid-spawn-height-configurable.patch
@@ -7,7 +7,7 @@ I don't know why upstream made only the minimum height configurable but
 whatever
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 19c4148c6..11e88663e 100644
+index cd036b440..1947f2466 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
diff --git a/Spigot-Server-Patches/Optimize-explosions.patch b/Spigot-Server-Patches/Optimize-explosions.patch
index ba220700d3..9a83ad3530 100644
--- a/Spigot-Server-Patches/Optimize-explosions.patch
+++ b/Spigot-Server-Patches/Optimize-explosions.patch
@@ -10,12 +10,12 @@ This patch adds a per-tick cache that is used for storing and retrieving
 an entity's exposure during an explosion.
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 80500108..20e1e0c2 100644
+index 7e5cd8042..15675efbf 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
-         generateVillage = getBoolean("generator-settings.village", true);
-         generateFlatBedrock = getBoolean("generator-settings.flat-bedrock", false);
+         disableExtremeHillsMonsterEggs = getBoolean("generator-settings.disable-extreme-hills-monster-eggs", false);
+         disableMesaAdditionalGold = getBoolean("generator-settings.disable-mesa-additional-gold", false);
      }
 +
 +    public boolean optimizeExplosions;
@@ -25,7 +25,7 @@ index 80500108..20e1e0c2 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/Explosion.java b/src/main/java/net/minecraft/server/Explosion.java
-index a1ebcf85..e7f0e84d 100644
+index a1ebcf858..e7f0e84d4 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 {
@@ -124,7 +124,7 @@ index a1ebcf85..e7f0e84d 100644
 +    // Paper end
  }
 diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
-index d63a243f..4e8ce79f 100644
+index d63a243f3..4e8ce79ff 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 ICommandListener, Runnable, IAs
@@ -136,7 +136,7 @@ index d63a243f..4e8ce79f 100644
  
              // this.i[i][this.ticks % 100] = System.nanoTime() - j; // CraftBukkit
 diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 77ed2d24..fc7315f7 100644
+index 77ed2d249..fc7315f7d 100644
 --- a/src/main/java/net/minecraft/server/World.java
 +++ b/src/main/java/net/minecraft/server/World.java
 @@ -0,0 +0,0 @@ import javax.annotation.Nullable;
diff --git a/Spigot-Server-Patches/Option-for-maximum-exp-value-when-merging-orbs.patch b/Spigot-Server-Patches/Option-for-maximum-exp-value-when-merging-orbs.patch
index 49aec5cd2c..6be0687f9f 100644
--- a/Spigot-Server-Patches/Option-for-maximum-exp-value-when-merging-orbs.patch
+++ b/Spigot-Server-Patches/Option-for-maximum-exp-value-when-merging-orbs.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Option for maximum exp value when merging orbs
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 37b26827d..fe6710f61 100644
+index 69fd81898..e6ee13ee5 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
diff --git a/Spigot-Server-Patches/Option-to-disable-BlockPhysicsEvent-for-Redstone.patch b/Spigot-Server-Patches/Option-to-disable-BlockPhysicsEvent-for-Redstone.patch
index 94e4486c96..d35ff2e695 100644
--- a/Spigot-Server-Patches/Option-to-disable-BlockPhysicsEvent-for-Redstone.patch
+++ b/Spigot-Server-Patches/Option-to-disable-BlockPhysicsEvent-for-Redstone.patch
@@ -11,7 +11,7 @@ Defaulting this to false will provide substantial performance improvement
 by saving millions of event calls on redstone heavy servers.
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 8027700d..923a7200 100644
+index 38d664e00..e634c3afd 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -25,7 +25,7 @@ index 8027700d..923a7200 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index a20c9810..03f07677 100644
+index a20c9810f..03f076776 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 {
@@ -38,7 +38,7 @@ index a20c9810..03f07677 100644
                      this.getServer().getPluginManager().callEvent(event);
  
 diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 72dc2008..f2ddc22d 100644
+index 72dc20087..f2ddc22dd 100644
 --- a/src/main/java/net/minecraft/server/WorldServer.java
 +++ b/src/main/java/net/minecraft/server/WorldServer.java
 @@ -0,0 +0,0 @@ import org.bukkit.event.weather.LightningStrikeEvent;
diff --git a/Spigot-Server-Patches/Option-to-prevent-armor-stands-from-doing-entity-loo.patch b/Spigot-Server-Patches/Option-to-prevent-armor-stands-from-doing-entity-loo.patch
index 504144c026..fa684e2096 100644
--- a/Spigot-Server-Patches/Option-to-prevent-armor-stands-from-doing-entity-loo.patch
+++ b/Spigot-Server-Patches/Option-to-prevent-armor-stands-from-doing-entity-loo.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Option to prevent armor stands from doing entity lookups
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index bbb5c942..d3f612b6 100644
+index 631aa6eb9..7871406e4 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -19,7 +19,7 @@ index bbb5c942..d3f612b6 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 01dba285..b0139fff 100644
+index 01dba285a..b0139fff6 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/Option-to-remove-corrupt-tile-entities.patch b/Spigot-Server-Patches/Option-to-remove-corrupt-tile-entities.patch
index b955b74bce..26e79685eb 100644
--- a/Spigot-Server-Patches/Option-to-remove-corrupt-tile-entities.patch
+++ b/Spigot-Server-Patches/Option-to-remove-corrupt-tile-entities.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Option to remove corrupt tile entities
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index a5986593..0ac2ad70 100644
+index d1655de42..21ae11e0a 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -19,7 +19,7 @@ index a5986593..0ac2ad70 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
-index 87730aec..1d056031 100644
+index 87730aec3..1d056031b 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/Option-to-use-vanilla-per-world-scoreboard-coloring-.patch b/Spigot-Server-Patches/Option-to-use-vanilla-per-world-scoreboard-coloring-.patch
index 969fbdcb5c..95012842d1 100644
--- a/Spigot-Server-Patches/Option-to-use-vanilla-per-world-scoreboard-coloring-.patch
+++ b/Spigot-Server-Patches/Option-to-use-vanilla-per-world-scoreboard-coloring-.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Option to use vanilla per-world scoreboard coloring on names
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 8136d223..c159871c 100644
+index abc1aabdd..6ea608ba9 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -19,7 +19,7 @@ index 8136d223..c159871c 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
-index a6d47213..1d31bcde 100644
+index a6d472139..1d31bcde8 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 {
@@ -31,7 +31,7 @@ index a6d47213..1d31bcde 100644
      public ScoreboardTeamBase aY() {
          if (!this.world.paperConfig.nonPlayerEntitiesOnScoreboards && !(this instanceof EntityHuman)) { return null; } // Paper
 diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
-index 70fb4f6b..187e59a0 100644
+index 70fb4f6b0..187e59a08 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/Optional-TNT-doesn-t-move-in-water.patch b/Spigot-Server-Patches/Optional-TNT-doesn-t-move-in-water.patch
index b9e3f35a21..5635a2bf9c 100644
--- a/Spigot-Server-Patches/Optional-TNT-doesn-t-move-in-water.patch
+++ b/Spigot-Server-Patches/Optional-TNT-doesn-t-move-in-water.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Optional TNT doesn't move in water
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 7ee8d4e7..c42fa157 100644
+index 067cb233e..06acdaaf0 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ package com.destroystokyo.paper;
@@ -32,7 +32,7 @@ index 7ee8d4e7..c42fa157 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
-index ef096ef6..d46fb1d7 100644
+index ef096ef65..d46fb1d76 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 {
@@ -60,7 +60,7 @@ index ef096ef6..d46fb1d7 100644
      }
  
 diff --git a/src/main/java/net/minecraft/server/EntityTNTPrimed.java b/src/main/java/net/minecraft/server/EntityTNTPrimed.java
-index bb0904f8..50811852 100644
+index bb0904f86..50811852a 100644
 --- a/src/main/java/net/minecraft/server/EntityTNTPrimed.java
 +++ b/src/main/java/net/minecraft/server/EntityTNTPrimed.java
 @@ -0,0 +0,0 @@ public class EntityTNTPrimed extends Entity {
diff --git a/Spigot-Server-Patches/Prevent-Auto-Save-if-Save-Queue-is-full.patch b/Spigot-Server-Patches/Prevent-Auto-Save-if-Save-Queue-is-full.patch
index e60eb4480e..58e1247212 100644
--- a/Spigot-Server-Patches/Prevent-Auto-Save-if-Save-Queue-is-full.patch
+++ b/Spigot-Server-Patches/Prevent-Auto-Save-if-Save-Queue-is-full.patch
@@ -7,7 +7,7 @@ If the save queue already has 50 (configurable) of chunks pending,
 then avoid processing auto save (which would add more)
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 0ac2ad70..e87c9863 100644
+index 21ae11e0a..f84fc54ec 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -23,7 +23,7 @@ index 0ac2ad70..e87c9863 100644
      private void removeCorruptTEs() {
          removeCorruptTEs = getBoolean("remove-corrupt-tile-entities", false);
 diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
-index 9e8f67ff..2b87329f 100644
+index 9e8f67ffd..2b87329f4 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 {
@@ -51,7 +51,7 @@ index 9e8f67ff..2b87329f 100644
                  }
              }
 diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
-index 8747d9a4..77943821 100644
+index 8747d9a45..77943821e 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 {
diff --git a/Spigot-Server-Patches/Toggleable-Elytra-Wall-Damage.patch b/Spigot-Server-Patches/Toggleable-Elytra-Wall-Damage.patch
index 73980633e6..b6f2e05d5d 100644
--- a/Spigot-Server-Patches/Toggleable-Elytra-Wall-Damage.patch
+++ b/Spigot-Server-Patches/Toggleable-Elytra-Wall-Damage.patch
@@ -7,7 +7,7 @@ Instead of calculating the damage taken from hitting a wall, you can
 disable it in the config.
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 70642451..64e31dd2 100644
+index 112c447e2..d182e716a 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -21,7 +21,7 @@ index 70642451..64e31dd2 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index a09d8964..20aac1f3 100644
+index edc9d94b7..f76be4da0 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/Undead-horse-leashing.patch b/Spigot-Server-Patches/Undead-horse-leashing.patch
index 9fd390f8ff..0cc678028d 100644
--- a/Spigot-Server-Patches/Undead-horse-leashing.patch
+++ b/Spigot-Server-Patches/Undead-horse-leashing.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Undead horse leashing
 default false to match vanilla, but option to allow undead horse types to be leashed.
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index f002ef27..47738624 100644
+index a4c94845b..faacd86ba 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -20,7 +20,7 @@ index f002ef27..47738624 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/EntityHorseAbstract.java b/src/main/java/net/minecraft/server/EntityHorseAbstract.java
-index 46d1ea21..dcc39236 100644
+index 46d1ea217..dcc39236f 100644
 --- a/src/main/java/net/minecraft/server/EntityHorseAbstract.java
 +++ b/src/main/java/net/minecraft/server/EntityHorseAbstract.java
 @@ -0,0 +0,0 @@ public abstract class EntityHorseAbstract extends EntityAnimal implements IInven
diff --git a/Spigot-Server-Patches/provide-a-configurable-option-to-disable-creeper-lin.patch b/Spigot-Server-Patches/provide-a-configurable-option-to-disable-creeper-lin.patch
index e0bd3ef38d..6b6909791f 100644
--- a/Spigot-Server-Patches/provide-a-configurable-option-to-disable-creeper-lin.patch
+++ b/Spigot-Server-Patches/provide-a-configurable-option-to-disable-creeper-lin.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] provide a configurable option to disable creeper lingering
 
 
 diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
-index 9a4d3f85..ca1dce68 100644
+index 79b12a6e9..7802cc1f4 100644
 --- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 +++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
 @@ -0,0 +0,0 @@ public class PaperWorldConfig {
@@ -21,7 +21,7 @@ index 9a4d3f85..ca1dce68 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/EntityCreeper.java b/src/main/java/net/minecraft/server/EntityCreeper.java
-index c872607f..8098d4d9 100644
+index c872607fc..8098d4d9f 100644
 --- a/src/main/java/net/minecraft/server/EntityCreeper.java
 +++ b/src/main/java/net/minecraft/server/EntityCreeper.java
 @@ -0,0 +0,0 @@ public class EntityCreeper extends EntityMonster {
diff --git a/scripts/importmcdev.sh b/scripts/importmcdev.sh
index 639de5a9fd..c348742e7a 100755
--- a/scripts/importmcdev.sh
+++ b/scripts/importmcdev.sh
@@ -38,6 +38,7 @@ function import {
 import AxisAlignedBB
 import BaseBlockPosition
 import BiomeBase
+import BiomeBigHills
 import BiomeJungle
 import BiomeMesa
 import BlockBeacon