diff --git a/applyPatches.sh b/applyPatches.sh
index 59d1dda19a..02401133f0 100755
--- a/applyPatches.sh
+++ b/applyPatches.sh
@@ -20,5 +20,5 @@ do
sed -i 's/\r//' "$nms/$file" > /dev/null
cp "$nms/$file" "$cb/$file"
- patch -d src/main/java/ "net/minecraft/server/$file" < "$patchFile" > /dev/null
+ patch -d src/main/java/ "net/minecraft/server/$file" < "$patchFile"
done
diff --git a/nms-patches/DedicatedServer.patch b/nms-patches/DedicatedServer.patch
index a1ce3652cf..9085d70728 100644
--- a/nms-patches/DedicatedServer.patch
+++ b/nms-patches/DedicatedServer.patch
@@ -68,11 +68,10 @@
}
} catch (IOException ioexception) {
DedicatedServer.LOGGER.error("Exception handling console input", ioexception);
-@@ -67,13 +93,35 @@
+@@ -65,6 +91,27 @@
+ }
+ };
- thread.setDaemon(true);
- thread.start();
-+
+ // CraftBukkit start - TODO: handle command-line logging arguments
+ java.util.logging.Logger global = java.util.logging.Logger.getLogger("");
+ global.setUseParentHandlers(false);
@@ -94,9 +93,10 @@
+ System.setErr(new PrintStream(new LoggerOutputStream(logger, Level.WARN), true));
+ // CraftBukkit end
+
- DedicatedServer.LOGGER.info("Starting minecraft server version 1.8.5");
- if (Runtime.getRuntime().maxMemory() / 1024L / 1024L < 512L) {
- DedicatedServer.LOGGER.warn("To start the server with more ram, launch it as \"java -Xmx1024M -Xms1024M -jar minecraft_server.jar\"");
+ thread.setDaemon(true);
+ thread.start();
+ DedicatedServer.LOGGER.info("Starting minecraft server version 1.8.6");
+@@ -73,7 +120,7 @@
}
DedicatedServer.LOGGER.info("Loading properties");
@@ -105,7 +105,7 @@
this.p = new EULA(new File("eula.txt"));
if (!this.p.a()) {
DedicatedServer.LOGGER.info("You need to agree to the EULA in order to run the server. Go to eula.txt for more info.");
-@@ -129,6 +177,8 @@
+@@ -129,6 +176,8 @@
return false;
}
@@ -114,7 +114,7 @@
if (!this.getOnlineMode()) {
DedicatedServer.LOGGER.warn("**** SERVER IS RUNNING IN OFFLINE/INSECURE MODE!");
DedicatedServer.LOGGER.warn("The server will make no attempt to authenticate usernames. Beware.");
-@@ -143,7 +193,7 @@
+@@ -143,7 +192,7 @@
if (!NameReferencingFileConverter.a(this.propertyManager)) {
return false;
} else {
@@ -123,13 +123,13 @@
long j = System.nanoTime();
if (this.U() == null) {
-@@ -198,8 +248,19 @@
+@@ -198,7 +247,18 @@
DedicatedServer.LOGGER.info("Starting remote control listener");
this.n = new RemoteControlListener(this);
this.n.a();
+ this.remoteConsole = new org.bukkit.craftbukkit.command.CraftRemoteConsoleCommandSender(); // CraftBukkit
- }
-
++ }
++
+ // CraftBukkit start
+ if (this.server.getBukkitSpawnRadius() > -1) {
+ DedicatedServer.LOGGER.info("'settings.spawn-radius' in bukkit.yml has been moved to 'spawn-protection' in server.properties. I will move your config for you.");
@@ -137,13 +137,12 @@
+ this.propertyManager.getInt("spawn-protection", this.server.getBukkitSpawnRadius());
+ this.server.removeBukkitSpawnRadius();
+ this.propertyManager.savePropertiesFile();
-+ }
+ }
+ // CraftBukkit end
-+
+
if (this.aS() > 0L) {
Thread thread1 = new Thread(new ThreadWatchdog(this));
-
-@@ -213,6 +274,12 @@
+@@ -213,6 +273,12 @@
}
}
@@ -156,7 +155,7 @@
public void setGamemode(WorldSettings.EnumGamemode worldsettings_enumgamemode) {
super.setGamemode(worldsettings_enumgamemode);
this.r = worldsettings_enumgamemode;
-@@ -265,7 +332,7 @@
+@@ -265,7 +331,7 @@
System.exit(0);
}
@@ -165,7 +164,7 @@
super.B();
this.aO();
}
-@@ -296,7 +363,14 @@
+@@ -296,7 +362,14 @@
while (!this.l.isEmpty()) {
ServerCommand servercommand = (ServerCommand) this.l.remove(0);
@@ -181,7 +180,7 @@
}
}
-@@ -491,13 +565,57 @@
+@@ -491,13 +564,57 @@
}
public String getPlugins() {
diff --git a/nms-patches/DispenserRegistry.patch b/nms-patches/DispenserRegistry.patch
index 911725e2a2..a9f582da36 100644
--- a/nms-patches/DispenserRegistry.patch
+++ b/nms-patches/DispenserRegistry.patch
@@ -381,12 +381,3 @@
return itemstack;
}
});
-@@ -372,7 +639,7 @@
- World world = isourceblock.i();
- BlockPosition blockposition = isourceblock.getBlockPosition().shift(BlockDispenser.b(isourceblock.f()));
-
-- if (world.isEmpty(blockposition)) {
-+ if (world.isEmpty(blockposition) && false) { // Craftbukkit - yeah... no, TODO: see if its safe to readd
- if (!world.isClientSide) {
- IBlockData iblockdata = Blocks.COMMAND_BLOCK.getBlockData().set(BlockCommand.TRIGGERED, Boolean.valueOf(false));
-
diff --git a/nms-patches/HandshakeListener.patch b/nms-patches/HandshakeListener.patch
index bcf16cf689..89fa10ffa2 100644
--- a/nms-patches/HandshakeListener.patch
+++ b/nms-patches/HandshakeListener.patch
@@ -58,7 +58,7 @@
+ // CraftBukkit end
+
if (packethandshakinginsetprotocol.b() > 47) {
- chatcomponenttext = new ChatComponentText("Outdated server! I\'m still on 1.8.5");
+ chatcomponenttext = new ChatComponentText("Outdated server! I\'m still on 1.8.6");
this.b.handle(new PacketLoginOutDisconnect(chatcomponenttext));
@@ -26,6 +71,7 @@
this.b.close(chatcomponenttext);
diff --git a/nms-patches/PlayerConnection.patch b/nms-patches/PlayerConnection.patch
index c701f78b23..766b26c60e 100644
--- a/nms-patches/PlayerConnection.patch
+++ b/nms-patches/PlayerConnection.patch
@@ -1263,7 +1263,7 @@
if (ItemStack.matches(packetplayinwindowclick.e(), itemstack)) {
this.player.playerConnection.sendPacket(new PacketPlayOutTransaction(packetplayinwindowclick.a(), packetplayinwindowclick.d(), true));
-@@ -809,8 +1671,48 @@
+@@ -797,8 +1659,48 @@
}
boolean flag1 = packetplayinsetcreativeslot.a() >= 1 && packetplayinsetcreativeslot.a() < 36 + PlayerInventory.getHotbarSize();
@@ -1313,7 +1313,7 @@
if (flag1 && flag2 && flag3) {
if (itemstack == null) {
-@@ -833,6 +1735,7 @@
+@@ -821,6 +1723,7 @@
}
public void a(PacketPlayInTransaction packetplayintransaction) {
@@ -1321,7 +1321,7 @@
PlayerConnectionUtils.ensureMainThread(packetplayintransaction, this, this.player.u());
Short oshort = (Short) this.n.get(this.player.activeContainer.windowId);
-@@ -843,6 +1746,7 @@
+@@ -831,6 +1734,7 @@
}
public void a(PacketPlayInUpdateSign packetplayinupdatesign) {
@@ -1329,7 +1329,7 @@
PlayerConnectionUtils.ensureMainThread(packetplayinupdatesign, this, this.player.u());
this.player.resetIdleTimer();
WorldServer worldserver = this.minecraftServer.getWorldServer(this.player.dimension);
-@@ -859,14 +1763,29 @@
+@@ -847,14 +1751,29 @@
if (!tileentitysign.b() || tileentitysign.c() != this.player) {
this.minecraftServer.warning("Player " + this.player.getName() + " just tried to change non-editable sign");
@@ -1360,7 +1360,7 @@
tileentitysign.update();
worldserver.notify(blockposition);
-@@ -889,11 +1808,27 @@
+@@ -877,11 +1796,27 @@
public void a(PacketPlayInAbilities packetplayinabilities) {
PlayerConnectionUtils.ensureMainThread(packetplayinabilities, this, this.player.u());
@@ -1389,7 +1389,7 @@
ArrayList arraylist = Lists.newArrayList();
Iterator iterator = this.minecraftServer.tabCompleteCommand(this.player, packetplayintabcomplete.a(), packetplayintabcomplete.b()).iterator();
-@@ -933,13 +1868,16 @@
+@@ -921,13 +1856,16 @@
itemstack1 = this.player.inventory.getItemInHand();
if (itemstack1 != null) {
if (itemstack.getItem() == Items.WRITABLE_BOOK && itemstack.getItem() == itemstack1.getItem()) {
@@ -1406,7 +1406,7 @@
return;
} finally {
packetdataserializer.release();
-@@ -962,16 +1900,21 @@
+@@ -950,16 +1888,21 @@
itemstack1 = this.player.inventory.getItemInHand();
if (itemstack1 != null) {
if (itemstack.getItem() == Items.WRITTEN_BOOK && itemstack1.getItem() == Items.WRITABLE_BOOK) {
@@ -1428,7 +1428,7 @@
return;
} finally {
packetdataserializer.release();
-@@ -988,11 +1931,12 @@
+@@ -976,11 +1919,12 @@
}
} catch (Exception exception2) {
PlayerConnection.c.error("Couldn\'t select trade", exception2);
@@ -1442,7 +1442,7 @@
packetdataserializer = packetplayincustompayload.b();
try {
-@@ -1028,6 +1972,7 @@
+@@ -1016,6 +1960,7 @@
}
} catch (Exception exception3) {
PlayerConnection.c.error("Couldn\'t set command block", exception3);
@@ -1450,7 +1450,7 @@
} finally {
packetdataserializer.release();
}
-@@ -1053,6 +1998,7 @@
+@@ -1041,6 +1986,7 @@
}
} catch (Exception exception4) {
PlayerConnection.c.error("Couldn\'t set beacon", exception4);
@@ -1458,7 +1458,7 @@
}
}
} else if ("MC|ItemName".equals(packetplayincustompayload.a()) && this.player.activeContainer instanceof ContainerAnvil) {
-@@ -1068,7 +2014,28 @@
+@@ -1056,7 +2002,28 @@
containeranvil.a("");
}
}
diff --git a/nms-patches/TileEntity.patch b/nms-patches/TileEntity.patch
index 2acbd59a79..c4c4ea661d 100644
--- a/nms-patches/TileEntity.patch
+++ b/nms-patches/TileEntity.patch
@@ -9,7 +9,7 @@
public abstract class TileEntity {
private static final Logger a = LogManager.getLogger();
-@@ -217,4 +219,13 @@
+@@ -221,4 +223,13 @@
a(TileEntityFlowerPot.class, "FlowerPot");
a(TileEntityBanner.class, "Banner");
}
diff --git a/nms-patches/TileEntitySign.patch b/nms-patches/TileEntitySign.patch
index c99a4b3987..c0849289cd 100644
--- a/nms-patches/TileEntitySign.patch
+++ b/nms-patches/TileEntitySign.patch
@@ -47,7 +47,7 @@
try {
this.lines[i] = ChatComponentUtils.filterForDisplay(icommandlistener, ichatbasecomponent, (Entity) null);
} catch (CommandException commandexception) {
-@@ -151,7 +169,10 @@
+@@ -155,7 +173,10 @@
ChatClickable chatclickable = chatmodifier.h();
if (chatclickable.a() == ChatClickable.EnumClickAction.RUN_COMMAND) {
diff --git a/pom.xml b/pom.xml
index 4cecb880e3..5ad55dc524 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
org.bukkit
craftbukkit
jar
- 1.8.5-R0.1-SNAPSHOT
+ 1.8.6-R0.1-SNAPSHOT
CraftBukkit
http://www.bukkit.org
@@ -12,7 +12,7 @@
UTF-8
unknown
4.11
- 1.8.5
+ 1.8.6
1_8_R3
git-Bukkit-