3
0
Mirror von https://github.com/PaperMC/Paper.git synchronisiert 2024-12-15 02:50:09 +01:00

Update Upstream

Dieser Commit ist enthalten in:
Aikar 2018-07-21 16:03:10 -04:00
Ursprung ff4ae7b05e
Commit dc8f516424
Es konnte kein GPG-Schlüssel zu dieser Signatur gefunden werden
GPG-Schlüssel-ID: 401ADFC9891FAAFE
23 geänderte Dateien mit 165 neuen und 149 gelöschten Zeilen

Datei anzeigen

@ -1,4 +1,4 @@
From 59a7ce865916d62eafb935fa6317d16938e28df7 Mon Sep 17 00:00:00 2001
From 3586286523db67ea246cf1e37a9693b8c6f902c6 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
@ -6,7 +6,7 @@ Subject: [PATCH] Timings v2
diff --git a/src/main/java/co/aikar/timings/MinecraftTimings.java b/src/main/java/co/aikar/timings/MinecraftTimings.java
new file mode 100644
index 0000000000..4f624e39c7
index 000000000..4f624e39c
--- /dev/null
+++ b/src/main/java/co/aikar/timings/MinecraftTimings.java
@@ -0,0 +1,125 @@
@ -137,7 +137,7 @@ index 0000000000..4f624e39c7
+}
diff --git a/src/main/java/co/aikar/timings/TimedChunkGenerator.java b/src/main/java/co/aikar/timings/TimedChunkGenerator.java
new file mode 100644
index 0000000000..0bb63600f3
index 000000000..0bb63600f
--- /dev/null
+++ b/src/main/java/co/aikar/timings/TimedChunkGenerator.java
@@ -0,0 +1,180 @@
@ -323,7 +323,7 @@ index 0000000000..0bb63600f3
+}
diff --git a/src/main/java/co/aikar/timings/WorldTimingsHandler.java b/src/main/java/co/aikar/timings/WorldTimingsHandler.java
new file mode 100644
index 0000000000..145cb274b0
index 000000000..145cb274b
--- /dev/null
+++ b/src/main/java/co/aikar/timings/WorldTimingsHandler.java
@@ -0,0 +1,104 @@
@ -432,7 +432,7 @@ index 0000000000..145cb274b0
+ }
+}
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index 5ab2cf6eec..b5795b6d34 100644
index 5ab2cf6ee..b5795b6d3 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -14,11 +14,14 @@ import java.util.concurrent.TimeUnit;
@ -476,7 +476,7 @@ index 5ab2cf6eec..b5795b6d34 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Block.java b/src/main/java/net/minecraft/server/Block.java
index ffb91b27b0..ff110c8e95 100644
index ffb91b27b..ff110c8e9 100644
--- a/src/main/java/net/minecraft/server/Block.java
+++ b/src/main/java/net/minecraft/server/Block.java
@@ -29,8 +29,17 @@ public class Block implements IMaterial {
@ -500,7 +500,7 @@ index ffb91b27b0..ff110c8e95 100644
Object2ByteLinkedOpenHashMap object2bytelinkedopenhashmap = new Object2ByteLinkedOpenHashMap(200) {
protected void rehash(int i) {}
diff --git a/src/main/java/net/minecraft/server/ChunkMap.java b/src/main/java/net/minecraft/server/ChunkMap.java
index 5164e5c928..0c2386f5ec 100644
index 5164e5c92..0c2386f5e 100644
--- a/src/main/java/net/minecraft/server/ChunkMap.java
+++ b/src/main/java/net/minecraft/server/ChunkMap.java
@@ -14,6 +14,7 @@ public class ChunkMap extends Long2ObjectOpenHashMap<Chunk> {
@ -531,7 +531,7 @@ index 5164e5c928..0c2386f5ec 100644
return chunk1;
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index 0296d3ef02..badfe86b22 100644
index 0296d3ef0..badfe86b2 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -221,7 +221,7 @@ public class ChunkProviderServer implements IChunkProvider {
@ -544,7 +544,7 @@ index 0296d3ef02..badfe86b22 100644
this.chunkLoader.saveChunk(this.world, ichunkaccess, unloaded); // Spigot
} catch (IOException ioexception) {
diff --git a/src/main/java/net/minecraft/server/ChunkRegionLoader.java b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
index 90d8571053..3a0e52d882 100644
index 90d857105..3a0e52d88 100644
--- a/src/main/java/net/minecraft/server/ChunkRegionLoader.java
+++ b/src/main/java/net/minecraft/server/ChunkRegionLoader.java
@@ -1,5 +1,6 @@
@ -591,7 +591,7 @@ index 90d8571053..3a0e52d882 100644
}
diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java
index 9155aa727d..a3d58b5ce5 100644
index 9155aa727..a3d58b5ce 100644
--- a/src/main/java/net/minecraft/server/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/DedicatedServer.java
@@ -29,7 +29,7 @@ import org.apache.logging.log4j.Level;
@ -644,7 +644,7 @@ index 9155aa727d..a3d58b5ce5 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 7a17a4ff99..2ed362791b 100644
index 7a17a4ff9..2ed362791 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -29,7 +29,8 @@ import org.bukkit.command.CommandSender;
@ -683,7 +683,7 @@ index 7a17a4ff99..2ed362791b 100644
protected float ab() {
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 3c1adeea65..d7a8a82a6a 100644
index b6dd6dc5d..f1840f4fa 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -32,7 +32,7 @@ import org.bukkit.event.entity.EntityTeleportEvent;
@ -695,7 +695,7 @@ index 3c1adeea65..d7a8a82a6a 100644
public abstract class EntityLiving extends Entity {
@@ -1982,7 +1982,6 @@ public abstract class EntityLiving extends Entity {
@@ -1984,7 +1984,6 @@ public abstract class EntityLiving extends Entity {
}
public void tick() {
@ -703,7 +703,7 @@ index 3c1adeea65..d7a8a82a6a 100644
super.tick();
this.cU();
this.o();
@@ -2056,9 +2055,7 @@ public abstract class EntityLiving extends Entity {
@@ -2058,9 +2057,7 @@ public abstract class EntityLiving extends Entity {
}
}
@ -713,7 +713,7 @@ index 3c1adeea65..d7a8a82a6a 100644
double d0 = this.locX - this.lastX;
double d1 = this.locZ - this.lastZ;
float f = (float) (d0 * d0 + d1 * d1);
@@ -2134,8 +2131,6 @@ public abstract class EntityLiving extends Entity {
@@ -2136,8 +2133,6 @@ public abstract class EntityLiving extends Entity {
} else {
this.bv = 0;
}
@ -722,7 +722,7 @@ index 3c1adeea65..d7a8a82a6a 100644
}
protected float e(float f, float f1) {
@@ -2205,7 +2200,6 @@ public abstract class EntityLiving extends Entity {
@@ -2207,7 +2202,6 @@ public abstract class EntityLiving extends Entity {
}
this.world.methodProfiler.a("ai");
@ -730,7 +730,7 @@ index 3c1adeea65..d7a8a82a6a 100644
if (this.isFrozen()) {
this.bg = false;
this.bh = 0.0F;
@@ -2216,7 +2210,6 @@ public abstract class EntityLiving extends Entity {
@@ -2218,7 +2212,6 @@ public abstract class EntityLiving extends Entity {
this.doTick();
this.world.methodProfiler.e();
}
@ -738,7 +738,7 @@ index 3c1adeea65..d7a8a82a6a 100644
this.world.methodProfiler.e();
this.world.methodProfiler.a("jump");
@@ -2241,9 +2234,7 @@ public abstract class EntityLiving extends Entity {
@@ -2243,9 +2236,7 @@ public abstract class EntityLiving extends Entity {
this.n();
AxisAlignedBB axisalignedbb = this.getBoundingBox();
@ -748,7 +748,7 @@ index 3c1adeea65..d7a8a82a6a 100644
this.world.methodProfiler.e();
this.world.methodProfiler.a("push");
if (this.bw > 0) {
@@ -2251,9 +2242,7 @@ public abstract class EntityLiving extends Entity {
@@ -2253,9 +2244,7 @@ public abstract class EntityLiving extends Entity {
this.a(axisalignedbb, this.getBoundingBox());
}
@ -759,7 +759,7 @@ index 3c1adeea65..d7a8a82a6a 100644
}
diff --git a/src/main/java/net/minecraft/server/EntityTracker.java b/src/main/java/net/minecraft/server/EntityTracker.java
index ae31935c48..70c9b1f50c 100644
index ae31935c4..70c9b1f50 100644
--- a/src/main/java/net/minecraft/server/EntityTracker.java
+++ b/src/main/java/net/minecraft/server/EntityTracker.java
@@ -168,7 +168,7 @@ public class EntityTracker {
@ -790,7 +790,7 @@ index ae31935c48..70c9b1f50c 100644
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index bcdd9e0fa4..590eb507c0 100644
index d813c72e1..61ec088d2 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1,5 +1,6 @@
@ -944,7 +944,7 @@ index bcdd9e0fa4..590eb507c0 100644
this.methodProfiler.e();
}
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index ac6d8cc6e6..d975c2ccf1 100644
index ac6d8cc6e..d975c2ccf 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -1,5 +1,6 @@
@ -1038,7 +1038,7 @@ index ac6d8cc6e6..d975c2ccf1 100644
}
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 6f21b01a83..359aa3997a 100644
index 6f21b01a8..359aa3997 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -57,6 +57,7 @@ import org.bukkit.inventory.CraftingInventory;
@ -1077,7 +1077,7 @@ index 6f21b01a83..359aa3997a 100644
// this.minecraftServer.getCommandDispatcher().a(this.player.getCommandListener(), s);
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/PlayerConnectionUtils.java b/src/main/java/net/minecraft/server/PlayerConnectionUtils.java
index 889b32287e..69da194f52 100644
index 889b32287..69da194f5 100644
--- a/src/main/java/net/minecraft/server/PlayerConnectionUtils.java
+++ b/src/main/java/net/minecraft/server/PlayerConnectionUtils.java
@@ -1,11 +1,17 @@
@ -1100,7 +1100,7 @@ index 889b32287e..69da194f52 100644
throw CancelledPacketHandleException.INSTANCE;
}
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
index 0156175fb8..1e3dd22e5a 100644
index 0156175fb..1e3dd22e5 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -1,5 +1,6 @@
@ -1124,7 +1124,7 @@ index 0156175fb8..1e3dd22e5a 100644
public WhiteList getWhitelist() {
diff --git a/src/main/java/net/minecraft/server/TickListServer.java b/src/main/java/net/minecraft/server/TickListServer.java
index a07895935e..ee5c2421bb 100644
index a07895935..ee5c2421b 100644
--- a/src/main/java/net/minecraft/server/TickListServer.java
+++ b/src/main/java/net/minecraft/server/TickListServer.java
@@ -24,13 +24,19 @@ public class TickListServer<T> implements TickList<T> {
@ -1178,7 +1178,7 @@ index a07895935e..ee5c2421bb 100644
}
diff --git a/src/main/java/net/minecraft/server/TileEntity.java b/src/main/java/net/minecraft/server/TileEntity.java
index b992360ac2..5b7f6ca84c 100644
index b992360ac..5b7f6ca84 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;
@ -1198,7 +1198,7 @@ index b992360ac2..5b7f6ca84c 100644
private final TileEntityTypes<?> e; public TileEntityTypes getTileEntityType() { return e; } // Paper - OBFHELPER
protected World world;
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 330ea4e72e..e6b916a5db 100644
index 330ea4e72..e6b916a5d 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1,5 +1,6 @@
@ -1313,7 +1313,7 @@ index 330ea4e72e..e6b916a5db 100644
public boolean a(@Nullable Entity entity, VoxelShape voxelshape) {
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index cecc9bc623..271d75c48d 100644
index cecc9bc62..271d75c48 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -1,5 +1,6 @@
@ -1429,7 +1429,7 @@ index cecc9bc623..271d75c48d 100644
// CraftBukkit start
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 88766d30d8..d33f237b76 100644
index 60182cecf..33826231d 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1853,12 +1853,31 @@ public final class CraftServer implements Server {
@ -1466,7 +1466,7 @@ index 88766d30d8..d33f237b76 100644
org.spigotmc.RestartCommand.restart();
diff --git a/src/main/java/org/bukkit/craftbukkit/SpigotTimings.java b/src/main/java/org/bukkit/craftbukkit/SpigotTimings.java
deleted file mode 100644
index 4c8ab2bc97..0000000000
index 4c8ab2bc9..000000000
--- a/src/main/java/org/bukkit/craftbukkit/SpigotTimings.java
+++ /dev/null
@@ -1,174 +0,0 @@
@ -1645,7 +1645,7 @@ index 4c8ab2bc97..0000000000
- }
-}
diff --git a/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOProvider.java b/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOProvider.java
index 413dd35f06..52a8c48fa4 100644
index 413dd35f0..52a8c48fa 100644
--- a/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOProvider.java
+++ b/src/main/java/org/bukkit/craftbukkit/chunkio/ChunkIOProvider.java
@@ -1,6 +1,8 @@
@ -1681,7 +1681,7 @@ index 413dd35f06..52a8c48fa4 100644
public void callStage3(QueuedChunk queuedChunk, Chunk chunk, Runnable runnable) throws RuntimeException {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 0a2199b6a5..fad258f116 100644
index 0a2199b6a..fad258f11 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1665,6 +1665,12 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@ -1698,7 +1698,7 @@ index 0a2199b6a5..fad258f116 100644
public Player.Spigot spigot()
diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java
index f11bd7545f..93b9134d6e 100644
index f11bd7545..93b9134d6 100644
--- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java
+++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftScheduler.java
@@ -14,6 +14,7 @@ import java.util.concurrent.atomic.AtomicInteger;
@ -1774,7 +1774,7 @@ index f11bd7545f..93b9134d6e 100644
private boolean isReady(final int currentTick) {
diff --git a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java
index 7e7ce9a81b..46029ce246 100644
index 7e7ce9a81..46029ce24 100644
--- a/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java
+++ b/src/main/java/org/bukkit/craftbukkit/scheduler/CraftTask.java
@@ -1,8 +1,8 @@
@ -1856,7 +1856,7 @@ index 7e7ce9a81b..46029ce246 100644
- // Spigot end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftIconCache.java b/src/main/java/org/bukkit/craftbukkit/util/CraftIconCache.java
index e52ef47b78..3d90b34268 100644
index e52ef47b7..3d90b3426 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftIconCache.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftIconCache.java
@@ -5,6 +5,7 @@ import org.bukkit.util.CachedServerIcon;
@ -1868,7 +1868,7 @@ index e52ef47b78..3d90b34268 100644
this.value = value;
}
diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java
index e60fe5a920..f68e42c4d4 100644
index e60fe5a92..f68e42c4d 100644
--- a/src/main/java/org/spigotmc/ActivationRange.java
+++ b/src/main/java/org/spigotmc/ActivationRange.java
@@ -30,7 +30,7 @@ import net.minecraft.server.EntityWither;

Datei anzeigen

@ -1,4 +1,4 @@
From 8310c9fbbc16dd134af47991b8fd2b94ec6972f7 Mon Sep 17 00:00:00 2001
From b51264983f1041ab516cbc32f6973fe9615826bd 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,10 +12,10 @@ 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 4889a82a2..2e691b9f6 100644
index cba7c18f2..093190108 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -141,17 +141,13 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@@ -141,7 +141,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
public org.bukkit.command.ConsoleCommandSender console;
public org.bukkit.command.RemoteConsoleCommandSender remoteConsole;
public ConsoleReader reader;
@ -24,7 +24,8 @@ index 4889a82a2..2e691b9f6 100644
public final Thread primaryThread;
public java.util.Queue<Runnable> processQueue = new java.util.concurrent.ConcurrentLinkedQueue<Runnable>();
public int autosavePeriod;
public File bukkitDataPackFolder;
@@ -149,10 +149,6 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
public CommandDispatcher vanillaCommandDispatcher;
// CraftBukkit end
// Spigot start
- public static final int TPS = 20;
@ -148,7 +149,7 @@ index 4889a82a2..2e691b9f6 100644
}
lastTick = curTime;
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 34a07a7e7..6e152fe17 100644
index a1a0a9b34..f39ddbf09 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -1850,6 +1850,17 @@ public final class CraftServer implements Server {

Datei anzeigen

@ -1,11 +1,11 @@
From 615504d69426ef74c5f9e55af1daaa5e37221abd Mon Sep 17 00:00:00 2001
From 2c3fc9d8180148edd78d5ce513eb6bd792cf7d0c 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
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index 3626aa717d..be92c1af60 100644
index 3626aa717..be92c1af6 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -147,4 +147,9 @@ public class PaperWorldConfig {
@ -19,10 +19,10 @@ index 3626aa717d..be92c1af60 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index d7a8a82a6a..18dd06980f 100644
index f1840f4fa..17955d0f7 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -1002,6 +1002,7 @@ public abstract class EntityLiving extends Entity {
@@ -1004,6 +1004,7 @@ public abstract class EntityLiving extends Entity {
}
}
@ -30,7 +30,7 @@ index d7a8a82a6a..18dd06980f 100644
if (flag1) {
if (flag) {
this.world.broadcastEntityEffect(this, (byte) 29);
@@ -1018,6 +1019,7 @@ public abstract class EntityLiving extends Entity {
@@ -1020,6 +1021,7 @@ public abstract class EntityLiving extends Entity {
b0 = 2;
}
@ -38,7 +38,7 @@ index d7a8a82a6a..18dd06980f 100644
this.world.broadcastEntityEffect(this, b0);
}
@@ -1041,6 +1043,8 @@ public abstract class EntityLiving extends Entity {
@@ -1043,6 +1045,8 @@ public abstract class EntityLiving extends Entity {
}
}
@ -48,7 +48,7 @@ index d7a8a82a6a..18dd06980f 100644
if (!this.e(damagesource)) {
SoundEffect soundeffect = this.cr();
diff --git a/src/main/java/net/minecraft/server/Explosion.java b/src/main/java/net/minecraft/server/Explosion.java
index 8fdcd52b2f..75b21010b8 100644
index 8fdcd52b2..75b21010b 100644
--- a/src/main/java/net/minecraft/server/Explosion.java
+++ b/src/main/java/net/minecraft/server/Explosion.java
@@ -152,7 +152,7 @@ public class Explosion {

Datei anzeigen

@ -1,4 +1,4 @@
From 8025896d1051dc63efd41729fc4433bc18f66e61 Mon Sep 17 00:00:00 2001
From 4535caf1f24d08822aa9144f91c6b40edb0dcf19 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
@ -204,7 +204,7 @@ index d41459ef0..cadff64bf 100644
static Map<Enchantment, Integer> getEnchantments(net.minecraft.server.ItemStack item) {
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
index 3b73e52fa..e43a24989 100644
index 86ae0a4b6..86c61abe4 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
@@ -8,12 +8,14 @@ import java.lang.reflect.Constructor;
@ -222,7 +222,7 @@ index 3b73e52fa..e43a24989 100644
import net.minecraft.server.NBTBase;
import net.minecraft.server.NBTTagCompound;
import net.minecraft.server.NBTTagList;
@@ -46,6 +48,7 @@ import java.util.Arrays;
@@ -47,6 +49,7 @@ import java.util.Arrays;
import java.util.EnumSet;
import java.util.HashSet;
import java.util.Set;
@ -230,7 +230,7 @@ index 3b73e52fa..e43a24989 100644
import java.util.logging.Level;
import java.util.logging.Logger;
import net.minecraft.server.NBTCompressedStreamTools;
@@ -233,7 +236,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
@@ -234,7 +237,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
private IChatBaseComponent displayName;
private IChatBaseComponent locName;
private List<String> lore;
@ -239,7 +239,7 @@ index 3b73e52fa..e43a24989 100644
private int repairCost;
private int hideFlag;
private boolean unbreakable;
@@ -242,7 +245,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
@@ -243,7 +246,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
private static final Set<String> HANDLED_TAGS = Sets.newHashSet();
private NBTTagCompound internalTag;
@ -248,7 +248,7 @@ index 3b73e52fa..e43a24989 100644
CraftMetaItem(CraftMetaItem meta) {
if (meta == null) {
@@ -257,7 +260,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
@@ -258,7 +261,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
}
if (meta.enchantments != null) { // Spigot
@ -257,7 +257,7 @@ index 3b73e52fa..e43a24989 100644
}
this.repairCost = meta.repairCost;
@@ -482,13 +485,13 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
@@ -491,13 +494,13 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
}
}
@ -273,7 +273,7 @@ index 3b73e52fa..e43a24989 100644
for (int i = 0; i < ench.size(); i++) {
String id = ((NBTTagCompound) ench.get(i)).getString(ENCHANTMENTS_ID.NBT);
@@ -563,13 +566,13 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
@@ -572,13 +575,13 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
void deserializeInternal(NBTTagCompound tag) {
}
@ -289,7 +289,7 @@ index 3b73e52fa..e43a24989 100644
for (Map.Entry<?, ?> entry : ench.entrySet()) {
// Doctor older enchants
String enchantKey = entry.getKey().toString();
@@ -724,13 +727,13 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
@@ -733,13 +736,13 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
}
public Map<Enchantment, Integer> getEnchants() {
@ -305,7 +305,7 @@ index 3b73e52fa..e43a24989 100644
}
if (ignoreRestrictions || level >= ench.getStartLevel() && level <= ench.getMaxLevel()) {
@@ -918,7 +921,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
@@ -927,7 +930,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
clone.lore = new ArrayList<String>(this.lore);
}
if (this.enchantments != null) {
@ -314,7 +314,7 @@ index 3b73e52fa..e43a24989 100644
}
clone.hideFlag = this.hideFlag;
clone.unbreakable = this.unbreakable;
@@ -1087,6 +1090,23 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
@@ -1096,6 +1099,23 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
}
}

Datei anzeigen

@ -1,14 +1,14 @@
From d5dd5cfd1519917997713ba04c795fffefcc22ee Mon Sep 17 00:00:00 2001
From a9821eba8de7feae6fcaed3baccc7451992f2fc6 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
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index ab64fb7872..8d06249b6c 100644
index 00cd44a72..bcbc77ad2 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2561,12 +2561,13 @@ public abstract class EntityLiving extends Entity {
@@ -2563,12 +2563,13 @@ public abstract class EntityLiving extends Entity {
protected void q() {
if (!this.activeItem.isEmpty() && this.isHandRaised()) {
@ -23,7 +23,7 @@ index ab64fb7872..8d06249b6c 100644
world.getServer().getPluginManager().callEvent(event);
if (event.isCancelled()) {
@@ -2581,9 +2582,19 @@ public abstract class EntityLiving extends Entity {
@@ -2583,9 +2584,19 @@ public abstract class EntityLiving extends Entity {
itemstack = this.activeItem.a(this.world, this);
}

Datei anzeigen

@ -1,11 +1,11 @@
From f094aeaa1e48c4982f902d3e2cb877c00ae32973 Mon Sep 17 00:00:00 2001
From a56b31418ce5807fa4cfcf62f3e8b9628533a42b 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
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 8d06249b6c..ed9045f62a 100644
index bcbc77ad2..746e19165 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -498,7 +498,13 @@ public abstract class EntityLiving extends Entity {
@ -23,7 +23,7 @@ index 8d06249b6c..ed9045f62a 100644
if (nbttagcompound.hasKeyOfType("Attributes", 9) && this.world != null && !this.world.isClientSide) {
GenericAttributes.a(this.getAttributeMap(), nbttagcompound.getList("Attributes", 10));
}
@@ -888,6 +894,10 @@ public abstract class EntityLiving extends Entity {
@@ -890,6 +896,10 @@ public abstract class EntityLiving extends Entity {
}
public void setHealth(float f) {
@ -34,7 +34,7 @@ index 8d06249b6c..ed9045f62a 100644
// CraftBukkit start - Handle scaled health
if (this instanceof EntityPlayer) {
org.bukkit.craftbukkit.entity.CraftPlayer player = ((EntityPlayer) this).getBukkitEntity();
@@ -2426,7 +2436,7 @@ public abstract class EntityLiving extends Entity {
@@ -2428,7 +2438,7 @@ public abstract class EntityLiving extends Entity {
}
public void setAbsorptionHearts(float f) {
@ -44,7 +44,7 @@ index 8d06249b6c..ed9045f62a 100644
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index f6a7f08f96..e71fc971d7 100644
index f6a7f08f9..e71fc971d 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1510,6 +1510,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {

Datei anzeigen

@ -1,4 +1,4 @@
From 1af002cf0a2e3574d4010d2c2f8f860e25163f35 Mon Sep 17 00:00:00 2001
From 591dcb3f4be1fc57cd0db75c759f1dc05e13dfed Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Fri, 22 Apr 2016 01:43:11 -0500
Subject: [PATCH] EntityRegainHealthEvent isFastRegen API
@ -6,10 +6,10 @@ Subject: [PATCH] EntityRegainHealthEvent isFastRegen API
Don't even get me started
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index ed9045f62a..1bef317758 100644
index 746e19165..f5c3679b1 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -870,10 +870,16 @@ public abstract class EntityLiving extends Entity {
@@ -872,10 +872,16 @@ public abstract class EntityLiving extends Entity {
}
public void heal(float f, EntityRegainHealthEvent.RegainReason regainReason) {
@ -28,7 +28,7 @@ index ed9045f62a..1bef317758 100644
if (!event.isCancelled()) {
diff --git a/src/main/java/net/minecraft/server/FoodMetaData.java b/src/main/java/net/minecraft/server/FoodMetaData.java
index bbcc488bd7..d886e476bf 100644
index bbcc488bd..d886e476b 100644
--- a/src/main/java/net/minecraft/server/FoodMetaData.java
+++ b/src/main/java/net/minecraft/server/FoodMetaData.java
@@ -65,7 +65,7 @@ public class FoodMetaData {

Datei anzeigen

@ -1,4 +1,4 @@
From 6b309368c52f9b4108b0a3619f0b7089abad52bd Mon Sep 17 00:00:00 2001
From c1a4ecfa714d709d6c41f26869d7f52f45e27db2 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 28 Apr 2016 00:57:27 -0400
Subject: [PATCH] remove null possibility for getServer singleton
@ -6,7 +6,7 @@ Subject: [PATCH] remove null possibility for getServer singleton
to stop IDE complaining about potential NPE
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index c5670fe8d..e11289217 100644
index 3c201c2e2..05dc8451e 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -68,6 +68,7 @@ import co.aikar.timings.MinecraftTimings; // Paper
@ -17,15 +17,16 @@ index c5670fe8d..e11289217 100644
public static final Logger LOGGER = LogManager.getLogger();
public static final File a = new File("usercache.json");
public Convertable convertable;
@@ -152,6 +153,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@@ -153,6 +154,8 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
// Spigot end
public MinecraftServer(OptionSet options, Proxy proxy, DataFixer datafixer, CommandDispatcher commanddispatcher, YggdrasilAuthenticationService yggdrasilauthenticationservice, MinecraftSessionService minecraftsessionservice, GameProfileRepository gameprofilerepository, UserCache usercache) {
+ SERVER = this; // Paper - better singleton
this.commandDispatcher = commanddispatcher; // CraftBukkit
+ this.commandDispatcher = commanddispatcher; // CraftBukkit
this.ac = new ResourceManager(EnumResourcePackType.SERVER_DATA);
this.resourcePackRepository = new ResourcePackRepository(ResourcePackLoader::new);
@@ -1742,7 +1744,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
this.ag = new CraftingManager();
@@ -1742,7 +1745,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
// CraftBukkit start
@Deprecated
public static MinecraftServer getServer() {

Datei anzeigen

@ -1,4 +1,4 @@
From 6a9d38a4159ce7e437079963862bfbf5baf9c766 Mon Sep 17 00:00:00 2001
From 1b066a794864bf5d0073b12f7d575ee00775466e Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 16 May 2016 20:47:41 -0400
Subject: [PATCH] Optimize UserCache / Thread Safe
@ -10,10 +10,10 @@ Additionally, move Saving of the User cache to be done async, incase
the user never changed the default setting for Spigot's save on stop only.
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index e11289217..49b2c27c6 100644
index 05dc8451e..0e59fc9eb 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -631,7 +631,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@@ -632,7 +632,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
// Spigot start
if (org.spigotmc.SpigotConfig.saveUserCacheOnStopOnly) {
LOGGER.info("Saving usercache.json");

Datei anzeigen

@ -1,4 +1,4 @@
From 221b6fda013cdc465dcf73d3765655e8c1d7522e Mon Sep 17 00:00:00 2001
From 71e6ced752630d941c3d5bf62881eb81b72eb156 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 19 Sep 2016 23:16:39 -0400
Subject: [PATCH] Auto Save Improvements
@ -64,10 +64,22 @@ index 0e6c18b32..c182ceffb 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 6c6924937..5163bd11b 100644
index 6c6924937..2f40f687a 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -1013,11 +1013,9 @@ public class Chunk implements IChunkAccess {
@@ -52,9 +52,9 @@ public class Chunk implements IChunkAccess {
private final TickList<Block> t;
private final TickList<FluidType> u;
private boolean v;
- private boolean w;
+ private boolean w; public boolean hasEntities() { return w; } // Paper - OBFHELPER
private long lastSaved;
- private boolean y;
+ private boolean y; public boolean isModified() { return y; } // Paper - OBFHELPER
private int z;
private long A; public long getInhabitedTime() { return A; } // Paper - OBFHELPER
private int B;
@@ -1013,11 +1013,11 @@ public class Chunk implements IChunkAccess {
if (this.w && this.world.getTime() != this.lastSaved || this.y) {
return true;
}
@ -76,8 +88,10 @@ index 6c6924937..5163bd11b 100644
}
-
- return this.y;
+ // This !flag section should say if y(isModified) or w(hasEntities), then check auto save
+ return ((this.y || this.w) && this.world.getTime() >= this.lastSaved + world.paperConfig.autoSavePeriod); // Paper - Make world configurable and incremental
+ // Paper start - Make world configurable and incremental
+ // This !flag section should say if isModified or hasEntities, then check auto save
+ return ((isModified() || hasEntities()) && this.world.getTime() >= this.lastSaved + world.paperConfig.autoSavePeriod);
+ // Paper end
}
public boolean isEmpty() {
@ -102,7 +116,7 @@ index 2e72a294d..1e6ea3084 100644
}
}
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 5aafa4e23..f5fae7ba8 100644
index 08d6f77ae..5122cee42 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -38,6 +38,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@ -114,18 +128,18 @@ index 5aafa4e23..f5fae7ba8 100644
public final MinecraftServer server;
public final PlayerInteractManager playerInteractManager;
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 49b2c27c6..bf020293d 100644
index 0e59fc9eb..603ce9fe2 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -147,6 +147,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@@ -143,6 +143,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
public org.bukkit.command.RemoteConsoleCommandSender remoteConsole;
public ConsoleReader reader;
public static int currentTick = 0; // Paper - Further improve tick loop
+ public boolean serverAutoSave = false; // Paper
public final Thread primaryThread;
public java.util.Queue<Runnable> processQueue = new java.util.concurrent.ConcurrentLinkedQueue<Runnable>();
public int autosavePeriod;
public File bukkitDataPackFolder;
+ public boolean serverAutoSave = false; // Paper
// CraftBukkit end
// Spigot start
public final SlackActivityAccountant slackActivityAccountant = new SlackActivityAccountant();
@@ -868,22 +869,30 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@@ -869,22 +870,30 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
this.n.b().a(agameprofile);
}
@ -200,7 +214,7 @@ index 6b7d81933..3ee587014 100644
public WhiteList getWhitelist() {
return this.whitelist;
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index e3d62fc9c..72b3a6d40 100644
index 6c976e3b1..a08ef197e 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -872,8 +872,9 @@ public class WorldServer extends World implements IAsyncTaskHandler {

Datei anzeigen

@ -1,4 +1,4 @@
From d778eb49ecc9e8d5cbfcc4b20f33d607fbc13b00 Mon Sep 17 00:00:00 2001
From 6dcddbc648362d5b4fa1548043beacd6596d15d7 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sun, 22 Jan 2017 18:07:56 -0500
Subject: [PATCH] Cap Entity Collisions
@ -12,7 +12,7 @@ just as it does in Vanilla, but entity pushing logic will be capped.
You can set this to 0 to disable collisions.
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index 5df8b1143f..0b748d402b 100644
index 5df8b1143..0b748d402 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -343,4 +343,10 @@ public class PaperWorldConfig {
@ -27,7 +27,7 @@ index 5df8b1143f..0b748d402b 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index b47bf97387..db7e37aee6 100644
index b47bf9738..db7e37aee 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -168,6 +168,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@ -39,10 +39,10 @@ index b47bf97387..db7e37aee6 100644
// Spigot end
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 9f493e43d4..fc0e440798 100644
index b25d4b714..f85da758d 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2316,8 +2316,11 @@ public abstract class EntityLiving extends Entity {
@@ -2318,8 +2318,11 @@ public abstract class EntityLiving extends Entity {
}
}

Datei anzeigen

@ -1,4 +1,4 @@
From b502589f3799987378d72bfd7fd843b6e888b490 Mon Sep 17 00:00:00 2001
From 97859bd335e381d24dfb98d703ee44295283f04c Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Fri, 12 May 2017 23:34:11 -0500
Subject: [PATCH] Properly handle async calls to restart the server
@ -30,7 +30,7 @@ will have plugins and worlds saving to the disk has a high potential to result
in corruption/dataloss.
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index f81ff5628..f679c6bc2 100644
index ab3193295..5d13f053f 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -85,6 +85,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@ -41,7 +41,7 @@ index f81ff5628..f679c6bc2 100644
private boolean isStopped;
private int ticks;
protected final Proxy d;
@@ -590,7 +591,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@@ -591,7 +592,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
if (this.s != null) {
MinecraftServer.LOGGER.info("Saving players");
this.s.savePlayers();
@ -50,7 +50,7 @@ index f81ff5628..f679c6bc2 100644
try { Thread.sleep(100); } catch (InterruptedException ex) {} // CraftBukkit - SPIGOT-625 - give server at least a chance to send packets
}
@@ -649,10 +650,18 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@@ -650,10 +651,18 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
return this.isRunning;
}
@ -69,7 +69,7 @@ index f81ff5628..f679c6bc2 100644
// Paper start - Further improve server tick loop
private static final int TPS = 20;
private static final long SEC_IN_NANO = 1000000000;
@@ -1607,6 +1616,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@@ -1608,6 +1617,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
return this.aa;
}
@ -306,5 +306,5 @@ index 947c43a5d..f15fd9f37 100644
}
}
--
2.17.1
2.18.0

Datei anzeigen

@ -1,4 +1,4 @@
From 280084302de32062c408e239b644dda5e1b24a83 Mon Sep 17 00:00:00 2001
From af3fcc467f9180b820aaa4e89b3695f7d7d420cd Mon Sep 17 00:00:00 2001
From: Minecrell <minecrell@minecrell.net>
Date: Fri, 9 Jun 2017 19:03:43 +0200
Subject: [PATCH] Use TerminalConsoleAppender for console improvements
@ -199,7 +199,7 @@ index a3d58b5ce..681194e94 100644
System.setOut(new PrintStream(new LoggerOutputStream(logger, Level.INFO), true));
System.setErr(new PrintStream(new LoggerOutputStream(logger, Level.WARN), true));
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index f679c6bc2..39a8b1d69 100644
index 5d13f053f..c95f12351 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -57,7 +57,6 @@ import org.apache.commons.lang3.Validate;
@ -217,9 +217,9 @@ index f679c6bc2..39a8b1d69 100644
- public ConsoleReader reader;
+ //public ConsoleReader reader; // Paper
public static int currentTick = 0; // Paper - Further improve tick loop
public boolean serverAutoSave = false; // Paper
public final Thread primaryThread;
public java.util.Queue<Runnable> processQueue = new java.util.concurrent.ConcurrentLinkedQueue<Runnable>();
@@ -183,7 +182,9 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@@ -184,7 +183,9 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
this.ac.a((IResourcePackListener) this.al);
// CraftBukkit start
this.options = options;
@ -229,7 +229,7 @@ index f679c6bc2..39a8b1d69 100644
if (System.console() == null && System.getProperty("jline.terminal") == null) {
System.setProperty("jline.terminal", "jline.UnsupportedTerminal");
Main.useJline = false;
@@ -204,6 +205,8 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@@ -205,6 +206,8 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
LOGGER.warn((String) null, ex);
}
}
@ -238,7 +238,7 @@ index f679c6bc2..39a8b1d69 100644
Runtime.getRuntime().addShutdownHook(new org.bukkit.craftbukkit.util.ServerShutdownThread(this));
this.serverThread = primaryThread = new Thread(this, "Server thread"); // Moved from main
@@ -804,7 +807,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@@ -805,7 +808,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
} finally {
// CraftBukkit start - Restore terminal to original settings
try {
@ -247,7 +247,7 @@ index f679c6bc2..39a8b1d69 100644
} catch (Exception ignored) {
}
// CraftBukkit end
@@ -1285,7 +1288,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@@ -1286,7 +1289,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
}
public void sendMessage(IChatBaseComponent ichatbasecomponent) {
@ -271,7 +271,7 @@ index 4c9ff8c29..9e403d625 100644
this.k = new GameProfileBanList(PlayerList.a);
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 470e334f7..9fe7c6a0d 100644
index 8719fe35e..f6dfe2e2b 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -137,8 +137,8 @@ import java.nio.ByteBuffer;

Datei anzeigen

@ -1,4 +1,4 @@
From 7e4b09409f3d9851a51215a840be880c73a0c7f1 Mon Sep 17 00:00:00 2001
From eb7e8603e48e1cfac564dfd91c528198ac7e7a8d Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 15 Jan 2018 22:11:48 -0500
Subject: [PATCH] Basic PlayerProfile API
@ -429,10 +429,10 @@ index 02940d697..4539b5601 100644
* Calculates distance between 2 entities
* @param e1
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 39a8b1d69..4654e22c8 100644
index c95f12351..26ace3cbf 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -1114,7 +1114,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@@ -1115,7 +1115,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
*/ // CraftBukkit end
String s1 = "."; // PAIL?
@ -441,7 +441,7 @@ index 39a8b1d69..4654e22c8 100644
MinecraftSessionService minecraftsessionservice = yggdrasilauthenticationservice.createMinecraftSessionService();
GameProfileRepository gameprofilerepository = yggdrasilauthenticationservice.createProfileRepository();
UserCache usercache = new UserCache(gameprofilerepository, new File(s1, MinecraftServer.a.getName()));
@@ -1562,6 +1562,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@@ -1563,6 +1563,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
this.G = i;
}
@ -486,7 +486,7 @@ index a47a51a41..4c476f757 100644
private UserCacheEntry(GameProfile gameprofile, Date date) {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 69cfe5c4d..0ef1186b9 100644
index ac46e50ac..a8da20e35 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -152,6 +152,10 @@ import org.bukkit.craftbukkit.util.CraftNamespacedKey;

Datei anzeigen

@ -1,11 +1,11 @@
From c181940c4734bff813360c6c3109e3c680107d55 Mon Sep 17 00:00:00 2001
From 9cb4fc032e1908f0126b22723ebc8ec555e51884 Mon Sep 17 00:00:00 2001
From: pkt77 <parkerkt77@gmail.com>
Date: Fri, 10 Nov 2017 23:46:34 -0500
Subject: [PATCH] Add PlayerArmorChangeEvent
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 38baecd862..2f325f695e 100644
index 0dcafdbcc..a4026d64a 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -1,5 +1,6 @@
@ -15,7 +15,7 @@ index 38baecd862..2f325f695e 100644
import com.google.common.base.Objects;
import com.google.common.collect.Maps;
import java.util.Collection;
@@ -2045,6 +2046,13 @@ public abstract class EntityLiving extends Entity {
@@ -2047,6 +2048,13 @@ public abstract class EntityLiving extends Entity {
ItemStack itemstack1 = this.getEquipment(enumitemslot);
if (!ItemStack.matches(itemstack1, itemstack)) {
@ -30,7 +30,7 @@ index 38baecd862..2f325f695e 100644
if (!itemstack.isEmpty()) {
this.getAttributeMap().a(itemstack.a(enumitemslot));
diff --git a/src/main/java/net/minecraft/server/EnumItemSlot.java b/src/main/java/net/minecraft/server/EnumItemSlot.java
index cdf3a3ba4a..be5d0bf898 100644
index cdf3a3ba4..be5d0bf89 100644
--- a/src/main/java/net/minecraft/server/EnumItemSlot.java
+++ b/src/main/java/net/minecraft/server/EnumItemSlot.java
@@ -16,6 +16,7 @@ public enum EnumItemSlot {

Datei anzeigen

@ -1,4 +1,4 @@
From 3cdab27e9d5d15730d83f109ca6428e725e80c5e Mon Sep 17 00:00:00 2001
From 461048847edbe22761d50fc017204a5f8ec15950 Mon Sep 17 00:00:00 2001
From: Zach Brown <zach.brown@destroystokyo.com>
Date: Sat, 27 Jan 2018 17:04:14 -0500
Subject: [PATCH] Add ArmorStand Item Meta
@ -354,10 +354,10 @@ index 000000000..30941c7b0
+ }
+}
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
index e43a24989..df4bbba57 100644
index 86c61abe4..c48911d00 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
@@ -134,6 +134,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
@@ -135,6 +135,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
.put(CraftMetaCharge.class, "FIREWORK_EFFECT")
.put(CraftMetaKnowledgeBook.class, "KNOWLEDGE_BOOK")
.put(CraftMetaTropicalFishBucket.class, "TROPICAL_FISH_BUCKET")
@ -365,7 +365,7 @@ index e43a24989..df4bbba57 100644
.put(CraftMetaItem.class, "UNSPECIFIC")
.build();
@@ -1083,7 +1084,15 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
@@ -1092,7 +1093,15 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable {
CraftMetaCharge.EXPLOSION.NBT,
CraftMetaBlockState.BLOCK_ENTITY_TAG.NBT,
CraftMetaKnowledgeBook.BOOK_RECIPES.NBT,

Datei anzeigen

@ -1,4 +1,4 @@
From 557f91f2d60f8facf05cd18160e6c1d87ec5949e Mon Sep 17 00:00:00 2001
From a663e14dc508e217a3ea771b2d515553552b3f7d Mon Sep 17 00:00:00 2001
From: Minecrell <minecrell@minecrell.net>
Date: Wed, 11 Oct 2017 15:56:26 +0200
Subject: [PATCH] Implement extended PaperServerListPingEvent
@ -177,10 +177,10 @@ index 000000000..350410527
+
+}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 4654e22c8..97581d995 100644
index 26ace3cbf..bc2712898 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -870,7 +870,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@@ -871,7 +871,7 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
if (i - this.Y >= 5000000000L) {
this.Y = i;
this.n.setPlayerSample(new ServerPing.ServerPingPlayerSample(this.B(), this.A()));
@ -189,7 +189,7 @@ index 4654e22c8..97581d995 100644
int j = MathHelper.nextInt(this.o, 0, this.A() - agameprofile.length);
for (int k = 0; k < agameprofile.length; ++k) {
@@ -1220,10 +1220,12 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
@@ -1221,10 +1221,12 @@ public abstract class MinecraftServer implements IAsyncTaskHandler, IMojangStati
return "1.13-pre7";
}

Datei anzeigen

@ -1,11 +1,11 @@
From 1fe88e14503474a32459e6777e8f2e8096c85adf Mon Sep 17 00:00:00 2001
From 3bfec59ed4647d0c87081489077dfa8289754c27 Mon Sep 17 00:00:00 2001
From: BillyGalbreath <Blake.Galbreath@GMail.com>
Date: Sat, 16 Jun 2018 01:18:16 -0500
Subject: [PATCH] Make shield blocking delay configurable
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
index f1db4becde..ef4bfb480c 100644
index f1db4becd..ef4bfb480 100644
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
@@ -408,4 +408,9 @@ public class PaperWorldConfig {
@ -19,10 +19,10 @@ index f1db4becde..ef4bfb480c 100644
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 2f325f695e..ab3246ee02 100644
index a4026d64a..dffa42ba5 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2661,7 +2661,7 @@ public abstract class EntityLiving extends Entity {
@@ -2663,7 +2663,7 @@ public abstract class EntityLiving extends Entity {
if (this.isHandRaised() && !this.activeItem.isEmpty()) {
Item item = this.activeItem.getItem();
@ -31,7 +31,7 @@ index 2f325f695e..ab3246ee02 100644
} else {
return false;
}
@@ -2749,4 +2749,16 @@ public abstract class EntityLiving extends Entity {
@@ -2751,4 +2751,16 @@ public abstract class EntityLiving extends Entity {
public boolean de() {
return true;
}
@ -49,7 +49,7 @@ index 2f325f695e..ab3246ee02 100644
+ // Paper end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index 460a050cce..35ba95e0f5 100644
index 460a050cc..35ba95e0f 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -530,5 +530,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {

Datei anzeigen

@ -1,4 +1,4 @@
From be0ea88947f6c5be87e3dfd4c20665785d6858db Mon Sep 17 00:00:00 2001
From 5d0b0c840d82488619f181d2b576147a2b0f194b Mon Sep 17 00:00:00 2001
From: Brokkonaut <hannos17@gmx.de>
Date: Mon, 18 Jun 2018 15:46:23 +0200
Subject: [PATCH] Implement EntityKnockbackByEntityEvent
@ -6,10 +6,10 @@ Subject: [PATCH] Implement EntityKnockbackByEntityEvent
This event is called when an entity receives knockback by another entity.
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index ab3246ee02..f67b4ca353 100644
index dffa42ba5..7cacbaffe 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -1245,6 +1245,12 @@ public abstract class EntityLiving extends Entity {
@@ -1247,6 +1247,12 @@ public abstract class EntityLiving extends Entity {
this.impulse = true;
float f1 = MathHelper.sqrt(d0 * d0 + d1 * d1);
@ -22,7 +22,7 @@ index ab3246ee02..f67b4ca353 100644
this.motX /= 2.0D;
this.motZ /= 2.0D;
this.motX -= d0 / (double) f1 * (double) f;
@@ -1257,6 +1263,18 @@ public abstract class EntityLiving extends Entity {
@@ -1259,6 +1265,18 @@ public abstract class EntityLiving extends Entity {
}
}

Datei anzeigen

@ -1,4 +1,4 @@
From 42f348c4866235a751a95a6c69abeaaf826dad17 Mon Sep 17 00:00:00 2001
From d249802a700c76fd6306b36fc4aa5d808f5000da Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 29 Jun 2018 00:21:28 -0400
Subject: [PATCH] LivingEntity Hand Raised/Item Use API
@ -6,10 +6,10 @@ Subject: [PATCH] LivingEntity Hand Raised/Item Use API
How long an entity has raised hands to charge an attack or use an item
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index f67b4ca353..cda8151487 100644
index 7cacbaffe..5f3ccee2e 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2646,14 +2646,17 @@ public abstract class EntityLiving extends Entity {
@@ -2648,14 +2648,17 @@ public abstract class EntityLiving extends Entity {
}
@ -28,7 +28,7 @@ index f67b4ca353..cda8151487 100644
return this.isHandRaised() ? this.activeItem.k() - this.cW() : 0;
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index 35ba95e0f5..0975181e06 100644
index 35ba95e0f..0975181e0 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -540,5 +540,25 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {

@ -1 +1 @@
Subproject commit ac92f0355a7bf319d51b78837f8e7a3889b6c549
Subproject commit 2ba30dddd4acb3bd789b4e487ed0647984576e8c

@ -1 +1 @@
Subproject commit 7c0f69e449b94547f95daa5c09407dd3f4a6fd52
Subproject commit 961295e4327324766a0404857c1ca85051971995

@ -1 +1 @@
Subproject commit 751edf9136cc98e37842b9dc43d4d119452c5433
Subproject commit 3fa6cc486bf213165cc95cc3809162036cf9bf78