Update to Minecraft 1.20.2

This commit is contained in:
md_5 2023-09-22 02:40:00 +10:00
parent d2eba2c820
commit 17ca32d0b2
No known key found for this signature in database
GPG key ID: E8E901AC7C617C11
102 changed files with 737 additions and 732 deletions

View file

@ -1,4 +1,4 @@
From 19b43a271cbb2d332f98633f2da9e6f2069713cd Mon Sep 17 00:00:00 2001
From 53ea26d3114bcb712fea7cfaa095a79353d500ee Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 2 Jun 2013 10:36:24 +1000
Subject: [PATCH] POM Changes
@ -20,7 +20,7 @@ index 5e25d874..d506250c 100644
<!-- See http://checkstyle.sourceforge.net/config_imports.html -->
<module name="AvoidStarImport">
diff --git a/pom.xml b/pom.xml
index b5841c61..9b403cbc 100644
index 1c911797..29fbb3a5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,14 +3,14 @@
@ -31,7 +31,7 @@ index b5841c61..9b403cbc 100644
- <artifactId>bukkit</artifactId>
+ <groupId>org.spigotmc</groupId>
+ <artifactId>spigot-api</artifactId>
<version>1.20.1-R0.1-SNAPSHOT</version>
<version>1.20.2-R0.1-SNAPSHOT</version>
<packaging>jar</packaging>
- <name>Bukkit</name>
@ -43,5 +43,5 @@ index b5841c61..9b403cbc 100644
<properties>
<skipTests>true</skipTests>
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From 88e82475879f98a0a5147b46aca742fe555936cd Mon Sep 17 00:00:00 2001
From 5aca1358237fa555bda8b7ff2eb2241a4a669ae2 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Mon, 15 May 2017 15:16:15 +1000
Subject: [PATCH] Skeleton API Implementations
@ -157,5 +157,5 @@ index d650da50..f740bebe 100644
+ // Spigot end
}
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From c0551ca04496a4bf03bced50c1ba044f6f306708 Mon Sep 17 00:00:00 2001
From f88d4f285bbdffae13ad5e964eaa13557a60087f Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sun, 2 Jun 2013 10:42:57 +1000
Subject: [PATCH] Spigot Timings
@ -460,5 +460,5 @@ index 00000000..a287faff
+ */
+package org.spigotmc;
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From 3bb7708da7d2557368c85b21c63980bb739fd5ce Mon Sep 17 00:00:00 2001
From ec7713dcc90af97111fbf28336d1eda5b3123472 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 2 Jun 2013 15:20:49 +1000
Subject: [PATCH] BungeeCord Support
@ -88,5 +88,5 @@ index 498f0be8..084ca8cf 100644
* Gets the current result of the login, as an enum
*
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From 528aa19a9f560e65adb9ff7142c0e0f63caa0b23 Mon Sep 17 00:00:00 2001
From f2b08c60b26a3b69845c4385c1f1dd68ff9dc943 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Tue, 2 Jul 2013 20:32:53 +1000
Subject: [PATCH] Entity Mount and Dismount Events
@ -123,5 +123,5 @@ index 00000000..264664eb
+ */
+package org.spigotmc.event.entity;
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From 2a13f09169d2f0e4f179556b6ba06a9e6e538e8d Mon Sep 17 00:00:00 2001
From 481c6823c6867060f0e9e427339085f79dab2513 Mon Sep 17 00:00:00 2001
From: ninja- <xninja@openmailbox.org>
Date: Tue, 8 Oct 2013 14:35:58 +0200
Subject: [PATCH] Add respawn API.
@ -23,5 +23,5 @@ index 190d7f7c..b5570545 100644
@NotNull
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From 2dbdc45e8c978aa7ffe8781d09b9c24f807404e3 Mon Sep 17 00:00:00 2001
From 1ef3382546c291e0dfc5f8f0967b2e796d092149 Mon Sep 17 00:00:00 2001
From: Tux <write@imaginarycode.com>
Date: Sun, 9 Feb 2014 14:02:11 -0500
Subject: [PATCH] Add support for fetching hidden players
@ -26,5 +26,5 @@ index b5570545..052f9e69 100644
@NotNull
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From e60105ce8b90bb1f59f842cb0e52ccf949a02550 Mon Sep 17 00:00:00 2001
From ca2f210839195ac79b91009ac92d582864b62a22 Mon Sep 17 00:00:00 2001
From: drXor <mcyoungsota@gmail.com>
Date: Sun, 23 Feb 2014 16:16:29 -0400
Subject: [PATCH] Silenceable Lightning API
@ -58,5 +58,5 @@ index 4d308c5a..be347c3d 100644
@NotNull
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From b6a56ac03ac635a26d36981d2333ff82535794bb Mon Sep 17 00:00:00 2001
From f496ed3970651f1eaddb0cd78bedd4c5e0b0024c Mon Sep 17 00:00:00 2001
From: ninja <xninja@openmailbox.org>
Date: Tue, 8 Apr 2014 14:01:32 +0200
Subject: [PATCH] Add PlayerSpawnLocationEvent.
@ -74,5 +74,5 @@ index 00000000..6a2d5d84
+ */
+package org.spigotmc.event.player;
--
2.40.1
2.42.0

View file

@ -1,11 +1,11 @@
From 52183fcb49455ea8234b5e236a6a3493082fc771 Mon Sep 17 00:00:00 2001
From 180480a22e5ee04457d19f8046123088b06adbee Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Sat, 13 Dec 2014 02:59:14 +0100
Subject: [PATCH] BungeeCord Chat API
diff --git a/pom.xml b/pom.xml
index 806cbe815..068987ca1 100644
index 29fbb3a5..c35ee75d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -52,6 +52,13 @@
@ -22,7 +22,7 @@ index 806cbe815..068987ca1 100644
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
@@ -189,6 +196,7 @@
@@ -195,6 +202,7 @@
<link>https://guava.dev/releases/31.1-jre/api/docs/</link>
<link>https://javadoc.io/doc/org.yaml/snakeyaml/2.0/</link>
<link>https://javadoc.io/doc/org.jetbrains/annotations-java5/24.0.1/</link>
@ -31,7 +31,7 @@ index 806cbe815..068987ca1 100644
<tags>
<tag>
diff --git a/src/main/java/org/bukkit/ChatColor.java b/src/main/java/org/bukkit/ChatColor.java
index 6149c77df..e3f185dc9 100644
index 6149c77d..e3f185dc 100644
--- a/src/main/java/org/bukkit/ChatColor.java
+++ b/src/main/java/org/bukkit/ChatColor.java
@@ -15,91 +15,223 @@ public enum ChatColor {
@ -293,7 +293,7 @@ index 6149c77df..e3f185dc9 100644
* Gets the char value associated with this color
*
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index 8c953ae8b..75d5b2904 100644
index 8c953ae8..75d5b290 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -1717,6 +1717,24 @@ public interface Server extends PluginMessageRecipient {
@ -322,7 +322,7 @@ index 8c953ae8b..75d5b2904 100644
@NotNull
diff --git a/src/main/java/org/bukkit/command/CommandSender.java b/src/main/java/org/bukkit/command/CommandSender.java
index 4b6b95404..284be63a1 100644
index 4b6b9540..284be63a 100644
--- a/src/main/java/org/bukkit/command/CommandSender.java
+++ b/src/main/java/org/bukkit/command/CommandSender.java
@@ -57,6 +57,43 @@ public interface CommandSender extends Permissible {
@ -370,7 +370,7 @@ index 4b6b95404..284be63a1 100644
@NotNull
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index 052f9e692..3d84a75a6 100644
index 052f9e69..3d84a75a 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -1952,6 +1952,58 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@ -433,7 +433,7 @@ index 052f9e692..3d84a75a6 100644
@NotNull
diff --git a/src/main/java/org/bukkit/inventory/meta/BookMeta.java b/src/main/java/org/bukkit/inventory/meta/BookMeta.java
index f740bebee..94852d50e 100644
index f740bebe..94852d50 100644
--- a/src/main/java/org/bukkit/inventory/meta/BookMeta.java
+++ b/src/main/java/org/bukkit/inventory/meta/BookMeta.java
@@ -1,6 +1,7 @@
@ -516,5 +516,5 @@ index f740bebee..94852d50e 100644
@NotNull
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From a612161eaf2ee2495b7de4004b8cea693f87fad4 Mon Sep 17 00:00:00 2001
From 21bba4862276e7261598f410d7f7b440f02240cd Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Mon, 13 Jul 2015 19:10:15 +1000
Subject: [PATCH] Add restart API.
@ -23,5 +23,5 @@ index 75d5b290..8263a17a 100644
@NotNull
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From a22229db50a6026b49961ff593582b4cc81c3a88 Mon Sep 17 00:00:00 2001
From 930b0cb0224377361be7b99f7fb4a938f8c795bf Mon Sep 17 00:00:00 2001
From: Spottedleaf <Spottedleaf@users.noreply.github.com>
Date: Tue, 30 Jul 2019 13:47:34 -0700
Subject: [PATCH] View Distance
@ -33,5 +33,5 @@ index 33cffe3f..c4d2a13d 100644
public class Spigot {
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From b0c6bc60707504e5dbf19151d9d3d16a24cc7f1d Mon Sep 17 00:00:00 2001
From 182a25f6fb5dc98ba668a6bc5e1edb1a8db14564 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Tue, 2 Jul 2013 13:07:39 +1000
Subject: [PATCH] POM Changes
@ -6,7 +6,7 @@ Subject: [PATCH] POM Changes
Basic changes to the build system which mark the artifact as Spigot, and the necessary code changes to ensure proper functionality. Also disables the auto updater provided by CraftBukkit as it is useless to us.
diff --git a/checkstyle.xml b/checkstyle.xml
index 63914723e..01319e4f7 100644
index 63914723e1..01319e4f75 100644
--- a/checkstyle.xml
+++ b/checkstyle.xml
@@ -25,6 +25,9 @@
@ -34,7 +34,7 @@ index 63914723e..01319e4f7 100644
<!-- See http://checkstyle.sourceforge.net/config_imports.html -->
<module name="AvoidStarImport">
diff --git a/pom.xml b/pom.xml
index e0818920e..241fad1f1 100644
index 24dea13783..5e98dccdfb 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,13 +1,20 @@
@ -46,7 +46,7 @@ index e0818920e..241fad1f1 100644
+ <groupId>org.spigotmc</groupId>
+ <artifactId>spigot</artifactId>
<packaging>jar</packaging>
<version>1.20.1-R0.1-SNAPSHOT</version>
<version>1.20.2-R0.1-SNAPSHOT</version>
- <name>CraftBukkit</name>
+ <name>Spigot</name>
<url>https://www.spigotmc.org/</url>
@ -112,7 +112,7 @@ index e0818920e..241fad1f1 100644
<Specification-Title>Bukkit</Specification-Title>
<Specification-Version>${api.version}</Specification-Version>
diff --git a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
index f905d17b6..93046379d 100644
index f905d17b6b..93046379d0 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
@@ -11,7 +11,7 @@ public final class Versioning {
@ -125,5 +125,5 @@ index f905d17b6..93046379d 100644
if (stream != null) {
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From 16fd802fa504a0d082ab9429902681fcc51eadf1 Mon Sep 17 00:00:00 2001
From 5b2afb33d12b9e62508ea8cdb1752cebe0e91a45 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 2 Jun 2013 15:10:56 +1000
Subject: [PATCH] Skeleton API Implementations
@ -6,10 +6,10 @@ Subject: [PATCH] Skeleton API Implementations
This contains the basic, empty implementations for some Spigot-API extensions. They are included early in the patching progress so that compilation will still succeed midway despite the APIs only being provided by subsequent patches.
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 1e04631b0f..ed29f49526 100644
index 2acdf4052f..ba1700b154 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -2357,4 +2357,16 @@ public final class CraftServer implements Server {
@@ -2362,4 +2362,16 @@ public final class CraftServer implements Server {
public UnsafeValues getUnsafe() {
return CraftMagicNumbers.INSTANCE;
}
@ -84,10 +84,10 @@ index 7fa2588b89..e0acbada89 100644
+ // Spigot end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index b4dcaf77a1..11cb39e171 100644
index 4bc06b5ad3..6917e5f088 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -1155,4 +1155,15 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
@@ -1154,4 +1154,15 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
}
return perm;
}
@ -124,10 +124,10 @@ index 381f448b01..75d1cc7b1f 100644
+ // Spigot end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 6bb6a83c1e..0079a3276a 100644
index a3245bf71c..b887b19c82 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2137,4 +2137,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2153,4 +2153,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
public boolean isAllowingServerListings() {
return getHandle().allowsListing();
}
@ -172,5 +172,5 @@ index d522ff8813..03b5764552 100644
+ // Spigot end
}
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From 89df3983535b78b21858cc7b1c90370e5ca38085 Mon Sep 17 00:00:00 2001
From b83300bbea36300f1e1ddc914ee2d8f29a2ea34d Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 7 Jul 2013 09:32:53 +1000
Subject: [PATCH] Spigot Configuration
@ -6,7 +6,7 @@ Subject: [PATCH] Spigot Configuration
Provides the basic infrastructure to load and save the Spigot configuration file, spigot.yml
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index e59110d36..9576ac188 100644
index bfd42c143c..8d80161d23 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -178,6 +178,11 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer
@ -31,7 +31,7 @@ index e59110d36..9576ac188 100644
server.enablePlugins(org.bukkit.plugin.PluginLoadOrder.STARTUP);
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/world/level/World.java b/src/main/java/net/minecraft/world/level/World.java
index 63b48cf02..8610cb15f 100644
index 63b48cf026..8610cb15f0 100644
--- a/src/main/java/net/minecraft/world/level/World.java
+++ b/src/main/java/net/minecraft/world/level/World.java
@@ -153,6 +153,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
@ -51,10 +51,10 @@ index 63b48cf02..8610cb15f 100644
this.world = new CraftWorld((WorldServer) this, gen, biomeProvider, env);
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index ed29f4952..468659f2d 100644
index ba1700b154..32e151e78c 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -895,6 +895,7 @@ public final class CraftServer implements Server {
@@ -900,6 +900,7 @@ public final class CraftServer implements Server {
logger.log(Level.WARNING, "Failed to load banned-players.json, " + ex.getMessage());
}
@ -62,7 +62,7 @@ index ed29f4952..468659f2d 100644
for (WorldServer world : console.getAllLevels()) {
world.serverLevelData.setDifficulty(config.difficulty);
world.setSpawnSettings(config.spawnMonsters, config.spawnAnimals);
@@ -909,11 +910,13 @@ public final class CraftServer implements Server {
@@ -914,11 +915,13 @@ public final class CraftServer implements Server {
}
}
}
@ -77,7 +77,7 @@ index ed29f4952..468659f2d 100644
ignoreVanillaPermissions = commandsConfiguration.getBoolean("ignore-vanilla-permissions");
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index 66a6a0bd4..28d56ab46 100644
index 560fa9b859..7863dc4513 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -133,6 +133,14 @@ public class Main {
@ -97,7 +97,7 @@ index 66a6a0bd4..28d56ab46 100644
diff --git a/src/main/java/org/spigotmc/SpigotCommand.java b/src/main/java/org/spigotmc/SpigotCommand.java
new file mode 100644
index 000000000..7443e7334
index 0000000000..7443e7334c
--- /dev/null
+++ b/src/main/java/org/spigotmc/SpigotCommand.java
@@ -0,0 +1,44 @@
@ -147,7 +147,7 @@ index 000000000..7443e7334
+}
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
new file mode 100644
index 000000000..9ee0b4a1e
index 0000000000..9ee0b4a1e7
--- /dev/null
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -0,0 +1,140 @@
@ -293,7 +293,7 @@ index 000000000..9ee0b4a1e
+}
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
new file mode 100644
index 000000000..1cce14866
index 0000000000..1cce14866a
--- /dev/null
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -0,0 +1,82 @@
@ -380,5 +380,5 @@ index 000000000..1cce14866
+ }
+}
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From f790a848a8056b9ea27a5ae615c31087c42a2d1c Mon Sep 17 00:00:00 2001
From b8bbfdc6215a354f289318396c53d03a8622655e Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Mon, 7 Mar 2016 22:14:13 +1100
Subject: [PATCH] Crop Growth Rates
@ -6,7 +6,7 @@ Subject: [PATCH] Crop Growth Rates
Allows configuring the growth rates of crops as a percentage of their normal growth rate.
diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java
index 36b3867d0..2df6560e5 100644
index 36b3867d07..2df6560e5f 100644
--- a/src/main/java/net/minecraft/world/level/block/Block.java
+++ b/src/main/java/net/minecraft/world/level/block/Block.java
@@ -529,6 +529,18 @@ public class Block extends BlockBase implements IMaterial {
@ -29,7 +29,7 @@ index 36b3867d0..2df6560e5 100644
private final IBlockData first;
diff --git a/src/main/java/net/minecraft/world/level/block/BlockBamboo.java b/src/main/java/net/minecraft/world/level/block/BlockBamboo.java
index adb32895a..b6cdeaec6 100644
index 463db1d8e2..38a7a72cf9 100644
--- a/src/main/java/net/minecraft/world/level/block/BlockBamboo.java
+++ b/src/main/java/net/minecraft/world/level/block/BlockBamboo.java
@@ -127,7 +127,7 @@ public class BlockBamboo extends Block implements IBlockFragilePlantElement {
@ -42,7 +42,7 @@ index adb32895a..b6cdeaec6 100644
if (i < 16) {
diff --git a/src/main/java/net/minecraft/world/level/block/BlockBambooSapling.java b/src/main/java/net/minecraft/world/level/block/BlockBambooSapling.java
index c02c220e8..5d80cc5dc 100644
index 9c6101e00c..97bd5b81d9 100644
--- a/src/main/java/net/minecraft/world/level/block/BlockBambooSapling.java
+++ b/src/main/java/net/minecraft/world/level/block/BlockBambooSapling.java
@@ -38,7 +38,7 @@ public class BlockBambooSapling extends Block implements IBlockFragilePlantEleme
@ -55,7 +55,7 @@ index c02c220e8..5d80cc5dc 100644
}
diff --git a/src/main/java/net/minecraft/world/level/block/BlockCactus.java b/src/main/java/net/minecraft/world/level/block/BlockCactus.java
index 3590e11e3..a1d3aaa14 100644
index 3590e11e37..a1d3aaa14c 100644
--- a/src/main/java/net/minecraft/world/level/block/BlockCactus.java
+++ b/src/main/java/net/minecraft/world/level/block/BlockCactus.java
@@ -58,13 +58,14 @@ public class BlockCactus extends Block {
@ -76,7 +76,7 @@ index 3590e11e3..a1d3aaa14 100644
}
diff --git a/src/main/java/net/minecraft/world/level/block/BlockCocoa.java b/src/main/java/net/minecraft/world/level/block/BlockCocoa.java
index e3bdcaef5..d1d3084b2 100644
index 403034f4bf..e8096f443c 100644
--- a/src/main/java/net/minecraft/world/level/block/BlockCocoa.java
+++ b/src/main/java/net/minecraft/world/level/block/BlockCocoa.java
@@ -52,7 +52,7 @@ public class BlockCocoa extends BlockFacingHorizontal implements IBlockFragilePl
@ -89,7 +89,7 @@ index e3bdcaef5..d1d3084b2 100644
if (i < 2) {
diff --git a/src/main/java/net/minecraft/world/level/block/BlockCrops.java b/src/main/java/net/minecraft/world/level/block/BlockCrops.java
index f09b1f2d3..52a5196c8 100644
index b9b4bf7a75..fd06590826 100644
--- a/src/main/java/net/minecraft/world/level/block/BlockCrops.java
+++ b/src/main/java/net/minecraft/world/level/block/BlockCrops.java
@@ -77,7 +77,20 @@ public class BlockCrops extends BlockPlant implements IBlockFragilePlantElement
@ -115,7 +115,7 @@ index f09b1f2d3..52a5196c8 100644
}
}
diff --git a/src/main/java/net/minecraft/world/level/block/BlockGrowingTop.java b/src/main/java/net/minecraft/world/level/block/BlockGrowingTop.java
index 9dbb51a21..8347bfd2a 100644
index a3dafb259a..8d79f29046 100644
--- a/src/main/java/net/minecraft/world/level/block/BlockGrowingTop.java
+++ b/src/main/java/net/minecraft/world/level/block/BlockGrowingTop.java
@@ -40,7 +40,19 @@ public abstract class BlockGrowingTop extends BlockGrowingAbstract implements IB
@ -140,7 +140,7 @@ index 9dbb51a21..8347bfd2a 100644
if (this.canGrowInto(worldserver.getBlockState(blockposition1))) {
diff --git a/src/main/java/net/minecraft/world/level/block/BlockMushroom.java b/src/main/java/net/minecraft/world/level/block/BlockMushroom.java
index 735ac64de..36c5c7d2c 100644
index 8d2ef446bd..ae3753eba0 100644
--- a/src/main/java/net/minecraft/world/level/block/BlockMushroom.java
+++ b/src/main/java/net/minecraft/world/level/block/BlockMushroom.java
@@ -40,7 +40,7 @@ public class BlockMushroom extends BlockPlant implements IBlockFragilePlantEleme
@ -153,7 +153,7 @@ index 735ac64de..36c5c7d2c 100644
boolean flag = true;
Iterator iterator = BlockPosition.betweenClosed(blockposition.offset(-4, -1, -4), blockposition.offset(4, 1, 4)).iterator();
diff --git a/src/main/java/net/minecraft/world/level/block/BlockNetherWart.java b/src/main/java/net/minecraft/world/level/block/BlockNetherWart.java
index 4c98e09c2..626d93a4d 100644
index 4c98e09c24..626d93a4da 100644
--- a/src/main/java/net/minecraft/world/level/block/BlockNetherWart.java
+++ b/src/main/java/net/minecraft/world/level/block/BlockNetherWart.java
@@ -44,7 +44,7 @@ public class BlockNetherWart extends BlockPlant {
@ -166,7 +166,7 @@ index 4c98e09c2..626d93a4d 100644
org.bukkit.craftbukkit.event.CraftEventFactory.handleBlockGrowEvent(worldserver, blockposition, iblockdata, 2); // CraftBukkit
}
diff --git a/src/main/java/net/minecraft/world/level/block/BlockReed.java b/src/main/java/net/minecraft/world/level/block/BlockReed.java
index a1908f2f7..7c938cdd4 100644
index a1908f2f7c..7c938cdd4c 100644
--- a/src/main/java/net/minecraft/world/level/block/BlockReed.java
+++ b/src/main/java/net/minecraft/world/level/block/BlockReed.java
@@ -55,10 +55,11 @@ public class BlockReed extends Block {
@ -184,7 +184,7 @@ index a1908f2f7..7c938cdd4 100644
}
}
diff --git a/src/main/java/net/minecraft/world/level/block/BlockSapling.java b/src/main/java/net/minecraft/world/level/block/BlockSapling.java
index 5928ea2ac..20a946f89 100644
index 8964b1cebd..c95aec95b0 100644
--- a/src/main/java/net/minecraft/world/level/block/BlockSapling.java
+++ b/src/main/java/net/minecraft/world/level/block/BlockSapling.java
@@ -44,7 +44,7 @@ public class BlockSapling extends BlockPlant implements IBlockFragilePlantElemen
@ -197,7 +197,7 @@ index 5928ea2ac..20a946f89 100644
}
diff --git a/src/main/java/net/minecraft/world/level/block/BlockStem.java b/src/main/java/net/minecraft/world/level/block/BlockStem.java
index 0c2210c9b..442df32c9 100644
index bd06abf0d7..f6c8e7d824 100644
--- a/src/main/java/net/minecraft/world/level/block/BlockStem.java
+++ b/src/main/java/net/minecraft/world/level/block/BlockStem.java
@@ -54,7 +54,7 @@ public class BlockStem extends BlockPlant implements IBlockFragilePlantElement {
@ -210,7 +210,7 @@ index 0c2210c9b..442df32c9 100644
if (i < 7) {
diff --git a/src/main/java/net/minecraft/world/level/block/BlockSweetBerryBush.java b/src/main/java/net/minecraft/world/level/block/BlockSweetBerryBush.java
index 7375b5093..40ce1edd7 100644
index 2912683421..1be4282c94 100644
--- a/src/main/java/net/minecraft/world/level/block/BlockSweetBerryBush.java
+++ b/src/main/java/net/minecraft/world/level/block/BlockSweetBerryBush.java
@@ -67,7 +67,7 @@ public class BlockSweetBerryBush extends BlockPlant implements IBlockFragilePlan
@ -223,7 +223,7 @@ index 7375b5093..40ce1edd7 100644
if (!CraftEventFactory.handleBlockGrowEvent(worldserver, blockposition, iblockdata1, 2)) return; // CraftBukkit
diff --git a/src/main/java/net/minecraft/world/level/block/BlockVine.java b/src/main/java/net/minecraft/world/level/block/BlockVine.java
index aaf5de372..2d742af3c 100644
index e2bfcf2504..587eeac32c 100644
--- a/src/main/java/net/minecraft/world/level/block/BlockVine.java
+++ b/src/main/java/net/minecraft/world/level/block/BlockVine.java
@@ -179,7 +179,7 @@ public class BlockVine extends Block {
@ -236,7 +236,7 @@ index aaf5de372..2d742af3c 100644
BlockPosition blockposition1 = blockposition.above();
BlockPosition blockposition2;
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index 1cce14866..f42972427 100644
index 1cce14866a..f42972427b 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -79,4 +79,59 @@ public class SpigotWorldConfig
@ -300,5 +300,5 @@ index 1cce14866..f42972427 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From edb229caf836092878fb2b66f6b60ef8cab9c4a4 Mon Sep 17 00:00:00 2001
From 519f437fa5bc84f1813b1d4b4c4a5132f0b87776 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sat, 23 Mar 2013 09:46:33 +1100
Subject: [PATCH] Merge tweaks and configuration
@ -31,10 +31,10 @@ index d4f6aeced3..15d0290ba7 100644
} else {
merge(entityitem, itemstack1, this, itemstack);
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
index d0227995ed..515408fd70 100644
index a5906de1ed..993b594b82 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -689,6 +689,23 @@ public class CraftEventFactory {
@@ -691,6 +691,23 @@ public class CraftEventFactory {
return true;
}
event = CraftEventFactory.callLightningStrikeEvent((LightningStrike) entity.getBukkitEntity(), cause);
@ -82,5 +82,5 @@ index f42972427b..5ff085b9e6 100644
+ }
}
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From 528ae4171e135f6e23dc8a48d92b842f7e0bae79 Mon Sep 17 00:00:00 2001
From 8a0d5c16b2a049a7bebf980ccd48647ef0398069 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Tue, 25 Mar 2014 16:10:01 +1100
Subject: [PATCH] Async Operation Catching
@ -6,10 +6,10 @@ Subject: [PATCH] Async Operation Catching
Catch and throw an exception when a potentially unsafe operation occurs on a thread other than the main server thread.
diff --git a/src/main/java/net/minecraft/server/level/PlayerChunkMap.java b/src/main/java/net/minecraft/server/level/PlayerChunkMap.java
index ad378eebf1..0fea382502 100644
index 72e1ebb2e2..d2f7178031 100644
--- a/src/main/java/net/minecraft/server/level/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/PlayerChunkMap.java
@@ -1313,6 +1313,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -1299,6 +1299,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
}
protected void addEntity(Entity entity) {
@ -17,7 +17,7 @@ index ad378eebf1..0fea382502 100644
if (!(entity instanceof EntityComplexPart)) {
EntityTypes<?> entitytypes = entity.getType();
int i = entitytypes.clientTrackingRange() * 16;
@@ -1348,6 +1349,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -1334,6 +1335,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
}
protected void removeEntity(Entity entity) {
@ -25,7 +25,7 @@ index ad378eebf1..0fea382502 100644
if (entity instanceof EntityPlayer) {
EntityPlayer entityplayer = (EntityPlayer) entity;
@@ -1600,6 +1602,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -1557,6 +1559,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
}
public void removePlayer(EntityPlayer entityplayer) {
@ -33,19 +33,19 @@ index ad378eebf1..0fea382502 100644
if (this.seenBy.remove(entityplayer.connection)) {
this.serverEntity.removePairing(entityplayer);
}
@@ -1607,6 +1610,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -1564,6 +1567,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
}
public void updatePlayer(EntityPlayer entityplayer) {
+ org.spigotmc.AsyncCatcher.catchOp("player tracker update"); // Spigot
if (entityplayer != this.entity) {
Vec3D vec3d = entityplayer.position().subtract(this.entity.position());
double d0 = (double) Math.min(this.getEffectiveRange(), PlayerChunkMap.this.viewDistance * 16);
int i = PlayerChunkMap.this.getPlayerViewDistance(entityplayer);
diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java
index 854112e1b7..d1498a02de 100644
index 046e1483d3..2437fc257b 100644
--- a/src/main/java/net/minecraft/server/level/WorldServer.java
+++ b/src/main/java/net/minecraft/server/level/WorldServer.java
@@ -1052,6 +1052,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1050,6 +1050,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
// CraftBukkit start
private boolean addEntity(Entity entity, CreatureSpawnEvent.SpawnReason spawnReason) {
@ -53,7 +53,7 @@ index 854112e1b7..d1498a02de 100644
if (entity.isRemoved()) {
// WorldServer.LOGGER.warn("Tried to add entity {} but it was marked as removed already", EntityTypes.getKey(entity.getType())); // CraftBukkit
return false;
@@ -1859,6 +1860,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1848,6 +1849,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@Override
public LevelEntityGetter<Entity> getEntities() {
@ -61,7 +61,7 @@ index 854112e1b7..d1498a02de 100644
return this.entityManager.getEntityGetter();
}
@@ -1945,6 +1947,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1934,6 +1936,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
}
public void onTrackingStart(Entity entity) {
@ -69,7 +69,7 @@ index 854112e1b7..d1498a02de 100644
WorldServer.this.getChunkSource().addEntity(entity);
if (entity instanceof EntityPlayer) {
EntityPlayer entityplayer = (EntityPlayer) entity;
@@ -1982,6 +1985,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1971,6 +1974,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
}
public void onTrackingEnd(Entity entity) {
@ -78,7 +78,7 @@ index 854112e1b7..d1498a02de 100644
if (entity instanceof EntityPlayer) {
EntityPlayer entityplayer = (EntityPlayer) entity;
diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java
index 2f4b559c2d..a7110e06c7 100644
index cabfdd41b0..d0ba845d01 100644
--- a/src/main/java/net/minecraft/world/entity/EntityLiving.java
+++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java
@@ -1102,6 +1102,7 @@ public abstract class EntityLiving extends Entity implements Attackable {
@ -90,19 +90,19 @@ index 2f4b559c2d..a7110e06c7 100644
effectsToProcess.add(new ProcessableEffect(mobeffect, cause));
return true;
diff --git a/src/main/java/net/minecraft/world/item/crafting/CraftingManager.java b/src/main/java/net/minecraft/world/item/crafting/CraftingManager.java
index c7912e8ec5..6751a30592 100644
index 7917e442cd..1efa5da7a5 100644
--- a/src/main/java/net/minecraft/world/item/crafting/CraftingManager.java
+++ b/src/main/java/net/minecraft/world/item/crafting/CraftingManager.java
@@ -86,6 +86,7 @@ public class CraftingManager extends ResourceDataJson {
@@ -89,6 +89,7 @@ public class CraftingManager extends ResourceDataJson {
// CraftBukkit start
public void addRecipe(IRecipe<?> irecipe) {
public void addRecipe(RecipeHolder<?> irecipe) {
+ org.spigotmc.AsyncCatcher.catchOp("Recipe Add"); // Spigot
Object2ObjectLinkedOpenHashMap<MinecraftKey, IRecipe<?>> map = this.recipes.get(irecipe.getType()); // CraftBukkit
Object2ObjectLinkedOpenHashMap<MinecraftKey, RecipeHolder<?>> map = this.recipes.get(irecipe.value().getType()); // CraftBukkit
if (byName.containsKey(irecipe.getId()) || map.containsKey(irecipe.getId())) {
if (byName.containsKey(irecipe.id()) || map.containsKey(irecipe.id())) {
diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBase.java b/src/main/java/net/minecraft/world/level/block/state/BlockBase.java
index eb4100f53e..28a548dee9 100644
index 1a8d0e5688..148c019544 100644
--- a/src/main/java/net/minecraft/world/level/block/state/BlockBase.java
+++ b/src/main/java/net/minecraft/world/level/block/state/BlockBase.java
@@ -145,11 +145,14 @@ public abstract class BlockBase implements FeatureElement {
@ -122,10 +122,10 @@ index eb4100f53e..28a548dee9 100644
world.removeBlockEntity(blockposition);
}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 468659f2de..8fe397a1e1 100644
index 32e151e78c..f5c3c793ea 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -850,6 +850,7 @@ public final class CraftServer implements Server {
@@ -855,6 +855,7 @@ public final class CraftServer implements Server {
public boolean dispatchCommand(CommandSender sender, String commandLine) {
Preconditions.checkArgument(sender != null, "sender cannot be null");
Preconditions.checkArgument(commandLine != null, "commandLine cannot be null");
@ -186,10 +186,10 @@ index 8dc870a5d9..8621c949e7 100644
boolean oldSave = world.noSave;
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index 11cb39e171..402dd73534 100644
index 6917e5f088..05ce211d50 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -570,6 +570,7 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
@@ -569,6 +569,7 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
@Override
public List<org.bukkit.entity.Entity> getNearbyEntities(double x, double y, double z) {
Preconditions.checkState(!entity.generation, "Cannot get nearby entities during world generation");
@ -198,10 +198,10 @@ index 11cb39e171..402dd73534 100644
List<Entity> notchEntityList = entity.level().getEntities(entity, entity.getBoundingBox().inflate(x, y, z), Predicates.alwaysTrue());
List<org.bukkit.entity.Entity> bukkitEntityList = new java.util.ArrayList<org.bukkit.entity.Entity>(notchEntityList.size());
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 0079a3276a..768ea1c3dd 100644
index b887b19c82..b4477e693c 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -386,6 +386,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -388,6 +388,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@Override
public void kickPlayer(String message) {
@ -210,7 +210,7 @@ index 0079a3276a..768ea1c3dd 100644
getHandle().connection.disconnect(message == null ? "" : message);
diff --git a/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java b/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java
index 6c147a74bd..01554c4139 100644
index 1713b8698e..a9acf1d067 100644
--- a/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java
+++ b/src/main/java/org/bukkit/craftbukkit/scoreboard/CraftScoreboardManager.java
@@ -41,6 +41,7 @@ public final class CraftScoreboardManager implements ScoreboardManager {
@ -257,5 +257,5 @@ index 0000000000..aeed769725
+ }
+}
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From 12431c238ae3348f18c25a31034a7a9015d51659 Mon Sep 17 00:00:00 2001
From 5c999cb746470abd3401df0dd11c8bcb623d3b2a Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sat, 23 Mar 2013 09:52:41 +1100
Subject: [PATCH] View Distance
@ -6,7 +6,7 @@ Subject: [PATCH] View Distance
This commit allows the user to select per world view distances.
diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java
index d1498a02d..06d5cfc28 100644
index 2437fc257b..bce7deb65c 100644
--- a/src/main/java/net/minecraft/server/level/WorldServer.java
+++ b/src/main/java/net/minecraft/server/level/WorldServer.java
@@ -279,8 +279,8 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@ -21,30 +21,30 @@ index d1498a02d..06d5cfc28 100644
Objects.requireNonNull(this.entityManager);
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 7c673e0ea..5b8b8aede 100644
index 7b1dd5edbd..1fc1e46e73 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -245,7 +245,8 @@ public abstract class PlayerList {
boolean flag = gamerules.getBoolean(GameRules.RULE_DO_IMMEDIATE_RESPAWN);
@@ -235,7 +235,8 @@ public abstract class PlayerList {
boolean flag1 = gamerules.getBoolean(GameRules.RULE_REDUCEDDEBUGINFO);
boolean flag2 = gamerules.getBoolean(GameRules.RULE_LIMITED_CRAFTING);
- playerconnection.send(new PacketPlayOutLogin(entityplayer.getId(), worlddata.isHardcore(), entityplayer.gameMode.getGameModeForPlayer(), entityplayer.gameMode.getPreviousGameModeForPlayer(), this.server.levelKeys(), this.synchronizedRegistries, worldserver1.dimensionTypeId(), worldserver1.dimension(), BiomeManager.obfuscateSeed(worldserver1.getSeed()), this.getMaxPlayers(), this.viewDistance, this.simulationDistance, flag1, !flag, worldserver1.isDebug(), worldserver1.isFlat(), entityplayer.getLastDeathLocation(), entityplayer.getPortalCooldown()));
- playerconnection.send(new PacketPlayOutLogin(entityplayer.getId(), worlddata.isHardcore(), this.server.levelKeys(), this.getMaxPlayers(), this.viewDistance, this.simulationDistance, flag1, !flag, flag2, entityplayer.createCommonSpawnInfo(worldserver1)));
+ // Spigot - view distance
+ playerconnection.send(new PacketPlayOutLogin(entityplayer.getId(), worlddata.isHardcore(), entityplayer.gameMode.getGameModeForPlayer(), entityplayer.gameMode.getPreviousGameModeForPlayer(), this.server.levelKeys(), this.synchronizedRegistries, worldserver1.dimensionTypeId(), worldserver1.dimension(), BiomeManager.obfuscateSeed(worldserver1.getSeed()), this.getMaxPlayers(), worldserver1.spigotConfig.viewDistance, worldserver1.spigotConfig.simulationDistance, flag1, !flag, worldserver1.isDebug(), worldserver1.isFlat(), entityplayer.getLastDeathLocation(), entityplayer.getPortalCooldown()));
+ playerconnection.send(new PacketPlayOutLogin(entityplayer.getId(), worlddata.isHardcore(), this.server.levelKeys(), this.getMaxPlayers(), worldserver1.spigotConfig.viewDistance, worldserver1.spigotConfig.simulationDistance, flag1, !flag, flag2, entityplayer.createCommonSpawnInfo(worldserver1)));
entityplayer.getBukkitEntity().sendSupportedChannels(); // CraftBukkit
playerconnection.send(new ClientboundUpdateEnabledFeaturesPacket(FeatureFlags.REGISTRY.toNames(worldserver1.enabledFeatures())));
playerconnection.send(new PacketPlayOutCustomPayload(PacketPlayOutCustomPayload.BRAND, (new PacketDataSerializer(Unpooled.buffer())).writeUtf(this.getServer().getServerModName())));
playerconnection.send(new PacketPlayOutServerDifficulty(worlddata.getDifficulty(), worlddata.isDifficultyLocked()));
playerconnection.send(new PacketPlayOutAbilities(entityplayer.getAbilities()));
@@ -776,6 +777,8 @@ public abstract class PlayerList {
// CraftBukkit start
WorldData worlddata = worldserver1.getLevelData();
entityplayer1.connection.send(new PacketPlayOutRespawn(worldserver1.dimensionTypeId(), worldserver1.dimension(), BiomeManager.obfuscateSeed(worldserver1.getSeed()), entityplayer1.gameMode.getGameModeForPlayer(), entityplayer1.gameMode.getPreviousGameModeForPlayer(), worldserver1.isDebug(), worldserver1.isFlat(), (byte) i, entityplayer1.getLastDeathLocation(), entityplayer1.getPortalCooldown()));
WorldData worlddata = worldserver2.getLevelData();
entityplayer1.connection.send(new PacketPlayOutRespawn(entityplayer1.createCommonSpawnInfo(worldserver2), (byte) i));
+ entityplayer1.connection.send(new PacketPlayOutViewDistance(worldserver1.spigotConfig.viewDistance)); // Spigot
+ entityplayer1.connection.send(new ClientboundSetSimulationDistancePacket(worldserver1.spigotConfig.simulationDistance)); // Spigot
entityplayer1.spawnIn(worldserver1);
entityplayer1.unsetRemoved();
entityplayer1.connection.teleport(CraftLocation.toBukkit(entityplayer1.position(), worldserver1.getWorld(), entityplayer1.getYRot(), entityplayer1.getXRot()));
entityplayer1.connection.teleport(CraftLocation.toBukkit(entityplayer1.position(), worldserver2.getWorld(), entityplayer1.getYRot(), entityplayer1.getXRot())); // CraftBukkit
entityplayer1.connection.send(new PacketPlayOutSpawnPosition(worldserver1.getSharedSpawnPos(), worldserver1.getSharedSpawnAngle()));
entityplayer1.connection.send(new PacketPlayOutServerDifficulty(worlddata.getDifficulty(), worlddata.isDifficultyLocked()));
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index 62edfb463..2fc4b138c 100644
index 8621c949e7..f15c5e41dc 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -1932,6 +1932,18 @@ public class CraftWorld extends CraftRegionAccessor implements World {
@ -67,7 +67,7 @@ index 62edfb463..2fc4b138c 100644
private final org.bukkit.World.Spigot spigot = new org.bukkit.World.Spigot()
{
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index 5ff085b9e..acaf90301 100644
index 5ff085b9e6..acaf903011 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -148,4 +148,36 @@ public class SpigotWorldConfig
@ -108,5 +108,5 @@ index 5ff085b9e..acaf90301 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From 1ac50057ba77dc4af00708c14ceb0cb58c5de06c Mon Sep 17 00:00:00 2001
From b430f85e6dfaf831b158ca07fed67433ac8d2a1a Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 10 Jan 2013 00:18:11 -0500
Subject: [PATCH] Spigot Timings
@ -6,19 +6,19 @@ Subject: [PATCH] Spigot Timings
Overhauls the Timings System adding performance tracking all around the Minecraft Server
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 26508dde06..83934abe5e 100644
index 6b1329ad84..a7171e995e 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -191,6 +191,8 @@ import org.bukkit.event.player.AsyncPlayerChatPreviewEvent;
@@ -187,6 +187,8 @@ import org.bukkit.craftbukkit.Main;
import org.bukkit.event.server.ServerLoadEvent;
// CraftBukkit end
+import org.bukkit.craftbukkit.SpigotTimings; // Spigot
+
public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTask> implements ICommandListener, AutoCloseable {
public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTask> implements ServerInfo, ICommandListener, AutoCloseable {
public static final Logger LOGGER = LogUtils.getLogger();
@@ -1149,6 +1151,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1131,6 +1133,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
public void onServerExit() {}
public void tickServer(BooleanSupplier booleansupplier) {
@ -26,7 +26,7 @@ index 26508dde06..83934abe5e 100644
long i = SystemUtils.getNanos();
++this.tickCount;
@@ -1159,11 +1162,13 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1141,11 +1144,13 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
if (autosavePeriod > 0 && this.tickCount % autosavePeriod == 0) { // CraftBukkit
@ -40,19 +40,19 @@ index 26508dde06..83934abe5e 100644
}
this.profiler.push("tallying");
@@ -1174,6 +1179,8 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1156,6 +1161,8 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.frameTimer.logFrameDuration(k - i);
this.logTickTime(k - i);
this.profiler.pop();
+ SpigotTimings.serverTickTimer.stopTiming(); // Spigot
+ org.spigotmc.CustomTimingsHandler.tick(); // Spigot
}
private ServerPing buildServerStatus() {
@@ -1205,18 +1212,25 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
public void tickChildren(BooleanSupplier booleansupplier) {
protected void logTickTime(long i) {}
@@ -1192,18 +1199,25 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.getPlayerList().getPlayers().forEach((entityplayer) -> {
entityplayer.connection.suspendFlushing();
});
+ SpigotTimings.schedulerTimer.startTiming(); // Spigot
this.server.getScheduler().mainThreadHeartbeat(this.tickCount); // CraftBukkit
+ SpigotTimings.schedulerTimer.stopTiming(); // Spigot
@ -75,7 +75,7 @@ index 26508dde06..83934abe5e 100644
// Send time updates to everyone, it will get the right time from the world the player is in.
if (this.tickCount % 20 == 0) {
for (int i = 0; i < this.getPlayerList().players.size(); ++i) {
@@ -1224,6 +1238,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1211,6 +1225,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
entityplayer.connection.send(new PacketPlayOutUpdateTime(entityplayer.level().getGameTime(), entityplayer.getPlayerTime(), entityplayer.level().getGameRules().getBoolean(GameRules.RULE_DAYLIGHT))); // Add support for per player time
}
}
@ -83,7 +83,7 @@ index 26508dde06..83934abe5e 100644
while (iterator.hasNext()) {
WorldServer worldserver = (WorldServer) iterator.next();
@@ -1242,7 +1257,9 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1229,7 +1244,9 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.profiler.push("tick");
try {
@ -93,7 +93,7 @@ index 26508dde06..83934abe5e 100644
} catch (Throwable throwable) {
CrashReport crashreport = CrashReport.forThrowable(throwable, "Exception ticking world");
@@ -1255,18 +1272,24 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1242,18 +1259,24 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
this.profiler.popPush("connection");
@ -116,10 +116,10 @@ index 26508dde06..83934abe5e 100644
}
+ SpigotTimings.tickablesTimer.stopTiming(); // Spigot
this.profiler.pop();
}
this.profiler.popPush("send chunks");
iterator = this.playerList.getPlayers().iterator();
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index d2f3fc712d..e026dacece 100644
index 8d80161d23..76d7daee26 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -59,6 +59,7 @@ import org.apache.logging.log4j.Level;
@ -147,7 +147,7 @@ index d2f3fc712d..e026dacece 100644
@Override
diff --git a/src/main/java/net/minecraft/server/level/ChunkProviderServer.java b/src/main/java/net/minecraft/server/level/ChunkProviderServer.java
index 30c05aadbe..b34aa8eabf 100644
index caab95f0fa..0e044ed950 100644
--- a/src/main/java/net/minecraft/server/level/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/level/ChunkProviderServer.java
@@ -146,11 +146,13 @@ public class ChunkProviderServer extends IChunkProvider {
@ -205,7 +205,7 @@ index 30c05aadbe..b34aa8eabf 100644
}
diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java
index 06d5cfc28f..dc84b69542 100644
index bce7deb65c..74782ff5af 100644
--- a/src/main/java/net/minecraft/server/level/WorldServer.java
+++ b/src/main/java/net/minecraft/server/level/WorldServer.java
@@ -171,6 +171,7 @@ import net.minecraft.world.level.storage.WorldDataServer;
@ -216,7 +216,7 @@ index 06d5cfc28f..dc84b69542 100644
import org.bukkit.craftbukkit.event.CraftEventFactory;
import org.bukkit.craftbukkit.generator.CustomWorldChunkManager;
import org.bukkit.craftbukkit.util.CraftNamespacedKey;
@@ -381,6 +382,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -373,6 +374,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
this.updateSkyBrightness();
this.tickTime();
gameprofilerfiller.popPush("tickPending");
@ -224,7 +224,7 @@ index 06d5cfc28f..dc84b69542 100644
if (!this.isDebug()) {
j = this.getGameTime();
gameprofilerfiller.push("blockTicks");
@@ -389,13 +391,16 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -381,13 +383,16 @@ public class WorldServer extends World implements GeneratorAccessSeed {
this.fluidTicks.tick(j, 65536, this::tickFluid);
gameprofilerfiller.pop();
}
@ -241,7 +241,7 @@ index 06d5cfc28f..dc84b69542 100644
this.handlingTick = false;
gameprofilerfiller.pop();
boolean flag = true || !this.players.isEmpty() || !this.getForcedChunks().isEmpty(); // CraftBukkit - this prevents entity cleanup, other issues on servers with no players
@@ -406,12 +411,14 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -398,12 +403,14 @@ public class WorldServer extends World implements GeneratorAccessSeed {
if (flag || this.emptyTime++ < 300) {
gameprofilerfiller.push("entities");
@ -256,7 +256,7 @@ index 06d5cfc28f..dc84b69542 100644
this.entityTickList.forEach((entity) -> {
if (!entity.isRemoved()) {
if (false && this.shouldDiscardEntity(entity)) { // CraftBukkit - We prevent spawning in general, so this butchering is not needed
@@ -438,6 +445,8 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -430,6 +437,8 @@ public class WorldServer extends World implements GeneratorAccessSeed {
}
}
});
@ -265,7 +265,7 @@ index 06d5cfc28f..dc84b69542 100644
gameprofilerfiller.pop();
this.tickBlockEntities();
}
@@ -836,6 +845,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -834,6 +843,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
}
public void tickNonPassenger(Entity entity) {
@ -273,7 +273,7 @@ index 06d5cfc28f..dc84b69542 100644
entity.setOldPosAndRot();
GameProfilerFiller gameprofilerfiller = this.getProfiler();
@@ -854,6 +864,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -852,6 +862,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
this.tickPassenger(entity, entity1);
}
@ -282,10 +282,10 @@ index 06d5cfc28f..dc84b69542 100644
}
diff --git a/src/main/java/net/minecraft/server/network/PlayerConnection.java b/src/main/java/net/minecraft/server/network/PlayerConnection.java
index 98e0e9f821..4ce9f0ee70 100644
index a5795700ea..c43cad1579 100644
--- a/src/main/java/net/minecraft/server/network/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/network/PlayerConnection.java
@@ -342,6 +342,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -320,6 +320,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
@Override
public void tick() {
@ -293,7 +293,7 @@ index 98e0e9f821..4ce9f0ee70 100644
if (this.ackBlockChangesUpTo > -1) {
this.send(new ClientboundBlockChangedAckPacket(this.ackBlockChangesUpTo));
this.ackBlockChangesUpTo = -1;
@@ -422,6 +423,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -386,6 +387,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
this.player.resetLastActionTime(); // CraftBukkit - SPIGOT-854
this.disconnect(IChatBaseComponent.translatable("multiplayer.disconnect.idling"));
}
@ -301,7 +301,7 @@ index 98e0e9f821..4ce9f0ee70 100644
}
@@ -2099,6 +2101,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -1964,6 +1966,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
}
private void handleCommand(String s) {
@ -309,7 +309,7 @@ index 98e0e9f821..4ce9f0ee70 100644
this.LOGGER.info(this.player.getScoreboardName() + " issued server command: " + s);
CraftPlayer player = this.getCraftPlayer();
@@ -2107,6 +2110,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -1972,6 +1975,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
this.cserver.getPluginManager().callEvent(event);
if (event.isCancelled()) {
@ -317,7 +317,7 @@ index 98e0e9f821..4ce9f0ee70 100644
return;
}
@@ -2118,6 +2122,8 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -1983,6 +1987,8 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
player.sendMessage(org.bukkit.ChatColor.RED + "An internal error occurred while attempting to perform this command");
java.util.logging.Logger.getLogger(PlayerConnection.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
return;
@ -327,7 +327,7 @@ index 98e0e9f821..4ce9f0ee70 100644
}
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index f23828d40b..0a90eff46e 100644
index 7f6c1c1975..b7a91c91f8 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -136,6 +136,7 @@ import org.bukkit.craftbukkit.event.CraftPortalEvent;
@ -363,7 +363,7 @@ index f23828d40b..0a90eff46e 100644
private boolean isStateClimbable(IBlockData iblockdata) {
diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java
index a7110e06c7..5f04515ef9 100644
index d0ba845d01..6242461565 100644
--- a/src/main/java/net/minecraft/world/entity/EntityLiving.java
+++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java
@@ -143,6 +143,8 @@ import org.bukkit.event.entity.EntityTeleportEvent;
@ -375,7 +375,7 @@ index a7110e06c7..5f04515ef9 100644
public abstract class EntityLiving extends Entity implements Attackable {
private static final Logger LOGGER = LogUtils.getLogger();
@@ -2827,6 +2829,7 @@ public abstract class EntityLiving extends Entity implements Attackable {
@@ -2862,6 +2864,7 @@ public abstract class EntityLiving extends Entity implements Attackable {
@Override
public void tick() {
@ -383,7 +383,7 @@ index a7110e06c7..5f04515ef9 100644
super.tick();
this.updatingUsingItem();
this.updateSwimAmount();
@@ -2868,7 +2871,9 @@ public abstract class EntityLiving extends Entity implements Attackable {
@@ -2903,7 +2906,9 @@ public abstract class EntityLiving extends Entity implements Attackable {
}
if (!this.isRemoved()) {
@ -393,23 +393,23 @@ index a7110e06c7..5f04515ef9 100644
}
double d0 = this.getX() - this.xo;
@@ -2951,6 +2956,7 @@ public abstract class EntityLiving extends Entity implements Attackable {
this.setXRot(0.0F);
@@ -2987,6 +2992,7 @@ public abstract class EntityLiving extends Entity implements Attackable {
}
this.refreshDirtyAttributes();
+ SpigotTimings.timerEntityTickRest.stopTiming(); // Spigot
}
public void detectEquipmentUpdates() {
@@ -3128,6 +3134,7 @@ public abstract class EntityLiving extends Entity implements Attackable {
@@ -3156,6 +3162,7 @@ public abstract class EntityLiving extends Entity implements Attackable {
this.setDeltaMovement(d4, d5, d6);
this.setDeltaMovement(d0, d1, d2);
this.level().getProfiler().push("ai");
+ SpigotTimings.timerEntityAI.startTiming(); // Spigot
if (this.isImmobile()) {
this.jumping = false;
this.xxa = 0.0F;
@@ -3137,6 +3144,7 @@ public abstract class EntityLiving extends Entity implements Attackable {
@@ -3165,6 +3172,7 @@ public abstract class EntityLiving extends Entity implements Attackable {
this.serverAiStep();
this.level().getProfiler().pop();
}
@ -417,7 +417,7 @@ index a7110e06c7..5f04515ef9 100644
this.level().getProfiler().pop();
this.level().getProfiler().push("jump");
@@ -3176,6 +3184,7 @@ public abstract class EntityLiving extends Entity implements Attackable {
@@ -3204,6 +3212,7 @@ public abstract class EntityLiving extends Entity implements Attackable {
this.resetFallDistance();
}
@ -425,7 +425,7 @@ index a7110e06c7..5f04515ef9 100644
label104:
{
EntityLiving entityliving = this.getControllingPassenger();
@@ -3191,6 +3200,7 @@ public abstract class EntityLiving extends Entity implements Attackable {
@@ -3219,6 +3228,7 @@ public abstract class EntityLiving extends Entity implements Attackable {
this.travel(vec3d1);
}
@ -433,7 +433,7 @@ index a7110e06c7..5f04515ef9 100644
this.level().getProfiler().pop();
this.level().getProfiler().push("freezing");
@@ -3217,7 +3227,9 @@ public abstract class EntityLiving extends Entity implements Attackable {
@@ -3245,7 +3255,9 @@ public abstract class EntityLiving extends Entity implements Attackable {
this.checkAutoSpinAttack(axisalignedbb, this.getBoundingBox());
}
@ -444,7 +444,7 @@ index a7110e06c7..5f04515ef9 100644
if (!this.level().isClientSide && this.isSensitiveToWater() && this.isInWaterRainOrBubble()) {
this.hurt(this.damageSources().drown(), 1.0F);
diff --git a/src/main/java/net/minecraft/world/level/SpawnerCreature.java b/src/main/java/net/minecraft/world/level/SpawnerCreature.java
index ec3287eacb..133022bf79 100644
index a8a2f3d293..a7526f3c0b 100644
--- a/src/main/java/net/minecraft/world/level/SpawnerCreature.java
+++ b/src/main/java/net/minecraft/world/level/SpawnerCreature.java
@@ -117,6 +117,7 @@ public final class SpawnerCreature {
@ -542,7 +542,7 @@ index 78917dee2a..2567926c51 100644
private static final CraftPersistentDataTypeRegistry DATA_TYPE_REGISTRY = new CraftPersistentDataTypeRegistry();
public CraftPersistentDataContainer persistentDataContainer;
diff --git a/src/main/java/net/minecraft/world/level/chunk/Chunk.java b/src/main/java/net/minecraft/world/level/chunk/Chunk.java
index 13a9722f5a..0d269207a4 100644
index cb9b347b27..e36e39d993 100644
--- a/src/main/java/net/minecraft/world/level/chunk/Chunk.java
+++ b/src/main/java/net/minecraft/world/level/chunk/Chunk.java
@@ -882,6 +882,7 @@ public class Chunk extends IChunkAccess {
@ -591,10 +591,10 @@ index 570f628549..c66df1e7a9 100644
};
}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 8fe397a1e1..583778f311 100644
index f5c3c793ea..f92424b0ff 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -2366,6 +2366,11 @@ public final class CraftServer implements Server {
@@ -2371,6 +2371,11 @@ public final class CraftServer implements Server {
private final org.bukkit.Server.Spigot spigot = new org.bukkit.Server.Spigot()
{

View file

@ -1,4 +1,4 @@
From 01e700a0691207ed8a1a450d4dd23771172d9563 Mon Sep 17 00:00:00 2001
From e2eaf1d6de074b20b5a2c35e423c11f28448c377 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Fri, 21 Jun 2013 17:29:54 +1000
Subject: [PATCH] Fix Mob Spawning Relative to View Distance
@ -8,7 +8,7 @@ Changes the mob spawning algorithm to properly account for view distance and the
Needs better documentation.
diff --git a/src/main/java/net/minecraft/server/level/ChunkProviderServer.java b/src/main/java/net/minecraft/server/level/ChunkProviderServer.java
index b34aa8eab..703eb2009 100644
index 0e044ed950..2098d69410 100644
--- a/src/main/java/net/minecraft/server/level/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/level/ChunkProviderServer.java
@@ -443,7 +443,7 @@ public class ChunkProviderServer extends IChunkProvider {
@ -21,10 +21,10 @@ index b34aa8eab..703eb2009 100644
}
diff --git a/src/main/java/net/minecraft/server/level/PlayerChunkMap.java b/src/main/java/net/minecraft/server/level/PlayerChunkMap.java
index 0fea38250..8458f86c3 100644
index d2f7178031..e0db2aa0d3 100644
--- a/src/main/java/net/minecraft/server/level/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/PlayerChunkMap.java
@@ -1104,6 +1104,17 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -1107,6 +1107,17 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
}
boolean anyPlayerCloseEnoughForSpawning(ChunkCoordIntPair chunkcoordintpair) {
@ -39,10 +39,10 @@ index 0fea38250..8458f86c3 100644
+
+ double blockRange = (reducedRange) ? Math.pow(chunkRange << 4, 2) : 16384.0D;
+ // Spigot end
long i = chunkcoordintpair.toLong();
if (!this.distanceManager.hasPlayersNearby(i)) {
@@ -1119,7 +1130,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
if (!this.distanceManager.hasPlayersNearby(chunkcoordintpair.toLong())) {
return false;
} else {
@@ -1120,7 +1131,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
}
entityplayer = (EntityPlayer) iterator.next();
@ -51,7 +51,7 @@ index 0fea38250..8458f86c3 100644
return true;
}
@@ -1137,7 +1148,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -1138,7 +1149,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
while (iterator.hasNext()) {
EntityPlayer entityplayer = (EntityPlayer) iterator.next();
@ -60,7 +60,7 @@ index 0fea38250..8458f86c3 100644
builder.add(entityplayer);
}
}
@@ -1146,13 +1157,13 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -1147,13 +1158,13 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
}
}
@ -77,7 +77,7 @@ index 0fea38250..8458f86c3 100644
}
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index acaf90301..0c0c29efe 100644
index acaf903011..0c0c29efe5 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -180,4 +180,11 @@ public class SpigotWorldConfig
@ -93,5 +93,5 @@ index acaf90301..0c0c29efe 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,11 +1,11 @@
From 85b044d15aca914fae2a784da14fa156a1030f44 Mon Sep 17 00:00:00 2001
From f8ec2ae56a0c0eccfda218a80378ee6849902aaa Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 3 Feb 2013 09:20:19 +1100
Subject: [PATCH] Handle Null Tile Entities
diff --git a/src/main/java/net/minecraft/world/level/World.java b/src/main/java/net/minecraft/world/level/World.java
index 9b786aff0..fa0391b5e 100644
index 9b786aff08..fa0391b5ed 100644
--- a/src/main/java/net/minecraft/world/level/World.java
+++ b/src/main/java/net/minecraft/world/level/World.java
@@ -635,6 +635,13 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
@ -23,5 +23,5 @@ index 9b786aff0..fa0391b5e 100644
if (tickingblockentity.isRemoved()) {
iterator.remove();
--
2.40.1
2.42.0

View file

@ -1,11 +1,11 @@
From bc9f4e6e654376e8355bf808ef4a31250ec1fe19 Mon Sep 17 00:00:00 2001
From b9f5cf80f893f8534be4b90427398b7b2b8a7c73 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 22 Sep 2013 19:10:53 +1000
Subject: [PATCH] Item Despawn Rate
diff --git a/src/main/java/net/minecraft/world/entity/item/EntityItem.java b/src/main/java/net/minecraft/world/entity/item/EntityItem.java
index 15d0290ba..8e26d92c4 100644
index 15d0290ba7..8e26d92c47 100644
--- a/src/main/java/net/minecraft/world/entity/item/EntityItem.java
+++ b/src/main/java/net/minecraft/world/entity/item/EntityItem.java
@@ -189,7 +189,7 @@ public class EntityItem extends Entity implements TraceableEntity {
@ -27,7 +27,7 @@ index 15d0290ba..8e26d92c4 100644
public float getSpin(float f) {
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index 0c0c29efe..e3682d28c 100644
index 0c0c29efe5..e3682d28ca 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -187,4 +187,11 @@ public class SpigotWorldConfig
@ -43,5 +43,5 @@ index 0c0c29efe..e3682d28c 100644
+ }
}
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From 50108f875e2b600010f3d5563433c951f3e1816c Mon Sep 17 00:00:00 2001
From 7f0c9aa5dbdf1b8ed270358c205933a48d2581e1 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sun, 3 Feb 2013 05:10:21 -0500
Subject: [PATCH] Entity Activation Range
@ -9,10 +9,10 @@ This will drastically cut down on tick timings for entities that are not in rang
This change can have dramatic impact on gameplay if configured too low. Balance according to your servers desired gameplay.
diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java
index dc84b6954..52957c25e 100644
index 74782ff5af..0d815a7b0c 100644
--- a/src/main/java/net/minecraft/server/level/WorldServer.java
+++ b/src/main/java/net/minecraft/server/level/WorldServer.java
@@ -418,6 +418,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -410,6 +410,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
gameprofilerfiller.pop();
}
@ -20,7 +20,7 @@ index dc84b6954..52957c25e 100644
timings.entityTick.startTiming(); // Spigot
this.entityTickList.forEach((entity) -> {
if (!entity.isRemoved()) {
@@ -845,6 +846,13 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -843,6 +844,13 @@ public class WorldServer extends World implements GeneratorAccessSeed {
}
public void tickNonPassenger(Entity entity) {
@ -35,7 +35,7 @@ index dc84b6954..52957c25e 100644
entity.setOldPosAndRot();
GameProfilerFiller gameprofilerfiller = this.getProfiler();
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 774b49e6b..6a5b0dbd6 100644
index b7a91c91f8..c824c7cf58 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -310,6 +310,12 @@ public abstract class Entity implements INamableTileEntity, EntityAccess, IComma
@ -66,7 +66,7 @@ index 774b49e6b..6a5b0dbd6 100644
this.entityData.define(Entity.DATA_SHARED_FLAGS_ID, (byte) 0);
this.entityData.define(Entity.DATA_AIR_SUPPLY_ID, this.getMaxAirSupply());
diff --git a/src/main/java/net/minecraft/world/entity/EntityAgeable.java b/src/main/java/net/minecraft/world/entity/EntityAgeable.java
index bd2e7ba4e..a64ea7677 100644
index bd2e7ba4eb..a64ea7677b 100644
--- a/src/main/java/net/minecraft/world/entity/EntityAgeable.java
+++ b/src/main/java/net/minecraft/world/entity/EntityAgeable.java
@@ -26,6 +26,31 @@ public abstract class EntityAgeable extends EntityCreature {
@ -102,10 +102,10 @@ index bd2e7ba4e..a64ea7677 100644
public GroupDataEntity finalizeSpawn(WorldAccess worldaccess, DifficultyDamageScaler difficultydamagescaler, EnumMobSpawn enummobspawn, @Nullable GroupDataEntity groupdataentity, @Nullable NBTTagCompound nbttagcompound) {
if (groupdataentity == null) {
diff --git a/src/main/java/net/minecraft/world/entity/EntityAreaEffectCloud.java b/src/main/java/net/minecraft/world/entity/EntityAreaEffectCloud.java
index ea4b295bd..79d87b105 100644
index 3d67ac66f6..c27be344f7 100644
--- a/src/main/java/net/minecraft/world/entity/EntityAreaEffectCloud.java
+++ b/src/main/java/net/minecraft/world/entity/EntityAreaEffectCloud.java
@@ -168,6 +168,18 @@ public class EntityAreaEffectCloud extends Entity implements TraceableEntity {
@@ -169,6 +169,18 @@ public class EntityAreaEffectCloud extends Entity implements TraceableEntity {
this.duration = i;
}
@ -125,7 +125,7 @@ index ea4b295bd..79d87b105 100644
public void tick() {
super.tick();
diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java
index 5f04515ef..3a9f947e4 100644
index 6242461565..b52ed2f18a 100644
--- a/src/main/java/net/minecraft/world/entity/EntityLiving.java
+++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java
@@ -267,6 +267,13 @@ public abstract class EntityLiving extends Entity implements Attackable {
@ -143,7 +143,7 @@ index 5f04515ef..3a9f947e4 100644
protected EntityLiving(EntityTypes<? extends EntityLiving> entitytypes, World world) {
super(entitytypes, world);
diff --git a/src/main/java/net/minecraft/world/entity/item/EntityItem.java b/src/main/java/net/minecraft/world/entity/item/EntityItem.java
index 8e26d92c4..fa2c895d2 100644
index 8e26d92c47..fa2c895d2a 100644
--- a/src/main/java/net/minecraft/world/entity/item/EntityItem.java
+++ b/src/main/java/net/minecraft/world/entity/item/EntityItem.java
@@ -202,6 +202,28 @@ public class EntityItem extends Entity implements TraceableEntity {
@ -176,10 +176,10 @@ index 8e26d92c4..fa2c895d2 100644
protected BlockPosition getBlockPosBelowThatAffectsMyMovement() {
return this.getOnPos(0.999999F);
diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
index dd707be5b..de4917c70 100644
index ae62c50f1b..68cbd44270 100644
--- a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
@@ -223,6 +223,17 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@@ -224,6 +224,17 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
return this.assignProfessionWhenSpawned;
}
@ -198,7 +198,7 @@ index dd707be5b..de4917c70 100644
protected void customServerAiStep() {
this.level().getProfiler().push("villagerBrain");
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java b/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java
index bc1631f02..0a1d35692 100644
index 8c8663c18e..fc775f5da6 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java
@@ -75,6 +75,18 @@ public abstract class EntityArrow extends IProjectile {
@ -221,7 +221,7 @@ index bc1631f02..0a1d35692 100644
super(entitytypes, world);
this.pickup = EntityArrow.PickupStatus.DISALLOWED;
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityFireworks.java b/src/main/java/net/minecraft/world/entity/projectile/EntityFireworks.java
index 543a3ff08..bed9e8f60 100644
index 543a3ff083..bed9e8f602 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityFireworks.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityFireworks.java
@@ -80,6 +80,22 @@ public class EntityFireworks extends IProjectile implements ItemSupplier {
@ -248,7 +248,7 @@ index 543a3ff08..bed9e8f60 100644
protected void defineSynchedData() {
this.entityData.define(EntityFireworks.DATA_ID_FIREWORKS_ITEM, ItemStack.EMPTY);
diff --git a/src/main/java/org/bukkit/craftbukkit/SpigotTimings.java b/src/main/java/org/bukkit/craftbukkit/SpigotTimings.java
index aff7b6b43..d3328a695 100644
index aff7b6b438..d3328a695f 100644
--- a/src/main/java/org/bukkit/craftbukkit/SpigotTimings.java
+++ b/src/main/java/org/bukkit/craftbukkit/SpigotTimings.java
@@ -39,6 +39,9 @@ public class SpigotTimings {
@ -263,7 +263,7 @@ index aff7b6b43..d3328a695 100644
public static final HashMap<String, CustomTimingsHandler> pluginTaskTimingMap = new HashMap<String, CustomTimingsHandler>();
diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java
new file mode 100644
index 000000000..c5688dd14
index 0000000000..c5688dd14f
--- /dev/null
+++ b/src/main/java/org/spigotmc/ActivationRange.java
@@ -0,0 +1,262 @@
@ -530,7 +530,7 @@ index 000000000..c5688dd14
+ }
+}
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index e3682d28c..936279b5f 100644
index e3682d28ca..936279b5fb 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -194,4 +194,21 @@ public class SpigotWorldConfig
@ -556,5 +556,5 @@ index e3682d28c..936279b5f 100644
+ }
}
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From 3fa889ffad8ff4e1d899c1f0c0b0dcd8f146fdc2 Mon Sep 17 00:00:00 2001
From 233c998e8ff7a3a91aa487714f1fa199743d68a8 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sat, 23 Feb 2013 08:58:35 +1100
Subject: [PATCH] Metrics
@ -6,7 +6,7 @@ Subject: [PATCH] Metrics
diff --git a/src/main/java/org/spigotmc/Metrics.java b/src/main/java/org/spigotmc/Metrics.java
new file mode 100644
index 000000000..c25cbfa7a
index 0000000000..c25cbfa7a4
--- /dev/null
+++ b/src/main/java/org/spigotmc/Metrics.java
@@ -0,0 +1,641 @@
@ -652,7 +652,7 @@ index 000000000..c25cbfa7a
+ }
+}
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index 9ee0b4a1e..7f14cbc63 100644
index 9ee0b4a1e7..7f14cbc63b 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -36,6 +36,7 @@ public class SpigotConfig
@ -683,5 +683,5 @@ index 9ee0b4a1e..7f14cbc63 100644
static void readConfig(Class<?> clazz, Object instance)
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From b8f416c0827c11bd4eb0d46db56958c9fdad9203 Mon Sep 17 00:00:00 2001
From 2e0c76763317a4760f832d20945e3b12d27b9ce4 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 20 Feb 2013 11:58:47 -0500
Subject: [PATCH] Entity Tracking Ranges
@ -12,10 +12,10 @@ This has multiple benefits:
4) Less client lag - Not trying to render distant item frames and paintings and entities will reduce entity count on the client, which is major for shop/town worlds which may use tons of item frames.
diff --git a/src/main/java/net/minecraft/server/level/PlayerChunkMap.java b/src/main/java/net/minecraft/server/level/PlayerChunkMap.java
index 8458f86c3..034f4416e 100644
index e0db2aa0d3..4658e67346 100644
--- a/src/main/java/net/minecraft/server/level/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/PlayerChunkMap.java
@@ -1328,6 +1328,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -1314,6 +1314,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
if (!(entity instanceof EntityComplexPart)) {
EntityTypes<?> entitytypes = entity.getType();
int i = entitytypes.clientTrackingRange() * 16;
@ -24,7 +24,7 @@ index 8458f86c3..034f4416e 100644
if (i != 0) {
int j = entitytypes.updateInterval();
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index 936279b5f..ab984b210 100644
index 936279b5fb..ab984b2109 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -211,4 +211,21 @@ public class SpigotWorldConfig
@ -51,7 +51,7 @@ index 936279b5f..ab984b210 100644
}
diff --git a/src/main/java/org/spigotmc/TrackingRange.java b/src/main/java/org/spigotmc/TrackingRange.java
new file mode 100644
index 000000000..7121ffcd8
index 0000000000..7121ffcd8b
--- /dev/null
+++ b/src/main/java/org/spigotmc/TrackingRange.java
@@ -0,0 +1,59 @@
@ -115,5 +115,5 @@ index 000000000..7121ffcd8
+ }
+}
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From fe78a4ab7f7784e16b6d248408740cb78d54c7a9 Mon Sep 17 00:00:00 2001
From 7c101d97ab383f67d4d1c5ff44d8849ac50246ec Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 19 May 2013 18:29:48 +1000
Subject: [PATCH] Remove -o Option
@ -6,7 +6,7 @@ Subject: [PATCH] Remove -o Option
Serves no purpose other than to confuse users.
diff --git a/src/main/java/net/minecraft/server/dedicated/PropertyManager.java b/src/main/java/net/minecraft/server/dedicated/PropertyManager.java
index 870e22a52..419d09c4a 100644
index 6bd96dd6d4..a9840e7479 100644
--- a/src/main/java/net/minecraft/server/dedicated/PropertyManager.java
+++ b/src/main/java/net/minecraft/server/dedicated/PropertyManager.java
@@ -39,7 +39,7 @@ public abstract class PropertyManager<T extends PropertyManager<T>> {
@ -19,5 +19,5 @@ index 870e22a52..419d09c4a 100644
}
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From b685a562b777808425aff6dc7407d454e3a9522d Mon Sep 17 00:00:00 2001
From 1b4b6fac53cb77e93309d874960d213ba0068e7a Mon Sep 17 00:00:00 2001
From: erocs <github@erocs.org>
Date: Sun, 8 Sep 2013 12:06:15 -0700
Subject: [PATCH] Hopper Customisations
@ -6,7 +6,7 @@ Subject: [PATCH] Hopper Customisations
Allows editing hopper cooldowns and amount transferred per tick.
diff --git a/src/main/java/net/minecraft/world/level/block/entity/TileEntityHopper.java b/src/main/java/net/minecraft/world/level/block/entity/TileEntityHopper.java
index 39c0c9722..6cea69ce8 100644
index f2ccf0d254..3417dfa2f0 100644
--- a/src/main/java/net/minecraft/world/level/block/entity/TileEntityHopper.java
+++ b/src/main/java/net/minecraft/world/level/block/entity/TileEntityHopper.java
@@ -143,9 +143,14 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper {
@ -111,7 +111,7 @@ index 39c0c9722..6cea69ce8 100644
iinventory.setItem(i, itemstack1);
}
@@ -430,6 +439,11 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper {
@@ -431,6 +440,11 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper {
boolean flag1 = iinventory1.isEmpty();
if (itemstack1.isEmpty()) {
@ -123,7 +123,7 @@ index 39c0c9722..6cea69ce8 100644
iinventory1.setItem(i, itemstack);
itemstack = ItemStack.EMPTY;
flag = true;
@@ -457,7 +471,7 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper {
@@ -458,7 +472,7 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper {
}
}
@ -132,7 +132,7 @@ index 39c0c9722..6cea69ce8 100644
}
}
@@ -519,6 +533,7 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper {
@@ -520,6 +534,7 @@ public class TileEntityHopper extends TileEntityLootable implements IHopper {
private static IInventory getContainerAt(World world, double d0, double d1, double d2) {
Object object = null;
BlockPosition blockposition = BlockPosition.containing(d0, d1, d2);
@ -141,7 +141,7 @@ index 39c0c9722..6cea69ce8 100644
Block block = iblockdata.getBlock();
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index ab984b210..cec948a05 100644
index ab984b2109..cec948a055 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -228,4 +228,22 @@ public class SpigotWorldConfig
@ -168,5 +168,5 @@ index ab984b210..cec948a05 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From 3198ae78552368e2f4da235ee028980acc18feb7 Mon Sep 17 00:00:00 2001
From 69234b41325631969ae4ddb050523e79249749f8 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Fri, 21 Jun 2013 18:01:29 +1000
Subject: [PATCH] Allow Disabling of Command Logging
diff --git a/src/main/java/net/minecraft/server/network/PlayerConnection.java b/src/main/java/net/minecraft/server/network/PlayerConnection.java
index 4ce9f0ee70..12d4221c03 100644
index c43cad1579..403ce225d7 100644
--- a/src/main/java/net/minecraft/server/network/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/network/PlayerConnection.java
@@ -2102,6 +2102,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -1967,6 +1967,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
private void handleCommand(String s) {
org.bukkit.craftbukkit.SpigotTimings.playerCommandTimer.startTiming(); // Spigot
@ -32,5 +32,5 @@ index 7f14cbc63b..bc9fbcc584 100644
+ }
}
--
2.41.0
2.42.0

View file

@ -1,14 +1,14 @@
From 1e55a3db3b284e9828640d4d3525800144c50485 Mon Sep 17 00:00:00 2001
From b7ed6740c31cc50527085abad1ed3fbdfa60c3e5 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Fri, 21 Jun 2013 18:05:54 +1000
Subject: [PATCH] Allow Disabling of Command TabComplete
diff --git a/src/main/java/net/minecraft/commands/CommandDispatcher.java b/src/main/java/net/minecraft/commands/CommandDispatcher.java
index c04d308a2..6b85d4ae9 100644
index 5a4d3a494a..64d43456bb 100644
--- a/src/main/java/net/minecraft/commands/CommandDispatcher.java
+++ b/src/main/java/net/minecraft/commands/CommandDispatcher.java
@@ -373,6 +373,7 @@ public class CommandDispatcher {
@@ -379,6 +379,7 @@ public class CommandDispatcher {
}
public void sendCommands(EntityPlayer entityplayer) {
@ -16,7 +16,7 @@ index c04d308a2..6b85d4ae9 100644
// CraftBukkit start
// Register Vanilla commands into builtRoot as before
Map<CommandNode<CommandListenerWrapper>, CommandNode<ICompletionProvider>> map = Maps.newIdentityHashMap(); // Use identity to prevent aliasing issues
@@ -411,6 +412,7 @@ public class CommandDispatcher {
@@ -417,6 +418,7 @@ public class CommandDispatcher {
while (iterator.hasNext()) {
CommandNode<CommandListenerWrapper> commandnode2 = (CommandNode) iterator.next();
@ -25,10 +25,10 @@ index c04d308a2..6b85d4ae9 100644
if (commandnode2.canUse(commandlistenerwrapper)) {
ArgumentBuilder argumentbuilder = commandnode2.createBuilder(); // CraftBukkit - decompile error
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 583778f31..0731308a4 100644
index f92424b0ff..5a8a88fb19 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -2011,6 +2011,13 @@ public final class CraftServer implements Server {
@@ -2016,6 +2016,13 @@ public final class CraftServer implements Server {
}
public List<String> tabCompleteCommand(Player player, String message, WorldServer world, Vec3D pos) {
@ -43,7 +43,7 @@ index 583778f31..0731308a4 100644
try {
if (message.startsWith("/")) {
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index bc9fbcc58..fc352ecf1 100644
index bc9fbcc584..fc352ecf10 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -156,4 +156,23 @@ public class SpigotConfig
@ -71,5 +71,5 @@ index bc9fbcc58..fc352ecf1 100644
+ }
}
--
2.41.0
2.42.0

View file

@ -1,17 +1,17 @@
From 9a87b232fd3ae581d0eae4991eb3bcba5fbb3e3a Mon Sep 17 00:00:00 2001
From 592ecb3582da019cfb625ee0cbde3d6685698abf Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Fri, 21 Jun 2013 19:21:58 +1000
Subject: [PATCH] Configurable Messages
diff --git a/src/main/java/net/minecraft/server/network/HandshakeListener.java b/src/main/java/net/minecraft/server/network/HandshakeListener.java
index 4c79b0f0b..587e00148 100644
index e9ec3fd8c5..708f162e84 100644
--- a/src/main/java/net/minecraft/server/network/HandshakeListener.java
+++ b/src/main/java/net/minecraft/server/network/HandshakeListener.java
@@ -75,9 +75,9 @@ public class HandshakeListener implements PacketHandshakingInListener {
IChatMutableComponent ichatmutablecomponent;
if (packethandshakinginsetprotocol.getProtocolVersion() < 754) {
if (packethandshakinginsetprotocol.protocolVersion() < 754) {
- ichatmutablecomponent = IChatBaseComponent.translatable("multiplayer.disconnect.outdated_client", SharedConstants.getCurrentVersion().getName());
+ ichatmutablecomponent = IChatBaseComponent.literal( java.text.MessageFormat.format( org.spigotmc.SpigotConfig.outdatedClientMessage.replaceAll("'", "''"), SharedConstants.getCurrentVersion().getName() ) ); // Spigot
} else {
@ -21,10 +21,10 @@ index 4c79b0f0b..587e00148 100644
this.connection.send(new PacketLoginOutDisconnect(ichatmutablecomponent));
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 5b8b8aede..66a6c8656 100644
index 1fc1e46e73..bd4c75657f 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -610,7 +610,7 @@ public abstract class PlayerList {
@@ -598,7 +598,7 @@ public abstract class PlayerList {
event.disallow(PlayerLoginEvent.Result.KICK_BANNED, CraftChatMessage.fromComponent(ichatmutablecomponent));
} else if (!this.isWhiteListed(gameprofile)) {
ichatmutablecomponent = IChatBaseComponent.translatable("multiplayer.disconnect.not_whitelisted");
@ -33,7 +33,7 @@ index 5b8b8aede..66a6c8656 100644
} else if (getIpBans().isBanned(socketaddress) && !getIpBans().get(socketaddress).hasExpired()) {
IpBanEntry ipbanentry = this.ipBans.get(socketaddress);
@@ -624,7 +624,7 @@ public abstract class PlayerList {
@@ -612,7 +612,7 @@ public abstract class PlayerList {
} else {
// return this.players.size() >= this.maxPlayers && !this.canBypassPlayerLimit(gameprofile) ? IChatBaseComponent.translatable("multiplayer.disconnect.server_full") : null;
if (this.players.size() >= this.maxPlayers && !this.canBypassPlayerLimit(gameprofile)) {
@ -43,10 +43,10 @@ index 5b8b8aede..66a6c8656 100644
}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 0731308a4..092652328 100644
index 5a8a88fb19..329ded6be1 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -856,11 +856,11 @@ public final class CraftServer implements Server {
@@ -861,11 +861,11 @@ public final class CraftServer implements Server {
return true;
}
@ -63,7 +63,7 @@ index 0731308a4..092652328 100644
return false;
}
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index fc352ecf1..8ad8b2589 100644
index fc352ecf10..8ad8b25894 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -12,6 +12,7 @@ import java.util.Map;
@ -104,5 +104,5 @@ index fc352ecf1..8ad8b2589 100644
+ }
}
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From 75dec40efdc820d4d286f2dd085990ad1b7ec9d9 Mon Sep 17 00:00:00 2001
From 8c17877198cd6fe005e4479e6eb2e8787295ecad Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Thu, 27 Jun 2013 17:26:09 +1000
Subject: [PATCH] Properly Close Inventories
@ -6,10 +6,10 @@ Subject: [PATCH] Properly Close Inventories
Properly close inventories when unloading and switching worlds.
diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java
index 52957c25e..a7a90e899 100644
index 0d815a7b0c..b7c63f2f73 100644
--- a/src/main/java/net/minecraft/server/level/WorldServer.java
+++ b/src/main/java/net/minecraft/server/level/WorldServer.java
@@ -1106,6 +1106,15 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1104,6 +1104,15 @@ public class WorldServer extends World implements GeneratorAccessSeed {
}
public void unload(Chunk chunk) {
@ -25,7 +25,7 @@ index 52957c25e..a7a90e899 100644
chunk.clearAllBlockEntities();
chunk.unregisterTickContainerFromLevel(this);
}
@@ -2005,6 +2014,13 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -1994,6 +2003,13 @@ public class WorldServer extends World implements GeneratorAccessSeed {
public void onTrackingEnd(Entity entity) {
org.spigotmc.AsyncCatcher.catchOp("entity unregister"); // Spigot
@ -40,5 +40,5 @@ index 52957c25e..a7a90e899 100644
if (entity instanceof EntityPlayer) {
EntityPlayer entityplayer = (EntityPlayer) entity;
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From 0604d520bf4123bef194612c4d5acecf4b60646d Mon Sep 17 00:00:00 2001
From 5c8e3bccc9d00b4c40fefa9f24baf9c8a736e2ca Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Fri, 28 Jun 2013 19:52:54 +1000
Subject: [PATCH] Disallow Interaction With Self
diff --git a/src/main/java/net/minecraft/server/network/PlayerConnection.java b/src/main/java/net/minecraft/server/network/PlayerConnection.java
index 12d4221c03..549dc18df7 100644
index 403ce225d7..23a15db7e1 100644
--- a/src/main/java/net/minecraft/server/network/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/network/PlayerConnection.java
@@ -2345,6 +2345,13 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -2221,6 +2221,13 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
if (this.player.isImmobile()) return; // CraftBukkit
final WorldServer worldserver = this.player.serverLevel();
final Entity entity = packetplayinuseentity.getTarget(worldserver);
@ -23,5 +23,5 @@ index 12d4221c03..549dc18df7 100644
this.player.resetLastActionTime();
this.player.setShiftKeyDown(packetplayinuseentity.isUsingSecondaryAction());
--
2.41.0
2.42.0

View file

@ -1,14 +1,14 @@
From af24d04bab4a1c46115432fe42e6374f68cfea23 Mon Sep 17 00:00:00 2001
From c78a7d683454aa6477a85fb53396c5301d6974ea Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Sat, 27 Feb 2016 10:07:58 +1100
Subject: [PATCH] Entity Mount and Dismount Events
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index b30b41690..ed18bf8c5 100644
index c824c7cf58..88eb89c3d5 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -2323,6 +2323,16 @@ public abstract class Entity implements INamableTileEntity, EntityAccess, IComma
@@ -2339,6 +2339,16 @@ public abstract class Entity implements INamableTileEntity, EntityAccess, IComma
}
}
// CraftBukkit end
@ -25,7 +25,7 @@ index b30b41690..ed18bf8c5 100644
if (this.isPassenger()) {
this.stopRiding();
}
@@ -2414,6 +2424,16 @@ public abstract class Entity implements INamableTileEntity, EntityAccess, IComma
@@ -2426,6 +2436,16 @@ public abstract class Entity implements INamableTileEntity, EntityAccess, IComma
}
}
// CraftBukkit end
@ -43,5 +43,5 @@ index b30b41690..ed18bf8c5 100644
this.passengers = ImmutableList.of();
} else {
--
2.41.0.windows.1
2.42.0

View file

@ -1,4 +1,4 @@
From 7efba5ec8f47c3d96b8b33cd5480211e12a73505 Mon Sep 17 00:00:00 2001
From d66569229120f4e3f5a8c3450c023e0ef96a5bdc Mon Sep 17 00:00:00 2001
From: Alex Ciuba <alexciuba@gmail.com>
Date: Tue, 11 Jun 2013 15:23:03 -0400
Subject: [PATCH] Prevent Ghost Players Caused by Plugins
@ -6,10 +6,10 @@ Subject: [PATCH] Prevent Ghost Players Caused by Plugins
Check if the player is still connected after firing event. Fixes BUKKIT-4327
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 2c4b6d960..c08461b7f 100644
index bd4c75657f..24d3bd8aad 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -759,6 +759,11 @@ public abstract class PlayerList {
@@ -755,6 +755,11 @@ public abstract class PlayerList {
Player respawnPlayer = entityplayer1.getBukkitEntity();
PlayerRespawnEvent respawnEvent = new PlayerRespawnEvent(respawnPlayer, location, isBedSpawn && !flag2, flag2, reason);
cserver.getPluginManager().callEvent(respawnEvent);
@ -22,5 +22,5 @@ index 2c4b6d960..c08461b7f 100644
location = respawnEvent.getRespawnLocation();
if (!flag) entityplayer.reset(); // SPIGOT-4785
--
2.40.1
2.42.0

View file

@ -1,22 +1,22 @@
From 1410739c3510f4c64334fe054ff1406940059082 Mon Sep 17 00:00:00 2001
From a179f6315b3716b262c73f07ae7ded34acc3d3aa Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 6 Oct 2013 17:36:28 +1100
Subject: [PATCH] Don't Special Case X Move Value
diff --git a/src/main/java/net/minecraft/server/network/PlayerConnection.java b/src/main/java/net/minecraft/server/network/PlayerConnection.java
index 549dc18df7..86da0e04be 100644
index 23a15db7e1..cb346fff85 100644
--- a/src/main/java/net/minecraft/server/network/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/network/PlayerConnection.java
@@ -334,6 +334,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -316,6 +316,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
private float lastPitch = Float.MAX_VALUE;
private float lastYaw = Float.MAX_VALUE;
private boolean justTeleported = false;
+ private boolean hasMoved; // Spigot
// CraftBukkit end
public CraftPlayer getCraftPlayer() {
return (this.player == null) ? null : (CraftPlayer) this.player.getBukkitEntity();
@@ -634,6 +635,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@Override
@@ -541,6 +542,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
flag2 = true;
PlayerConnection.LOGGER.warn("{} (vehicle of {}) moved wrongly! {}", new Object[]{entity.getName().getString(), this.player.getName().getString(), Math.sqrt(d10)});
}
@ -24,7 +24,7 @@ index 549dc18df7..86da0e04be 100644
entity.absMoveTo(d3, d4, d5, f, f1);
player.absMoveTo(d3, d4, d5, this.player.getYRot(), this.player.getXRot()); // CraftBukkit
@@ -648,6 +650,17 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -555,6 +557,17 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
// CraftBukkit start - fire PlayerMoveEvent
Player player = this.getCraftPlayer();
@ -42,7 +42,7 @@ index 549dc18df7..86da0e04be 100644
Location from = new Location(player.getWorld(), lastPosX, lastPosY, lastPosZ, lastYaw, lastPitch); // Get the Players previous Event location.
Location to = player.getLocation().clone(); // Start off the To location as the Players current location.
@@ -673,7 +686,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -580,7 +593,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
this.lastPitch = to.getPitch();
// Skip the first time we do this
@ -52,5 +52,5 @@ index 549dc18df7..86da0e04be 100644
PlayerMoveEvent event = new PlayerMoveEvent(player, from, to);
this.cserver.getPluginManager().callEvent(event);
--
2.41.0
2.42.0

View file

@ -1,14 +1,14 @@
From b35178aed749cf474cb6df58a4f007ed24649167 Mon Sep 17 00:00:00 2001
From 111e8c50b878c008509a08a7ed2707d8aa3683fd Mon Sep 17 00:00:00 2001
From: ninja- <xninja@openmailbox.org>
Date: Tue, 8 Oct 2013 14:34:49 +0200
Subject: [PATCH] Implement respawn API.
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 768ea1c3dd..bc014cd721 100644
index b4477e693c..3f55e81485 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2142,6 +2142,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2158,6 +2158,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
// Spigot start
private final Player.Spigot spigot = new Player.Spigot()
{
@ -25,5 +25,5 @@ index 768ea1c3dd..bc014cd721 100644
public Player.Spigot spigot()
--
2.41.0
2.42.0

View file

@ -1,11 +1,11 @@
From db7cc523c30cdfd09e63e7df5c0931b8a7dfc062 Mon Sep 17 00:00:00 2001
From fcae71d1e312cfcd4e02da1454e1909ed8785ae8 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Mon, 14 Oct 2013 19:20:10 +1100
Subject: [PATCH] Arrow Despawn Rate
diff --git a/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java b/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java
index 0a1d35692..7f551fa46 100644
index fc775f5da6..51b5749c93 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/EntityArrow.java
@@ -314,7 +314,7 @@ public abstract class EntityArrow extends IProjectile {
@ -18,7 +18,7 @@ index 0a1d35692..7f551fa46 100644
}
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index cec948a05..4894096ae 100644
index cec948a055..4894096ae1 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -246,4 +246,13 @@ public class SpigotWorldConfig
@ -36,5 +36,5 @@ index cec948a05..4894096ae 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From a83c7126bed9fb73a078ef47fa26cdb5bac17fc5 Mon Sep 17 00:00:00 2001
From 915a98d080dbbe1426b038455610cf2428c29d9d Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Tue, 5 Aug 2014 17:20:19 +0100
Subject: [PATCH] Watchdog Thread.
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 83934abe5e..8ccd952138 100644
index a7171e995e..977e2c6fa3 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1014,6 +1014,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -996,6 +996,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.services.profileCache().clearExecutor();
}
@ -16,16 +16,16 @@ index 83934abe5e..8ccd952138 100644
// CraftBukkit start - Restore terminal to original settings
try {
reader.getTerminal().restore();
@@ -1179,6 +1180,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1161,6 +1162,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.frameTimer.logFrameDuration(k - i);
this.logTickTime(k - i);
this.profiler.pop();
+ org.spigotmc.WatchdogThread.tick(); // Spigot
SpigotTimings.serverTickTimer.stopTiming(); // Spigot
org.spigotmc.CustomTimingsHandler.tick(); // Spigot
}
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index e026dacece..a06073f62b 100644
index 76d7daee26..b40e34e819 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -259,7 +259,7 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer
@ -38,10 +38,10 @@ index e026dacece..a06073f62b 100644
thread1.setUncaughtExceptionHandler(new ThreadNamedUncaughtExceptionHandler(DedicatedServer.LOGGER));
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 0926523287..c1d6eef0fc 100644
index 329ded6be1..ad80074180 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1973,7 +1973,7 @@ public final class CraftServer implements Server {
@@ -1978,7 +1978,7 @@ public final class CraftServer implements Server {
@Override
public boolean isPrimaryThread() {
@ -50,7 +50,7 @@ index 0926523287..c1d6eef0fc 100644
}
@Override
@@ -2378,6 +2378,11 @@ public final class CraftServer implements Server {
@@ -2383,6 +2383,11 @@ public final class CraftServer implements Server {
{
return org.spigotmc.SpigotConfig.config;
}

View file

@ -1,48 +1,28 @@
From 36640fab9bfbaf938c9f7cdf2e1663a27b2ba22c Mon Sep 17 00:00:00 2001
From 6ce2cf6a4c18a88152a28b0d72061699413de0ab Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Wed, 18 Dec 2013 13:32:10 +1100
Subject: [PATCH] Fire PreLogin Events in Offline Mode
diff --git a/src/main/java/net/minecraft/server/network/LoginListener.java b/src/main/java/net/minecraft/server/network/LoginListener.java
index c406943f1..40f03ce23 100644
index 678a4f0529..6f1d3a94d0 100644
--- a/src/main/java/net/minecraft/server/network/LoginListener.java
+++ b/src/main/java/net/minecraft/server/network/LoginListener.java
@@ -112,9 +112,16 @@ public class LoginListener implements PacketLoginInListener, TickablePacketListe
}
+ // Spigot start
+ public void initUUID()
+ {
+ this.gameProfile = this.createFakeProfile(this.gameProfile);
+ }
+
public void handleAcceptedLogin() {
- if (!this.gameProfile.isComplete()) {
- this.gameProfile = this.createFakeProfile(this.gameProfile);
+ if (!this.server.usesAuthentication()) {
+ // this.gameProfile = this.createFakeProfile(this.gameProfile); // Spigot - Moved to initUUID
+ // Spigot end
}
// CraftBukkit start - fire PlayerLoginEvent
@@ -182,7 +189,21 @@ public class LoginListener implements PacketLoginInListener, TickablePacketListe
@@ -140,7 +140,20 @@ public class LoginListener implements PacketLoginInListener, TickablePacketListe
this.state = LoginListener.EnumProtocolState.KEY;
this.connection.send(new PacketLoginOutEncryptionBegin("", this.server.getKeyPair().getPublic().getEncoded(), this.challenge));
} else {
- this.state = LoginListener.EnumProtocolState.READY_TO_ACCEPT;
- this.startClientVerification(createOfflineProfile(this.requestedUsername));
+ // Spigot start
+ new Thread("User Authenticator #" + LoginListener.UNIQUE_THREAD_ID.incrementAndGet()) {
+
+ @Override
+ public void run() {
+ try {
+ initUUID();
+ new LoginHandler().fireEvents();
+ new LoginHandler().fireEvents(createOfflineProfile(LoginListener.this.requestedUsername));
+ } catch (Exception ex) {
+ disconnect("Failed to verify username!");
+ server.server.getLogger().log(java.util.logging.Level.WARNING, "Exception verifying " + gameProfile.getName(), ex);
+ server.server.getLogger().log(java.util.logging.Level.WARNING, "Exception verifying " + LoginListener.this.requestedUsername, ex);
+ }
+ }
+ }.start();
@ -50,13 +30,13 @@ index c406943f1..40f03ce23 100644
}
}
@@ -230,40 +251,7 @@ public class LoginListener implements PacketLoginInListener, TickablePacketListe
@@ -227,40 +240,7 @@ public class LoginListener implements PacketLoginInListener, TickablePacketListe
return;
}
- String playerName = gameProfile.getName();
- String playerName = gameprofile.getName();
- java.net.InetAddress address = ((java.net.InetSocketAddress) connection.getRemoteAddress()).getAddress();
- java.util.UUID uniqueId = gameProfile.getId();
- java.util.UUID uniqueId = gameprofile.getId();
- final org.bukkit.craftbukkit.CraftServer server = LoginListener.this.server.server;
-
- AsyncPlayerPreLoginEvent asyncEvent = new AsyncPlayerPreLoginEvent(playerName, address, uniqueId);
@ -86,24 +66,23 @@ index c406943f1..40f03ce23 100644
- }
- }
- // CraftBukkit end
- LoginListener.LOGGER.info("UUID of player {} is {}", LoginListener.this.gameProfile.getName(), LoginListener.this.gameProfile.getId());
- LoginListener.this.state = LoginListener.EnumProtocolState.READY_TO_ACCEPT;
+ new LoginHandler().fireEvents();
- LoginListener.LOGGER.info("UUID of player {} is {}", gameprofile.getName(), gameprofile.getId());
- LoginListener.this.startClientVerification(gameprofile);
+ new LoginHandler().fireEvents(gameprofile);
} else if (LoginListener.this.server.isSingleplayer()) {
LoginListener.LOGGER.warn("Failed to verify username but will let them in anyway!");
LoginListener.this.gameProfile = gameprofile;
@@ -302,7 +290,48 @@ public class LoginListener implements PacketLoginInListener, TickablePacketListe
LoginListener.this.startClientVerification(LoginListener.createOfflineProfile(s1));
@@ -297,6 +277,48 @@ public class LoginListener implements PacketLoginInListener, TickablePacketListe
thread.start();
}
- @Override
+ // Spigot start
+ public class LoginHandler {
+
+ public void fireEvents() throws Exception {
+ String playerName = gameProfile.getName();
+ public void fireEvents(GameProfile gameprofile) throws Exception {
+ String playerName = gameprofile.getName();
+ java.net.InetAddress address = ((java.net.InetSocketAddress) connection.getRemoteAddress()).getAddress();
+ java.util.UUID uniqueId = gameProfile.getId();
+ java.util.UUID uniqueId = gameprofile.getId();
+ final org.bukkit.craftbukkit.CraftServer server = LoginListener.this.server.server;
+
+ AsyncPlayerPreLoginEvent asyncEvent = new AsyncPlayerPreLoginEvent(playerName, address, uniqueId);
@ -133,15 +112,15 @@ index c406943f1..40f03ce23 100644
+ }
+ }
+ // CraftBukkit end
+ LoginListener.LOGGER.info("UUID of player {} is {}", LoginListener.this.gameProfile.getName(), LoginListener.this.gameProfile.getId());
+ LoginListener.this.state = LoginListener.EnumProtocolState.READY_TO_ACCEPT;
+ LoginListener.LOGGER.info("UUID of player {} is {}", gameprofile.getName(), gameprofile.getId());
+ LoginListener.this.startClientVerification(gameprofile);
+ }
+ }
+ // Spigot end
+
public void handleCustomQueryPacket(PacketLoginInCustomPayload packetloginincustompayload) {
this.disconnect(IChatBaseComponent.translatable("multiplayer.disconnect.unexpected_query_response"));
}
@Override
public void handleCustomQueryPacket(ServerboundCustomQueryAnswerPacket serverboundcustomqueryanswerpacket) {
this.disconnect(LoginListener.DISCONNECT_UNEXPECTED_QUERY);
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From e3394a6654a5b1ba4ddd66845f8c93ab6acac431 Mon Sep 17 00:00:00 2001
From 5a3d3a67940d5417e419fc979240f7ecc3abaec8 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 1 Dec 2013 18:18:41 +1100
Subject: [PATCH] BungeeCord Support
@ -6,35 +6,36 @@ Subject: [PATCH] BungeeCord Support
Provides support for IP forwarding via BungeeCord.
diff --git a/src/main/java/net/minecraft/network/NetworkManager.java b/src/main/java/net/minecraft/network/NetworkManager.java
index dd0f05b5e0..dac406ba70 100644
index c512c2b9cd..2c4e85749a 100644
--- a/src/main/java/net/minecraft/network/NetworkManager.java
+++ b/src/main/java/net/minecraft/network/NetworkManager.java
@@ -76,6 +76,10 @@ public class NetworkManager extends SimpleChannelInboundHandler<Packet<?>> {
private final Queue<NetworkManager.QueuedPacket> queue = Queues.newConcurrentLinkedQueue();
@@ -87,6 +87,10 @@ public class NetworkManager extends SimpleChannelInboundHandler<Packet<?>> {
private final Queue<Consumer<NetworkManager>> pendingActions = Queues.newConcurrentLinkedQueue();
public Channel channel;
public SocketAddress address;
+ // Spigot Start
+ public java.util.UUID spoofedUUID;
+ public com.mojang.authlib.properties.Property[] spoofedProfile;
+ // Spigot End
private PacketListener packetListener;
private IChatBaseComponent disconnectedReason;
private boolean encrypted;
@Nullable
private volatile PacketListener disconnectListener;
@Nullable
diff --git a/src/main/java/net/minecraft/network/protocol/handshake/PacketHandshakingInSetProtocol.java b/src/main/java/net/minecraft/network/protocol/handshake/PacketHandshakingInSetProtocol.java
index e992a972d5..786314a9b7 100644
index 78a7dc329d..c3347013f2 100644
--- a/src/main/java/net/minecraft/network/protocol/handshake/PacketHandshakingInSetProtocol.java
+++ b/src/main/java/net/minecraft/network/protocol/handshake/PacketHandshakingInSetProtocol.java
@@ -23,7 +23,7 @@ public class PacketHandshakingInSetProtocol implements Packet<PacketHandshakingI
@@ -10,7 +10,8 @@ public record PacketHandshakingInSetProtocol(int protocolVersion, String hostNam
private static final int MAX_HOST_LENGTH = 255;
public PacketHandshakingInSetProtocol(PacketDataSerializer packetdataserializer) {
this.protocolVersion = packetdataserializer.readVarInt();
- this.hostName = packetdataserializer.readUtf(255);
+ this.hostName = packetdataserializer.readUtf(Short.MAX_VALUE); // Spigot
this.port = packetdataserializer.readUnsignedShort();
this.intention = EnumProtocol.getById(packetdataserializer.readVarInt());
- this(packetdataserializer.readVarInt(), packetdataserializer.readUtf(255), packetdataserializer.readUnsignedShort(), ClientIntent.byId(packetdataserializer.readVarInt()));
+ // Spigot - increase max hostName length
+ this(packetdataserializer.readVarInt(), packetdataserializer.readUtf(Short.MAX_VALUE), packetdataserializer.readUnsignedShort(), ClientIntent.byId(packetdataserializer.readVarInt()));
}
@Override
diff --git a/src/main/java/net/minecraft/server/network/HandshakeListener.java b/src/main/java/net/minecraft/server/network/HandshakeListener.java
index 587e00148a..7dc98346fb 100644
index 708f162e84..e5b997068b 100644
--- a/src/main/java/net/minecraft/server/network/HandshakeListener.java
+++ b/src/main/java/net/minecraft/server/network/HandshakeListener.java
@@ -18,6 +18,11 @@ import java.util.HashMap;
@ -54,12 +55,12 @@ index 587e00148a..7dc98346fb 100644
} else {
this.connection.setListener(new LoginListener(this.server, this.connection));
+ // Spigot Start
+ String[] split = packethandshakinginsetprotocol.hostName.split("\00");
+ String[] split = packethandshakinginsetprotocol.hostName().split("\00");
+ if (org.spigotmc.SpigotConfig.bungee) {
+ if ( ( split.length == 3 || split.length == 4 ) && ( HOST_PATTERN.matcher( split[1] ).matches() ) ) {
+ packethandshakinginsetprotocol.hostName = split[0];
+ connection.hostname = split[0];
+ connection.address = new java.net.InetSocketAddress(split[1], ((java.net.InetSocketAddress) connection.getRemoteAddress()).getPort());
+ connection.spoofedUUID = com.mojang.util.UUIDTypeAdapter.fromString( split[2] );
+ connection.spoofedUUID = com.mojang.util.UndashedUuid.fromStringLenient( split[2] );
+ } else
+ {
+ IChatBaseComponent chatmessage = IChatBaseComponent.literal("If you wish to use IP forwarding, please enable it in your BungeeCord config as well!");
@ -82,41 +83,66 @@ index 587e00148a..7dc98346fb 100644
break;
case STATUS:
diff --git a/src/main/java/net/minecraft/server/network/LoginListener.java b/src/main/java/net/minecraft/server/network/LoginListener.java
index 40f03ce23e..ac36c73e11 100644
index 6f1d3a94d0..8c55672b11 100644
--- a/src/main/java/net/minecraft/server/network/LoginListener.java
+++ b/src/main/java/net/minecraft/server/network/LoginListener.java
@@ -115,7 +115,25 @@ public class LoginListener implements PacketLoginInListener, TickablePacketListe
// Spigot start
public void initUUID()
{
- this.gameProfile = this.createFakeProfile(this.gameProfile);
@@ -243,7 +243,7 @@ public class LoginListener implements PacketLoginInListener, TickablePacketListe
new LoginHandler().fireEvents(gameprofile);
} else if (LoginListener.this.server.isSingleplayer()) {
LoginListener.LOGGER.warn("Failed to verify username but will let them in anyway!");
- LoginListener.this.startClientVerification(LoginListener.createOfflineProfile(s1));
+ LoginListener.this.startClientVerification(LoginListener.this.createOfflineProfile(s1)); // Spigot
} else {
LoginListener.this.disconnect(IChatBaseComponent.translatable("multiplayer.disconnect.unverified_username"));
LoginListener.LOGGER.error("Username '{}' tried to join with an invalid session", s1);
@@ -251,7 +251,7 @@ public class LoginListener implements PacketLoginInListener, TickablePacketListe
} catch (AuthenticationUnavailableException authenticationunavailableexception) {
if (LoginListener.this.server.isSingleplayer()) {
LoginListener.LOGGER.warn("Authentication servers are down but will let them in anyway!");
- LoginListener.this.startClientVerification(LoginListener.createOfflineProfile(s1));
+ LoginListener.this.startClientVerification(LoginListener.this.createOfflineProfile(s1)); // Spigot
} else {
LoginListener.this.disconnect(IChatBaseComponent.translatable("multiplayer.disconnect.authservers_down"));
LoginListener.LOGGER.error("Couldn't verify username because servers are unavailable");
@@ -335,10 +335,30 @@ public class LoginListener implements PacketLoginInListener, TickablePacketListe
this.state = LoginListener.EnumProtocolState.ACCEPTED;
}
- protected static GameProfile createOfflineProfile(String s) {
- UUID uuid = UUIDUtil.createOfflinePlayerUUID(s);
+ // Spigot start
+ protected GameProfile createOfflineProfile(String s) {
+ UUID uuid;
+ if ( connection.spoofedUUID != null )
+ {
+ uuid = connection.spoofedUUID;
+ } else
+ {
+ uuid = UUIDUtil.createOfflinePlayerUUID( this.gameProfile.getName() );
+ uuid = UUIDUtil.createOfflinePlayerUUID( s );
+ }
+
+ this.gameProfile = new GameProfile( uuid, this.gameProfile.getName() );
+ GameProfile gameProfile = new GameProfile( uuid, s );
+
+ if (connection.spoofedProfile != null)
+ {
+ for ( com.mojang.authlib.properties.Property property : connection.spoofedProfile )
+ {
+ if ( !HandshakeListener.PROP_PATTERN.matcher( property.getName() ).matches() ) continue;
+ this.gameProfile.getProperties().put( property.getName(), property );
+ if ( !HandshakeListener.PROP_PATTERN.matcher( property.name()).matches() ) continue;
+ gameProfile.getProperties().put( property.name(), property );
+ }
+ }
- return new GameProfile(uuid, s);
+ return gameProfile;
+ // Spigot end
}
public void handleAcceptedLogin() {
private static enum EnumProtocolState {
diff --git a/src/main/java/net/minecraft/server/network/PlayerConnection.java b/src/main/java/net/minecraft/server/network/PlayerConnection.java
index 86da0e04be..6e203c9535 100644
index cb346fff85..f4df3a902e 100644
--- a/src/main/java/net/minecraft/server/network/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/network/PlayerConnection.java
@@ -2059,7 +2059,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -1924,7 +1924,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
String message = String.format(queueEvent.getFormat(), queueEvent.getPlayer().getDisplayName(), queueEvent.getMessage());
if (((LazyPlayerSet) queueEvent.getRecipients()).isLazy()) {
@ -125,7 +151,7 @@ index 86da0e04be..6e203c9535 100644
PlayerConnection.this.server.getPlayerList().broadcastChatMessage(original, PlayerConnection.this.player, ChatMessageType.bind(ChatMessageType.CHAT, (Entity) PlayerConnection.this.player));
return null;
}
@@ -2095,7 +2095,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -1960,7 +1960,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
s = String.format(event.getFormat(), event.getPlayer().getDisplayName(), event.getMessage());
if (((LazyPlayerSet) event.getRecipients()).isLazy()) {
@ -134,7 +160,7 @@ index 86da0e04be..6e203c9535 100644
PlayerConnection.this.server.getPlayerList().broadcastChatMessage(original, PlayerConnection.this.player, ChatMessageType.bind(ChatMessageType.CHAT, (Entity) PlayerConnection.this.player));
return;
}
@@ -2352,6 +2352,13 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -2217,6 +2217,13 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
return this.connection.getRemoteAddress();
}
@ -145,16 +171,16 @@ index 86da0e04be..6e203c9535 100644
+ }
+ // Spigot End
+
@Override
public void handleInteract(PacketPlayInUseEntity packetplayinuseentity) {
PlayerConnectionUtils.ensureRunningOnSameThread(packetplayinuseentity, this, this.player.serverLevel());
public void switchToConfig() {
this.waitingForSwitchToConfig = true;
this.removePlayerFromWorld();
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index e478c20f92..8d86eb05b8 100644
index 24d3bd8aad..2dd66075d1 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -596,7 +596,7 @@ public abstract class PlayerList {
@@ -584,7 +584,7 @@ public abstract class PlayerList {
EntityPlayer entity = new EntityPlayer(this.server, this.server.getLevel(World.OVERWORLD), gameprofile);
EntityPlayer entity = new EntityPlayer(this.server, this.server.getLevel(World.OVERWORLD), gameprofile, ClientInformation.createDefault());
Player player = entity.getBukkitEntity();
- PlayerLoginEvent event = new PlayerLoginEvent(player, loginlistener.connection.hostname, ((java.net.InetSocketAddress) socketaddress).getAddress());
+ PlayerLoginEvent event = new PlayerLoginEvent(player, loginlistener.connection.hostname, ((java.net.InetSocketAddress) socketaddress).getAddress(), ((java.net.InetSocketAddress) loginlistener.connection.channel.remoteAddress()).getAddress());
@ -162,10 +188,10 @@ index e478c20f92..8d86eb05b8 100644
if (getBans().isBanned(gameprofile) && !getBans().get(gameprofile).hasExpired()) {
GameProfileBanEntry gameprofilebanentry = (GameProfileBanEntry) this.bans.get(gameprofile);
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index c1d6eef0fc..6f0661e664 100644
index ad80074180..cee17e7076 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -755,7 +755,13 @@ public final class CraftServer implements Server {
@@ -760,7 +760,13 @@ public final class CraftServer implements Server {
@Override
public long getConnectionThrottle() {
@ -181,10 +207,10 @@ index c1d6eef0fc..6f0661e664 100644
@Override
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index bc014cd721..d7d5e3e69b 100644
index 3f55e81485..8075fb784e 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2143,6 +2143,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2159,6 +2159,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
private final Player.Spigot spigot = new Player.Spigot()
{
@ -217,5 +243,5 @@ index 130016282a..3bb51f4528 100644
+ }
}
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From 136c7d4b8d60dba2a12478b55bab541de23c23be Mon Sep 17 00:00:00 2001
From cfa50e41f5a7cd50beaf448b8b05f3ae9091c701 Mon Sep 17 00:00:00 2001
From: Dylan Xaldin <Puremin0rez515@gmail.com>
Date: Thu, 12 Dec 2013 18:05:03 -0600
Subject: [PATCH] Allow Disabling Zombie Villager Aggression
@ -6,10 +6,10 @@ Subject: [PATCH] Allow Disabling Zombie Villager Aggression
Ability to configure if Zombies will be aggressive towards Villagers.
diff --git a/src/main/java/net/minecraft/world/entity/monster/EntityZombie.java b/src/main/java/net/minecraft/world/entity/monster/EntityZombie.java
index 85333b9ce..753705215 100644
index 91abf6008e..f2bda1b407 100644
--- a/src/main/java/net/minecraft/world/entity/monster/EntityZombie.java
+++ b/src/main/java/net/minecraft/world/entity/monster/EntityZombie.java
@@ -120,7 +120,7 @@ public class EntityZombie extends EntityMonster {
@@ -121,7 +121,7 @@ public class EntityZombie extends EntityMonster {
this.goalSelector.addGoal(7, new PathfinderGoalRandomStrollLand(this, 1.0D));
this.targetSelector.addGoal(1, (new PathfinderGoalHurtByTarget(this, new Class[0])).setAlertOthers(EntityPigZombie.class));
this.targetSelector.addGoal(2, new PathfinderGoalNearestAttackableTarget<>(this, EntityHuman.class, true));
@ -19,7 +19,7 @@ index 85333b9ce..753705215 100644
this.targetSelector.addGoal(5, new PathfinderGoalNearestAttackableTarget<>(this, EntityTurtle.class, 10, true, false, EntityTurtle.BABY_ON_LAND_SELECTOR));
}
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index 4894096ae..457a8e84b 100644
index 4894096ae1..457a8e84b0 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -255,4 +255,11 @@ public class SpigotWorldConfig
@ -35,5 +35,5 @@ index 4894096ae..457a8e84b 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From 6bacb0fdeebbe42f8515a0d048ad6a8c3012e64a Mon Sep 17 00:00:00 2001
From a3a107d826bb9114a4365c4b63df89560098a260 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Fri, 13 Dec 2013 11:58:58 +1100
Subject: [PATCH] Configurable Amount of Netty Threads
@ -6,10 +6,10 @@ Subject: [PATCH] Configurable Amount of Netty Threads
This brings back the option that the Spigot version of netty saw. By default Netty will try and use cores*2 threads, however if running multiple servers on the same machine, this can be too many threads. Additionally some people have 16 core servers. If 32 Netty threads are allowed in this setup, then the lock contention, and thus blocking between threads becomes much greater, leading to decreased performance.
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 8ccd952138..7db7481ebd 100644
index 977e2c6fa3..f8e553161e 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -342,7 +342,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -336,7 +336,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
services.profileCache().setExecutor(this);
}
@ -19,8 +19,8 @@ index 8ccd952138..7db7481ebd 100644
this.storageSource = convertable_conversionsession;
this.playerDataStorage = convertable_conversionsession.createPlayerStorage();
@@ -1597,7 +1597,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
@Nullable
public ServerConnection getConnection() {
- return this.connection;
+ return this.connection == null ? this.connection = new ServerConnection(this) : this.connection; // Spigot

View file

@ -1,14 +1,14 @@
From aa38a7845f9124d7d28ede703dbb030339d21006 Mon Sep 17 00:00:00 2001
From ecb12ed13a9ad4192f988ce75f0585c1468f5813 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Wed, 18 Dec 2013 13:39:14 +1100
Subject: [PATCH] Log Cause of Unexpected Exceptions
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 7db7481ebd..e91aea6c9a 100644
index f8e553161e..44fa570ca5 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -991,6 +991,12 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -973,6 +973,12 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
} catch (Throwable throwable) {
MinecraftServer.LOGGER.error("Encountered an unexpected exception", throwable);

View file

@ -1,14 +1,14 @@
From e8962e06bc7027e318fc59ea38de68fd3eefc9fa Mon Sep 17 00:00:00 2001
From 8bf54f929ba94cfac6145579d64c0108f0f610ce Mon Sep 17 00:00:00 2001
From: DerFlash <bte@freenet.de>
Date: Tue, 9 Jul 2013 00:11:12 +0200
Subject: [PATCH] Save ticks lived to nbttag
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 912cade1c..e83db7454 100644
index 88eb89c3d5..dba6709609 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -1936,6 +1936,7 @@ public abstract class Entity implements INamableTileEntity, EntityAccess, IComma
@@ -1944,6 +1944,7 @@ public abstract class Entity implements INamableTileEntity, EntityAccess, IComma
if (maxAirTicks != getDefaultMaxAirSupply()) {
nbttagcompound.putInt("Bukkit.MaxAirSupply", getMaxAirSupply());
}
@ -16,7 +16,7 @@ index 912cade1c..e83db7454 100644
// CraftBukkit end
IChatBaseComponent ichatbasecomponent = this.getCustomName();
@@ -2094,6 +2095,11 @@ public abstract class Entity implements INamableTileEntity, EntityAccess, IComma
@@ -2102,6 +2103,11 @@ public abstract class Entity implements INamableTileEntity, EntityAccess, IComma
}
// CraftBukkit start
@ -29,5 +29,5 @@ index 912cade1c..e83db7454 100644
this.visibleByDefault = !nbttagcompound.contains("Bukkit.visibleByDefault") || nbttagcompound.getBoolean("Bukkit.visibleByDefault");
// SPIGOT-6907: re-implement LivingEntity#setMaximumAir()
--
2.40.1
2.42.0

View file

@ -1,11 +1,11 @@
From f3b47c5815f4fef07a344849cf30d4b484a94d1b Mon Sep 17 00:00:00 2001
From 8ff973cca481637d7a94182547271af68a48a5a0 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Sun, 2 Feb 2014 16:55:46 +0000
Subject: [PATCH] Add Option to Nerf Mobs from Spawners
diff --git a/src/main/java/net/minecraft/world/level/MobSpawnerAbstract.java b/src/main/java/net/minecraft/world/level/MobSpawnerAbstract.java
index 20f8b6d1b..98b044d32 100644
index 20f8b6d1b0..98b044d329 100644
--- a/src/main/java/net/minecraft/world/level/MobSpawnerAbstract.java
+++ b/src/main/java/net/minecraft/world/level/MobSpawnerAbstract.java
@@ -151,6 +151,12 @@ public abstract class MobSpawnerAbstract {
@ -22,7 +22,7 @@ index 20f8b6d1b..98b044d32 100644
// CraftBukkit start
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index 457a8e84b..3e398c4e0 100644
index 457a8e84b0..3e398c4e06 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -262,4 +262,11 @@ public class SpigotWorldConfig
@ -38,5 +38,5 @@ index 457a8e84b..3e398c4e0 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From eec9841fd6a1321fed8cca04b691d0d79595e5f7 Mon Sep 17 00:00:00 2001
From 1f336bfb5005106b1efd5f03bb3af2b58bd57db7 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Mon, 23 Dec 2013 15:57:57 +1100
Subject: [PATCH] Disable Connected Check on setScoreboard
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index d7d5e3e69b..bdcf8e2059 100644
index 8075fb784e..87e5d84494 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1878,7 +1878,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1894,7 +1894,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
public void setScoreboard(Scoreboard scoreboard) {
Preconditions.checkArgument(scoreboard != null, "Scoreboard cannot be null");
Preconditions.checkState(getHandle().connection != null, "Cannot set scoreboard yet (invalid player connection)");
@ -18,5 +18,5 @@ index d7d5e3e69b..bdcf8e2059 100644
this.server.getScoreboardManager().setPlayerBoard(this, scoreboard);
}
--
2.41.0
2.42.0

View file

@ -1,11 +1,11 @@
From 6c825538e3c2cb77b3fe776b6993c41b91acd117 Mon Sep 17 00:00:00 2001
From 39149969c90b58f6f34da1c521cb910f2d6ef5e8 Mon Sep 17 00:00:00 2001
From: Thinkofdeath <thethinkofdeath@gmail.com>
Date: Tue, 7 Jan 2014 15:56:26 +0000
Subject: [PATCH] Allow statistics to be disabled/forced
diff --git a/src/main/java/net/minecraft/stats/ServerStatisticManager.java b/src/main/java/net/minecraft/stats/ServerStatisticManager.java
index 3be61a86c..a7ecfad86 100644
index 3be61a86cf..a7ecfad861 100644
--- a/src/main/java/net/minecraft/stats/ServerStatisticManager.java
+++ b/src/main/java/net/minecraft/stats/ServerStatisticManager.java
@@ -48,6 +48,13 @@ public class ServerStatisticManager extends StatisticManager {
@ -39,7 +39,7 @@ index 3be61a86c..a7ecfad86 100644
this.dirty.add(statistic);
}
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index c5989e8e9..0aab647ab 100644
index c5989e8e9b..0aab647abb 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -10,10 +10,13 @@ import java.util.HashMap;
@ -94,5 +94,5 @@ index c5989e8e9..0aab647ab 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From c0c04616726ebba8c0581b1ff32b942093e9e236 Mon Sep 17 00:00:00 2001
From 5ea31bf8475eb7683a51a813e1593c145146be49 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Sun, 12 Jan 2014 20:56:41 +1100
Subject: [PATCH] Try and Debug Crash Reports Crashing
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index e91aea6c9a..42c39e7804 100644
index 44fa570ca5..c1ea8e239b 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1269,7 +1269,14 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -1256,7 +1256,14 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
worldserver.tick(booleansupplier);
worldserver.timings.doTick.stopTiming(); // Spigot
} catch (Throwable throwable) {

View file

@ -1,33 +1,33 @@
From bda922b2bf84d4efa5bba872e2c4f5a1e7849597 Mon Sep 17 00:00:00 2001
From 1f8e29b139a9abee264376bc3ac349e50e9775ee Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Mon, 20 Jan 2014 13:44:07 +1100
Subject: [PATCH] Catch stalling on corrupted map data / NBT arrays.
diff --git a/src/main/java/net/minecraft/nbt/NBTTagByteArray.java b/src/main/java/net/minecraft/nbt/NBTTagByteArray.java
index 4083563c6..2ab3a471e 100644
index 64933f0576..16b3d48bc2 100644
--- a/src/main/java/net/minecraft/nbt/NBTTagByteArray.java
+++ b/src/main/java/net/minecraft/nbt/NBTTagByteArray.java
@@ -16,6 +16,7 @@ public class NBTTagByteArray extends NBTList<NBTTagByte> {
public NBTTagByteArray load(DataInput datainput, int i, NBTReadLimiter nbtreadlimiter) throws IOException {
@@ -25,6 +25,7 @@ public class NBTTagByteArray extends NBTList<NBTTagByte> {
private static byte[] readAccounted(DataInput datainput, NBTReadLimiter nbtreadlimiter) throws IOException {
nbtreadlimiter.accountBytes(24L);
int j = datainput.readInt();
+ com.google.common.base.Preconditions.checkArgument( j < 1 << 24); // Spigot
int i = datainput.readInt();
+ com.google.common.base.Preconditions.checkArgument( i < 1 << 24); // Spigot
nbtreadlimiter.accountBytes(1L * (long) j);
byte[] abyte = new byte[j];
nbtreadlimiter.accountBytes(1L, (long) i);
byte[] abyte = new byte[i];
diff --git a/src/main/java/net/minecraft/nbt/NBTTagIntArray.java b/src/main/java/net/minecraft/nbt/NBTTagIntArray.java
index f0f4562d1..e5e90b9d7 100644
index 7e4c021ca7..96d4721c66 100644
--- a/src/main/java/net/minecraft/nbt/NBTTagIntArray.java
+++ b/src/main/java/net/minecraft/nbt/NBTTagIntArray.java
@@ -16,6 +16,7 @@ public class NBTTagIntArray extends NBTList<NBTTagInt> {
public NBTTagIntArray load(DataInput datainput, int i, NBTReadLimiter nbtreadlimiter) throws IOException {
@@ -25,6 +25,7 @@ public class NBTTagIntArray extends NBTList<NBTTagInt> {
private static int[] readAccounted(DataInput datainput, NBTReadLimiter nbtreadlimiter) throws IOException {
nbtreadlimiter.accountBytes(24L);
int j = datainput.readInt();
+ com.google.common.base.Preconditions.checkArgument( j < 1 << 24); // Spigot
int i = datainput.readInt();
+ com.google.common.base.Preconditions.checkArgument( i < 1 << 24); // Spigot
nbtreadlimiter.accountBytes(4L * (long) j);
int[] aint = new int[j];
nbtreadlimiter.accountBytes(4L, (long) i);
int[] aint = new int[i];
--
2.40.1
2.42.0

View file

@ -1,11 +1,11 @@
From 3522ade349f9bcb19e9b7d1e4b7a38d4b791a242 Mon Sep 17 00:00:00 2001
From 490a437a5bb09cc6a10735f748b4c4dfe8cad404 Mon Sep 17 00:00:00 2001
From: Dmck2b <dmck2b+github@gmail.com>
Date: Mon, 20 Jan 2014 20:18:23 +0000
Subject: [PATCH] Allow toggling of ZombiePigmen spawning in portal blocks
diff --git a/src/main/java/net/minecraft/world/level/block/BlockPortal.java b/src/main/java/net/minecraft/world/level/block/BlockPortal.java
index c6f82724d..512ba8687 100644
index c6f82724d9..512ba86870 100644
--- a/src/main/java/net/minecraft/world/level/block/BlockPortal.java
+++ b/src/main/java/net/minecraft/world/level/block/BlockPortal.java
@@ -53,7 +53,7 @@ public class BlockPortal extends Block {
@ -18,7 +18,7 @@ index c6f82724d..512ba8687 100644
blockposition = blockposition.below();
}
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index 3e398c4e0..d4eb3ccda 100644
index 3e398c4e06..d4eb3ccdab 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -269,4 +269,11 @@ public class SpigotWorldConfig
@ -34,5 +34,5 @@ index 3e398c4e0..d4eb3ccda 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From aad4c1034036352138246dad407cd9831f27a0bc Mon Sep 17 00:00:00 2001
From b881f51af7c5f82729a8a0f5feb086c9e34f9525 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Thu, 26 Jan 2017 21:50:51 +0000
Subject: [PATCH] Highly Optimized Tick Loop
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 42c39e7804..2a869fc159 100644
index c1ea8e239b..eb20b62d41 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -290,6 +290,12 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -285,6 +285,12 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
public CommandDispatcher vanillaCommandDispatcher;
private boolean forceTicks;
// CraftBukkit end
@ -21,7 +21,7 @@ index 42c39e7804..2a869fc159 100644
public static <S extends MinecraftServer> S spin(Function<Thread, S> function) {
AtomicReference<S> atomicreference = new AtomicReference();
@@ -948,6 +954,13 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -930,6 +936,13 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
}
@ -35,7 +35,7 @@ index 42c39e7804..2a869fc159 100644
protected void runServer() {
try {
if (!this.initServer()) {
@@ -958,8 +971,11 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -940,8 +953,11 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.statusIcon = (ServerPing.a) this.loadStatusIcon().orElse(null); // CraftBukkit - decompile error
this.status = this.buildServerStatus();
@ -48,7 +48,7 @@ index 42c39e7804..2a869fc159 100644
if (i > 5000L && this.nextTickTime - this.lastOverloadWarning >= 30000L) { // CraftBukkit
long j = i / 50L;
@@ -970,6 +986,16 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -952,6 +968,16 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
this.lastOverloadWarning = this.nextTickTime;
}

View file

@ -1,11 +1,11 @@
From 14d7a3ef82ad8870a46b8915ea31e423dc3437af Mon Sep 17 00:00:00 2001
From 5e8c42a92d7e8f31969f9881161bcb543d70bd78 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Sun, 26 Jan 2014 21:48:34 +1100
Subject: [PATCH] Configurable Ping Sample Size
diff --git a/src/main/java/net/minecraft/server/network/PacketStatusListener.java b/src/main/java/net/minecraft/server/network/PacketStatusListener.java
index a0d4c27f3..5e6334239 100644
index a0d4c27f30..5e6334239b 100644
--- a/src/main/java/net/minecraft/server/network/PacketStatusListener.java
+++ b/src/main/java/net/minecraft/server/network/PacketStatusListener.java
@@ -133,6 +133,13 @@ public class PacketStatusListener implements PacketStatusInListener {
@ -23,7 +23,7 @@ index a0d4c27f3..5e6334239 100644
ServerPing ping = new ServerPing(
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index 4987040ff..141ba2784 100644
index 4987040ff2..141ba27842 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -271,4 +271,11 @@ public class SpigotConfig
@ -39,5 +39,5 @@ index 4987040ff..141ba2784 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From 946fd1e0ff31f777d676158fda1b9237851120f5 Mon Sep 17 00:00:00 2001
From b321429705949994f039d27fab5cbea88bff6b0d Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Mon, 27 Jan 2014 08:39:26 +1100
Subject: [PATCH] Add Optional Tick Shuffling
@ -6,10 +6,10 @@ Subject: [PATCH] Add Optional Tick Shuffling
This prevents players from 'gaming' the server, and strategically relogging to increase their position in the tick order.
diff --git a/src/main/java/net/minecraft/server/network/ServerConnection.java b/src/main/java/net/minecraft/server/network/ServerConnection.java
index b8354477d..400f9e0b6 100644
index 8c85037f68..4773f886da 100644
--- a/src/main/java/net/minecraft/server/network/ServerConnection.java
+++ b/src/main/java/net/minecraft/server/network/ServerConnection.java
@@ -157,6 +157,13 @@ public class ServerConnection {
@@ -162,6 +162,13 @@ public class ServerConnection {
List list = this.connections;
synchronized (this.connections) {
@ -24,7 +24,7 @@ index b8354477d..400f9e0b6 100644
while (iterator.hasNext()) {
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index 141ba2784..cf7c624bc 100644
index 141ba27842..cf7c624bc5 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -278,4 +278,10 @@ public class SpigotConfig
@ -39,5 +39,5 @@ index 141ba2784..cf7c624bc 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From 525919ed53ef5469747cd2bc99bbfca63eabe7b8 Mon Sep 17 00:00:00 2001
From aeefd2322859ee029829741bbde882b45ed8c9ce Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sat, 8 Feb 2014 08:13:40 +0000
Subject: [PATCH] Spam Filter Exclusions
diff --git a/src/main/java/net/minecraft/server/network/PlayerConnection.java b/src/main/java/net/minecraft/server/network/PlayerConnection.java
index 6e203c9535..f064a44ea3 100644
index f4df3a902e..af3ee9d5ae 100644
--- a/src/main/java/net/minecraft/server/network/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/network/PlayerConnection.java
@@ -1901,7 +1901,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -1766,7 +1766,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
// CraftBukkit end
this.performChatCommand(serverboundchatcommandpacket, (LastSeenMessages) optional.get());
@ -17,7 +17,7 @@ index 6e203c9535..f064a44ea3 100644
});
}
@@ -2168,11 +2168,22 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -2033,11 +2033,22 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
}
// this.server.getPlayerList().broadcastChatMessage(playerchatmessage, this.player, ChatMessageType.bind(ChatMessageType.CHAT, (Entity) this.player));
// CraftBukkit end
@ -69,5 +69,5 @@ index cf7c624bc5..4f9b55c713 100644
+ }
}
--
2.41.0
2.42.0

View file

@ -1,14 +1,14 @@
From 45c34aadb55f2f25e75ecbb1328d254b35caa3d9 Mon Sep 17 00:00:00 2001
From 0ce572e044ec3166ae758543395370387bad5c4d Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Sun, 9 Feb 2014 14:39:01 +1100
Subject: [PATCH] Add Option to Silence CommandBlock Console
diff --git a/src/main/java/net/minecraft/commands/CommandListenerWrapper.java b/src/main/java/net/minecraft/commands/CommandListenerWrapper.java
index 4f4d25c43..8a07f629a 100644
index eb0dff89ca..915db07e7d 100644
--- a/src/main/java/net/minecraft/commands/CommandListenerWrapper.java
+++ b/src/main/java/net/minecraft/commands/CommandListenerWrapper.java
@@ -341,7 +341,7 @@ public class CommandListenerWrapper implements ICompletionProvider {
@@ -337,7 +337,7 @@ public class CommandListenerWrapper implements ICompletionProvider {
}
}
@ -18,7 +18,7 @@ index 4f4d25c43..8a07f629a 100644
}
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index 4f9b55c71..40c09ca21 100644
index 4f9b55c713..40c09ca21b 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -294,4 +294,10 @@ public class SpigotConfig
@ -33,5 +33,5 @@ index 4f9b55c71..40c09ca21 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From 2f133b3a60fa332d24ffc6bea0fb3e966bbe355a Mon Sep 17 00:00:00 2001
From 29a2d0b8a81ac65fc0ba76646c52051943f08f91 Mon Sep 17 00:00:00 2001
From: Tux <write@imaginarycode.com>
Date: Sun, 9 Feb 2014 14:03:03 -0500
Subject: [PATCH] Add support for fetching hidden players
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index bdcf8e2059..c7a44fd044 100644
index 87e5d84494..50d9c44e65 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2157,6 +2157,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2173,6 +2173,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
server.getServer().getPlayerList().respawn( getHandle(), false, org.bukkit.event.player.PlayerRespawnEvent.RespawnReason.PLUGIN );
}
}
@ -31,5 +31,5 @@ index bdcf8e2059..c7a44fd044 100644
public Player.Spigot spigot()
--
2.41.0
2.42.0

View file

@ -1,14 +1,14 @@
From 57f8777b25d84d21f2a28122a90b7e93d7a42fde Mon Sep 17 00:00:00 2001
From bc8ec750abca0e1aa89eaf4a74c10e72a460fe43 Mon Sep 17 00:00:00 2001
From: Thinkofdeath <thethinkofdeath@gmail.com>
Date: Wed, 12 Feb 2014 20:44:14 +0000
Subject: [PATCH] Allow vanilla commands to be the main version of a command
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 6f0661e66..babc80b87 100644
index cee17e7076..da8ae08c61 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -458,8 +458,11 @@ public final class CraftServer implements Server {
@@ -463,8 +463,11 @@ public final class CraftServer implements Server {
}
if (type == PluginLoadOrder.POSTWORLD) {
@ -21,7 +21,7 @@ index 6f0661e66..babc80b87 100644
commandMap.registerServerAliases();
DefaultPermissions.registerCorePermissions();
CraftDefaultPermissions.registerCorePermissions();
@@ -473,12 +476,21 @@ public final class CraftServer implements Server {
@@ -478,12 +481,21 @@ public final class CraftServer implements Server {
pluginManager.disablePlugins();
}
@ -46,7 +46,7 @@ index 6f0661e66..babc80b87 100644
}
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index 40c09ca21..588d4656b 100644
index 40c09ca21b..588d4656bd 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -8,8 +8,10 @@ import java.lang.reflect.Method;
@ -78,5 +78,5 @@ index 40c09ca21..588d4656b 100644
+ }
}
--
2.41.0
2.42.0

View file

@ -1,11 +1,11 @@
From fc3ea4e9d6c48bd4010639f4d892e72ea60674e3 Mon Sep 17 00:00:00 2001
From 85f130a5810f0e316013967a8208d85dce9216d3 Mon Sep 17 00:00:00 2001
From: drXor <mcyoungsota@gmail.com>
Date: Sun, 23 Feb 2014 16:16:59 -0400
Subject: [PATCH] Implement Silenceable Lightning API
diff --git a/src/main/java/net/minecraft/world/entity/EntityLightning.java b/src/main/java/net/minecraft/world/entity/EntityLightning.java
index eb3832011d..8d3a182b26 100644
index e3ce1c8b2f..a56130c834 100644
--- a/src/main/java/net/minecraft/world/entity/EntityLightning.java
+++ b/src/main/java/net/minecraft/world/entity/EntityLightning.java
@@ -46,6 +46,7 @@ public class EntityLightning extends Entity {
@ -74,5 +74,5 @@ index 75d1cc7b1f..d3f5d4acc2 100644
@Override
--
2.41.0
2.42.0

View file

@ -1,11 +1,11 @@
From 017b8f395ea5f9ad3e400e4b49111af4fca5a81d Mon Sep 17 00:00:00 2001
From 34872a525fbcd8160b502b4f44d8fb19ac0831c3 Mon Sep 17 00:00:00 2001
From: FrozenBrain <carstenbamsti@googlemail.com>
Date: Sun, 2 Mar 2014 21:13:46 +0100
Subject: [PATCH] Use one PermissibleBase for all Command Blocks
diff --git a/src/main/java/org/bukkit/craftbukkit/command/ServerCommandSender.java b/src/main/java/org/bukkit/craftbukkit/command/ServerCommandSender.java
index e0acbada8..74558e852 100644
index e0acbada89..74558e852e 100644
--- a/src/main/java/org/bukkit/craftbukkit/command/ServerCommandSender.java
+++ b/src/main/java/org/bukkit/craftbukkit/command/ServerCommandSender.java
@@ -12,9 +12,18 @@ import org.bukkit.permissions.PermissionAttachmentInfo;
@ -29,5 +29,5 @@ index e0acbada8..74558e852 100644
@Override
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From adfe776573081011b32e04700c7c8f04e6bf0cfa Mon Sep 17 00:00:00 2001
From 6e0280382c6b9c1bb2c8f2d34ab2a646c67e2b9e Mon Sep 17 00:00:00 2001
From: drXor <mcyoungsota@gmail.com>
Date: Sat, 29 Mar 2014 13:44:25 -0400
Subject: [PATCH] Configurable dragon death and wither spawn sounds
diff --git a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EntityEnderDragon.java b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EntityEnderDragon.java
index f054524bb..73e314efa 100644
index 4cf7e7c17c..70d0f295d2 100644
--- a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EntityEnderDragon.java
+++ b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EntityEnderDragon.java
@@ -687,7 +687,24 @@ public class EntityEnderDragon extends EntityInsentient implements IMonster {
@@ -678,7 +678,24 @@ public class EntityEnderDragon extends EntityInsentient implements IMonster {
}
if (this.dragonDeathTime == 1 && !this.isSilent()) {
@ -35,7 +35,7 @@ index f054524bb..73e314efa 100644
}
diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java b/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java
index 35594cf81..da8d4094c 100644
index ec06bde715..18eeb9e4f3 100644
--- a/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java
+++ b/src/main/java/net/minecraft/world/entity/boss/wither/EntityWither.java
@@ -277,6 +277,7 @@ public class EntityWither extends EntityMonster implements PowerableMob, IRanged
@ -47,7 +47,7 @@ index 35594cf81..da8d4094c 100644
double deltaLength = Math.sqrt(distanceSquared);
double relativeX = player.getX() + (deltaX / deltaLength) * viewDistance;
diff --git a/src/main/java/net/minecraft/world/item/ItemEnderEye.java b/src/main/java/net/minecraft/world/item/ItemEnderEye.java
index 33b8cfe0e..3345f0fc1 100644
index 33b8cfe0e1..3345f0fc1a 100644
--- a/src/main/java/net/minecraft/world/item/ItemEnderEye.java
+++ b/src/main/java/net/minecraft/world/item/ItemEnderEye.java
@@ -60,7 +60,25 @@ public class ItemEnderEye extends Item {
@ -78,7 +78,7 @@ index 33b8cfe0e..3345f0fc1 100644
return EnumInteractionResult.CONSUME;
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index d4eb3ccda..7f5f97def 100644
index d4eb3ccdab..7f5f97defc 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -276,4 +276,22 @@ public class SpigotWorldConfig
@ -105,5 +105,5 @@ index d4eb3ccda..7f5f97def 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From 79ce673998eedb636fba04cd68b099807d375f7c Mon Sep 17 00:00:00 2001
From 6cf44bc324ad9b3978dfc8c5091f5e8da789cce5 Mon Sep 17 00:00:00 2001
From: Thinkofdeath <thethinkofdeath@gmail.com>
Date: Fri, 11 Apr 2014 11:16:34 +0100
Subject: [PATCH] Display 'Spigot' in client crashes, server lists and Mojang
@ -6,7 +6,7 @@ Subject: [PATCH] Display 'Spigot' in client crashes, server lists and Mojang
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 2a869fc159..9afa037ba4 100644
index eb20b62d41..51da03b475 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1423,7 +1423,7 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas

View file

@ -1,11 +1,11 @@
From 7a65efa4080b39e200702b06d568bb338ea0e498 Mon Sep 17 00:00:00 2001
From 7e86237fa589fbd26469d30518cf87b1c15aaf06 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Sat, 12 Apr 2014 21:23:58 +1000
Subject: [PATCH] Treat Bungee as Online Mode
diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
index 7208f3b1c..898b71aa9 100644
index b40e34e819..f7eb78cab9 100644
--- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java
@@ -223,7 +223,14 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer
@ -25,18 +25,18 @@ index 7208f3b1c..898b71aa9 100644
}
diff --git a/src/main/java/net/minecraft/server/players/NameReferencingFileConverter.java b/src/main/java/net/minecraft/server/players/NameReferencingFileConverter.java
index d498b61ca..060f66af1 100644
index cbf3f915bd..37b5f05124 100644
--- a/src/main/java/net/minecraft/server/players/NameReferencingFileConverter.java
+++ b/src/main/java/net/minecraft/server/players/NameReferencingFileConverter.java
@@ -68,7 +68,7 @@ public class NameReferencingFileConverter {
@@ -67,7 +67,7 @@ public class NameReferencingFileConverter {
return new String[i];
});
- if (minecraftserver.usesAuthentication()) {
+ if (minecraftserver.usesAuthentication() || org.spigotmc.SpigotConfig.bungee) { // Spigot: bungee = online mode, for now.
minecraftserver.getProfileRepository().findProfilesByNames(astring, Agent.MINECRAFT, profilelookupcallback);
minecraftserver.getProfileRepository().findProfilesByNames(astring, profilelookupcallback);
} else {
String[] astring1 = astring;
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From cbbc49e5d7506524f34a640403caa014116bf37b Mon Sep 17 00:00:00 2001
From 2f80f2024e40066a1ce05c3a503393fd4cd4b9ba Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Sun, 13 Apr 2014 09:00:59 +1000
Subject: [PATCH] Print Stack on InternalException
diff --git a/src/main/java/net/minecraft/network/NetworkManager.java b/src/main/java/net/minecraft/network/NetworkManager.java
index dac406ba7..2da5fcd1b 100644
index 2c4e85749a..7a083a9961 100644
--- a/src/main/java/net/minecraft/network/NetworkManager.java
+++ b/src/main/java/net/minecraft/network/NetworkManager.java
@@ -157,6 +157,7 @@ public class NetworkManager extends SimpleChannelInboundHandler<Packet<?>> {
@@ -170,6 +170,7 @@ public class NetworkManager extends SimpleChannelInboundHandler<Packet<?>> {
}
}
@ -17,5 +17,5 @@ index dac406ba7..2da5fcd1b 100644
protected void channelRead0(ChannelHandlerContext channelhandlercontext, Packet<?> packet) {
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From f13b9984c9e91143233d66b4c1585df0c000a915 Mon Sep 17 00:00:00 2001
From 2d19550f29d1e6506fac54292d4a89c68e4840de Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Sun, 13 Apr 2014 14:41:23 +1000
Subject: [PATCH] Use Offline Player Data Once if Required.
@ -6,7 +6,7 @@ Subject: [PATCH] Use Offline Player Data Once if Required.
If we are online mode and the only copy of player data we can find is the player's offline mode data, we will attempt a once off conversion by reading this data and then renaming the file so it won't be used again.
diff --git a/src/main/java/net/minecraft/world/level/storage/WorldNBTStorage.java b/src/main/java/net/minecraft/world/level/storage/WorldNBTStorage.java
index bb8e77efb..517cc2e53 100644
index bb8e77efb2..517cc2e537 100644
--- a/src/main/java/net/minecraft/world/level/storage/WorldNBTStorage.java
+++ b/src/main/java/net/minecraft/world/level/storage/WorldNBTStorage.java
@@ -53,10 +53,28 @@ public class WorldNBTStorage {
@ -39,5 +39,5 @@ index bb8e77efb..517cc2e53 100644
WorldNBTStorage.LOGGER.warn("Failed to load player data for {}", entityhuman.getName().getString());
}
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From d7c8a2e9e268dfe060c36c32f1a6ad2ff226da2b Mon Sep 17 00:00:00 2001
From 885524c10f441321003c7f809b0d4e8747fda3a9 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Mon, 14 Apr 2014 09:46:20 +1000
Subject: [PATCH] Use Provided Case for Non Existent Offline Players
diff --git a/src/main/java/net/minecraft/server/players/UserCache.java b/src/main/java/net/minecraft/server/players/UserCache.java
index bed67b5d8..dd6c8a284 100644
index b9ecd819b6..5ca7755d5c 100644
--- a/src/main/java/net/minecraft/server/players/UserCache.java
+++ b/src/main/java/net/minecraft/server/players/UserCache.java
@@ -152,7 +152,7 @@ public class UserCache {
@@ -140,7 +140,7 @@ public class UserCache {
usercache_usercacheentry.setLastAccess(this.getNextOperation());
optional = Optional.of(usercache_usercacheentry.getProfile());
} else {
@ -18,5 +18,5 @@ index bed67b5d8..dd6c8a284 100644
this.add((GameProfile) optional.get());
flag = false;
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From bfa453119642d64ea3d2bee7387c19788b6b70d6 Mon Sep 17 00:00:00 2001
From c603b67b7837fe2796c81665f320eb6c14ec5bd9 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Tue, 15 Apr 2014 10:32:48 +1000
Subject: [PATCH] Fix Player Banning
@ -6,12 +6,12 @@ Subject: [PATCH] Fix Player Banning
This issue stems from the fact that Bukkit's API only allows a UUID to be banned, but Minecraft requires both a UUID and name. To fix this we modify the code to require a UUID or a name, or both. The correct fix would be expanding the API to be able to provide a name, however this would require plugin changes.
diff --git a/src/main/java/net/minecraft/server/players/GameProfileBanEntry.java b/src/main/java/net/minecraft/server/players/GameProfileBanEntry.java
index e7085ccdd..904c9f162 100644
index 2fd5a1c5f1..cc66113e96 100644
--- a/src/main/java/net/minecraft/server/players/GameProfileBanEntry.java
+++ b/src/main/java/net/minecraft/server/players/GameProfileBanEntry.java
@@ -40,20 +40,29 @@ public class GameProfileBanEntry extends ExpirableListEntry<GameProfile> {
}
@Nullable
private static GameProfile createGameProfile(JsonObject jsonobject) {
- if (jsonobject.has("uuid") && jsonobject.has("name")) {
+ // Spigot start
@ -45,5 +45,5 @@ index e7085ccdd..904c9f162 100644
}
}
--
2.40.1
2.42.0

View file

@ -1,11 +1,11 @@
From fd0951035422c2871fc5d6f8b262807e53e3d3e2 Mon Sep 17 00:00:00 2001
From 185caa76c76d11847e9d5594a15527015e4b76e8 Mon Sep 17 00:00:00 2001
From: David <dmck2b@gmail.com>
Date: Mon, 21 Apr 2014 12:43:08 +0100
Subject: [PATCH] Prevent NoClassDefError crash and notify on crash
diff --git a/src/main/java/net/minecraft/world/level/World.java b/src/main/java/net/minecraft/world/level/World.java
index fa0391b5e..c33143811 100644
index fa0391b5ed..c331438113 100644
--- a/src/main/java/net/minecraft/world/level/World.java
+++ b/src/main/java/net/minecraft/world/level/World.java
@@ -157,6 +157,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
@ -32,7 +32,7 @@ index fa0391b5e..c33143811 100644
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/world/level/redstone/NeighborUpdater.java b/src/main/java/net/minecraft/world/level/redstone/NeighborUpdater.java
index b86294e75..0383c21de 100644
index b86294e756..0383c21dea 100644
--- a/src/main/java/net/minecraft/world/level/redstone/NeighborUpdater.java
+++ b/src/main/java/net/minecraft/world/level/redstone/NeighborUpdater.java
@@ -65,6 +65,10 @@ public interface NeighborUpdater {
@ -47,7 +47,7 @@ index b86294e75..0383c21de 100644
CrashReport crashreport = CrashReport.forThrowable(throwable, "Exception while updating neighbours");
CrashReportSystemDetails crashreportsystemdetails = crashreport.addCategory("Block being updated");
diff --git a/src/main/java/org/spigotmc/WatchdogThread.java b/src/main/java/org/spigotmc/WatchdogThread.java
index 4734d4ae8..b4eeeb0d0 100644
index 4734d4ae83..b4eeeb0d00 100644
--- a/src/main/java/org/spigotmc/WatchdogThread.java
+++ b/src/main/java/org/spigotmc/WatchdogThread.java
@@ -74,6 +74,13 @@ public class WatchdogThread extends Thread
@ -65,5 +65,5 @@ index 4734d4ae8..b4eeeb0d0 100644
log.log( Level.SEVERE, "Server thread dump (Look for plugins here before reporting to Spigot!):" );
dumpThread( ManagementFactory.getThreadMXBean().getThreadInfo( MinecraftServer.getServer().serverThread.getId(), Integer.MAX_VALUE ), log );
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From d416c6e1bda9401a030c1cf0a53db1f6911546bf Mon Sep 17 00:00:00 2001
From 03812f658152a10ade5041cb68053260e137c916 Mon Sep 17 00:00:00 2001
From: Jonas Konrad <me@yawk.at>
Date: Fri, 25 Apr 2014 23:46:46 +0200
Subject: [PATCH] Fix race condition that could kill connections before they
@ -12,28 +12,28 @@ initialized. The ServerConnection does not remove NetworkManagers with
this flag.
diff --git a/src/main/java/net/minecraft/network/NetworkManager.java b/src/main/java/net/minecraft/network/NetworkManager.java
index 2da5fcd1b..af05a27ee 100644
index 7a083a9961..1e0b785c82 100644
--- a/src/main/java/net/minecraft/network/NetworkManager.java
+++ b/src/main/java/net/minecraft/network/NetworkManager.java
@@ -79,6 +79,7 @@ public class NetworkManager extends SimpleChannelInboundHandler<Packet<?>> {
@@ -90,6 +90,7 @@ public class NetworkManager extends SimpleChannelInboundHandler<Packet<?>> {
// Spigot Start
public java.util.UUID spoofedUUID;
public com.mojang.authlib.properties.Property[] spoofedProfile;
+ public boolean preparing = true;
// Spigot End
private PacketListener packetListener;
private IChatBaseComponent disconnectedReason;
@@ -102,6 +103,9 @@ public class NetworkManager extends SimpleChannelInboundHandler<Packet<?>> {
@Nullable
private volatile PacketListener disconnectListener;
@@ -119,6 +120,9 @@ public class NetworkManager extends SimpleChannelInboundHandler<Packet<?>> {
super.channelActive(channelhandlercontext);
this.channel = channelhandlercontext.channel();
this.address = this.channel.remoteAddress();
+ // Spigot Start
+ this.preparing = false;
+ // Spigot End
try {
this.setProtocol(EnumProtocol.HANDSHAKING);
@@ -307,6 +311,9 @@ public class NetworkManager extends SimpleChannelInboundHandler<Packet<?>> {
if (this.delayedDisconnect != null) {
this.disconnect(this.delayedDisconnect);
}
@@ -422,6 +426,9 @@ public class NetworkManager extends SimpleChannelInboundHandler<Packet<?>> {
}
public void disconnect(IChatBaseComponent ichatbasecomponent) {
@ -44,10 +44,10 @@ index 2da5fcd1b..af05a27ee 100644
this.delayedDisconnect = ichatbasecomponent;
}
diff --git a/src/main/java/net/minecraft/server/network/ServerConnection.java b/src/main/java/net/minecraft/server/network/ServerConnection.java
index 400f9e0b6..c86091ed1 100644
index 4773f886da..b1676b4a73 100644
--- a/src/main/java/net/minecraft/server/network/ServerConnection.java
+++ b/src/main/java/net/minecraft/server/network/ServerConnection.java
@@ -187,6 +187,10 @@ public class ServerConnection {
@@ -192,6 +192,10 @@ public class ServerConnection {
networkmanager.setReadOnly();
}
} else {
@ -59,5 +59,5 @@ index 400f9e0b6..c86091ed1 100644
networkmanager.handleDisconnection();
}
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From 0d10a010535fe8edec931efdf08638fb0f557174 Mon Sep 17 00:00:00 2001
From db490e23773ba2278192b54109fad731f7f26d66 Mon Sep 17 00:00:00 2001
From: drXor <mcyoungsota@gmail.com>
Date: Fri, 25 Apr 2014 18:17:30 -0400
Subject: [PATCH] Configurable UserCache cap
diff --git a/src/main/java/net/minecraft/server/players/UserCache.java b/src/main/java/net/minecraft/server/players/UserCache.java
index dd6c8a284..2a6872967 100644
index 5ca7755d5c..dcf5e8351a 100644
--- a/src/main/java/net/minecraft/server/players/UserCache.java
+++ b/src/main/java/net/minecraft/server/players/UserCache.java
@@ -273,7 +273,7 @@ public class UserCache {
@@ -259,7 +259,7 @@ public class UserCache {
JsonArray jsonarray = new JsonArray();
DateFormat dateformat = createDateFormat();
@ -18,7 +18,7 @@ index dd6c8a284..2a6872967 100644
});
String s = this.gson.toJson(jsonarray);
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index 588d4656b..285bb7a20 100644
index 588d4656bd..285bb7a203 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -314,4 +314,10 @@ public class SpigotConfig
@ -33,5 +33,5 @@ index 588d4656b..285bb7a20 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,16 +1,16 @@
From f55bc3057037d87050b92f6560ee8deb0393d672 Mon Sep 17 00:00:00 2001
From 80116855eb73f21e5218bedab6880bdaf316c2bb Mon Sep 17 00:00:00 2001
From: ninja <xninja@openmailbox.org>
Date: Tue, 8 Apr 2014 14:05:19 +0200
Subject: [PATCH] Implement PlayerSpawnLocationEvent.
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index db7878edc..a4710dafd 100644
index 2dd66075d1..02439fb3d3 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -235,6 +235,19 @@ public abstract class PlayerList {
s1 = networkmanager.getRemoteAddress().toString();
}
@@ -224,6 +224,19 @@ public abstract class PlayerList {
entityplayer.setServerLevel(worldserver1);
String s1 = networkmanager.getLoggableAddress(this.server.logIPs());
+ // Spigot start - spawn location event
+ Player spawnPlayer = entityplayer.getBukkitEntity();
@ -29,5 +29,5 @@ index db7878edc..a4710dafd 100644
// PlayerList.LOGGER.info("{}[{}] logged in with entity id {} at ({}, {}, {})", new Object[]{entityplayer.getName().getString(), s1, entityplayer.getId(), entityplayer.getX(), entityplayer.getY(), entityplayer.getZ()});
WorldData worlddata = worldserver1.getLevelData();
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From 1e1602ca1800f924461ef320449c460948d06da6 Mon Sep 17 00:00:00 2001
From bd7c50f73bf78292fb684b8bac796e0738ae38c1 Mon Sep 17 00:00:00 2001
From: drXor <mcyoungsota@gmail.com>
Date: Fri, 23 May 2014 18:05:10 -0400
Subject: [PATCH] Configurable save-on-stop-only for UserCache
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 9afa037ba4..79d7e6d556 100644
index 51da03b475..4ab776910f 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -927,6 +927,12 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
@@ -909,6 +909,12 @@ public abstract class MinecraftServer extends IAsyncTaskHandlerReentrant<TickTas
} catch (IOException ioexception1) {
MinecraftServer.LOGGER.error("Failed to unlock level {}", this.storageSource.getLevelId(), ioexception1);
}
@ -22,10 +22,10 @@ index 9afa037ba4..79d7e6d556 100644
}
diff --git a/src/main/java/net/minecraft/server/players/UserCache.java b/src/main/java/net/minecraft/server/players/UserCache.java
index 2a68729679..1295a33408 100644
index dcf5e8351a..bde5f6086d 100644
--- a/src/main/java/net/minecraft/server/players/UserCache.java
+++ b/src/main/java/net/minecraft/server/players/UserCache.java
@@ -127,7 +127,7 @@ public class UserCache {
@@ -115,7 +115,7 @@ public class UserCache {
UserCache.UserCacheEntry usercache_usercacheentry = new UserCache.UserCacheEntry(gameprofile, date);
this.safeAdd(usercache_usercacheentry);
@ -34,7 +34,7 @@ index 2a68729679..1295a33408 100644
}
private long getNextOperation() {
@@ -159,7 +159,7 @@ public class UserCache {
@@ -147,7 +147,7 @@ public class UserCache {
}
}

View file

@ -1,4 +1,4 @@
From b442b12876a2a13e3a58cbe24bea8dea67970533 Mon Sep 17 00:00:00 2001
From 7dcd57b0788a48eded673f5b12feece5699be7f7 Mon Sep 17 00:00:00 2001
From: Thinkofdeath <thinkofdeath@spigotmc.org>
Date: Sun, 29 Jun 2014 21:10:34 +0100
Subject: [PATCH] Limit block placement/interaction packets
@ -45,10 +45,10 @@ index 675909dc64..44ed8f10d4 100644
this.blockHit = packetdataserializer.readBlockHitResult();
this.sequence = packetdataserializer.readVarInt();
diff --git a/src/main/java/net/minecraft/server/network/PlayerConnection.java b/src/main/java/net/minecraft/server/network/PlayerConnection.java
index f064a44ea3..912fa4b2f9 100644
index af3ee9d5ae..6e03d9e6f8 100644
--- a/src/main/java/net/minecraft/server/network/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/network/PlayerConnection.java
@@ -1591,10 +1591,30 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -1498,10 +1498,30 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
}
}
@ -79,7 +79,7 @@ index f064a44ea3..912fa4b2f9 100644
this.player.connection.ackBlockChangesUpTo(packetplayinuseitem.getSequence());
WorldServer worldserver = this.player.serverLevel();
EnumHand enumhand = packetplayinuseitem.getHand();
@@ -1648,6 +1668,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -1555,6 +1575,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
public void handleUseItem(PacketPlayInBlockPlace packetplayinblockplace) {
PlayerConnectionUtils.ensureRunningOnSameThread(packetplayinblockplace, this, this.player.serverLevel());
if (this.player.isImmobile()) return; // CraftBukkit
@ -88,5 +88,5 @@ index f064a44ea3..912fa4b2f9 100644
WorldServer worldserver = this.player.serverLevel();
EnumHand enumhand = packetplayinblockplace.getHand();
--
2.41.0
2.42.0

View file

@ -1,14 +1,14 @@
From df74c59a086d20ebf634026fe14ad686e04fb92c Mon Sep 17 00:00:00 2001
From 66560efed67192f3ba9414835980c1e52ded9ff5 Mon Sep 17 00:00:00 2001
From: Thinkofdeath <thinkofdeath@spigotmc.org>
Date: Wed, 2 Jul 2014 23:35:51 +0100
Subject: [PATCH] Better item validation
diff --git a/src/main/java/net/minecraft/network/PacketDataSerializer.java b/src/main/java/net/minecraft/network/PacketDataSerializer.java
index 16b3a6a56..e6313cb64 100644
index fb8c0e8dcc..e083d259c8 100644
--- a/src/main/java/net/minecraft/network/PacketDataSerializer.java
+++ b/src/main/java/net/minecraft/network/PacketDataSerializer.java
@@ -672,6 +672,10 @@ public class PacketDataSerializer extends ByteBuf {
@@ -626,6 +626,10 @@ public class PacketDataSerializer extends ByteBuf {
NBTTagCompound nbttagcompound = null;
if (item.canBeDepleted() || item.shouldOverrideMultiplayerNbt()) {
@ -20,7 +20,7 @@ index 16b3a6a56..e6313cb64 100644
}
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java
index 03b576455..dfde2c619 100644
index 03b5764552..dfde2c619c 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java
@@ -20,6 +20,10 @@ import org.bukkit.craftbukkit.util.CraftChatMessage;
@ -58,7 +58,7 @@ index 03b576455..dfde2c619 100644
}
}
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
index a584c1a03..a866f5308 100644
index bf5fb75161..29f7d5835e 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
@@ -77,6 +77,10 @@ import org.bukkit.inventory.meta.Repairable;
@ -96,7 +96,7 @@ index a584c1a03..a866f5308 100644
}
diff --git a/src/main/java/org/spigotmc/ValidateUtils.java b/src/main/java/org/spigotmc/ValidateUtils.java
new file mode 100644
index 000000000..58a953481
index 0000000000..58a9534816
--- /dev/null
+++ b/src/main/java/org/spigotmc/ValidateUtils.java
@@ -0,0 +1,14 @@
@ -115,5 +115,5 @@ index 000000000..58a953481
+ }
+}
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From f16c672ea2c3c1112304968d0a47e932edb2cc15 Mon Sep 17 00:00:00 2001
From 8fc9d4b1b1e45285f4ac5e93bf7e9032da63796a Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Fri, 4 Jul 2014 13:28:45 +1000
Subject: [PATCH] Further Seed Customisation
@ -6,10 +6,10 @@ Subject: [PATCH] Further Seed Customisation
Allow server admins that really want to to customise the seeds used in world generation even further.
diff --git a/src/main/java/net/minecraft/server/level/PlayerChunkMap.java b/src/main/java/net/minecraft/server/level/PlayerChunkMap.java
index 034f4416e..332d8bc55 100644
index 4658e67346..c2146535aa 100644
--- a/src/main/java/net/minecraft/server/level/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/level/PlayerChunkMap.java
@@ -212,7 +212,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -204,7 +204,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
this.randomState = RandomState.create(GeneratorSettingBase.dummy(), (HolderGetter) iregistrycustom.lookupOrThrow(Registries.NOISE), j);
}
@ -19,10 +19,10 @@ index 034f4416e..332d8bc55 100644
ThreadedMailbox<Runnable> threadedmailbox = ThreadedMailbox.create(executor, "worldgen");
diff --git a/src/main/java/net/minecraft/world/entity/monster/EntitySlime.java b/src/main/java/net/minecraft/world/entity/monster/EntitySlime.java
index 2a7dc359f..410d0d588 100644
index 552aa66251..4737d5d028 100644
--- a/src/main/java/net/minecraft/world/entity/monster/EntitySlime.java
+++ b/src/main/java/net/minecraft/world/entity/monster/EntitySlime.java
@@ -319,7 +319,7 @@ public class EntitySlime extends EntityInsentient implements IMonster {
@@ -331,7 +331,7 @@ public class EntitySlime extends EntityInsentient implements IMonster {
}
ChunkCoordIntPair chunkcoordintpair = new ChunkCoordIntPair(blockposition);
@ -32,7 +32,7 @@ index 2a7dc359f..410d0d588 100644
if (randomsource.nextInt(10) == 0 && flag && blockposition.getY() < 40) {
return checkMobSpawnRules(entitytypes, generatoraccess, enummobspawn, blockposition, randomsource);
diff --git a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java
index 0acb3c204..02ea712e7 100644
index 0acb3c2046..02ea712e75 100644
--- a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java
+++ b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java
@@ -102,8 +102,8 @@ public abstract class ChunkGenerator {
@ -47,7 +47,7 @@ index 0acb3c204..02ea712e7 100644
public Optional<ResourceKey<Codec<? extends ChunkGenerator>>> getTypeNameForDataFixer() {
diff --git a/src/main/java/net/minecraft/world/level/chunk/ChunkGeneratorStructureState.java b/src/main/java/net/minecraft/world/level/chunk/ChunkGeneratorStructureState.java
index 35f744746..80eacaf7a 100644
index 35f744746c..80eacaf7a2 100644
--- a/src/main/java/net/minecraft/world/level/chunk/ChunkGeneratorStructureState.java
+++ b/src/main/java/net/minecraft/world/level/chunk/ChunkGeneratorStructureState.java
@@ -34,6 +34,11 @@ import net.minecraft.world.level.levelgen.structure.placement.ConcentricRingsStr
@ -149,7 +149,7 @@ index 35f744746..80eacaf7a 100644
private static boolean hasBiomesForStructureSet(StructureSet structureset, WorldChunkManager worldchunkmanager) {
Stream<Holder<BiomeBase>> stream = structureset.structures().stream().flatMap((structureset_a) -> {
diff --git a/src/main/java/net/minecraft/world/level/levelgen/ChunkProviderFlat.java b/src/main/java/net/minecraft/world/level/levelgen/ChunkProviderFlat.java
index 6d6b3abd1..926848b82 100644
index 6d6b3abd1c..926848b826 100644
--- a/src/main/java/net/minecraft/world/level/levelgen/ChunkProviderFlat.java
+++ b/src/main/java/net/minecraft/world/level/levelgen/ChunkProviderFlat.java
@@ -49,14 +49,14 @@ public class ChunkProviderFlat extends ChunkGenerator {
@ -170,7 +170,7 @@ index 6d6b3abd1..926848b82 100644
@Override
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftChunk.java b/src/main/java/org/bukkit/craftbukkit/CraftChunk.java
index a66c5162d..58a611551 100644
index a66c5162dd..58a6115516 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftChunk.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftChunk.java
@@ -215,7 +215,7 @@ public class CraftChunk implements Chunk {
@ -183,7 +183,7 @@ index a66c5162d..58a611551 100644
@Override
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index 7f5f97def..7882c95f4 100644
index 7f5f97defc..7882c95f4c 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -294,4 +294,40 @@ public class SpigotWorldConfig
@ -228,5 +228,5 @@ index 7f5f97def..7882c95f4 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,33 +1,33 @@
From bc2d5061efb021770ecb59c1fea007d1599eca6c Mon Sep 17 00:00:00 2001
From e505a51e4cc7ad4c4faa7e502bd11a63e39cf30e Mon Sep 17 00:00:00 2001
From: Suddenly <suddenly@suddenly.coffee>
Date: Tue, 8 Jul 2014 09:44:18 +1000
Subject: [PATCH] Safer JSON Loading
diff --git a/src/main/java/net/minecraft/server/players/JsonList.java b/src/main/java/net/minecraft/server/players/JsonList.java
index f47e588d7..6e55bb4ba 100644
index 04a730277e..2b254136ff 100644
--- a/src/main/java/net/minecraft/server/players/JsonList.java
+++ b/src/main/java/net/minecraft/server/players/JsonList.java
@@ -169,6 +169,14 @@ public abstract class JsonList<K, V extends JsonListEntry<K>> {
this.map.put(this.getKeyForUser(jsonlistentry.getUser()), (V) jsonlistentry); // CraftBukkit - decompile error
@@ -175,6 +175,14 @@ public abstract class JsonList<K, V extends JsonListEntry<K>> {
this.map.put(this.getKeyForUser(jsonlistentry.getUser()), (V) jsonlistentry); // CraftBukkit - decompile error
}
}
}
+ // Spigot Start
+ } catch ( com.google.gson.JsonParseException | NullPointerException ex )
+ {
+ org.bukkit.Bukkit.getLogger().log( java.util.logging.Level.WARNING, "Unable to read file " + this.file + ", backing it up to {0}.backup and creating new copy.", ex );
+ File backup = new File( this.file + ".backup" );
+ this.file.renameTo( backup );
+ this.file.delete();
+ // Spigot End
} catch (Throwable throwable) {
if (bufferedreader != null) {
try {
+ // Spigot Start
+ } catch ( com.google.gson.JsonParseException | NullPointerException ex )
+ {
+ org.bukkit.Bukkit.getLogger().log( java.util.logging.Level.WARNING, "Unable to read file " + this.file + ", backing it up to {0}.backup and creating new copy.", ex );
+ File backup = new File( this.file + ".backup" );
+ this.file.renameTo( backup );
+ this.file.delete();
+ // Spigot End
} catch (Throwable throwable) {
if (bufferedreader != null) {
try {
diff --git a/src/main/java/net/minecraft/server/players/UserCache.java b/src/main/java/net/minecraft/server/players/UserCache.java
index 1295a3340..3abeb707c 100644
index bde5f6086d..01e9ec3bf1 100644
--- a/src/main/java/net/minecraft/server/players/UserCache.java
+++ b/src/main/java/net/minecraft/server/players/UserCache.java
@@ -262,6 +262,11 @@ public class UserCache {
@@ -248,6 +248,11 @@ public class UserCache {
}
} catch (FileNotFoundException filenotfoundexception) {
;
@ -40,5 +40,5 @@ index 1295a3340..3abeb707c 100644
UserCache.LOGGER.warn("Failed to load profile cache {}", this.file, ioexception);
}
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From de2e1fbebf06c4fc252f167b4971e1a1921396ac Mon Sep 17 00:00:00 2001
From 21b493b302f21f46400a9abef5c64d1da74208f6 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Wed, 9 Jul 2014 10:35:44 +1000
Subject: [PATCH] Add CommandLine EULA Flag
@ -8,10 +8,10 @@ This flag contains the same message as eula.txt (albeit with proper grammar for
This feature only exists for hosting companies and people who manage servers in bulk who wish to agree to the terms by setting a flag in a script.
diff --git a/src/main/java/net/minecraft/server/Main.java b/src/main/java/net/minecraft/server/Main.java
index 51e01fbb6..250ba3499 100644
index 3818876b09..17d5abd6a2 100644
--- a/src/main/java/net/minecraft/server/Main.java
+++ b/src/main/java/net/minecraft/server/Main.java
@@ -152,7 +152,16 @@ public class Main {
@@ -149,7 +149,16 @@ public class Main {
return;
}
@ -30,5 +30,5 @@ index 51e01fbb6..250ba3499 100644
return;
}
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From 8b582a2c865959bc8833e8594c7b80ab4941bb80 Mon Sep 17 00:00:00 2001
From e7ae33af39c8807fd93d375884f67a7ab54c16d6 Mon Sep 17 00:00:00 2001
From: Thinkofdeath <thinkofdeath@spigotmc.org>
Date: Sat, 19 Jul 2014 19:54:41 +0100
Subject: [PATCH] Prevent a crash involving attributes
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index c7a44fd044..0ed931636e 100644
index 50d9c44e65..fcb02f43bf 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1965,7 +1965,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1981,7 +1981,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
}
AttributeModifiable dummy = new AttributeModifiable(GenericAttributes.MAX_HEALTH, (attribute) -> { });
@ -26,5 +26,5 @@ index c7a44fd044..0ed931636e 100644
}
--
2.41.0
2.42.0

View file

@ -1,14 +1,14 @@
From 33ac6382cfc9c5761f5231eb9d3f6af24240817f Mon Sep 17 00:00:00 2001
From 3e5e14efcbff725bc254d5fa17740783ca1907d0 Mon Sep 17 00:00:00 2001
From: Jonas Konrad <me@yawk.at>
Date: Fri, 4 Jul 2014 23:03:13 +0200
Subject: [PATCH] Make "moved wrongly" limit configurable
diff --git a/src/main/java/net/minecraft/server/network/PlayerConnection.java b/src/main/java/net/minecraft/server/network/PlayerConnection.java
index 912fa4b2f9..7d6da8d777 100644
index 6e03d9e6f8..1041d8f870 100644
--- a/src/main/java/net/minecraft/server/network/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/network/PlayerConnection.java
@@ -631,7 +631,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -538,7 +538,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
d10 = d6 * d6 + d7 * d7 + d8 * d8;
boolean flag2 = false;
@ -17,7 +17,7 @@ index 912fa4b2f9..7d6da8d777 100644
flag2 = true;
PlayerConnection.LOGGER.warn("{} (vehicle of {}) moved wrongly! {}", new Object[]{entity.getName().getString(), this.player.getName().getString(), Math.sqrt(d10)});
}
@@ -1307,7 +1307,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -1214,7 +1214,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
d10 = d6 * d6 + d7 * d7 + d8 * d8;
boolean flag2 = false;
@ -42,5 +42,5 @@ index 3540e2dafb..9e34d30271 100644
+ }
}
--
2.41.0
2.42.0

View file

@ -1,14 +1,14 @@
From 87f4aaf23dbab59628a598b447a00758ec61c991 Mon Sep 17 00:00:00 2001
From 730d5ceceb5c093c173981acde4121b55c95ff19 Mon Sep 17 00:00:00 2001
From: Jonas Konrad <me@yawk.at>
Date: Tue, 22 Jul 2014 15:59:01 +0200
Subject: [PATCH] Make "moved too quickly" limit configurable
diff --git a/src/main/java/net/minecraft/server/network/PlayerConnection.java b/src/main/java/net/minecraft/server/network/PlayerConnection.java
index 7d6da8d777..565ed0525a 100644
index 1041d8f870..d21836f630 100644
--- a/src/main/java/net/minecraft/server/network/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/network/PlayerConnection.java
@@ -596,7 +596,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -503,7 +503,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
}
speed *= 2f; // TODO: Get the speed of the vehicle instead of the player
@ -16,8 +16,8 @@ index 7d6da8d777..565ed0525a 100644
+ if (d10 - d9 > Math.max(100.0D, Math.pow((double) (org.spigotmc.SpigotConfig.movedTooQuicklyMultiplier * (float) i * speed), 2)) && !this.isSingleplayerOwner()) {
// CraftBukkit end
PlayerConnection.LOGGER.warn("{} (vehicle of {}) moved too quickly! {},{},{}", new Object[]{entity.getName().getString(), this.player.getName().getString(), d6, d7, d8});
this.connection.send(new PacketPlayOutVehicleMove(entity));
@@ -1272,7 +1272,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
this.send(new PacketPlayOutVehicleMove(entity));
@@ -1179,7 +1179,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
if (!this.player.isChangingDimension() && (!this.player.level().getGameRules().getBoolean(GameRules.RULE_DISABLE_ELYTRA_MOVEMENT_CHECK) || !this.player.isFallFlying())) {
float f2 = this.player.isFallFlying() ? 300.0F : 100.0F;
@ -42,5 +42,5 @@ index 9e34d30271..08f6ef8d48 100644
+ }
}
--
2.41.0
2.42.0

View file

@ -1,11 +1,11 @@
From e8aaebc951477889b0e03477dd8b02c2c83b63dd Mon Sep 17 00:00:00 2001
From e6c007c5be459b209fce95a98233997fbda9c950 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Sun, 27 Jul 2014 20:46:04 +1000
Subject: [PATCH] Apply NBTReadLimiter to more things.
diff --git a/src/main/java/net/minecraft/nbt/NBTCompressedStreamTools.java b/src/main/java/net/minecraft/nbt/NBTCompressedStreamTools.java
index 392598dce..438b56859 100644
index 7a7deeb082..733c653941 100644
--- a/src/main/java/net/minecraft/nbt/NBTCompressedStreamTools.java
+++ b/src/main/java/net/minecraft/nbt/NBTCompressedStreamTools.java
@@ -229,6 +229,12 @@ public class NBTCompressedStreamTools {
@ -18,12 +18,12 @@ index 392598dce..438b56859 100644
+ datainput = new DataInputStream(new org.spigotmc.LimitStream((InputStream) datainput, nbtreadlimiter));
+ }
+ // Spigot end
NBTBase nbtbase = readUnnamedTag(datainput, 0, nbtreadlimiter);
NBTBase nbtbase = readUnnamedTag(datainput, nbtreadlimiter);
if (nbtbase instanceof NBTTagCompound) {
diff --git a/src/main/java/org/spigotmc/LimitStream.java b/src/main/java/org/spigotmc/LimitStream.java
new file mode 100644
index 000000000..e74c61ca9
index 0000000000..e74c61ca9b
--- /dev/null
+++ b/src/main/java/org/spigotmc/LimitStream.java
@@ -0,0 +1,39 @@
@ -67,5 +67,5 @@ index 000000000..e74c61ca9
+ }
+}
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From 200b368bb444e6b1aa2e67f1676826828907ffe8 Mon Sep 17 00:00:00 2001
From 3607dd241d9a410b8d1c1c33b880024c30641a16 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Mon, 28 Jul 2014 16:55:51 +1000
Subject: [PATCH] Allow Attribute Capping.
@ -6,7 +6,7 @@ Subject: [PATCH] Allow Attribute Capping.
Apply some sensible defaults and allow server owners to customize the maximum values of selected common attributes.
diff --git a/src/main/java/net/minecraft/world/entity/ai/attributes/GenericAttributes.java b/src/main/java/net/minecraft/world/entity/ai/attributes/GenericAttributes.java
index ce952036e..0869a2435 100644
index 556fc04edd..bc14ccc0d9 100644
--- a/src/main/java/net/minecraft/world/entity/ai/attributes/GenericAttributes.java
+++ b/src/main/java/net/minecraft/world/entity/ai/attributes/GenericAttributes.java
@@ -6,12 +6,12 @@ import net.minecraft.core.registries.BuiltInRegistries;
@ -26,7 +26,7 @@ index ce952036e..0869a2435 100644
public static final AttributeBase ATTACK_SPEED = register("generic.attack_speed", (new AttributeRanged("attribute.name.generic.attack_speed", 4.0D, 0.0D, 1024.0D)).setSyncable(true));
public static final AttributeBase ARMOR = register("generic.armor", (new AttributeRanged("attribute.name.generic.armor", 0.0D, 0.0D, 30.0D)).setSyncable(true));
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index 08f6ef8d4..58fb1b92e 100644
index 08f6ef8d48..58fb1b92ec 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -16,6 +16,8 @@ import java.util.logging.Level;
@ -57,5 +57,5 @@ index 08f6ef8d4..58fb1b92e 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From 7306edeb9e4a18ab67b3667851f0205b36687250 Mon Sep 17 00:00:00 2001
From bfa073e1d0fa283cb390a0f880e7c79d16fda833 Mon Sep 17 00:00:00 2001
From: Maxim Van de Wynckel <maxim_vdw@hotmail.com>
Date: Wed, 30 Jul 2014 01:19:51 +0200
Subject: [PATCH] Only fetch an online UUID in online mode
@ -12,10 +12,10 @@ You want to store data for player "Test" who never joined. An online UUID is cr
The player Test joins with an offline UUID but that will not match the online UUID of the saved data.
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index babc80b87..023a2ef45 100644
index da8ae08c61..f55a0a257e 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1669,8 +1669,14 @@ public final class CraftServer implements Server {
@@ -1674,8 +1674,14 @@ public final class CraftServer implements Server {
OfflinePlayer result = getPlayerExact(name);
if (result == null) {
@ -33,5 +33,5 @@ index babc80b87..023a2ef45 100644
// Make an OfflinePlayer using an offline mode UUID since the name has no profile
result = getOfflinePlayer(new GameProfile(UUID.nameUUIDFromBytes(("OfflinePlayer:" + name).getBytes(Charsets.UTF_8)), name));
--
2.41.0
2.42.0

View file

@ -1,14 +1,14 @@
From 8e7923551b354ce4ed6f9f5851d665749f2d7433 Mon Sep 17 00:00:00 2001
From 7d9921c3fad6934713ce6f4d2ee645dcc08afcf7 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Fri, 8 Aug 2014 19:57:03 +1000
Subject: [PATCH] Plug WorldMap Memory Leak
diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java
index a7a90e899..1b8919cdc 100644
index b7c63f2f73..2c4a29f245 100644
--- a/src/main/java/net/minecraft/server/level/WorldServer.java
+++ b/src/main/java/net/minecraft/server/level/WorldServer.java
@@ -2014,6 +2014,29 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -2003,6 +2003,29 @@ public class WorldServer extends World implements GeneratorAccessSeed {
public void onTrackingEnd(Entity entity) {
org.spigotmc.AsyncCatcher.catchOp("entity unregister"); // Spigot
@ -39,5 +39,5 @@ index a7a90e899..1b8919cdc 100644
if (entity.getBukkitEntity() instanceof org.bukkit.inventory.InventoryHolder && (!(entity instanceof EntityPlayer) || entity.getRemovalReason() != Entity.RemovalReason.KILLED)) { // SPIGOT-6876: closeInventory clears death message
for (org.bukkit.entity.HumanEntity h : Lists.newArrayList(((org.bukkit.inventory.InventoryHolder) entity.getBukkitEntity()).getInventory().getViewers())) {
--
2.40.1
2.42.0

View file

@ -1,11 +1,11 @@
From 509a0d86de80dee5e94b479eff87a5441a7c6871 Mon Sep 17 00:00:00 2001
From 39fc6902acd8e3e984d6deeda9e0b768961599f6 Mon Sep 17 00:00:00 2001
From: drXor <mcyoung@mit.edu>
Date: Fri, 15 Aug 2014 18:11:09 -0400
Subject: [PATCH] Remove uneeded validation
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
index a866f5308..b48f33dcf 100644
index 29f7d5835e..912eb44d4f 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
@@ -307,7 +307,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
@ -43,5 +43,5 @@ index a866f5308..b48f33dcf 100644
@Override
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From e3f6cf56eea593869cc2125a27cc4a175851c3dc Mon Sep 17 00:00:00 2001
From b80cde5c8fd2355619637d6eb90e07049f27f105 Mon Sep 17 00:00:00 2001
From: lazertester <austin.techhead@gmail.com>
Date: Sun, 17 Aug 2014 19:56:17 +1000
Subject: [PATCH] Add Hunger Config Values
diff --git a/src/main/java/net/minecraft/world/entity/player/EntityHuman.java b/src/main/java/net/minecraft/world/entity/player/EntityHuman.java
index 7c60243ef..6e19f1f3e 100644
index 56d240ba03..f6c20eafe2 100644
--- a/src/main/java/net/minecraft/world/entity/player/EntityHuman.java
+++ b/src/main/java/net/minecraft/world/entity/player/EntityHuman.java
@@ -1387,7 +1387,7 @@ public abstract class EntityHuman extends EntityLiving {
@@ -1393,7 +1393,7 @@ public abstract class EntityHuman extends EntityLiving {
}
}
@ -17,7 +17,7 @@ index 7c60243ef..6e19f1f3e 100644
} else {
this.level().playSound((EntityHuman) null, this.getX(), this.getY(), this.getZ(), SoundEffects.PLAYER_ATTACK_NODAMAGE, this.getSoundSource(), 1.0F, 1.0F);
if (flag4) {
@@ -1567,9 +1567,9 @@ public abstract class EntityHuman extends EntityLiving {
@@ -1573,9 +1573,9 @@ public abstract class EntityHuman extends EntityLiving {
super.jumpFromGround();
this.awardStat(StatisticList.JUMP);
if (this.isSprinting()) {
@ -29,7 +29,7 @@ index 7c60243ef..6e19f1f3e 100644
}
}
@@ -1638,19 +1638,19 @@ public abstract class EntityHuman extends EntityLiving {
@@ -1644,19 +1644,19 @@ public abstract class EntityHuman extends EntityLiving {
i = Math.round((float) Math.sqrt(d0 * d0 + d1 * d1 + d2 * d2) * 100.0F);
if (i > 0) {
this.awardStat(StatisticList.SWIM_ONE_CM, i);
@ -52,7 +52,7 @@ index 7c60243ef..6e19f1f3e 100644
}
} else if (this.onClimbable()) {
if (d1 > 0.0D) {
@@ -1661,13 +1661,13 @@ public abstract class EntityHuman extends EntityLiving {
@@ -1667,13 +1667,13 @@ public abstract class EntityHuman extends EntityLiving {
if (i > 0) {
if (this.isSprinting()) {
this.awardStat(StatisticList.SPRINT_ONE_CM, i);
@ -70,7 +70,7 @@ index 7c60243ef..6e19f1f3e 100644
}
} else if (this.isFallFlying()) {
diff --git a/src/main/java/net/minecraft/world/food/FoodMetaData.java b/src/main/java/net/minecraft/world/food/FoodMetaData.java
index cf72b81b5..ee5a7c460 100644
index cf72b81b5e..ee5a7c4606 100644
--- a/src/main/java/net/minecraft/world/food/FoodMetaData.java
+++ b/src/main/java/net/minecraft/world/food/FoodMetaData.java
@@ -96,7 +96,7 @@ public class FoodMetaData {
@ -83,7 +83,7 @@ index cf72b81b5..ee5a7c460 100644
}
} else if (this.foodLevel <= 0) {
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index 7882c95f4..1b5d1e283 100644
index 7882c95f4c..1b5d1e2837 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -330,4 +330,30 @@ public class SpigotWorldConfig
@ -118,5 +118,5 @@ index 7882c95f4..1b5d1e283 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,11 +1,11 @@
From 37c0ce4546c059ca86b7f14337f0f217a40fc2fc Mon Sep 17 00:00:00 2001
From d0e4fbb7718ab6b9abc310db7f104bff7b6e14a6 Mon Sep 17 00:00:00 2001
From: Minecrell <dev@minecrell.net>
Date: Sun, 17 Aug 2014 12:42:53 +0200
Subject: [PATCH] Make debug logging togglable.
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index 58fb1b92e..b86000179 100644
index 58fb1b92ec..b86000179d 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -18,6 +18,9 @@ import net.minecraft.resources.MinecraftKey;
@ -47,7 +47,7 @@ index 58fb1b92e..b86000179 100644
+ }
}
diff --git a/src/main/resources/log4j2.xml b/src/main/resources/log4j2.xml
index 40be2a968..722ca8496 100644
index 40be2a9680..722ca84968 100644
--- a/src/main/resources/log4j2.xml
+++ b/src/main/resources/log4j2.xml
@@ -24,10 +24,10 @@
@ -65,5 +65,5 @@ index 40be2a968..722ca8496 100644
</Loggers>
</Configuration>
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From f2a9cd376636209d6f4384798f3aded96bcc5e9b Mon Sep 17 00:00:00 2001
From 6be16eee4e0a82782205a93de48f263d2b879b47 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 20 Aug 2014 18:12:32 -0400
Subject: [PATCH] Limit TNT Detonations per tick
@ -7,7 +7,7 @@ This gives a per-world control on how much TNT will be processed per-tick,
preventing a massive TNT detonation from lagging out the server.
diff --git a/src/main/java/net/minecraft/world/entity/item/EntityTNTPrimed.java b/src/main/java/net/minecraft/world/entity/item/EntityTNTPrimed.java
index 1bae42cf5..9cf5994f7 100644
index 1bae42cf58..9cf5994f7e 100644
--- a/src/main/java/net/minecraft/world/entity/item/EntityTNTPrimed.java
+++ b/src/main/java/net/minecraft/world/entity/item/EntityTNTPrimed.java
@@ -64,6 +64,7 @@ public class EntityTNTPrimed extends Entity implements TraceableEntity {
@ -19,7 +19,7 @@ index 1bae42cf5..9cf5994f7 100644
this.setDeltaMovement(this.getDeltaMovement().add(0.0D, -0.04D, 0.0D));
}
diff --git a/src/main/java/net/minecraft/world/level/World.java b/src/main/java/net/minecraft/world/level/World.java
index c33143811..15e63dbfa 100644
index c331438113..15e63dbfa4 100644
--- a/src/main/java/net/minecraft/world/level/World.java
+++ b/src/main/java/net/minecraft/world/level/World.java
@@ -660,6 +660,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
@ -31,7 +31,7 @@ index c33143811..15e63dbfa 100644
public <T extends Entity> void guardEntityTick(Consumer<T> consumer, T t0) {
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index 1b5d1e283..8411f9e57 100644
index 1b5d1e2837..8411f9e573 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -356,4 +356,15 @@ public class SpigotWorldConfig
@ -51,5 +51,5 @@ index 1b5d1e283..8411f9e57 100644
+ }
}
--
2.41.0
2.42.0

View file

@ -1,11 +1,11 @@
From b223201c45f6c856245d4fe1af96ad5e3de8faf2 Mon Sep 17 00:00:00 2001
From 9b9a683ebfc950ff2762d4cadab38db6c45ef8f7 Mon Sep 17 00:00:00 2001
From: drXor <mcyoung@mit.edu>
Date: Sat, 9 Aug 2014 13:56:51 -0400
Subject: [PATCH] Configurable Hanging Tick
diff --git a/src/main/java/net/minecraft/world/entity/decoration/EntityHanging.java b/src/main/java/net/minecraft/world/entity/decoration/EntityHanging.java
index 251078ff8..09354658f 100644
index 251078ff8a..09354658f1 100644
--- a/src/main/java/net/minecraft/world/entity/decoration/EntityHanging.java
+++ b/src/main/java/net/minecraft/world/entity/decoration/EntityHanging.java
@@ -119,7 +119,7 @@ public abstract class EntityHanging extends Entity {
@ -18,7 +18,7 @@ index 251078ff8..09354658f 100644
if (!this.isRemoved() && !this.survives()) {
// CraftBukkit start - fire break events
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index 8411f9e57..76aeff332 100644
index 8411f9e573..76aeff3324 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -367,4 +367,10 @@ public class SpigotWorldConfig
@ -33,5 +33,5 @@ index 8411f9e57..76aeff332 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From 376b329abd54e3a6b7f96cd4b1f58affec7e0cea Mon Sep 17 00:00:00 2001
From cb569e8ec1b11f50a04bd74f09c41f1530f565e6 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Sat, 13 Dec 2014 03:06:05 +0100
Subject: [PATCH] BungeeCord Chat API
@ -37,10 +37,10 @@ index b5a12f0de3..03a73f00f6 100644
}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 023a2ef457..4f2053745a 100644
index f55a0a257e..ce75189ced 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -263,6 +263,8 @@ import org.yaml.snakeyaml.Yaml;
@@ -266,6 +266,8 @@ import org.yaml.snakeyaml.Yaml;
import org.yaml.snakeyaml.constructor.SafeConstructor;
import org.yaml.snakeyaml.error.MarkedYAMLException;
@ -49,7 +49,7 @@ index 023a2ef457..4f2053745a 100644
public final class CraftServer implements Server {
private final String serverName = "CraftBukkit";
private final String serverVersion;
@@ -2407,6 +2409,20 @@ public final class CraftServer implements Server {
@@ -2412,6 +2414,20 @@ public final class CraftServer implements Server {
public void restart() {
org.spigotmc.RestartCommand.restart();
}
@ -105,10 +105,10 @@ index 74558e852e..13008357b4 100644
@Override
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index 402dd73534..97404062a6 100644
index 05ce211d50..b115a27a75 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -198,6 +198,8 @@ import org.bukkit.util.BoundingBox;
@@ -197,6 +197,8 @@ import org.bukkit.util.BoundingBox;
import org.bukkit.util.NumberConversions;
import org.bukkit.util.Vector;
@ -117,7 +117,7 @@ index 402dd73534..97404062a6 100644
public abstract class CraftEntity implements org.bukkit.entity.Entity {
private static PermissibleBase perm;
private static final CraftPersistentDataTypeRegistry DATA_TYPE_REGISTRY = new CraftPersistentDataTypeRegistry();
@@ -1160,6 +1162,26 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
@@ -1159,6 +1161,26 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
// Spigot start
private final org.bukkit.entity.Entity.Spigot spigot = new org.bukkit.entity.Entity.Spigot()
{
@ -145,10 +145,10 @@ index 402dd73534..97404062a6 100644
public org.bukkit.entity.Entity.Spigot spigot()
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 0ed931636e..f613542504 100644
index fcb02f43bf..aaa80bda62 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -178,6 +178,8 @@ import org.bukkit.profile.PlayerProfile;
@@ -180,6 +180,8 @@ import org.bukkit.profile.PlayerProfile;
import org.bukkit.scoreboard.Scoreboard;
import org.jetbrains.annotations.NotNull;
@ -157,7 +157,7 @@ index 0ed931636e..f613542504 100644
@DelegateDeserialization(CraftOfflinePlayer.class)
public class CraftPlayer extends CraftHumanEntity implements Player {
private long firstPlayed = 0;
@@ -2180,6 +2182,48 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -2196,6 +2198,48 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
return java.util.Collections.unmodifiableSet( ret );
}
@ -316,5 +316,5 @@ index dfde2c619c..4a94655108 100644
@Override
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From f12b7f8a5ca6fcc951590fecb6d8670438e759c6 Mon Sep 17 00:00:00 2001
From 352d5f6059a5225ce1adc09518a3dde75ab8e0cc Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Fri, 20 Feb 2015 21:39:31 +1100
Subject: [PATCH] Allow Capping (Tile)Entity Tick Time.
@ -10,7 +10,7 @@ For tiles there is very little tradeoff for this option, as tile ticks are based
This feature was commisioned by Chunkr.
diff --git a/src/main/java/net/minecraft/world/level/World.java b/src/main/java/net/minecraft/world/level/World.java
index 15e63dbfa..88f200fc1 100644
index 15e63dbfa4..88f200fc1c 100644
--- a/src/main/java/net/minecraft/world/level/World.java
+++ b/src/main/java/net/minecraft/world/level/World.java
@@ -158,6 +158,9 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
@ -68,7 +68,7 @@ index 15e63dbfa..88f200fc1 100644
tickingblockentity.tick();
}
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index 76aeff332..68cf01386 100644
index 76aeff3324..68cf01386e 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -373,4 +373,13 @@ public class SpigotWorldConfig
@ -87,7 +87,7 @@ index 76aeff332..68cf01386 100644
}
diff --git a/src/main/java/org/spigotmc/TickLimiter.java b/src/main/java/org/spigotmc/TickLimiter.java
new file mode 100644
index 000000000..23a39382b
index 0000000000..23a39382be
--- /dev/null
+++ b/src/main/java/org/spigotmc/TickLimiter.java
@@ -0,0 +1,20 @@
@ -112,5 +112,5 @@ index 000000000..23a39382b
+ }
+}
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From 3e55fb9177b94ac5cda28eae22350e44913ed5ba Mon Sep 17 00:00:00 2001
From 71048980d7ee42bb635e09a2f7819b90baec44ec Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Mon, 13 Jul 2015 19:05:15 +1000
Subject: [PATCH] Use Map for getPlayer(String) lookup.
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
index 1e60f0f3d..89a146a36 100644
index 02439fb3d3..0b1fdc5fb1 100644
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
@@ -162,6 +162,7 @@ public abstract class PlayerList {
@@ -156,6 +156,7 @@ public abstract class PlayerList {
// CraftBukkit start
private CraftServer cserver;
@ -16,7 +16,7 @@ index 1e60f0f3d..89a146a36 100644
public PlayerList(MinecraftServer minecraftserver, LayeredRegistryAccess<RegistryLayer> layeredregistryaccess, WorldNBTStorage worldnbtstorage, int i) {
this.cserver = minecraftserver.server = new CraftServer((DedicatedServer) minecraftserver, this);
@@ -293,6 +294,7 @@ public abstract class PlayerList {
@@ -280,6 +281,7 @@ public abstract class PlayerList {
// entityplayer.connection.send(ClientboundPlayerInfoUpdatePacket.createPlayerInitializing(this.players)); // CraftBukkit - replaced with loop below
this.players.add(entityplayer);
@ -24,7 +24,7 @@ index 1e60f0f3d..89a146a36 100644
this.playersByUUID.put(entityplayer.getUUID(), entityplayer);
// this.broadcastAll(ClientboundPlayerInfoUpdatePacket.createPlayerInitializing(List.of(entityplayer))); // CraftBukkit - replaced with loop below
@@ -546,6 +548,7 @@ public abstract class PlayerList {
@@ -534,6 +536,7 @@ public abstract class PlayerList {
worldserver.removePlayerImmediately(entityplayer, Entity.RemovalReason.UNLOADED_WITH_PLAYER);
entityplayer.getAdvancements().stopListening();
this.players.remove(entityplayer);
@ -32,7 +32,7 @@ index 1e60f0f3d..89a146a36 100644
this.server.getCustomBossEvents().onPlayerDisconnect(entityplayer);
UUID uuid = entityplayer.getUUID();
EntityPlayer entityplayer1 = (EntityPlayer) this.playersByUUID.get(uuid);
@@ -690,6 +693,7 @@ public abstract class PlayerList {
@@ -686,6 +689,7 @@ public abstract class PlayerList {
public EntityPlayer respawn(EntityPlayer entityplayer, WorldServer worldserver, boolean flag, Location location, boolean avoidSuffocation, RespawnReason reason) {
entityplayer.stopRiding(); // CraftBukkit
this.players.remove(entityplayer);
@ -40,7 +40,7 @@ index 1e60f0f3d..89a146a36 100644
entityplayer.serverLevel().removePlayerImmediately(entityplayer, Entity.RemovalReason.DISCARDED);
BlockPosition blockposition = entityplayer.getRespawnPosition();
float f = entityplayer.getRespawnAngle();
@@ -811,6 +815,7 @@ public abstract class PlayerList {
@@ -806,6 +810,7 @@ public abstract class PlayerList {
if (!entityplayer.connection.isDisconnected()) {
worldserver1.addRespawnedPlayer(entityplayer1);
this.players.add(entityplayer1);
@ -48,7 +48,7 @@ index 1e60f0f3d..89a146a36 100644
this.playersByUUID.put(entityplayer1.getUUID(), entityplayer1);
}
// entityplayer1.initInventoryMenu();
@@ -1014,19 +1019,7 @@ public abstract class PlayerList {
@@ -1009,19 +1014,7 @@ public abstract class PlayerList {
@Nullable
public EntityPlayer getPlayerByName(String s) {
@ -70,5 +70,5 @@ index 1e60f0f3d..89a146a36 100644
public void broadcast(@Nullable EntityHuman entityhuman, double d0, double d1, double d2, double d3, ResourceKey<World> resourcekey, Packet<?> packet) {
--
2.40.1
2.42.0

View file

@ -1,26 +1,26 @@
From a4935b33f85879b4b43d41a8ad42b67f95415d81 Mon Sep 17 00:00:00 2001
From a979d9ba826d969d42c5ae6245ffebd359f0ec80 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Wed, 22 Jul 2015 19:04:37 +1000
Subject: [PATCH] Clear Packet Queue on Disconnect
diff --git a/src/main/java/net/minecraft/network/NetworkManager.java b/src/main/java/net/minecraft/network/NetworkManager.java
index af05a27ee8..9260425613 100644
index 1e0b785c82..5968fa1225 100644
--- a/src/main/java/net/minecraft/network/NetworkManager.java
+++ b/src/main/java/net/minecraft/network/NetworkManager.java
@@ -462,6 +462,7 @@ public class NetworkManager extends SimpleChannelInboundHandler<Packet<?>> {
} else if (this.getPacketListener() != null) {
this.getPacketListener().onDisconnect(IChatBaseComponent.translatable("multiplayer.disconnect.generic"));
}
+ this.queue.clear(); // Free up packet queue.
}
@@ -610,6 +610,7 @@ public class NetworkManager extends SimpleChannelInboundHandler<Packet<?>> {
packetlistener1.onDisconnect(ichatbasecomponent);
}
+ this.pendingActions.clear(); // Free up packet queue.
}
}
diff --git a/src/main/java/net/minecraft/server/network/PlayerConnection.java b/src/main/java/net/minecraft/server/network/PlayerConnection.java
index 565ed0525a..3db4ea997b 100644
--- a/src/main/java/net/minecraft/server/network/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/network/PlayerConnection.java
@@ -1820,7 +1820,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
diff --git a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
index 4733ea48e2..147e7e45e6 100644
--- a/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerCommonPacketListenerImpl.java
@@ -193,7 +193,7 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack
public void send(Packet<?> packet, @Nullable PacketSendListener packetsendlistener) {
// CraftBukkit start
@ -30,5 +30,5 @@ index 565ed0525a..3db4ea997b 100644
} else if (packet instanceof PacketPlayOutSpawnPosition) {
PacketPlayOutSpawnPosition packet6 = (PacketPlayOutSpawnPosition) packet;
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From 2c7605ffffdc9d9c9225ded532380b27d8e9930d Mon Sep 17 00:00:00 2001
From 671d1f32a274e108a87daba3e0862e2e5501754e Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Fri, 9 Jun 2017 16:29:31 +1000
Subject: [PATCH] Configurable Advancement Disabling
@ -6,23 +6,23 @@ Subject: [PATCH] Configurable Advancement Disabling
Allow disabling any (or all) inbuilt advancements with a configuration option.
diff --git a/src/main/java/net/minecraft/server/AdvancementDataPlayer.java b/src/main/java/net/minecraft/server/AdvancementDataPlayer.java
index 4c8cf9227..c56378119 100644
index 9bcf01ce6b..45387facb1 100644
--- a/src/main/java/net/minecraft/server/AdvancementDataPlayer.java
+++ b/src/main/java/net/minecraft/server/AdvancementDataPlayer.java
@@ -178,6 +178,7 @@ public class AdvancementDataPlayer {
@@ -163,6 +163,7 @@ public class AdvancementDataPlayer {
}
public void save() {
+ if (org.spigotmc.SpigotConfig.disableAdvancementSaving) return; // Spigot
Map<MinecraftKey, AdvancementProgress> map = new LinkedHashMap();
Iterator iterator = this.progress.entrySet().iterator();
JsonElement jsonelement = (JsonElement) SystemUtils.getOrThrow(this.codec.encodeStart(JsonOps.INSTANCE, this.asData()), IllegalStateException::new);
try {
diff --git a/src/main/java/net/minecraft/server/AdvancementDataWorld.java b/src/main/java/net/minecraft/server/AdvancementDataWorld.java
index 314d217dd..cb044bcc4 100644
index 678942b416..62ae277cea 100644
--- a/src/main/java/net/minecraft/server/AdvancementDataWorld.java
+++ b/src/main/java/net/minecraft/server/AdvancementDataWorld.java
@@ -39,6 +39,12 @@ public class AdvancementDataWorld extends ResourceDataJson {
Map<MinecraftKey, Advancement.SerializedAdvancement> map1 = Maps.newHashMap();
@@ -43,6 +43,12 @@ public class AdvancementDataWorld extends ResourceDataJson {
Builder<MinecraftKey, AdvancementHolder> builder = ImmutableMap.builder();
map.forEach((minecraftkey, jsonelement) -> {
+ // Spigot start
@ -33,9 +33,9 @@ index 314d217dd..cb044bcc4 100644
+
try {
JsonObject jsonobject = ChatDeserializer.convertToJsonObject(jsonelement, "advancement");
Advancement.SerializedAdvancement advancement_serializedadvancement = Advancement.SerializedAdvancement.fromJson(jsonobject, new LootDeserializationContext(minecraftkey, this.lootData));
Advancement advancement = Advancement.fromJson(jsonobject, new LootDeserializationContext(minecraftkey, this.lootData));
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index b86000179..b99e43352 100644
index b86000179d..b99e433523 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -379,4 +379,11 @@ public class SpigotConfig
@ -51,5 +51,5 @@ index b86000179..b99e43352 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From 029ff73e6d907c0f1dfdd6dd61ed2fa956651655 Mon Sep 17 00:00:00 2001
From 864480337dc731a0f37932791907a8d27bec2143 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Mon, 25 Feb 2019 19:26:56 +1100
Subject: [PATCH] Add creative mode NBT permissions
@ -24,10 +24,10 @@ index 8d054c4084..e85e929546 100644
this.player.connection.send(new PacketPlayOutBlockChange(blockposition, this.level.getBlockState(blockposition)));
this.debugLogging(blockposition, false, j, "block action restricted");
diff --git a/src/main/java/net/minecraft/server/network/PlayerConnection.java b/src/main/java/net/minecraft/server/network/PlayerConnection.java
index 3db4ea997b..118ec1a2a3 100644
index d21836f630..409be13eb2 100644
--- a/src/main/java/net/minecraft/server/network/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/network/PlayerConnection.java
@@ -2923,7 +2923,7 @@ public class PlayerConnection implements ServerPlayerConnection, TickablePacketL
@@ -2799,7 +2799,7 @@ public class PlayerConnection extends ServerCommonPacketListenerImpl implements
NBTTagCompound nbttagcompound = ItemBlock.getBlockEntityData(itemstack);
@ -80,5 +80,5 @@ index 75f8d47a20..525ebf961e 100644
}
}
--
2.41.0
2.42.0

View file

@ -1,4 +1,4 @@
From 3b13a8c5d00d7f3e7d455b948c252dee1ba440f2 Mon Sep 17 00:00:00 2001
From 44655a1c1c10a07ec37b9c7f80a17a3757fd8d71 Mon Sep 17 00:00:00 2001
From: Spottedleaf <Spottedleaf@users.noreply.github.com>
Date: Tue, 9 Jul 2019 02:18:54 -0700
Subject: [PATCH] Remove DataWatcher Locking
@ -17,7 +17,7 @@ This patch also changes the entries map to be fastutil
int2objectopenhashmap for performance.
diff --git a/src/main/java/net/minecraft/network/syncher/DataWatcher.java b/src/main/java/net/minecraft/network/syncher/DataWatcher.java
index ac10ddf35..78d475649 100644
index ac10ddf352..78d4756490 100644
--- a/src/main/java/net/minecraft/network/syncher/DataWatcher.java
+++ b/src/main/java/net/minecraft/network/syncher/DataWatcher.java
@@ -36,7 +36,7 @@ public class DataWatcher {
@ -122,7 +122,7 @@ index ac10ddf35..78d475649 100644
this.entity.onSyncedDataUpdated(list);
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index e83db7454..47b7eaaa0 100644
index dba6709609..2c22e5122d 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -370,6 +370,7 @@ public abstract class Entity implements INamableTileEntity, EntityAccess, IComma
@ -134,5 +134,5 @@ index e83db7454..47b7eaaa0 100644
this.eyeHeight = this.getEyeHeight(EntityPose.STANDING, this.dimensions);
}
--
2.40.1
2.42.0

View file

@ -1,4 +1,4 @@
From 2f980f40e47eb9c8442d474048b96a73773d215c Mon Sep 17 00:00:00 2001
From ce2fd9e42d904076092162b3680c691ade79d74a Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Tue, 19 Feb 2019 22:30:00 +1100
Subject: [PATCH] Allow Reading Old Large Chunks
@ -9,7 +9,7 @@ If their size would overflow the header field (>= 255 sectors), it can just be r
This code/concept was adapted from MinecraftForge.
diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java
index c62c8cbab..c78c5468c 100644
index c62c8cbab6..c78c5468cb 100644
--- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java
+++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java
@@ -84,6 +84,14 @@ public class RegionFile implements AutoCloseable {
@ -42,5 +42,5 @@ index c62c8cbab..c78c5468c 100644
ByteBuffer bytebuffer = ByteBuffer.allocate(l);
--
2.40.1
2.42.0

View file

@ -1,14 +1,14 @@
From 928e7c7f06f8aaf29ab4c64c0d9a8d687ee043cc Mon Sep 17 00:00:00 2001
From 961d3e93fd752ba02574306a303afd86339e4523 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Sat, 14 Dec 2019 10:26:52 +1100
Subject: [PATCH] Add log-villager-deaths option
diff --git a/src/main/java/net/minecraft/world/entity/EntityLiving.java b/src/main/java/net/minecraft/world/entity/EntityLiving.java
index 3a9f947e4..0c2734023 100644
index b52ed2f18a..10b3a47250 100644
--- a/src/main/java/net/minecraft/world/entity/EntityLiving.java
+++ b/src/main/java/net/minecraft/world/entity/EntityLiving.java
@@ -1643,7 +1643,7 @@ public abstract class EntityLiving extends Entity implements Attackable {
@@ -1676,7 +1676,7 @@ public abstract class EntityLiving extends Entity implements Attackable {
}
if (!this.level().isClientSide && this.hasCustomName()) {
@ -18,10 +18,10 @@ index 3a9f947e4..0c2734023 100644
this.dead = true;
diff --git a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
index de4917c70..a315be779 100644
index 68cbd44270..a944bbe53b 100644
--- a/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
+++ b/src/main/java/net/minecraft/world/entity/npc/EntityVillager.java
@@ -665,7 +665,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@@ -666,7 +666,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@Override
public void die(DamageSource damagesource) {
@ -31,7 +31,7 @@ index de4917c70..a315be779 100644
if (entity != null) {
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index b99e43352..867dd16bf 100644
index b99e433523..867dd16bff 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -386,4 +386,11 @@ public class SpigotConfig
@ -47,5 +47,5 @@ index b99e43352..867dd16bf 100644
+ }
}
--
2.41.0
2.42.0

View file

@ -1,11 +1,11 @@
From 5a14765ed496d6902785cdba36de9dd3eb4a4bc5 Mon Sep 17 00:00:00 2001
From ca983e279a7063a1a77017aa6b080371a7f282bb Mon Sep 17 00:00:00 2001
From: Sander Knauff <sanderknauff@hotmail.com>
Date: Sat, 7 Nov 2020 18:23:42 +1100
Subject: [PATCH] Allow Disabling Player Data Saving
diff --git a/src/main/java/net/minecraft/world/level/storage/WorldNBTStorage.java b/src/main/java/net/minecraft/world/level/storage/WorldNBTStorage.java
index 517cc2e53..8fea9d43a 100644
index 517cc2e537..8fea9d43af 100644
--- a/src/main/java/net/minecraft/world/level/storage/WorldNBTStorage.java
+++ b/src/main/java/net/minecraft/world/level/storage/WorldNBTStorage.java
@@ -32,6 +32,7 @@ public class WorldNBTStorage {
@ -17,7 +17,7 @@ index 517cc2e53..8fea9d43a 100644
NBTTagCompound nbttagcompound = entityhuman.saveWithoutId(new NBTTagCompound());
File file = File.createTempFile(entityhuman.getStringUUID() + "-", ".dat", this.playerDir);
diff --git a/src/main/java/org/spigotmc/SpigotConfig.java b/src/main/java/org/spigotmc/SpigotConfig.java
index 867dd16bf..a5c61d003 100644
index 867dd16bff..a5c61d0032 100644
--- a/src/main/java/org/spigotmc/SpigotConfig.java
+++ b/src/main/java/org/spigotmc/SpigotConfig.java
@@ -393,4 +393,9 @@ public class SpigotConfig
@ -31,5 +31,5 @@ index 867dd16bf..a5c61d003 100644
+ }
}
--
2.40.1
2.42.0

View file

@ -1,24 +1,24 @@
From d2d4e66cfcb4642c1b9c21ee353d744e88c092eb Mon Sep 17 00:00:00 2001
From ca6689e8e18db7f614eea799bffa3370a04c93fb Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Sun, 24 Oct 2021 20:29:25 +1100
Subject: [PATCH] Configurable Thunder Chance
diff --git a/src/main/java/net/minecraft/server/level/WorldServer.java b/src/main/java/net/minecraft/server/level/WorldServer.java
index 1b8919cdc..fc728ef99 100644
index 2c4a29f245..092ae42fab 100644
--- a/src/main/java/net/minecraft/server/level/WorldServer.java
+++ b/src/main/java/net/minecraft/server/level/WorldServer.java
@@ -511,7 +511,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
gameprofilerfiller.push("thunder");
BlockPosition blockposition;
@@ -501,7 +501,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
GameProfilerFiller gameprofilerfiller = this.getProfiler();
gameprofilerfiller.push("thunder");
- if (flag && this.isThundering() && this.random.nextInt(100000) == 0) {
+ if (flag && this.isThundering() && this.spigotConfig.thunderChance > 0 && this.random.nextInt(this.spigotConfig.thunderChance) == 0) { // Spigot
blockposition = this.findLightningTargetAround(this.getBlockRandomPos(j, 0, k, 15));
BlockPosition blockposition = this.findLightningTargetAround(this.getBlockRandomPos(j, 0, k, 15));
if (this.isRainingAt(blockposition)) {
DifficultyDamageScaler difficultydamagescaler = this.getCurrentDifficultyAt(blockposition);
diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java
index 68cf01386..b6ac09ee9 100644
index 68cf01386e..b6ac09ee9f 100644
--- a/src/main/java/org/spigotmc/SpigotWorldConfig.java
+++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java
@@ -382,4 +382,10 @@ public class SpigotWorldConfig
@ -33,5 +33,5 @@ index 68cf01386..b6ac09ee9 100644
+ }
}
--
2.40.1
2.42.0

Some files were not shown because too many files have changed in this diff Show more