Current Chunk for Entity and Block Entities, counts by entity type

This enables us a fast reference to the entities current chunk instead
of having to look it up by hashmap lookups.

We also store counts by type to further enable other performance optimizations in later patches.
This commit is contained in:
Aikar 2018-07-04 03:55:24 -04:00
parent f534210885
commit 18c3716c49
No known key found for this signature in database
GPG Key ID: 401ADFC9891FAAFE
323 changed files with 1258 additions and 878 deletions

View File

@ -1,4 +1,4 @@
From 64f62bc4e2c8b60a6679fbcc608d1a5ee8fe7944 Mon Sep 17 00:00:00 2001
From 0644771327501a754ae14c834e50fc97f6417085 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 29 Feb 2016 18:48:17 -0600
Subject: [PATCH] Timings v2
@ -2296,6 +2296,47 @@ index 00000000..5edaba12
+ super.stopTiming();
+ }
+}
diff --git a/src/main/java/co/aikar/util/Counter.java b/src/main/java/co/aikar/util/Counter.java
new file mode 100644
index 00000000..23ac07f2
--- /dev/null
+++ b/src/main/java/co/aikar/util/Counter.java
@@ -0,0 +1,35 @@
+package co.aikar.util;
+
+import com.google.common.collect.ForwardingMap;
+
+import java.util.HashMap;
+import java.util.Map;
+
+public class Counter <T> extends ForwardingMap<T, Long> {
+ private final Map<T, Long> counts = new HashMap<>();
+
+ public long decrement(T key) {
+ return increment(key, -1);
+ }
+ public long increment(T key) {
+ return increment(key, 1);
+ }
+ public long decrement(T key, long amount) {
+ return decrement(key, -amount);
+ }
+ public long increment(T key, long amount) {
+ Long count = this.getCount(key);
+ count += amount;
+ this.counts.put(key, count);
+ return count;
+ }
+
+ public long getCount(T key) {
+ return this.counts.getOrDefault(key, 0L);
+ }
+
+ @Override
+ protected Map<T, Long> delegate() {
+ return this.counts;
+ }
+}
diff --git a/src/main/java/co/aikar/util/JSONUtil.java b/src/main/java/co/aikar/util/JSONUtil.java
new file mode 100644
index 00000000..96274975
@ -3032,7 +3073,7 @@ index 00000000..fd452bce
+ }
+}
diff --git a/src/main/java/org/bukkit/command/Command.java b/src/main/java/org/bukkit/command/Command.java
index 08a9739f..347d2189 100644
index 7ca5be84..86c78098 100644
--- a/src/main/java/org/bukkit/command/Command.java
+++ b/src/main/java/org/bukkit/command/Command.java
@@ -32,7 +32,8 @@ public abstract class Command {
@ -3610,7 +3651,7 @@ index 80c6a72e..759c4617 100644
eventSet.add(new TimedRegisteredListener(listener, executor, eh.priority(), plugin, eh.ignoreCancelled()));
} else {
diff --git a/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java b/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
index d7d5ac7b..a657fce5 100644
index e43db9da..ca9c7796 100644
--- a/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
+++ b/src/main/java/org/bukkit/plugin/java/PluginClassLoader.java
@@ -23,7 +23,8 @@ import org.bukkit.plugin.PluginDescriptionFile;
@ -3866,5 +3907,5 @@ index 8d982974..7e89b97b 100644
- }
}
--
2.15.1.windows.2
2.18.0

View File

@ -0,0 +1,34 @@
From 99dd52878fbaede269af3c5cf38c179688506099 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 4 Jul 2018 02:25:48 -0400
Subject: [PATCH] Entity#getChunk API
Get the chunk the entity is currently registered to
diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java
index 3ae4de7a..e2a2b78c 100644
--- a/src/main/java/org/bukkit/entity/Entity.java
+++ b/src/main/java/org/bukkit/entity/Entity.java
@@ -1,5 +1,6 @@
package org.bukkit.entity;
+import org.bukkit.Chunk;
import org.bukkit.Location;
import org.bukkit.EntityEffect;
import org.bukkit.Nameable;
@@ -514,5 +515,12 @@ public interface Entity extends Metadatable, CommandSender, Nameable {
* @return True if entity spawned from a mob spawner
*/
boolean fromMobSpawner();
+
+ /**
+ * Gets the latest chunk an entity is currently or was in.
+ *
+ * @return The current, or most recent chunk if the entity is invalid (which may load the chunk)
+ */
+ Chunk getChunk();
// Paper end
}
--
2.18.0

View File

@ -0,0 +1,101 @@
From 471ff10805ee8ef1b93d19bd05a91b9f372417c9 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 4 Jul 2018 01:40:13 -0400
Subject: [PATCH] Add MinecraftKey Information to Objects
Stores the reference to the objects respective MinecraftKey
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index ed39b122e..3a8902bf1 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -41,7 +41,7 @@ import org.bukkit.event.entity.EntityPortalEvent;
import org.bukkit.plugin.PluginManager;
// CraftBukkit end
-public abstract class Entity implements ICommandListener {
+public abstract class Entity implements ICommandListener, KeyedObject { // Paper
// CraftBukkit start
private static final int CURRENT_LEVEL = 2;
@@ -1702,11 +1702,23 @@ public abstract class Entity implements ICommandListener {
return true;
}
+ // Paper start
+ public final MinecraftKey entityKey = EntityTypes.getKey(this);
+ public final String entityKeyString = entityKey != null ? entityKey.toString() : null;
+
+ @Override
+ public MinecraftKey getMinecraftKey() {
+ return entityKey;
+ }
+
+ @Override
+ public String getMinecraftKeyString() {
+ return entityKeyString;
+ }
@Nullable
public final String getSaveID() {
- MinecraftKey minecraftkey = EntityTypes.a(this);
-
- return minecraftkey == null ? null : minecraftkey.toString();
+ return entityKeyString;
+ // Paper end
}
protected abstract void a(NBTTagCompound nbttagcompound);
diff --git a/src/main/java/net/minecraft/server/KeyedObject.java b/src/main/java/net/minecraft/server/KeyedObject.java
new file mode 100644
index 000000000..61c2b993c
--- /dev/null
+++ b/src/main/java/net/minecraft/server/KeyedObject.java
@@ -0,0 +1,8 @@
+package net.minecraft.server;
+
+public interface KeyedObject {
+ MinecraftKey getMinecraftKey();
+ default String getMinecraftKeyString() {
+ return getMinecraftKey().toString();
+ }
+}
diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java
index 5a5a588e7..672ba3134 100644
--- a/src/main/java/net/minecraft/server/TileEntity.java
+++ b/src/main/java/net/minecraft/server/TileEntity.java
@@ -7,7 +7,7 @@ import org.apache.logging.log4j.Logger;
import org.spigotmc.CustomTimingsHandler; // Spigot
import org.bukkit.inventory.InventoryHolder; // CraftBukkit
-public abstract class TileEntity {
+public abstract class TileEntity implements KeyedObject {
public CustomTimingsHandler tickTimer = org.bukkit.craftbukkit.SpigotTimings.getTileEntityTimings(this); // Spigot
private static final Logger a = LogManager.getLogger();
@@ -27,8 +27,21 @@ public abstract class TileEntity {
TileEntity.f.a(new MinecraftKey(s), oclass);
}
- @Nullable
- public static MinecraftKey a(Class<? extends TileEntity> oclass) {
+ // Paper start
+ public final MinecraftKey tileEntityKey = getKey(this.getClass());
+ public final String tileEntityKeyString = tileEntityKey != null ? tileEntityKey.toString() : null;
+
+ @Override
+ public MinecraftKey getMinecraftKey() {
+ return tileEntityKey;
+ }
+
+ @Override
+ public String getMinecraftKeyString() {
+ return tileEntityKeyString;
+ }
+ @Nullable public static MinecraftKey getKey(Class<? extends TileEntity> oclass) { return a(oclass); } // Paper - OBFHELPER
+ @Nullable public static MinecraftKey a(Class<? extends TileEntity> oclass) {
return (MinecraftKey) TileEntity.f.b(oclass);
}
--
2.18.0

View File

@ -0,0 +1,137 @@
From b55307c8ea1237c0893145e14f48e2e98a68fc5b Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 4 Jul 2018 02:10:36 -0400
Subject: [PATCH] Store reference to current Chunk for Entity and Block
Entities
This enables us a fast reference to the entities current chunk instead
of having to look it up by hashmap lookups.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 4bbebb25a..b40e60942 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -33,6 +33,30 @@ public class Chunk {
private boolean m;
public final Map<BlockPosition, TileEntity> tileEntities;
public final List<Entity>[] entitySlices; // Spigot
+ // Paper start
+ private class TileEntityHashMap extends java.util.HashMap<BlockPosition, TileEntity> {
+ @Override
+ public TileEntity put(BlockPosition key, TileEntity value) {
+ TileEntity replaced = super.put(key, value);
+ if (replaced != null) {
+ replaced.setCurrentChunk(null);
+ }
+ if (value != null) {
+ value.setCurrentChunk(Chunk.this);
+ }
+ return replaced;
+ }
+
+ @Override
+ public TileEntity remove(Object key) {
+ TileEntity removed = super.remove(key);
+ if (removed != null) {
+ removed.setCurrentChunk(null);
+ }
+ return removed;
+ }
+ }
+ // Paper end
private boolean done;
private boolean lit;
private boolean r;
@@ -80,7 +104,7 @@ public class Chunk {
this.g = new byte[256];
this.h = new int[256];
this.i = new boolean[256];
- this.tileEntities = Maps.newHashMap();
+ this.tileEntities = new TileEntityHashMap(); // Paper
this.x = 4096;
this.y = Queues.newConcurrentLinkedQueue();
this.entitySlices = (List[]) (new List[16]); // Spigot
@@ -624,6 +648,9 @@ public class Chunk {
this.entityCount.adjustOrPutValue( creatureType.a(), 1, 1 );
}
}
+ // Paper start
+ entity.setCurrentChunk(this);
+ // Paper end
// Spigot end
}
@@ -656,6 +683,9 @@ public class Chunk {
this.entityCount.adjustValue( creatureType.a(), -1 );
}
}
+ // Paper start
+ entity.setCurrentChunk(null);
+ // Paper end
// Spigot end
}
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 3a8902bf1..3829c8c40 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -1703,6 +1703,13 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
}
// Paper start
+ private java.lang.ref.WeakReference<Chunk> currentChunk = null;
+ public Chunk getCurrentChunk() {
+ return currentChunk != null ? currentChunk.get() : null;
+ }
+ public void setCurrentChunk(Chunk chunk) {
+ this.currentChunk = chunk != null ? new java.lang.ref.WeakReference<>(chunk) : null;
+ }
public final MinecraftKey entityKey = EntityTypes.getKey(this);
public final String entityKeyString = entityKey != null ? entityKey.toString() : null;
diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java
index 672ba3134..88cd5734d 100644
--- a/src/main/java/net/minecraft/server/TileEntity.java
+++ b/src/main/java/net/minecraft/server/TileEntity.java
@@ -28,6 +28,13 @@ public abstract class TileEntity implements KeyedObject {
}
// Paper start
+ private java.lang.ref.WeakReference<Chunk> currentChunk = null;
+ public Chunk getCurrentChunk() {
+ return currentChunk != null ? currentChunk.get() : null;
+ }
+ public void setCurrentChunk(Chunk chunk) {
+ this.currentChunk = chunk != null ? new java.lang.ref.WeakReference<>(chunk) : null;
+ }
public final MinecraftKey tileEntityKey = getKey(this.getClass());
public final String tileEntityKeyString = tileEntityKey != null ? tileEntityKey.toString() : null;
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index c5a194ffe..833e3111d 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -9,6 +9,7 @@ import java.util.UUID;
import net.minecraft.server.*;
+import org.bukkit.Chunk;
import org.bukkit.EntityEffect;
import org.bukkit.Location;
import org.bukkit.Server;
@@ -39,6 +40,12 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
this.entity = entity;
}
+ @Override
+ public Chunk getChunk() {
+ net.minecraft.server.Chunk currentChunk = entity.getCurrentChunk();
+ return currentChunk != null ? currentChunk.bukkitChunk : getLocation().getChunk();
+ }
+
public static CraftEntity getEntity(CraftServer server, Entity entity) {
/**
* Order is *EXTREMELY* important -- keep it right! =D
--
2.18.0

View File

@ -0,0 +1,58 @@
From 9638089fa0dcff84f21fc77d17a984b430eb3423 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 4 Jul 2018 02:13:59 -0400
Subject: [PATCH] Store counts for each Entity/Block Entity Type
Opens door for future patches to optimize performance
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index b40e60942..952c96c0c 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -34,15 +34,19 @@ public class Chunk {
public final Map<BlockPosition, TileEntity> tileEntities;
public final List<Entity>[] entitySlices; // Spigot
// Paper start
+ public final co.aikar.util.Counter<String> entityCounts = new co.aikar.util.Counter<>();
+ public final co.aikar.util.Counter<String> tileEntityCounts = new co.aikar.util.Counter<>();
private class TileEntityHashMap extends java.util.HashMap<BlockPosition, TileEntity> {
@Override
public TileEntity put(BlockPosition key, TileEntity value) {
TileEntity replaced = super.put(key, value);
if (replaced != null) {
replaced.setCurrentChunk(null);
+ tileEntityCounts.decrement(replaced.tileEntityKeyString);
}
if (value != null) {
value.setCurrentChunk(Chunk.this);
+ tileEntityCounts.increment(value.tileEntityKeyString);
}
return replaced;
}
@@ -52,6 +56,7 @@ public class Chunk {
TileEntity removed = super.remove(key);
if (removed != null) {
removed.setCurrentChunk(null);
+ tileEntityCounts.decrement(removed.tileEntityKeyString);
}
return removed;
}
@@ -650,6 +655,7 @@ public class Chunk {
}
// Paper start
entity.setCurrentChunk(this);
+ entityCounts.increment(entity.entityKeyString);
// Paper end
// Spigot end
}
@@ -685,6 +691,7 @@ public class Chunk {
}
// Paper start
entity.setCurrentChunk(null);
+ entityCounts.decrement(entity.entityKeyString);
// Paper end
// Spigot end
}
--
2.18.0

View File

@ -1,11 +1,11 @@
From 7d617689162687744920577469a5bda672cd0e99 Mon Sep 17 00:00:00 2001
From 5e79bbc7dee8f1a2e42930e6899b7cf8e928b548 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 28 Mar 2016 20:55:47 -0400
Subject: [PATCH] MC Utils
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 4bbebb25a..c4d9344a7 100644
index 952c96c0c..cbb1f2cae 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -20,7 +20,7 @@ import org.bukkit.Server; // CraftBukkit
@ -17,7 +17,7 @@ index 4bbebb25a..c4d9344a7 100644
private final ChunkSection[] sections;
private final byte[] g;
private final int[] h;
@@ -675,6 +675,7 @@ public class Chunk {
@@ -712,6 +712,7 @@ public class Chunk {
return !block.isTileEntity() ? null : ((ITileEntity) block).a(this.world, iblockdata.getBlock().toLegacyData(iblockdata));
}

View File

@ -1,4 +1,4 @@
From 2c913b7c57722b5fc2e43d952dddf30fc0d3b172 Mon Sep 17 00:00:00 2001
From fef89f722e865197552f6950ab3cd6a2a74961fa Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 3 Mar 2016 04:00:11 -0600
Subject: [PATCH] Timings v2
@ -442,10 +442,10 @@ index 2dca6dbcb..352310960 100644
public static int getId(Block block) {
return Block.REGISTRY.a(block); // CraftBukkit - decompile error
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index c4d9344a7..350e0991d 100644
index cbb1f2cae..ca5a42377 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -900,7 +900,7 @@ public class Chunk {
@@ -937,7 +937,7 @@ public class Chunk {
// CraftBukkit start
public void loadNearby(IChunkProvider ichunkprovider, ChunkGenerator chunkgenerator, boolean newChunk) {
@ -454,7 +454,7 @@ index c4d9344a7..350e0991d 100644
Server server = world.getServer();
if (server != null) {
/*
@@ -926,7 +926,8 @@ public class Chunk {
@@ -963,7 +963,8 @@ public class Chunk {
}
}
// CraftBukkit end
@ -464,7 +464,7 @@ index c4d9344a7..350e0991d 100644
Chunk chunk = ichunkprovider.getLoadedChunkAt(this.locX, this.locZ - 1);
Chunk chunk1 = ichunkprovider.getLoadedChunkAt(this.locX + 1, this.locZ);
Chunk chunk2 = ichunkprovider.getLoadedChunkAt(this.locX, this.locZ + 1);
@@ -951,7 +952,7 @@ public class Chunk {
@@ -988,7 +989,7 @@ public class Chunk {
chunk4.a(chunkgenerator);
}
}
@ -473,7 +473,7 @@ index c4d9344a7..350e0991d 100644
}
@@ -1164,6 +1165,7 @@ public class Chunk {
@@ -1201,6 +1202,7 @@ public class Chunk {
}
public void o() {
@ -481,7 +481,7 @@ index c4d9344a7..350e0991d 100644
this.done = true;
this.lit = true;
BlockPosition blockposition = new BlockPosition(this.locX << 4, 0, this.locZ << 4);
@@ -1197,6 +1199,7 @@ public class Chunk {
@@ -1234,6 +1236,7 @@ public class Chunk {
}
}
@ -596,7 +596,7 @@ index e1cb96a88..8f2afcc32 100644
return waitable.get();
} catch (java.util.concurrent.ExecutionException e) {
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index ed39b122e..e09ced1a2 100644
index 3829c8c40..8dcff9bd4 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -25,7 +25,8 @@ import org.bukkit.block.BlockFace;
@ -609,7 +609,7 @@ index ed39b122e..e09ced1a2 100644
import org.bukkit.event.entity.EntityCombustByEntityEvent;
import org.bukkit.event.hanging.HangingBreakByEntityEvent;
import org.bukkit.event.vehicle.VehicleBlockCollisionEvent;
@@ -147,7 +148,7 @@ public abstract class Entity implements ICommandListener {
@@ -147,7 +148,7 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
public boolean valid;
public org.bukkit.projectiles.ProjectileSource projectileSource; // For projectiles only
public boolean forceExplosionKnockback; // SPIGOT-949
@ -618,7 +618,7 @@ index ed39b122e..e09ced1a2 100644
// Spigot start
public final byte activationType = org.spigotmc.ActivationRange.initializeEntityActivationType(this);
public final boolean defaultActivationState;
@@ -531,7 +532,6 @@ public abstract class Entity implements ICommandListener {
@@ -531,7 +532,6 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
}
public void move(EnumMoveType enummovetype, double d0, double d1, double d2) {
@ -626,7 +626,7 @@ index ed39b122e..e09ced1a2 100644
if (this.noclip) {
this.a(this.getBoundingBox().d(d0, d1, d2));
this.recalcPosition();
@@ -925,7 +925,6 @@ public abstract class Entity implements ICommandListener {
@@ -925,7 +925,6 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
this.world.methodProfiler.b();
}
@ -1128,7 +1128,7 @@ index 74e3f42cd..66a80a776 100644
return flag;
}
diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java
index 5a5a588e7..d2d4ff6fb 100644
index 88cd5734d..c1f657808 100644
--- a/src/main/java/net/minecraft/server/TileEntity.java
+++ b/src/main/java/net/minecraft/server/TileEntity.java
@@ -4,12 +4,13 @@ import javax.annotation.Nullable;
@ -1140,7 +1140,7 @@ index 5a5a588e7..d2d4ff6fb 100644
+import co.aikar.timings.Timing; // Paper
import org.bukkit.inventory.InventoryHolder; // CraftBukkit
public abstract class TileEntity {
public abstract class TileEntity implements KeyedObject {
- public CustomTimingsHandler tickTimer = org.bukkit.craftbukkit.SpigotTimings.getTileEntityTimings(this); // Spigot
+ public Timing tickTimer = MinecraftTimings.getTileEntityTimings(this); // Paper
@ -1906,5 +1906,5 @@ index 2bd690fdf..38be7ed71 100644
}
}
--
2.17.1
2.18.0

View File

@ -1,4 +1,4 @@
From 0aa1b77dd406ea71f2a15b5bb1cdb479e5f2a13b Mon Sep 17 00:00:00 2001
From 1f84a29839c470f5bdc16ac91c21a3dccd8650eb Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 13:02:51 -0600
Subject: [PATCH] Configurable cactus and reed natural growth heights
@ -49,5 +49,5 @@ index 57f24f55d..d19dce839 100644
if (j >= (byte) range(3, ((100.0F / world.spigotConfig.caneModifier) * 15) + 0.5F, 15)) { // Spigot
--
2.17.1
2.18.0

View File

@ -1,4 +1,4 @@
From 12d1cdf6353a40f0870d48ccc90a0d216a2b6917 Mon Sep 17 00:00:00 2001
From 7204f6dc262ca2d75ae865a2a27ea9a89cbd2b86 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 13:09:16 -0600
Subject: [PATCH] Configurable baby zombie movement speed
@ -45,5 +45,5 @@ index 11c0f24f1..277f1414a 100644
}
--
2.17.1
2.18.0

View File

@ -1,4 +1,4 @@
From 614207770d336f0b8fa2db0de7a5bb42ce6d76df Mon Sep 17 00:00:00 2001
From 00a626d4786a4294acd9328c2b5c05e257f262dc Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 13:14:11 -0600
Subject: [PATCH] Configurable fishing time ranges
@ -35,5 +35,5 @@ index b4d3bcb41..339d1f1b1 100644
}
}
--
2.17.1
2.18.0

View File

@ -1,4 +1,4 @@
From 82899d1f9c3451994851342b7f27d37fc03b9a0f Mon Sep 17 00:00:00 2001
From 0e0640641bbc9a2e2089ae1846e2d7899bcd9e5e Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 13:24:16 -0600
Subject: [PATCH] Allow nerfed mobs to jump
@ -81,5 +81,5 @@ index b3b303b3b..fc6c3bf71 100644
if (this.a.getRandom().nextFloat() < 0.8F) {
this.a.getControllerJump().a();
--
2.17.1
2.18.0

View File

@ -1,11 +1,11 @@
From 2f9986be69c453815c9f2a218ceec0adaca29119 Mon Sep 17 00:00:00 2001
From 454d4de322b765150a71a124e972aa3853dcb2d5 Mon Sep 17 00:00:00 2001
From: Suddenly <suddenly@suddenly.coffee>
Date: Tue, 1 Mar 2016 13:51:54 -0600
Subject: [PATCH] Add configurable despawn distances for living entities
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index 1d9dd0e0..22c1113a 100644
index 1d9dd0e0b..22c1113a1 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -91,4 +91,20 @@ public class PaperWorldConfig {
@ -30,7 +30,7 @@ index 1d9dd0e0..22c1113a 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
index 7b02b253..94967e6b 100644
index 7b02b253c..94967e6b6 100644
--- a/src/main/java/net/minecraft/server/EntityInsentient.java
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java
@@ -630,13 +630,13 @@ public abstract class EntityInsentient extends EntityLiving {
@ -51,5 +51,5 @@ index 7b02b253..94967e6b 100644
}
}
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From 6f59e21ac8b3574bd3fe990f51b95928994cbf23 Mon Sep 17 00:00:00 2001
From 84cf59e1a2697bfa6e9319344d57f2363e4a6b25 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Thu, 3 Mar 2016 03:53:43 -0600
Subject: [PATCH] Allow for toggling of spawn chunks
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index 22c1113a..0094d1a8 100644
index 22c1113a1..0094d1a87 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -107,4 +107,10 @@ public class PaperWorldConfig {
@ -20,7 +20,7 @@ index 22c1113a..0094d1a8 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index d902e263..759964b0 100644
index d902e2630..759964b0f 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -202,6 +202,7 @@ public abstract class World implements IBlockAccess {
@ -32,5 +32,5 @@ index d902e263..759964b0 100644
this.tileLimiter = new org.spigotmc.TickLimiter(spigotConfig.tileMaxTickTime);
}
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From a25f3ed991c46a871bf580ae4ff7297fa93a4cc7 Mon Sep 17 00:00:00 2001
From ce52b463a57dd7ff4bc91a569a0da9c9b7080c99 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Tue, 1 Mar 2016 14:14:15 -0600
Subject: [PATCH] Drop falling block and tnt entities at the specified height
@ -24,10 +24,10 @@ index 0094d1a87..4da846719 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index e09ced1a2..ab206417c 100644
index 8dcff9bd4..041af8070 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -1750,6 +1750,7 @@ public abstract class Entity implements ICommandListener {
@@ -1769,6 +1769,7 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
return this.a(new ItemStack(item, i, 0), f);
}
@ -76,5 +76,5 @@ index 44b2d4735..0d70dd1d2 100644
this.motY *= 0.9800000190734863D;
this.motZ *= 0.9800000190734863D;
--
2.16.2
2.18.0

View File

@ -1,4 +1,4 @@
From 57f3356c54cd1823745adc773f6920584bfe4c10 Mon Sep 17 00:00:00 2001
From 656824f3d0c0f73417897c1ce3391a91849ec476 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Tue, 1 Mar 2016 14:27:13 -0600
Subject: [PATCH] Configurable speed for water flowing over lava
@ -57,5 +57,5 @@ index 7b74df5b9..62234a7c9 100644
+ }
}
--
2.17.1
2.18.0

View File

@ -1,4 +1,4 @@
From 8e05f591df18b178787bbc1417a67f3685f03c79 Mon Sep 17 00:00:00 2001
From 52755667f1f619ec704fc039220647e7d105956d Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 14:32:43 -0600
Subject: [PATCH] Show 'Paper' in client crashes, server lists, and Mojang
@ -46,7 +46,7 @@ index 9042deed6..33b40ffc2 100644
private final String bukkitVersion = Versioning.getBukkitVersion();
private final Logger logger = Logger.getLogger("Minecraft");
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index 0c5862a3f..e3667e558 100644
index 96585fb24..f95da9e26 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -192,7 +192,7 @@ public class Main {
@ -93,5 +93,5 @@ index 94a3d4237..91b8aa6a1 100644
log.log( Level.SEVERE, "------------------------------" );
//
--
2.17.1
2.18.0

View File

@ -1,4 +1,4 @@
From 620959a6b7c23480d69b886a164cb12185d59a9f Mon Sep 17 00:00:00 2001
From 3746d7c662973bd3e53de8da8b75eb5f7e205efd Mon Sep 17 00:00:00 2001
From: Jedediah Smith <jedediah@silencegreys.com>
Date: Tue, 1 Mar 2016 14:47:52 -0600
Subject: [PATCH] Player affects spawning API
@ -91,5 +91,5 @@ index 916781403..9e8ca0fbd 100644
// Spigot start
--
2.17.0
2.18.0

View File

@ -1,14 +1,14 @@
From c24578957f9f544e023cf837aceadd650feec34e Mon Sep 17 00:00:00 2001
From f468cbcfc4e7e05e67215e55bb021f4fb1ef1007 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Tue, 1 Mar 2016 15:08:03 -0600
Subject: [PATCH] Remove invalid mob spawner tile entities
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 350e0991..66c78083 100644
index ca5a42377..50113c303 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -722,6 +722,10 @@ public class Chunk {
@@ -759,6 +759,10 @@ public class Chunk {
tileentity.A();
this.tileEntities.put(blockposition, tileentity);
// CraftBukkit start
@ -20,5 +20,5 @@ index 350e0991..66c78083 100644
System.out.println("Attempted to place a tile entity (" + tileentity + ") at " + tileentity.position.getX() + "," + tileentity.position.getY() + "," + tileentity.position.getZ()
+ " (" + org.bukkit.craftbukkit.util.CraftMagicNumbers.getMaterial(getBlockData(blockposition).getBlock()) + ") where there was no entity tile!");
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From dcf282ac28b3cca835ce72abf3f69cea9bf4e8ff Mon Sep 17 00:00:00 2001
From 38c9fb6874ea9a6a93dcb74babdf31dccacb9fde Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 22:01:19 -0600
Subject: [PATCH] Optimize TileEntity Ticking
diff --git a/src/main/java/net/minecraft/server/TileEntityChest.java b/src/main/java/net/minecraft/server/TileEntityChest.java
index 3b5af473..63130412 100644
index 3b5af473d..631304122 100644
--- a/src/main/java/net/minecraft/server/TileEntityChest.java
+++ b/src/main/java/net/minecraft/server/TileEntityChest.java
@@ -8,17 +8,17 @@ import org.bukkit.craftbukkit.entity.CraftHumanEntity;
@ -117,7 +117,7 @@ index 3b5af473..63130412 100644
this.world.applyPhysics(this.position, this.getBlock(), false);
diff --git a/src/main/java/net/minecraft/server/TileEntityEnderChest.java b/src/main/java/net/minecraft/server/TileEntityEnderChest.java
index 31585757..1c1741c5 100644
index 31585757b..1c1741c56 100644
--- a/src/main/java/net/minecraft/server/TileEntityEnderChest.java
+++ b/src/main/java/net/minecraft/server/TileEntityEnderChest.java
@@ -1,15 +1,17 @@
@ -186,5 +186,5 @@ index 31585757..1c1741c5 100644
}
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 18e7bb3d26d123c1b7a26e2d0a2b3baa60e5dec2 Mon Sep 17 00:00:00 2001
From 1e6e7ab651008e3a1077dd86e7ff04563ce9cc97 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 1 Mar 2016 23:09:29 -0600
Subject: [PATCH] Further improve server tick loop
@ -12,7 +12,7 @@ Previous implementation did not calculate TPS correctly.
Switch to a realistic rolling average and factor in std deviation as an extra reporting variable
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 92d48025..47fe9262 100644
index 92d480251..47fe9262a 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -114,16 +114,12 @@ public abstract class MinecraftServer implements ICommandListener, Runnable, IAs
@ -147,7 +147,7 @@ index 92d48025..47fe9262 100644
}
lastTick = curTime;
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 33b40ffc..bfddd168 100644
index 33b40ffc2..bfddd1685 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1753,6 +1753,17 @@ public final class CraftServer implements Server {
@ -169,7 +169,7 @@ index 33b40ffc..bfddd168 100644
{
diff --git a/src/main/java/org/spigotmc/TicksPerSecondCommand.java b/src/main/java/org/spigotmc/TicksPerSecondCommand.java
index be2e31de..6d21c326 100644
index be2e31dea..6d21c3269 100644
--- a/src/main/java/org/spigotmc/TicksPerSecondCommand.java
+++ b/src/main/java/org/spigotmc/TicksPerSecondCommand.java
@@ -1,8 +1,5 @@
@ -210,5 +210,5 @@ index be2e31de..6d21c326 100644
return ( ( tps > 18.0 ) ? ChatColor.GREEN : ( tps > 16.0 ) ? ChatColor.YELLOW : ChatColor.RED ).toString()
+ ( ( tps > 20.0 ) ? "*" : "" ) + Math.min( Math.round( tps * 100.0 ) / 100.0, 20.0 );
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 6e552824da89ae526f34323546181e662acf6e3a Mon Sep 17 00:00:00 2001
From 329aa01be95b29541954ff13d27cf6416159be8b Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 23:12:03 -0600
Subject: [PATCH] Only refresh abilities if needed
@ -24,5 +24,5 @@ index 9e8ca0fbd..44d0db180 100644
@Override
--
2.16.1
2.18.0

View File

@ -1,11 +1,11 @@
From 60346178095179c691b4c2e164edd907116e3089 Mon Sep 17 00:00:00 2001
From c3014cb73ff60881596d4127dfbc32e58a3e07a2 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 23:19:01 -0600
Subject: [PATCH] Add async chunk load API
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
index ef8165da..01fc193d 100644
index ef8165da4..01fc193db 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -134,6 +134,26 @@ public class CraftWorld implements World {
@ -36,5 +36,5 @@ index ef8165da..01fc193d 100644
return this.world.getChunkProviderServer().getChunkAt(x, z).bukkitChunk;
}
--
2.14.3
2.18.0

View File

@ -1,14 +1,14 @@
From f3036166c54254edda6b097907cff5bc2e1e3639 Mon Sep 17 00:00:00 2001
From 76865dffb1ead34f79aa346277c16a9b22d88ba0 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Tue, 1 Mar 2016 23:45:08 -0600
Subject: [PATCH] Entity Origin API
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index ab206417c..e3084445f 100644
index 041af8070..43b802855 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -149,6 +149,7 @@ public abstract class Entity implements ICommandListener {
@@ -149,6 +149,7 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
public org.bukkit.projectiles.ProjectileSource projectileSource; // For projectiles only
public boolean forceExplosionKnockback; // SPIGOT-949
public Timing tickTimer = MinecraftTimings.getEntityTimings(this); // Paper
@ -16,7 +16,7 @@ index ab206417c..e3084445f 100644
// Spigot start
public final byte activationType = org.spigotmc.ActivationRange.initializeEntityActivationType(this);
public final boolean defaultActivationState;
@@ -1545,6 +1546,11 @@ public abstract class Entity implements ICommandListener {
@@ -1545,6 +1546,11 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
}
}
@ -28,7 +28,7 @@ index ab206417c..e3084445f 100644
return nbttagcompound;
} catch (Throwable throwable) {
CrashReport crashreport = CrashReport.a(throwable, "Saving entity NBT");
@@ -1688,6 +1694,13 @@ public abstract class Entity implements ICommandListener {
@@ -1688,6 +1694,13 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
}
// CraftBukkit end
@ -42,7 +42,7 @@ index ab206417c..e3084445f 100644
} catch (Throwable throwable) {
CrashReport crashreport = CrashReport.a(throwable, "Loading entity NBT");
CrashReportSystemDetails crashreportsystemdetails = crashreport.a("Entity being loaded");
@@ -1712,6 +1725,7 @@ public abstract class Entity implements ICommandListener {
@@ -1731,6 +1744,7 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
protected abstract void b(NBTTagCompound nbttagcompound);
@ -118,10 +118,10 @@ index 26d4bd690..31b765dea 100644
flag = true;
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index c5a194ffe..00d842629 100644
index 833e3111d..6c23e88a5 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -754,4 +754,12 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
@@ -761,4 +761,12 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
return spigot;
}
// Spigot end
@ -135,5 +135,5 @@ index c5a194ffe..00d842629 100644
+ // Paper end
}
--
2.16.2
2.18.0

View File

@ -1,14 +1,14 @@
From 5c582595ec7258d05855fe076e4fc24b1e62aeaf Mon Sep 17 00:00:00 2001
From 277b632fc83ffd69f3a61a439efac380e63ffa4b Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 1 Mar 2016 23:52:34 -0600
Subject: [PATCH] Prevent tile entity and entity crashes
diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java
index d2d4ff6f..65297a76 100644
index c1f657808..dfdc55583 100644
--- a/src/main/java/net/minecraft/server/TileEntity.java
+++ b/src/main/java/net/minecraft/server/TileEntity.java
@@ -175,7 +175,12 @@ public abstract class TileEntity {
@@ -195,7 +195,12 @@ public abstract class TileEntity implements KeyedObject {
}
});
if (this.world != null) {
@ -23,7 +23,7 @@ index d2d4ff6f..65297a76 100644
public String a() throws Exception {
int i = Block.getId(TileEntity.this.world.getType(TileEntity.this.position).getBlock());
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 31b765de..fd5f8102 100644
index 31b765dea..fd5f8102a 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1449,10 +1449,12 @@ public abstract class World implements IBlockAccess {
@ -62,5 +62,5 @@ index 31b765de..fd5f8102 100644
// Spigot start
finally {
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From c65ba7f6ff965da2d8b2beff4fdaf0fbe65f4091 Mon Sep 17 00:00:00 2001
From 76648e3954c2467150ff499f71a67f70f8e6f5a4 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 1 Mar 2016 23:58:50 -0600
Subject: [PATCH] Configurable top of nether void damage
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index d3484489..bf7af475 100644
index d3484489b..bf7af475c 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -129,4 +129,10 @@ public class PaperWorldConfig {
@ -20,10 +20,10 @@ index d3484489..bf7af475 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 00487dd5..9ee8c40a 100644
index 43b802855..aadc426fd 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -450,9 +450,15 @@ public abstract class Entity implements ICommandListener {
@@ -450,9 +450,15 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
this.fallDistance *= 0.5F;
}
@ -39,7 +39,7 @@ index 00487dd5..9ee8c40a 100644
if (!this.world.isClientSide) {
this.setFlag(0, this.fireTicks > 0);
@@ -462,6 +468,18 @@ public abstract class Entity implements ICommandListener {
@@ -462,6 +468,18 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
this.world.methodProfiler.b();
}
@ -58,7 +58,7 @@ index 00487dd5..9ee8c40a 100644
protected void I() {
if (this.portalCooldown > 0) {
--this.portalCooldown;
@@ -518,6 +536,7 @@ public abstract class Entity implements ICommandListener {
@@ -518,6 +536,7 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
this.fireTicks = 0;
}
@ -67,7 +67,7 @@ index 00487dd5..9ee8c40a 100644
this.die();
}
diff --git a/src/main/java/net/minecraft/server/EntityMinecartAbstract.java b/src/main/java/net/minecraft/server/EntityMinecartAbstract.java
index 82795ee8..f8da1887 100644
index a9412d4e0..1f4025486 100644
--- a/src/main/java/net/minecraft/server/EntityMinecartAbstract.java
+++ b/src/main/java/net/minecraft/server/EntityMinecartAbstract.java
@@ -204,9 +204,15 @@ public abstract class EntityMinecartAbstract extends Entity implements INamableT
@ -87,5 +87,5 @@ index 82795ee8..f8da1887 100644
int i;
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From b94394ffcc1baf20e676b78eecf2a1773581f0b2 Mon Sep 17 00:00:00 2001
From a44f81bb9c9cc3fe4d1f2b995c6da771b273ee0a Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Wed, 2 Mar 2016 00:03:55 -0600
Subject: [PATCH] Check online mode before converting and renaming player data
diff --git a/src/main/java/net/minecraft/server/WorldNBTStorage.java b/src/main/java/net/minecraft/server/WorldNBTStorage.java
index b69c6cf9..eba1228f 100644
index b69c6cf97..eba1228fd 100644
--- a/src/main/java/net/minecraft/server/WorldNBTStorage.java
+++ b/src/main/java/net/minecraft/server/WorldNBTStorage.java
@@ -167,7 +167,7 @@ public class WorldNBTStorage implements IDataManager, IPlayerFileData {
@ -18,5 +18,5 @@ index b69c6cf9..eba1228f 100644
file = new File( this.playerDir, UUID.nameUUIDFromBytes( ( "OfflinePlayer:" + entityhuman.getName() ).getBytes( "UTF-8" ) ).toString() + ".dat");
if ( file.exists() )
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From f2a09d0c6b52c8298494189dc30eebe1be91443e Mon Sep 17 00:00:00 2001
From 44f7b670a109010c9d1e76a06aa48d717bb14b1e Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Wed, 2 Mar 2016 00:32:25 -0600
Subject: [PATCH] Always tick falling blocks
diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java
index 38be7ed7..3265a6c2 100644
index 38be7ed71..3265a6c25 100644
--- a/src/main/java/org/spigotmc/ActivationRange.java
+++ b/src/main/java/org/spigotmc/ActivationRange.java
@@ -13,6 +13,7 @@ import net.minecraft.server.EntityCreature;
@ -25,5 +25,5 @@ index 38be7ed7..3265a6c2 100644
|| entity instanceof EntityFireworks )
{
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 40710ffc3a3e33ad680988e1bace785d72779f99 Mon Sep 17 00:00:00 2001
From eff7f534ce1d3c0f5c1e12bfae87996f1a22dbcc Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 00:52:31 -0600
Subject: [PATCH] Lighting Queue
@ -6,7 +6,7 @@ Subject: [PATCH] Lighting Queue
This provides option to queue lighting updates to ensure they do not cause the server lag
diff --git a/src/main/java/co/aikar/timings/WorldTimingsHandler.java b/src/main/java/co/aikar/timings/WorldTimingsHandler.java
index e0ad559b..4eebd9fa 100644
index e0ad559b7..4eebd9fae 100644
--- a/src/main/java/co/aikar/timings/WorldTimingsHandler.java
+++ b/src/main/java/co/aikar/timings/WorldTimingsHandler.java
@@ -49,6 +49,8 @@ public class WorldTimingsHandler {
@ -27,7 +27,7 @@ index e0ad559b..4eebd9fa 100644
}
}
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index bf7af475..94a17304 100644
index bf7af475c..94a173045 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -135,4 +135,10 @@ public class PaperWorldConfig {
@ -42,18 +42,18 @@ index bf7af475..94a17304 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 66c78083..c1f25e8d 100644
index 50113c303..aaf253c89 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -33,6 +33,7 @@ public class Chunk {
private boolean m;
public final Map<BlockPosition, TileEntity> tileEntities;
public final List<Entity>[] entitySlices; // Spigot
+ final PaperLightingQueue.LightingQueue lightingQueue = new PaperLightingQueue.LightingQueue(this); // Paper
@@ -61,6 +61,7 @@ public class Chunk {
return removed;
}
}
+ final PaperLightingQueue.LightingQueue lightingQueue = new PaperLightingQueue.LightingQueue(this);
// Paper end
private boolean done;
private boolean lit;
private boolean r;
@@ -229,6 +230,13 @@ public class Chunk {
@@ -258,6 +259,13 @@ public class Chunk {
private void h(boolean flag) {
this.world.methodProfiler.a("recheckGaps");
if (this.world.areChunksLoaded(new BlockPosition(this.locX * 16 + 8, 0, this.locZ * 16 + 8), 16)) {
@ -67,7 +67,7 @@ index 66c78083..c1f25e8d 100644
for (int i = 0; i < 16; ++i) {
for (int j = 0; j < 16; ++j) {
if (this.i[i + j * 16]) {
@@ -482,6 +490,7 @@ public class Chunk {
@@ -511,6 +519,7 @@ public class Chunk {
if (flag) {
this.initLighting();
} else {
@ -75,7 +75,7 @@ index 66c78083..c1f25e8d 100644
int j1 = iblockdata.c();
int k1 = iblockdata1.c();
@@ -496,6 +505,7 @@ public class Chunk {
@@ -525,6 +534,7 @@ public class Chunk {
if (j1 != k1 && (j1 < k1 || this.getBrightness(EnumSkyBlock.SKY, blockposition) > 0 || this.getBrightness(EnumSkyBlock.BLOCK, blockposition) > 0)) {
this.d(i, k);
}
@ -83,7 +83,7 @@ index 66c78083..c1f25e8d 100644
}
TileEntity tileentity;
@@ -1340,6 +1350,16 @@ public class Chunk {
@@ -1377,6 +1387,16 @@ public class Chunk {
this.w = i;
}
@ -101,7 +101,7 @@ index 66c78083..c1f25e8d 100644
IMMEDIATE, QUEUED, CHECK;
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index 69ded6aa..e9bc23a6 100644
index bd006ef74..2b320cbd1 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -295,6 +295,7 @@ public class ChunkProviderServer implements IChunkProvider {
@ -113,7 +113,7 @@ index 69ded6aa..e9bc23a6 100644
// Update neighbor counts
for (int x = -2; x < 3; x++) {
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 47fe9262..d63a243f 100644
index 47fe9262a..d63a243f3 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -722,7 +722,7 @@ public abstract class MinecraftServer implements ICommandListener, Runnable, IAs
@ -135,7 +135,7 @@ index 47fe9262..d63a243f 100644
}
diff --git a/src/main/java/net/minecraft/server/PaperLightingQueue.java b/src/main/java/net/minecraft/server/PaperLightingQueue.java
new file mode 100644
index 00000000..345cd582
index 000000000..345cd5824
--- /dev/null
+++ b/src/main/java/net/minecraft/server/PaperLightingQueue.java
@@ -0,0 +1,92 @@
@ -232,7 +232,7 @@ index 00000000..345cd582
+ }
+}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index fd5f8102..77ed2d24 100644
index fd5f8102a..77ed2d249 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -391,7 +391,7 @@ public abstract class World implements IBlockAccess {
@ -245,5 +245,5 @@ index fd5f8102..77ed2d24 100644
}
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From ccaca422e71692a8b2741a2df5f4859a90716c11 Mon Sep 17 00:00:00 2001
From 2a957c68f83983541fb26d90e11944e9f97ec7fa Mon Sep 17 00:00:00 2001
From: DoctorDark <doctordark11@gmail.com>
Date: Wed, 16 Mar 2016 02:21:39 -0500
Subject: [PATCH] Configurable end credits
@ -41,5 +41,5 @@ index 730acd971..dfaab774d 100644
this.cq = true;
}
--
2.16.2
2.18.0

View File

@ -1,4 +1,4 @@
From 546315b2c4410127330c66a51e4dc275640dde34 Mon Sep 17 00:00:00 2001
From 178c570553fa6504bac1ad6233eed59af89f1360 Mon Sep 17 00:00:00 2001
From: Iceee <andrew@opticgaming.tv>
Date: Wed, 2 Mar 2016 01:39:52 -0600
Subject: [PATCH] Fix lag from explosions processing dead entities
@ -25,5 +25,5 @@ index 98c2bdcf7..a1ebcf858 100644
for (int l1 = 0; l1 < list.size(); ++l1) {
--
2.17.0
2.18.0

View File

@ -1,4 +1,4 @@
From 44be4254d3e0b4553144b3e11ef864c9eaf57d13 Mon Sep 17 00:00:00 2001
From e894331adaa569423be8472929da3a809c4106bb Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 02:17:54 -0600
Subject: [PATCH] Generator Settings
@ -308,5 +308,5 @@ index 66a80a776..34fd7edfe 100644
ObjectIterator objectiterator = this.c.values().iterator();
--
2.17.0
2.18.0

View File

@ -1,4 +1,4 @@
From 4a3ce0b9f53b9cb651783d272853855f45ac78dd Mon Sep 17 00:00:00 2001
From 7c6a6c8a4f1efcf9c0319a79cfcc36fc6b700591 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 11:59:48 -0600
Subject: [PATCH] Optimize explosions
@ -156,5 +156,5 @@ index 77ed2d249..fc7315f7d 100644
public CraftWorld getWorld() {
return this.world;
--
2.17.0
2.18.0

View File

@ -1,4 +1,4 @@
From 491235cd2a7ab7a9eaff4d02718c37d657b78167 Mon Sep 17 00:00:00 2001
From b347181112d7dd6655c11bbd324a2a4c62e9507d Mon Sep 17 00:00:00 2001
From: Iceee <andrew@opticgaming.tv>
Date: Wed, 2 Mar 2016 12:03:23 -0600
Subject: [PATCH] Stop updating flowing block if material has changed
@ -17,5 +17,5 @@ index 62234a7c9..3b47253a4 100644
IBlockData iblockdata2 = world.getType(blockposition.down());
--
2.17.0
2.18.0

View File

@ -1,4 +1,4 @@
From ebb2e432e50bb6758f584920396ae4ed8ef98b0e Mon Sep 17 00:00:00 2001
From 4b300fd41621071f122933ad9400521cb46228a0 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 12:20:52 -0600
Subject: [PATCH] Fast draining
@ -109,5 +109,5 @@ index 3b47253a4..3aaa19b2f 100644
+ // Paper end
}
--
2.17.0
2.18.0

View File

@ -1,4 +1,4 @@
From f764c07be09e378b2e3561779358108f37bb82f0 Mon Sep 17 00:00:00 2001
From 2d430fe2949ebdeb5057951e790b9cf0a42704f0 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 12:27:07 -0600
Subject: [PATCH] Configurable lava flow speed
@ -47,5 +47,5 @@ index f3eb2a797..d0265f960 100644
return this.e;
}
--
2.17.0
2.18.0

View File

@ -1,4 +1,4 @@
From b37938d4ce59d4ae17feb44e60dd1f8124c1a4d8 Mon Sep 17 00:00:00 2001
From bc0c7f66ac5a805ce36fbeec388e30315c77e22e Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 14:35:27 -0600
Subject: [PATCH] Add player view distance API
@ -224,5 +224,5 @@ index 44d0db180..b2b707305 100644
private final Player.Spigot spigot = new Player.Spigot()
{
--
2.17.0
2.18.0

View File

@ -1,4 +1,4 @@
From 3205346921413de13db17a2fa51e33847237783c Mon Sep 17 00:00:00 2001
From 8c80dd00564a7e849b0e698664bc59afc86be7f9 Mon Sep 17 00:00:00 2001
From: Sudzzy <originmc@outlook.com>
Date: Wed, 2 Mar 2016 14:48:03 -0600
Subject: [PATCH] Disable explosion knockback
@ -70,5 +70,5 @@ index e7f0e84d4..e148901e5 100644
}
}
--
2.17.0
2.18.0

View File

@ -1,4 +1,4 @@
From b00d6ae1ac25b1c2a41cabc1f3cd2cae9bd9fd01 Mon Sep 17 00:00:00 2001
From d2fc9addb5a311bf9f318eadbec8856814f9f2e3 Mon Sep 17 00:00:00 2001
From: Sudzzy <originmc@outlook.com>
Date: Wed, 2 Mar 2016 14:52:43 -0600
Subject: [PATCH] Disable thunder
@ -33,5 +33,5 @@ index 95964c550..b12c58732 100644
l = this.l >> 2;
blockposition = this.a(new BlockPosition(j + (l & 15), 0, k + (l >> 8 & 15)));
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 54b3b7343bff27759ae9d02430994db91db9b96e Mon Sep 17 00:00:00 2001
From f87ff63cc88a82e74518b65870af236bbfbec5bb Mon Sep 17 00:00:00 2001
From: Sudzzy <originmc@outlook.com>
Date: Wed, 2 Mar 2016 14:57:24 -0600
Subject: [PATCH] Disable ice and snow
@ -32,5 +32,5 @@ index b12c58732..d0ff0adf5 100644
l = this.l >> 2;
blockposition = this.p(new BlockPosition(j + (l & 15), 0, k + (l >> 8 & 15)));
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 65ef96c994b5143cb8fffada60fade2fa6ce842a Mon Sep 17 00:00:00 2001
From 7687ee0d8185f0476427df0ce90d6a1f347bd385 Mon Sep 17 00:00:00 2001
From: Sudzzy <originmc@outlook.com>
Date: Wed, 2 Mar 2016 15:03:53 -0600
Subject: [PATCH] Configurable mob spawner tick rate
@ -64,5 +64,5 @@ index 0149726ea..a5261d70b 100644
}
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From 00b4d0840ad4aa83fd9f668f114997cbf00e3105 Mon Sep 17 00:00:00 2001
From dd5f739fe833b8a215e3f8822c57eecfd89cd661 Mon Sep 17 00:00:00 2001
From: Jedediah Smith <jedediah@silencegreys.com>
Date: Wed, 2 Mar 2016 23:13:07 -0600
Subject: [PATCH] Send absolute position the first time an entity is seen
diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
index d864c774..4c6eb6ed 100644
index d864c7745..4c6eb6ed1 100644
--- a/src/main/java/net/minecraft/server/EntityTrackerEntry.java
+++ b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
@@ -41,7 +41,12 @@ public class EntityTrackerEntry {
@ -76,5 +76,5 @@ index d864c774..4c6eb6ed 100644
entityplayer.playerConnection.sendPacket(packet);
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From f4d8d65c9697b298b90b1eb269ff0e2ab86698ac Mon Sep 17 00:00:00 2001
From e77bc538984bbbf0e7f687632a51243419f2e808 Mon Sep 17 00:00:00 2001
From: Byteflux <byte@byteflux.net>
Date: Wed, 2 Mar 2016 23:30:53 -0600
Subject: [PATCH] Add BeaconEffectEvent
diff --git a/src/main/java/net/minecraft/server/TileEntityBeacon.java b/src/main/java/net/minecraft/server/TileEntityBeacon.java
index b84a2ce5..a57b1717 100644
index b84a2ce55..a57b17171 100644
--- a/src/main/java/net/minecraft/server/TileEntityBeacon.java
+++ b/src/main/java/net/minecraft/server/TileEntityBeacon.java
@@ -16,6 +16,14 @@ import org.bukkit.entity.HumanEntity;
@ -69,5 +69,5 @@ index b84a2ce5..a57b1717 100644
}
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 077ede472069273293c0cc7ddbc3416b7888849b Mon Sep 17 00:00:00 2001
From de658229f19d33a91965d3552a3d3e2df61fdef6 Mon Sep 17 00:00:00 2001
From: Sudzzy <originmc@outlook.com>
Date: Wed, 2 Mar 2016 23:34:44 -0600
Subject: [PATCH] Configurable container update tick rate
@ -45,5 +45,5 @@ index 3058dfef0..ed3546ccc 100644
this.closeInventory();
this.activeContainer = this.defaultContainer;
--
2.16.2
2.18.0

View File

@ -1,4 +1,4 @@
From ac252f794e6d93e8120a97a015c25fde2f7200f9 Mon Sep 17 00:00:00 2001
From 42a3ad24ded6b1cb5d7be1be315fe6cf89f7c0e1 Mon Sep 17 00:00:00 2001
From: Techcable <Techcable@outlook.com>
Date: Wed, 2 Mar 2016 23:42:37 -0600
Subject: [PATCH] Use UserCache for player heads
@ -32,5 +32,5 @@ index b6b34627a..862b30286 100644
return true;
--
2.17.1
2.18.0

View File

@ -1,11 +1,11 @@
From 22338f0f3207a00a9f48c20b9f394d118110981e Mon Sep 17 00:00:00 2001
From a38a03bec72f44ef894d94609741021909ce1d11 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Wed, 2 Mar 2016 23:45:17 -0600
Subject: [PATCH] Disable spigot tick limiters
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index fc7315f7..e85ed2e3 100644
index fc7315f7d..e85ed2e33 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1426,10 +1426,10 @@ public abstract class World implements IBlockAccess {
@ -35,5 +35,5 @@ index fc7315f7..e85ed2e3 100644
TileEntity tileentity = (TileEntity) this.tileEntityListTick.get(tileTickPosition);
// Spigot start
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From b4c98eb4f723e9e65cb7e4dbc88325fd72813d34 Mon Sep 17 00:00:00 2001
From 128af90387c06be0da343f45b342a235228b37ea Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Wed, 2 Mar 2016 23:46:57 -0600
Subject: [PATCH] Configurable Chunk IO Thread Base Count
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index b5795b6d..36689db7 100644
index b5795b6d3..36689db74 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -199,4 +199,9 @@ public class PaperConfig {
@ -19,7 +19,7 @@ index b5795b6d..36689db7 100644
+ }
}
diff --git a/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOExecutor.java b/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOExecutor.java
index e4fd9bc6..7b7a3d01 100644
index e4fd9bc60..7b7a3d01b 100644
--- a/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOExecutor.java
+++ b/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOExecutor.java
@@ -1,5 +1,6 @@
@ -39,5 +39,5 @@ index e4fd9bc6..7b7a3d01 100644
private static final AsynchronousExecutor<QueuedChunk, Chunk, Runnable, RuntimeException> instance = new AsynchronousExecutor<QueuedChunk, Chunk, Runnable, RuntimeException>(new ChunkIOProvider(), BASE_THREADS);
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 40abd729cda512166ac068a2593b32a45205cbe8 Mon Sep 17 00:00:00 2001
From a696a1afb907dcc000b57e966c3ab11c5aa53138 Mon Sep 17 00:00:00 2001
From: Steve Anton <anxuiz.nx@gmail.com>
Date: Thu, 3 Mar 2016 00:09:38 -0600
Subject: [PATCH] Add PlayerInitialSpawnEvent
@ -6,7 +6,7 @@ Subject: [PATCH] Add PlayerInitialSpawnEvent
For modifying a player's initial spawn location as they join the server
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index 784d6b62..b38ff689 100644
index 1d9f3e3dd..536534d2e 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -110,6 +110,21 @@ public abstract class PlayerList {
@ -32,5 +32,5 @@ index 784d6b62..b38ff689 100644
entityplayer.playerInteractManager.a((WorldServer) entityplayer.world);
String s1 = "local";
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 8a0d7626b94d1a66dca31152c8e73d5629babbbe Mon Sep 17 00:00:00 2001
From e86c5102d5b832a152202db0b357323fc3755fce Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 3 Mar 2016 01:13:45 -0600
Subject: [PATCH] Disable chest cat detection
@ -35,5 +35,5 @@ index da2cfe206..bc398ec52 100644
EntityOcelot entityocelot;
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 09e8ebb6054e3f37de7d78ab784147cbf62985d4 Mon Sep 17 00:00:00 2001
From c7b0d45e95bb420f3051f4bde3d28fc8d584a03a Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 3 Mar 2016 01:17:12 -0600
Subject: [PATCH] Ensure commands are not ran async
@ -118,5 +118,5 @@ index 49768734d..947c43a5d 100644
{
if ( script.isFile() )
--
2.16.1
2.18.0

View File

@ -1,4 +1,4 @@
From 79dbad715acc2a9afa9b55b2cfacdf7520d48080 Mon Sep 17 00:00:00 2001
From 0b776c2a991e7b2afc49d7dd72d8d44a55574465 Mon Sep 17 00:00:00 2001
From: vemacs <d@nkmem.es>
Date: Thu, 3 Mar 2016 01:19:22 -0600
Subject: [PATCH] All chunks are slime spawn chunks toggle
@ -34,5 +34,5 @@ index 272b22652..3d3a9ca04 100644
}
}
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From d07a9f35fa53a4f2cd7c20d38e15e74f90347e7b Mon Sep 17 00:00:00 2001
From a1991aa9db5af320aa989bf9cfc44ddda11f8001 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 3 Mar 2016 02:02:07 -0600
Subject: [PATCH] Optimize Pathfinding
@ -7,7 +7,7 @@ Prevents pathfinding from spamming failures for things such as
arrow attacks.
diff --git a/src/main/java/net/minecraft/server/NavigationAbstract.java b/src/main/java/net/minecraft/server/NavigationAbstract.java
index bfc5769f..cc44d30b 100644
index bfc5769f7..cc44d30b5 100644
--- a/src/main/java/net/minecraft/server/NavigationAbstract.java
+++ b/src/main/java/net/minecraft/server/NavigationAbstract.java
@@ -118,10 +118,26 @@ public abstract class NavigationAbstract {
@ -47,5 +47,5 @@ index bfc5769f..cc44d30b 100644
}
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 87454f7aa992d28fb8dac2b75804360f77293510 Mon Sep 17 00:00:00 2001
From 04eb0a217ec431985499b59ceb505a2047a3173c Mon Sep 17 00:00:00 2001
From: CullanP <cullanpage@gmail.com>
Date: Thu, 3 Mar 2016 02:13:38 -0600
Subject: [PATCH] Avoid hopper searches if there are no items
@ -14,10 +14,10 @@ And since minecart hoppers are used _very_ rarely near we can avoid alot of sear
Combined, this adds up a lot.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index c1f25e8d..2a1c11a0 100644
index aaf253c89..a5db14343 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -47,6 +47,13 @@ public class Chunk {
@@ -76,6 +76,13 @@ public class Chunk {
public boolean d;
protected gnu.trove.map.hash.TObjectIntHashMap<Class> entityCount = new gnu.trove.map.hash.TObjectIntHashMap<Class>(); // Spigot
@ -31,7 +31,7 @@ index c1f25e8d..2a1c11a0 100644
// CraftBukkit start - Neighbor loaded cache for chunk lighting and entity ticking
private int neighbors = 0x1 << 12;
public long chunkKey;
@@ -619,6 +626,13 @@ public class Chunk {
@@ -648,6 +655,13 @@ public class Chunk {
entity.ac = k;
entity.ad = this.locZ;
this.entitySlices[k].add(entity);
@ -45,7 +45,7 @@ index c1f25e8d..2a1c11a0 100644
// Spigot start - increment creature type count
// Keep this synced up with World.a(Class)
if (entity instanceof EntityInsentient) {
@@ -651,6 +665,13 @@ public class Chunk {
@@ -684,6 +698,13 @@ public class Chunk {
}
this.entitySlices[i].remove(entity);
@ -59,7 +59,7 @@ index c1f25e8d..2a1c11a0 100644
// Spigot start - decrement creature type count
// Keep this synced up with World.a(Class)
if (entity instanceof EntityInsentient) {
@@ -842,6 +863,15 @@ public class Chunk {
@@ -879,6 +900,15 @@ public class Chunk {
if (!this.entitySlices[k].isEmpty()) {
Iterator iterator = this.entitySlices[k].iterator();
@ -75,7 +75,7 @@ index c1f25e8d..2a1c11a0 100644
while (iterator.hasNext()) {
Entity entity1 = (Entity) iterator.next();
@@ -878,7 +908,18 @@ public class Chunk {
@@ -915,7 +945,18 @@ public class Chunk {
i = MathHelper.clamp(i, 0, this.entitySlices.length - 1);
j = MathHelper.clamp(j, 0, this.entitySlices.length - 1);
@ -95,5 +95,5 @@ index c1f25e8d..2a1c11a0 100644
while (iterator.hasNext()) {
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From d587d2dde23a2f8567a1cceecd11261c36060b27 Mon Sep 17 00:00:00 2001
From 185ae1f1fd5dda3d640dc46dd02cda578dac0f10 Mon Sep 17 00:00:00 2001
From: kashike <kashike@vq.lc>
Date: Thu, 3 Mar 2016 02:15:57 -0600
Subject: [PATCH] Expose server CommandMap
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 082957d3..8bec4993 100644
index 462ad1024..1386bed52 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1564,6 +1564,7 @@ public final class CraftServer implements Server {
@ -17,5 +17,5 @@ index 082957d3..8bec4993 100644
return commandMap;
}
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From e0cd0d92c3a5385e827cc313cef320ac0594bf41 Mon Sep 17 00:00:00 2001
From 5a0ca0019bba86347b69d398a66bf641dfcda650 Mon Sep 17 00:00:00 2001
From: kashike <kashike@vq.lc>
Date: Thu, 3 Mar 2016 02:18:39 -0600
Subject: [PATCH] Be a bit more informative in maxHealth exception
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index 425919cd..7bf45f7d 100644
index bf4428e1c..34f1ef176 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -94,7 +94,10 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
@ -21,5 +21,5 @@ index 425919cd..7bf45f7d 100644
getHandle().setHealth((float) health);
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From c20bec68afa5809d1f05b6bd56a97da0b5511fa4 Mon Sep 17 00:00:00 2001
From abeaa2a2bfcde56cb470cdbcc36d5eaac6e02320 Mon Sep 17 00:00:00 2001
From: Techcable <Techcable@outlook.com>
Date: Thu, 3 Mar 2016 02:32:10 -0600
Subject: [PATCH] Player Tab List and Title APIs
@ -175,5 +175,5 @@ index b2b707305..c14100ac6 100644
public String getDisplayName() {
return getHandle().displayName;
--
2.16.1
2.18.0

View File

@ -1,11 +1,11 @@
From 5394e873fbcf4dd43535cdaa0d98fcf3ce02114d Mon Sep 17 00:00:00 2001
From c366a9167ac26fc0eb4230e64b012b3dfbbcc2de Mon Sep 17 00:00:00 2001
From: Joseph Hirschfeld <joe@ibj.io>
Date: Thu, 3 Mar 2016 02:33:53 -0600
Subject: [PATCH] Ensure inv drag is in bounds
diff --git a/src/main/java/net/minecraft/server/Container.java b/src/main/java/net/minecraft/server/Container.java
index 7d80b68b..3a488ce2 100644
index 7d80b68b2..3a488ce20 100644
--- a/src/main/java/net/minecraft/server/Container.java
+++ b/src/main/java/net/minecraft/server/Container.java
@@ -141,7 +141,7 @@ public abstract class Container {
@ -18,5 +18,5 @@ index 7d80b68b..3a488ce2 100644
itemstack1 = playerinventory.getCarried();
if (slot != null && a(slot, itemstack1, true) && slot.isAllowed(itemstack1) && (this.dragType == 2 || itemstack1.getCount() > this.h.size()) && this.b(slot)) {
--
2.14.3
2.18.0

View File

@ -1,14 +1,14 @@
From 91da56f560ed2baf64ec8fb3530b7329b5865325 Mon Sep 17 00:00:00 2001
From bc94a21d1941e2d5d173d0be455acef7c1b02ce8 Mon Sep 17 00:00:00 2001
From: Joseph Hirschfeld <joe@ibj.io>
Date: Thu, 3 Mar 2016 02:39:54 -0600
Subject: [PATCH] Change implementation of (tile)entity removal list
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 9ee8c40a..438624dd 100644
index aadc426fd..584501787 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -122,7 +122,7 @@ public abstract class Entity implements ICommandListener {
@@ -122,7 +122,7 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
private static final DataWatcherObject<Boolean> aC = DataWatcher.a(Entity.class, DataWatcherRegistry.h);
private static final DataWatcherObject<Boolean> aD = DataWatcher.a(Entity.class, DataWatcherRegistry.h);
private static final DataWatcherObject<Boolean> aE = DataWatcher.a(Entity.class, DataWatcherRegistry.h);
@ -18,7 +18,7 @@ index 9ee8c40a..438624dd 100644
public int ac; public int getChunkY() { return ac; } // Paper - OBFHELPER
public int ad; public int getChunkZ() { return ad; } // Paper - OBFHELPER
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index e85ed2e3..89197281 100644
index e85ed2e33..89197281e 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -31,6 +31,11 @@ import org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason;
@ -78,5 +78,5 @@ index e85ed2e3..89197281 100644
this.f.clear();
this.l();
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 3dc4aded0ca26267f9b737e34272a10cb89045de Mon Sep 17 00:00:00 2001
From 0b318cc00f265124445ca5f9f0f833525e066ca9 Mon Sep 17 00:00:00 2001
From: Joseph Hirschfeld <joe@ibj.io>
Date: Thu, 3 Mar 2016 02:46:17 -0600
Subject: [PATCH] Add configurable portal search radius
@ -54,5 +54,5 @@ index 1d5dce10e..7ca2617a8 100644
private boolean canCreatePortal = true;
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From 5d7034040c0b6785bd57f42da9d93af845990760 Mon Sep 17 00:00:00 2001
From fb23b7590e446635c8435469d8a3f8aaa49234c0 Mon Sep 17 00:00:00 2001
From: Joseph Hirschfeld <joe@ibj.io>
Date: Thu, 3 Mar 2016 02:48:12 -0600
Subject: [PATCH] Add velocity warnings
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 8bec4993..16b8d38a 100644
index 1386bed52..d56966109 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -173,6 +173,7 @@ public final class CraftServer implements Server {
@ -17,10 +17,10 @@ index 8bec4993..16b8d38a 100644
private final class BooleanWrapper {
private boolean value = true;
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
index 0f38abaf..8628cd5a 100644
index 6c23e88a5..3b25b8b73 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
@@ -240,12 +240,44 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
@@ -247,12 +247,44 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
public void setVelocity(Vector velocity) {
Preconditions.checkArgument(velocity != null, "velocity");
velocity.checkFinite();
@ -66,7 +66,7 @@ index 0f38abaf..8628cd5a 100644
public double getHeight() {
return getHandle().length;
diff --git a/src/main/java/org/spigotmc/WatchdogThread.java b/src/main/java/org/spigotmc/WatchdogThread.java
index 3ed983cc..6384d50e 100644
index 91b8aa6a1..0c106ea9c 100644
--- a/src/main/java/org/spigotmc/WatchdogThread.java
+++ b/src/main/java/org/spigotmc/WatchdogThread.java
@@ -66,7 +66,19 @@ public class WatchdogThread extends Thread
@ -91,5 +91,5 @@ index 3ed983cc..6384d50e 100644
log.log( Level.SEVERE, "Server thread dump (Look for plugins here before reporting to Paper!):" );
dumpThread( ManagementFactory.getThreadMXBean().getThreadInfo( MinecraftServer.getServer().primaryThread.getId(), Integer.MAX_VALUE ), log );
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 52a843bdcf3007d3a162688c19e81226dd77bf9e Mon Sep 17 00:00:00 2001
From a1057f8d4cd02724b07e348e56022b1892e0cb40 Mon Sep 17 00:00:00 2001
From: Sudzzy <originmc@outlook.com>
Date: Thu, 3 Mar 2016 02:50:31 -0600
Subject: [PATCH] Configurable inter-world teleportation safety
@ -57,5 +57,5 @@ index c14100ac6..6a43f5674 100644
return true;
}
--
2.17.1
2.18.0

View File

@ -1,4 +1,4 @@
From 82d307e6cab4ac0ca3171b430e5eecd61cd27787 Mon Sep 17 00:00:00 2001
From fa5787eee0ee62491653acc9fd911e0e3f9134c0 Mon Sep 17 00:00:00 2001
From: Joseph Hirschfeld <joe@ibj.io>
Date: Thu, 3 Mar 2016 03:15:41 -0600
Subject: [PATCH] Add exception reporting event
@ -50,7 +50,7 @@ index 000000000..93397188b
+}
\ No newline at end of file
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 2a1c11a04..cc4a9dbe6 100644
index a5db14343..0788f7712 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -1,5 +1,6 @@
@ -68,7 +68,7 @@ index 2a1c11a04..cc4a9dbe6 100644
public class Chunk {
@@ -758,10 +760,15 @@ public class Chunk {
@@ -795,10 +797,15 @@ public class Chunk {
this.tileEntities.remove(blockposition);
// Paper end
} else {
@ -375,5 +375,5 @@ index 93b9134d6..26753fac5 100644
// (async tasks must live with race-conditions if they attempt to cancel between these few lines of code)
}
--
2.17.1
2.18.0

View File

@ -1,4 +1,4 @@
From acf1d6b999ead0cb9dfb022031296a0e803c6fc2 Mon Sep 17 00:00:00 2001
From 19fe04ed766ce08de277106c28f66e864ac03f29 Mon Sep 17 00:00:00 2001
From: kashike <kashike@vq.lc>
Date: Tue, 8 Mar 2016 18:28:43 -0800
Subject: [PATCH] Don't nest if we don't need to when cerealising text
@ -6,7 +6,7 @@ Subject: [PATCH] Don't nest if we don't need to when cerealising text
diff --git a/src/main/java/net/minecraft/server/PacketPlayOutChat.java b/src/main/java/net/minecraft/server/PacketPlayOutChat.java
index 67666d35..5d1a4962 100644
index 67666d35b..5d1a49623 100644
--- a/src/main/java/net/minecraft/server/PacketPlayOutChat.java
+++ b/src/main/java/net/minecraft/server/PacketPlayOutChat.java
@@ -27,7 +27,14 @@ public class PacketPlayOutChat implements Packet<PacketListenerPlayOut> {
@ -26,5 +26,5 @@ index 67666d35..5d1a4962 100644
packetdataserializer.a(this.a);
}
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From cf2004f2b659ca6d14b06d1c5c5e79b16cbb0ac7 Mon Sep 17 00:00:00 2001
From b66a86a51ef63edaa49df63bb3cee22e5822e1bb Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 8 Mar 2016 23:25:45 -0500
Subject: [PATCH] Disable Scoreboards for non players by default
@ -37,10 +37,10 @@ index ec9a87239..b08274d93 100644
if (scoreboard.addPlayerToTeam(s2, s)) {
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 8ca7324e9..293ac271d 100644
index 584501787..b4ad611fc 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -2079,6 +2079,7 @@ public abstract class Entity implements ICommandListener {
@@ -2098,6 +2098,7 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
@Nullable
public ScoreboardTeamBase aY() {
@ -49,5 +49,5 @@ index 8ca7324e9..293ac271d 100644
}
--
2.16.2
2.18.0

View File

@ -1,11 +1,11 @@
From 1327edcaa7361519198876a7e6659f8109fe97ae Mon Sep 17 00:00:00 2001
From 076a022c505a512a8d517c8b7234686dccc4577b Mon Sep 17 00:00:00 2001
From: mrapple <tony@oc.tc>
Date: Sun, 25 Nov 2012 13:43:39 -0600
Subject: [PATCH] Add methods for working with arrows stuck in living entities
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index 7bf45f7d..b9e10603 100644
index 34f1ef176..d4d51688c 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -494,4 +494,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
@ -26,5 +26,5 @@ index 7bf45f7d..b9e10603 100644
+ // Paper end
}
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From d883cb3dd2a94346d63fa82bbacba5e83c39a208 Mon Sep 17 00:00:00 2001
From ddec55539acaec545c955faeb164804d81f528d6 Mon Sep 17 00:00:00 2001
From: Jedediah Smith <jedediah@silencegreys.com>
Date: Sat, 4 Apr 2015 23:17:52 -0400
Subject: [PATCH] Complete resource pack API
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 5348c0cbc..5cc5dbcd7 100644
index 48379f414..e1b85ebae 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -1067,7 +1067,12 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
@ -71,5 +71,5 @@ index 6a43f5674..45b11d87c 100644
private final Player.Spigot spigot = new Player.Spigot()
{
--
2.16.1
2.18.0

View File

@ -1,4 +1,4 @@
From 7f29042fa8a19c844fee61cfe0271a47e28e204c Mon Sep 17 00:00:00 2001
From c137628da7ca3cdca8ef577cdb3594bff5460657 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 4 Mar 2016 18:18:37 -0600
Subject: [PATCH] Chunk save queue improvements
@ -26,7 +26,7 @@ Then finally, Sleeping will by default be removed, but due to known issues with
But if sleeps are to remain enabled, we at least lower the sleep interval so it doesn't have as much negative impact.
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 36689db7..3898ad8f 100644
index 36689db74..3898ad8fa 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -204,4 +204,10 @@ public class PaperConfig {
@ -41,7 +41,7 @@ index 36689db7..3898ad8f 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
index a401dec6..4c3faa20 100644
index a401dec60..4c3faa201 100644
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
@@ -12,6 +12,7 @@ import java.util.List;
@ -138,7 +138,7 @@ index a401dec6..4c3faa20 100644
+ // Paper end
}
diff --git a/src/main/java/net/minecraft/server/FileIOThread.java b/src/main/java/net/minecraft/server/FileIOThread.java
index 1d6b1874..9ee4115b 100644
index 1d6b1874c..9ee4115be 100644
--- a/src/main/java/net/minecraft/server/FileIOThread.java
+++ b/src/main/java/net/minecraft/server/FileIOThread.java
@@ -39,11 +39,15 @@ public class FileIOThread implements Runnable {
@ -162,5 +162,5 @@ index 1d6b1874..9ee4115b 100644
if (this.b.isEmpty()) {
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 8aa4fd3f27fff342a97065ddfbe6c143ccf91f55 Mon Sep 17 00:00:00 2001
From bc3a702f71fbd98ac83d02992c8df88a9207e765 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 4 Mar 2013 23:46:10 -0500
Subject: [PATCH] Chunk Save Reattempt
@ -6,7 +6,7 @@ Subject: [PATCH] Chunk Save Reattempt
We commonly have "Stream Closed" errors on chunk saving, so this code should re-try to save the chunk in the event of failure and hopefully prevent rollbacks.
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
index 4c3faa20..12bd558a 100644
index 4c3faa201..12bd558a7 100644
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
@@ -194,11 +194,16 @@ public class ChunkRegionLoader implements IChunkLoader, IAsyncChunkSaver {
@ -28,7 +28,7 @@ index 4c3faa20..12bd558a 100644
synchronized (lock) { if (this.b.get(chunkcoordintpair) == chunk.compoundSupplier) { this.b.remove(chunkcoordintpair); } }// Paper - This will not equal if a newer version is still pending
diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java
index 6a92b5af..5bcbd718 100644
index 6a92b5af8..5bcbd718f 100644
--- a/src/main/java/net/minecraft/server/RegionFile.java
+++ b/src/main/java/net/minecraft/server/RegionFile.java
@@ -210,8 +210,7 @@ public class RegionFile {
@ -42,5 +42,5 @@ index 6a92b5af..5bcbd718 100644
}
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 59a7aa4ed75ec50385be412519acc32e79b5923b Mon Sep 17 00:00:00 2001
From 2003df4e8bd6827060840d6c24d45b9cca953384 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 13:17:38 -0400
Subject: [PATCH] Default loading permissions.yml before plugins
@ -16,7 +16,7 @@ modify that. Under the previous logic, plugins were unable (cleanly) override pe
A config option has been added for those who depend on the previous behavior, but I don't expect that.
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 3898ad8f..2f6e169f 100644
index 3898ad8fa..2f6e169f5 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -210,4 +210,9 @@ public class PaperConfig {
@ -30,7 +30,7 @@ index 3898ad8f..2f6e169f 100644
+ }
}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 16b8d38a..9e50bc49 100644
index d56966109..d482589b3 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -322,6 +322,7 @@ public final class CraftServer implements Server {
@ -51,5 +51,5 @@ index 16b8d38a..9e50bc49 100644
CraftDefaultPermissions.registerCorePermissions();
helpMap.initializeCommands();
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From dd903cb350bb0f8ed52213d417523ca1de2527cb Mon Sep 17 00:00:00 2001
From 80b97310030500c8eae0b1d7b8c4ba337b5fa17b Mon Sep 17 00:00:00 2001
From: William <admin@domnian.com>
Date: Fri, 18 Mar 2016 03:30:17 -0400
Subject: [PATCH] Allow Reloading of Custom Permissions
@ -6,7 +6,7 @@ Subject: [PATCH] Allow Reloading of Custom Permissions
https://github.com/PaperMC/Paper/issues/49
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 9e50bc49..fd4e0279 100644
index d482589b3..e53f8c58f 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1863,5 +1863,20 @@ public final class CraftServer implements Server {
@ -31,5 +31,5 @@ index 9e50bc49..fd4e0279 100644
// Paper end
}
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 3c10de727781081009381cdd8eaebac04040ceff Mon Sep 17 00:00:00 2001
From 3481b79ff64f24f29029cafe3367f2bcfee00e3c Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 13:50:14 -0400
Subject: [PATCH] Remove Metadata on reload
@ -7,7 +7,7 @@ Metadata is not meant to persist reload as things break badly with non primitive
This will remove metadata on reload so it does not crash everything if a plugin uses it.
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index fd4e0279..5d15d584 100644
index e53f8c58f..d3e949707 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -743,8 +743,18 @@ public final class CraftServer implements Server {
@ -30,5 +30,5 @@ index fd4e0279..5d15d584 100644
reloadData();
org.spigotmc.SpigotConfig.registerCommands(); // Spigot
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 6da4750f26b7861285d45bfe2a164780f32dcab5 Mon Sep 17 00:00:00 2001
From fc16de493fda64fc50353d88616f97947e2f4053 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 14:19:19 -0400
Subject: [PATCH] Undead horse leashing
@ -33,5 +33,5 @@ index 46d1ea217..dcc39236f 100644
protected void q(float f) {
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From c36013fd353a1f51ac3e51fae0054caf6d0bb405 Mon Sep 17 00:00:00 2001
From cbd0700140ece892d3de977dc69b4b2e5c585291 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 14:24:53 -0400
Subject: [PATCH] Fix Furnace cook time bug
@ -9,7 +9,7 @@ cook in the expected amount of time as the cook time was not decremented correct
This patch ensures that furnaces cook to the correct wall time expectation.
diff --git a/src/main/java/net/minecraft/server/TileEntityFurnace.java b/src/main/java/net/minecraft/server/TileEntityFurnace.java
index 886a73e9..7a142810 100644
index 886a73e93..7a1428105 100644
--- a/src/main/java/net/minecraft/server/TileEntityFurnace.java
+++ b/src/main/java/net/minecraft/server/TileEntityFurnace.java
@@ -165,7 +165,7 @@ public class TileEntityFurnace extends TileEntityContainer implements ITickable,
@ -22,5 +22,5 @@ index 886a73e9..7a142810 100644
this.burn();
flag1 = true;
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From cc98c3d6d2a78be363dccfc73b395cc82d52810d Mon Sep 17 00:00:00 2001
From 841254f7471189b0be7020ad4f65eea1c697d2c1 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 28 May 2015 23:00:19 -0400
Subject: [PATCH] Handle Item Meta Inconsistencies

View File

@ -1,4 +1,4 @@
From 13b6f5ac556822bec0916f8ef59f0f4a5ad15713 Mon Sep 17 00:00:00 2001
From 5086a12a999a530288262ae057cd49229bce127c Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 15:12:22 -0400
Subject: [PATCH] Configurable Non Player Arrow Despawn Rate
@ -24,7 +24,7 @@ index faacd86ba..f71580393 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityArrow.java b/src/main/java/net/minecraft/server/EntityArrow.java
index 3ff8b96f1..f55eb654b 100644
index 584782adb..86836a5d0 100644
--- a/src/main/java/net/minecraft/server/EntityArrow.java
+++ b/src/main/java/net/minecraft/server/EntityArrow.java
@@ -157,7 +157,7 @@ public abstract class EntityArrow extends Entity implements IProjectile {
@ -37,5 +37,5 @@ index 3ff8b96f1..f55eb654b 100644
}
}
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From c86880704c90a04a4f7a660823757fea8f2a7f0c Mon Sep 17 00:00:00 2001
From 9f9ec804809dd8bf00e6cbb2c633594403f24a29 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 20:16:03 -0400
Subject: [PATCH] Add World Util Methods
@ -6,10 +6,10 @@ Subject: [PATCH] Add World Util Methods
Methods that can be used for other patches to help improve logic.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index cc4a9dbe6..84a880561 100644
index 0788f7712..57b23a018 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -581,6 +581,7 @@ public class Chunk {
@@ -610,6 +610,7 @@ public class Chunk {
}
@ -119,5 +119,5 @@ index 6be9c1815..b8ae41704 100644
// CraftBukkit start - tree generation
if (captureTreeGeneration) {
--
2.17.1
2.18.0

View File

@ -1,4 +1,4 @@
From c2a48e1b1cab73dacad11ef4a38c1907bae4c4a8 Mon Sep 17 00:00:00 2001
From 48a4571e79ab35c95bf6266573c1edcb1a07dfa0 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 18 Mar 2016 21:22:56 -0400
Subject: [PATCH] Optimized Light Level Comparisons
@ -8,7 +8,7 @@ Use an optimized method to test if a block position meets a desired light level.
This method benefits from returning as soon as the desired light level matches.
diff --git a/src/main/java/net/minecraft/server/BlockCrops.java b/src/main/java/net/minecraft/server/BlockCrops.java
index c0b88580..55ed0c95 100644
index c0b88580c..55ed0c956 100644
--- a/src/main/java/net/minecraft/server/BlockCrops.java
+++ b/src/main/java/net/minecraft/server/BlockCrops.java
@@ -48,7 +48,7 @@ public class BlockCrops extends BlockPlant implements IBlockFragilePlantElement
@ -21,7 +21,7 @@ index c0b88580..55ed0c95 100644
if (i < this.g()) {
diff --git a/src/main/java/net/minecraft/server/BlockGrass.java b/src/main/java/net/minecraft/server/BlockGrass.java
index fe55848b..8fc736d6 100644
index fe55848be..8fc736d6a 100644
--- a/src/main/java/net/minecraft/server/BlockGrass.java
+++ b/src/main/java/net/minecraft/server/BlockGrass.java
@@ -29,7 +29,8 @@ public class BlockGrass extends Block implements IBlockFragilePlantElement {
@ -65,7 +65,7 @@ index fe55848b..8fc736d6 100644
// world.setTypeUpdate(blockposition1, Blocks.GRASS.getBlockData());
org.bukkit.World bworld = world.getWorld();
diff --git a/src/main/java/net/minecraft/server/BlockSapling.java b/src/main/java/net/minecraft/server/BlockSapling.java
index 6d0f4c15..3bbb123b 100644
index 6d0f4c156..3bbb123bc 100644
--- a/src/main/java/net/minecraft/server/BlockSapling.java
+++ b/src/main/java/net/minecraft/server/BlockSapling.java
@@ -34,7 +34,7 @@ public class BlockSapling extends BlockPlant implements IBlockFragilePlantElemen
@ -78,7 +78,7 @@ index 6d0f4c15..3bbb123b 100644
world.captureTreeGeneration = true;
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/BlockStem.java b/src/main/java/net/minecraft/server/BlockStem.java
index f12987c8..5ae7bd9d 100644
index f12987c84..5ae7bd9df 100644
--- a/src/main/java/net/minecraft/server/BlockStem.java
+++ b/src/main/java/net/minecraft/server/BlockStem.java
@@ -48,7 +48,7 @@ public class BlockStem extends BlockPlant implements IBlockFragilePlantElement {
@ -91,7 +91,7 @@ index f12987c8..5ae7bd9d 100644
if (random.nextInt((int) ((100.0F / (this == Blocks.PUMPKIN_STEM ? world.spigotConfig.pumpkinModifier : world.spigotConfig.melonModifier)) * (25.0F / f)) + 1) == 0) { // Spigot
diff --git a/src/main/java/net/minecraft/server/EntityMonster.java b/src/main/java/net/minecraft/server/EntityMonster.java
index 0f55cf51..8782bce5 100644
index 0f55cf515..8782bce56 100644
--- a/src/main/java/net/minecraft/server/EntityMonster.java
+++ b/src/main/java/net/minecraft/server/EntityMonster.java
@@ -118,17 +118,17 @@ public abstract class EntityMonster extends EntityCreature implements IMonster {
@ -118,7 +118,7 @@ index 0f55cf51..8782bce5 100644
}
diff --git a/src/main/java/net/minecraft/server/EntityZombie.java b/src/main/java/net/minecraft/server/EntityZombie.java
index 277f1414..6111ca0b 100644
index 277f1414a..6111ca0b2 100644
--- a/src/main/java/net/minecraft/server/EntityZombie.java
+++ b/src/main/java/net/minecraft/server/EntityZombie.java
@@ -178,7 +178,7 @@ public class EntityZombie extends EntityMonster {
@ -131,5 +131,5 @@ index 277f1414..6111ca0b 100644
if (!this.world.isPlayerNearby((double) i1, (double) j1, (double) k1, 7.0D) && this.world.a(entityzombie.getBoundingBox(), (Entity) entityzombie) && this.world.getCubes(entityzombie, entityzombie.getBoundingBox()).isEmpty() && !this.world.containsLiquid(entityzombie.getBoundingBox())) {
this.world.addEntity(entityzombie, CreatureSpawnEvent.SpawnReason.REINFORCEMENTS); // CraftBukkit
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 78ae8cc0f56bec8e4fa7d851fe63fb846d7b3ec7 Mon Sep 17 00:00:00 2001
From dd7c164ead24c4f2b19d7d110e07ab96c037e83d Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sat, 19 Mar 2016 15:16:54 -0400
Subject: [PATCH] Pass world to Village creation
@ -6,7 +6,7 @@ Subject: [PATCH] Pass world to Village creation
fixes NPE bug #95
diff --git a/src/main/java/net/minecraft/server/PersistentVillage.java b/src/main/java/net/minecraft/server/PersistentVillage.java
index a5b79eca..01f7cee3 100644
index a5b79ecad..01f7cee38 100644
--- a/src/main/java/net/minecraft/server/PersistentVillage.java
+++ b/src/main/java/net/minecraft/server/PersistentVillage.java
@@ -238,7 +238,7 @@ public class PersistentVillage extends PersistentBase {
@ -19,7 +19,7 @@ index a5b79eca..01f7cee3 100644
village.a(nbttagcompound1);
this.villages.add(village);
diff --git a/src/main/java/net/minecraft/server/Village.java b/src/main/java/net/minecraft/server/Village.java
index fb52785b..2eb33a98 100644
index fb52785b9..2eb33a986 100644
--- a/src/main/java/net/minecraft/server/Village.java
+++ b/src/main/java/net/minecraft/server/Village.java
@@ -24,7 +24,7 @@ public class Village {
@ -32,5 +32,5 @@ index fb52785b..2eb33a98 100644
this.d = BlockPosition.ZERO;
this.j = Maps.newHashMap();
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From c0852484004f5469a55cf7b701da774014ff4b72 Mon Sep 17 00:00:00 2001
From 6aca1eb30fa703436f9e195e2a3b17c38c223f15 Mon Sep 17 00:00:00 2001
From: Jedediah Smith <jedediah@silencegreys.com>
Date: Sun, 21 Jun 2015 15:07:20 -0400
Subject: [PATCH] Custom replacement for eaten items
@ -46,5 +46,5 @@ index 2aaeac324..7e2cc66d7 100644
}
--
2.16.2
2.18.0

View File

@ -1,4 +1,4 @@
From 73ac346074556ad06db864c7e3667a6b7f6fbb4f Mon Sep 17 00:00:00 2001
From 558a45afb1073046cc7943652e9a7b4190d0fec7 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sun, 27 Sep 2015 01:18:02 -0400
Subject: [PATCH] handle NaN health/absorb values and repair bad data
@ -56,5 +56,5 @@ index 45b11d87c..aa7751059 100644
}
--
2.16.2
2.18.0

View File

@ -1,11 +1,11 @@
From 42feef1fd45b5b935b0bbb322e3d3e48abc66249 Mon Sep 17 00:00:00 2001
From c5c1acfc51996231112a7702df7839efa938e2fe Mon Sep 17 00:00:00 2001
From: Daniel Ennis <dennis@icontact.com>
Date: Sun, 20 Mar 2016 15:22:42 -0400
Subject: [PATCH] Catch Async PlayerChunkMap operations
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index 9627a9be..ad1d90b5 100644
index 9627a9be0..ad1d90b56 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -469,10 +469,12 @@ public class PlayerChunkMap {
@ -22,5 +22,5 @@ index 9627a9be..ad1d90b5 100644
long i = d(chunkcoordintpair.x, chunkcoordintpair.z);
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From 9915d4088a02b715b36eda4b090a09fbb55abca3 Mon Sep 17 00:00:00 2001
From 0e1114be5240770f53eb77187b73f603f8f168cb Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Mon, 21 Mar 2016 00:19:18 -0500
Subject: [PATCH] Support offline mode in whitelist command as well
diff --git a/src/main/java/net/minecraft/server/CommandWhitelist.java b/src/main/java/net/minecraft/server/CommandWhitelist.java
index c74d1d2b..0f4237db 100644
index c74d1d2be..0f4237db1 100644
--- a/src/main/java/net/minecraft/server/CommandWhitelist.java
+++ b/src/main/java/net/minecraft/server/CommandWhitelist.java
@@ -44,24 +44,35 @@ public class CommandWhitelist extends CommandAbstract {
@ -89,5 +89,5 @@ index c74d1d2b..0f4237db 100644
+ // Paper end
}
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 663e46ea293a61a6023798fb9af8cd00b646f086 Mon Sep 17 00:00:00 2001
From b0ea83e0b72ee47162d2950eb74ac94b5faede08 Mon Sep 17 00:00:00 2001
From: Gabscap <git@gabscap.de>
Date: Sat, 19 Mar 2016 22:25:11 +0100
Subject: [PATCH] Waving banner workaround
@ -6,7 +6,7 @@ Subject: [PATCH] Waving banner workaround
This patch is a workaround for MC-63720
diff --git a/src/main/java/net/minecraft/server/PacketPlayOutUpdateTime.java b/src/main/java/net/minecraft/server/PacketPlayOutUpdateTime.java
index c5c3f40c..6413f76e 100644
index c5c3f40ce..6413f76e7 100644
--- a/src/main/java/net/minecraft/server/PacketPlayOutUpdateTime.java
+++ b/src/main/java/net/minecraft/server/PacketPlayOutUpdateTime.java
@@ -4,7 +4,13 @@ import java.io.IOException;
@ -34,5 +34,5 @@ index c5c3f40c..6413f76e 100644
public void a(PacketDataSerializer packetdataserializer) throws IOException {
--
2.16.2
2.18.0

View File

@ -1,4 +1,4 @@
From 4e97c2e91c2a77de52a2dcdd5cfe5fd4185d835b Mon Sep 17 00:00:00 2001
From 95dfc2d6b2593ea2603bc30932824b855b8bb672 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 22 Mar 2016 00:33:47 -0400
Subject: [PATCH] Use a Shared Random for Entities
@ -6,10 +6,10 @@ Subject: [PATCH] Use a Shared Random for Entities
Reduces memory usage and provides ensures more randomness, Especially since a lot of garbage entity objects get created.
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 9a1cac84..05d764fa 100644
index b4ad611fc..4a08db5ba 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -46,6 +46,7 @@ public abstract class Entity implements ICommandListener {
@@ -46,6 +46,7 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
// CraftBukkit start
private static final int CURRENT_LEVEL = 2;
@ -17,7 +17,7 @@ index 9a1cac84..05d764fa 100644
static boolean isLevelAtLeast(NBTTagCompound tag, int level) {
return tag.hasKey("Bukkit.updateLevel") && tag.getInt("Bukkit.updateLevel") >= level;
}
@@ -171,7 +172,7 @@ public abstract class Entity implements ICommandListener {
@@ -171,7 +172,7 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
this.length = 1.8F;
this.ax = 1;
this.ay = 1.0F;
@ -27,5 +27,5 @@ index 9a1cac84..05d764fa 100644
this.justCreated = true;
this.uniqueID = MathHelper.a(this.random);
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From ce02c4c108a6e9e282badb7ff325afa7f67e3d80 Mon Sep 17 00:00:00 2001
From 6e950d7d4b2c87219dfecf46db8af308e8679023 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Tue, 22 Mar 2016 00:55:23 -0400
Subject: [PATCH] Don't teleport dead entities
@ -7,10 +7,10 @@ Had some issue with this in past, and this is the vanilla logic.
Potentially an old CB change that's no longer needed.
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index 776e931c1..e1e918b21 100644
index 4a08db5ba..d4ab5fba9 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -2355,7 +2355,7 @@ public abstract class Entity implements ICommandListener {
@@ -2374,7 +2374,7 @@ public abstract class Entity implements ICommandListener, KeyedObject { // Paper
}
public Entity teleportTo(Location exit, boolean portal) {
@ -20,5 +20,5 @@ index 776e931c1..e1e918b21 100644
WorldServer worldserver1 = ((CraftWorld) exit.getWorld()).getHandle();
int i = worldserver1.dimension;
--
2.17.0
2.18.0

View File

@ -1,4 +1,4 @@
From 2d8186c30c160fea877ea00f58a79ad891196543 Mon Sep 17 00:00:00 2001
From 4f5d96217a3ec5d72b3f19f874b53fd13d506b97 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 27 Aug 2015 01:15:02 -0400
Subject: [PATCH] Optimize Chunk Access
@ -42,5 +42,5 @@ index 4e7e8e5fd..1771a1794 100644
public ChunkProviderServer(WorldServer worldserver, IChunkLoader ichunkloader, ChunkGenerator chunkgenerator) {
--
2.17.0
2.18.0

View File

@ -1,4 +1,4 @@
From b5dd5139dd221c0f8622f60b89654a3e70c58149 Mon Sep 17 00:00:00 2001
From 058e5610e2eb40aa6c0e06b8dabe6cb5b8d99d4c Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Tue, 22 Mar 2016 12:04:28 -0500
Subject: [PATCH] Configurable spawn chances for skeleton horses
@ -32,5 +32,5 @@ index d0ff0adf5..96792300c 100644
entityhorseskeleton.p(true);
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 0f9c4b3b846e4d401e0a54b02275a552e095993b Mon Sep 17 00:00:00 2001
From 72e8da5083dce12fb49c57cebbab6ea0b7230f45 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 3 Mar 2016 02:07:55 -0600
Subject: [PATCH] Optimize isValidLocation, getType and getBlockData for inling
@ -52,10 +52,10 @@ index 67b476b22..008ed206d 100644
public MutableBlockPosition() {
this(0, 0, 0);
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 84a880561..172d00bdc 100644
index 57b23a018..bf3b64e37 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -406,11 +406,27 @@ public class Chunk {
@@ -435,11 +435,27 @@ public class Chunk {
return this.a(i, j, k).c();
}
@ -99,7 +99,7 @@ index 3d784d0dc..afdc4a779 100644
private NibbleArray skyLight;
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 9339bf83a..a20c9810f 100644
index b8ae41704..8f0a306cc 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -277,12 +277,12 @@ public abstract class World implements IBlockAccess {
@ -256,5 +256,5 @@ index 9339bf83a..a20c9810f 100644
} else {
Chunk chunk = this.chunkProvider.getLoadedChunkAt(blockposition.getX() >> 4, blockposition.getZ() >> 4);
--
2.17.0
2.18.0

View File

@ -1,11 +1,11 @@
From 95d1ad0c392010288eab3405f471248e8b91ca93 Mon Sep 17 00:00:00 2001
From 884edba128e9ff9052944693982a7fab7f95df65 Mon Sep 17 00:00:00 2001
From: Jedediah Smith <jedediah@silencegreys.com>
Date: Tue, 1 Mar 2016 04:32:08 -0500
Subject: [PATCH] Fix cooked fish legacy import
diff --git a/src/main/java/net/minecraft/server/DataConverterMaterialId.java b/src/main/java/net/minecraft/server/DataConverterMaterialId.java
index 87b82eb3..a7c71f40 100644
index 87b82eb35..a7c71f406 100644
--- a/src/main/java/net/minecraft/server/DataConverterMaterialId.java
+++ b/src/main/java/net/minecraft/server/DataConverterMaterialId.java
@@ -261,7 +261,7 @@ public class DataConverterMaterialId implements IDataConverter {
@ -18,5 +18,5 @@ index 87b82eb3..a7c71f40 100644
DataConverterMaterialId.a[352] = "minecraft:bone";
DataConverterMaterialId.a[353] = "minecraft:sugar";
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From bf706ec07b796e1b09610c8e0231e4631bf11bd5 Mon Sep 17 00:00:00 2001
From b0fe7f64b1dfc8d800070d347cda11ea6f146773 Mon Sep 17 00:00:00 2001
From: Jedediah Smith <jedediah@silencegreys.com>
Date: Sun, 20 Mar 2016 06:45:01 -0400
Subject: [PATCH] Access items by EquipmentSlot
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java
index 67c54899..3f58c34e 100644
index 67c54899d..3f58c34e0 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryPlayer.java
@@ -267,4 +267,54 @@ public class CraftInventoryPlayer extends CraftInventory implements org.bukkit.i
@ -64,5 +64,5 @@ index 67c54899..3f58c34e 100644
+ // Paper end
}
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From 8f7efee55b677903cf40c93b21b00163a9e8b1e1 Mon Sep 17 00:00:00 2001
From 29ffb89527cbf4bc5312c099877f79a4808b54dc Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Sun, 27 Mar 2016 20:24:05 -0500
Subject: [PATCH] Check async, remove unused vars, GH-159
diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java
index 68a04532..45a83ae9 100644
index 68a045323..45a83ae99 100644
--- a/src/main/java/net/minecraft/server/SpawnerCreature.java
+++ b/src/main/java/net/minecraft/server/SpawnerCreature.java
@@ -40,6 +40,7 @@ public final class SpawnerCreature {
@ -28,5 +28,5 @@ index 68a04532..45a83ae9 100644
if ((mobcnt = getEntityCount(worldserver, enumcreaturetype.a())) <= limit * i / 256) {
BlockPosition.MutableBlockPosition blockposition_mutableblockposition = new BlockPosition.MutableBlockPosition();
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 43603ffdc597090900d1a6243f17282846427add Mon Sep 17 00:00:00 2001
From d03b75f5e4ea7e6ff34ebc7651c9a86e2550c6ef Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 28 Mar 2016 19:55:45 -0400
Subject: [PATCH] Option to disable BlockPhysicsEvent for Redstone
@ -25,7 +25,7 @@ index 38d664e00..e634c3afd 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 93257a38e..d8d1a4c77 100644
index 8f0a306cc..74ae80646 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -582,7 +582,7 @@ public abstract class World implements IBlockAccess {
@ -67,5 +67,5 @@ index 96792300c..ebe397116 100644
timing.stopTiming(); // Paper
} else {
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From c656be4ffec7d9daac8f8278ecf04bb13b568744 Mon Sep 17 00:00:00 2001
From 3ed61703830d84e115bc1a5b009e756735ce2ee7 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 28 Mar 2016 20:32:58 -0400
Subject: [PATCH] Entity AddTo/RemoveFrom World Events
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 03f07677..97499aeb 100644
index 74ae80646..119cd0636 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1185,6 +1185,7 @@ public abstract class World implements IBlockAccess {
@ -25,5 +25,5 @@ index 03f07677..97499aeb 100644
}
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From a85c4e1bb03849fd93ad1bbc0fafb823b8e086f3 Mon Sep 17 00:00:00 2001
From e2eb0375f3b5fa6b9d074ee6d8551732eb8e37a7 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 28 Mar 2016 20:46:14 -0400
Subject: [PATCH] Configurable Chunk Inhabited Timer
@ -23,10 +23,10 @@ index e634c3afd..54f23ea75 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 172d00bdc..300a56191 100644
index bf3b64e37..6b13e1d7d 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -1408,7 +1408,7 @@ public class Chunk {
@@ -1445,7 +1445,7 @@ public class Chunk {
}
public long x() {
@ -36,5 +36,5 @@ index 172d00bdc..300a56191 100644
public void c(long i) {
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From c0bd0c65c216796321650a58bd0fd505ef23406b Mon Sep 17 00:00:00 2001
From 341c685efb02986f52f829c1a7c56357ce0ad071 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 28 Mar 2016 21:22:26 -0400
Subject: [PATCH] EntityPathfindEvent
@ -6,7 +6,7 @@ Subject: [PATCH] EntityPathfindEvent
Fires when an Entity decides to start moving to a location.
diff --git a/src/main/java/net/minecraft/server/NavigationAbstract.java b/src/main/java/net/minecraft/server/NavigationAbstract.java
index cc44d30b..3ac6f84d 100644
index cc44d30b5..3ac6f84d3 100644
--- a/src/main/java/net/minecraft/server/NavigationAbstract.java
+++ b/src/main/java/net/minecraft/server/NavigationAbstract.java
@@ -4,7 +4,7 @@ import javax.annotation.Nullable;
@ -35,5 +35,5 @@ index cc44d30b..3ac6f84d 100644
float f = this.i();
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 430494f70a3e392c7c90dc61bea75e6aea263c38 Mon Sep 17 00:00:00 2001
From 8a9b221bcd755747f0e03bb84f9ba7403eaac7fd Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 28 Mar 2016 22:03:09 -0400
Subject: [PATCH] Prevent Waterflow BlockFromToEvent from loading chunks
@ -12,7 +12,7 @@ of unloaded chunks anyways.
This keeps behavior consistent, vs inconsistent flowing based on plugin triggered loads.
diff --git a/src/main/java/net/minecraft/server/BlockFlowing.java b/src/main/java/net/minecraft/server/BlockFlowing.java
index 739b9aac..ff90e08e 100644
index 739b9aac3..ff90e08eb 100644
--- a/src/main/java/net/minecraft/server/BlockFlowing.java
+++ b/src/main/java/net/minecraft/server/BlockFlowing.java
@@ -96,6 +96,7 @@ public class BlockFlowing extends BlockFluids {
@ -48,5 +48,5 @@ index 739b9aac..ff90e08e 100644
if (this.material == Material.LAVA) {
this.fizz(world, blockposition);
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From 3f1afe5e7b801093fabae4b6a17daeecd27e258c Mon Sep 17 00:00:00 2001
From b4237ef0e075d98a14b87bfd673d34b96cb1d966 Mon Sep 17 00:00:00 2001
From: Antony Riley <antony@cyberiantiger.org>
Date: Tue, 29 Mar 2016 06:56:23 +0300
Subject: [PATCH] Reduce IO ops opening a new region file.
diff --git a/src/main/java/net/minecraft/server/RegionFile.java b/src/main/java/net/minecraft/server/RegionFile.java
index 5bcbd718..2bd85e2d 100644
index 5bcbd718f..2bd85e2d1 100644
--- a/src/main/java/net/minecraft/server/RegionFile.java
+++ b/src/main/java/net/minecraft/server/RegionFile.java
@@ -8,9 +8,12 @@ import java.io.ByteArrayInputStream;
@ -49,5 +49,5 @@ index 5bcbd718..2bd85e2d 100644
}
} catch (IOException ioexception) {
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From 30fa5aba6e6c64938c45d420e8856c3fefdf3e58 Mon Sep 17 00:00:00 2001
From cd7e6fdcb9ae8a70617251f82975bb67c14d51a0 Mon Sep 17 00:00:00 2001
From: Antony Riley <antony@cyberiantiger.org>
Date: Tue, 29 Mar 2016 08:22:55 +0300
Subject: [PATCH] Sanitise RegionFileCache and make configurable.
@ -11,7 +11,7 @@ The implementation uses a LinkedHashMap as an LRU cache (modified from HashMap).
The maximum size of the RegionFileCache is also made configurable.
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 2f6e169f..ec464338 100644
index 2f6e169f5..ec4643384 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -215,4 +215,9 @@ public class PaperConfig {
@ -25,7 +25,7 @@ index 2f6e169f..ec464338 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/RegionFileCache.java b/src/main/java/net/minecraft/server/RegionFileCache.java
index 5f9e9dde..7e756580 100644
index 5f9e9ddef..7e7565807 100644
--- a/src/main/java/net/minecraft/server/RegionFileCache.java
+++ b/src/main/java/net/minecraft/server/RegionFileCache.java
@@ -8,10 +8,12 @@ import java.io.File;
@ -77,5 +77,5 @@ index 5f9e9dde..7e756580 100644
Iterator iterator = RegionFileCache.a.values().iterator();
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From f2a16d213b5259477eb5bdb9790116c5a627b13b Mon Sep 17 00:00:00 2001
From d97129376d57c631b43c07d37bf8bc5af9081036 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 30 Mar 2016 02:13:24 -0400
Subject: [PATCH] Use Optimized Collections
@ -13,7 +13,7 @@ These collections are super fast as seen
http://java-performance.info/hashmap-overview-jdk-fastutil-goldman-sachs-hppc-koloboke-trove-january-2015/
diff --git a/src/main/java/net/minecraft/server/DataWatcher.java b/src/main/java/net/minecraft/server/DataWatcher.java
index 1507f97f..fe848445 100644
index 1507f97fd..fe8484453 100644
--- a/src/main/java/net/minecraft/server/DataWatcher.java
+++ b/src/main/java/net/minecraft/server/DataWatcher.java
@@ -12,6 +12,7 @@ import java.util.Map;
@ -34,5 +34,5 @@ index 1507f97f..fe848445 100644
private boolean f = true;
private boolean g;
--
2.14.3
2.18.0

View File

@ -1,4 +1,4 @@
From bbb44b54bb0a777d7b3907688af0cf057396d725 Mon Sep 17 00:00:00 2001
From e684a193f95395b7881bd0d96a1961ac00aa40b9 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 31 Mar 2016 19:17:58 -0400
Subject: [PATCH] Do not load chunks for light checks
@ -7,7 +7,7 @@ Should only happen for blocks on the edge that uses neighbors light level
(certain blocks). In that case, there will be 3-4 other neighbors to get a light level from.
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 97499aeb..279f0a26 100644
index 119cd0636..5d5003920 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -764,6 +764,7 @@ public abstract class World implements IBlockAccess {
@ -19,5 +19,5 @@ index 97499aeb..279f0a26 100644
Chunk chunk = this.getChunkAtWorldCoords(blockposition);
--
2.14.3
2.18.0

View File

@ -1,11 +1,11 @@
From 53c71782706b642bce798cd5af6b32cea8bd2ecd Mon Sep 17 00:00:00 2001
From 7ab10243bd61164ab6a53c0753019ad649d244ce Mon Sep 17 00:00:00 2001
From: Jedediah Smith <jedediah@silencegreys.com>
Date: Sat, 2 Apr 2016 05:09:16 -0400
Subject: [PATCH] Add PlayerUseUnknownEntityEvent
diff --git a/src/main/java/net/minecraft/server/PacketPlayInUseEntity.java b/src/main/java/net/minecraft/server/PacketPlayInUseEntity.java
index c67cb54a..521f4626 100644
index c67cb54a3..521f46262 100644
--- a/src/main/java/net/minecraft/server/PacketPlayInUseEntity.java
+++ b/src/main/java/net/minecraft/server/PacketPlayInUseEntity.java
@@ -5,7 +5,7 @@ import javax.annotation.Nullable;
@ -18,7 +18,7 @@ index c67cb54a..521f4626 100644
private Vec3D c;
private EnumHand d;
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 5cc5dbcd..70fb4f6b 100644
index e1b85ebae..7c708a0de 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -1657,6 +1657,16 @@ public class PlayerConnection implements PacketListenerPlayIn, ITickable {
@ -39,5 +39,5 @@ index 5cc5dbcd..70fb4f6b 100644
}
--
2.14.3
2.18.0

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