diff --git a/Spigot-Server-Patches/Configurable-top-of-nether-void-damage.patch b/Spigot-Server-Patches/Configurable-top-of-nether-void-damage.patch
index 4135623e11..e3068a500e 100644
--- a/Spigot-Server-Patches/Configurable-top-of-nether-void-damage.patch
+++ b/Spigot-Server-Patches/Configurable-top-of-nether-void-damage.patch
@@ -20,7 +20,7 @@ index d3484489b..bf7af475c 100644
 +    }
  }
 diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
-index 43b802855..aadc426fd 100644
+index 011cf59c0..296bdfba5 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, KeyedObject { // Paper
diff --git a/Spigot-Server-Patches/Flag-to-disable-the-channel-limit.patch b/Spigot-Server-Patches/Flag-to-disable-the-channel-limit.patch
index 8b1eb03330..8d4fd0e67a 100644
--- a/Spigot-Server-Patches/Flag-to-disable-the-channel-limit.patch
+++ b/Spigot-Server-Patches/Flag-to-disable-the-channel-limit.patch
@@ -9,7 +9,7 @@ e.g. servers which allow and support the usage of mod packs.
 provide an optional flag to disable this check, at your own risk.
 
 diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
-index 598b210ce..c0f4cec4d 100644
+index 8b20509bc..1874c15ab 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/Player.setPlayerProfile-API.patch b/Spigot-Server-Patches/Player.setPlayerProfile-API.patch
index 682633f774..f347fda3cc 100644
--- a/Spigot-Server-Patches/Player.setPlayerProfile-API.patch
+++ b/Spigot-Server-Patches/Player.setPlayerProfile-API.patch
@@ -48,7 +48,7 @@ index 2842956bf..8aeded425 100644
                              uniqueId = i.getId();
                              // Paper end
 diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
-index 77c50ba14..598b210ce 100644
+index 77c50ba14..8b20509bc 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 @@
@@ -109,10 +109,31 @@ index 77c50ba14..598b210ce 100644
 +        for (EntityPlayer player : players) {
 +            player.getBukkitEntity().reregisterPlayer(self);
 +        }
++        refreshPlayer();
 +    }
 +    public PlayerProfile getPlayerProfile() {
 +        return new CraftPlayerProfile(this).clone();
 +    }
++
++    private void refreshPlayer() {
++        EntityPlayer handle = getHandle();
++
++        Location loc = getLocation();
++
++        PlayerConnection connection = handle.playerConnection;
++        reregisterPlayer(handle);
++
++        //Respawn the player then update their position and selected slot
++        connection.sendPacket(new PacketPlayOutRespawn(handle.dimension, handle.world.getDifficulty(), handle.world.getWorldData().getType(), handle.playerInteractManager.getGameMode()));
++        handle.updateAbilities();
++        connection.sendPacket(new PacketPlayOutPosition(loc.getX(), loc.getY(), loc.getZ(), loc.getYaw(), loc.getPitch(), new HashSet<>(), 0));
++        MinecraftServer.getServer().getPlayerList().updateClient(handle);
++
++        if (this.isOp()) {
++            this.setOp(false);
++            this.setOp(true);
++        }
++    }
 +    // Paper end
  
      public void removeDisconnectingPlayer(Player player) {