mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
Updated Upstream (Paper)
Upstream has released updates that appears to apply and compile correctly Paper Changes: b0b54e4e Optimize Villager Pathfinding - Massive Villager Improvement 33a2134b Workaround for really evil plugins breaking sounds b88ee11f Don't unregister the primary dimensions on world unload 21f9efa2 Improve implementation of chunk leak clean to not run as often 7ee71146 Add missing null check for structure start chunk access b12177fb One more to seal the deal to improve unloading inactive chunks 78ee3b4e Restore a condition I accidently removed in last build 88a68829 Fix unloading inaccessible chunks too fast regressing gen speed 210a32f2 Unload leaked Cached Chunks c9795e92 Fix Spigot bug with chunk unloading
This commit is contained in:
2
Paper
2
Paper
Submodule Paper updated: b6cf80ee66...b0b54e4ef3
@@ -1 +1 @@
|
||||
1.15.2--c8d74d65b138a5bcc1f4764d3a4902d819ebd376
|
||||
1.15.2--3b0e4b2f45a0c069c407b56f24d9f04b5cad032a
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From befc63f9359defeab79a8b2407b047d2e29636c7 Mon Sep 17 00:00:00 2001
|
||||
From 84c4a40a15f523104c986a0a12140d94c537a8eb Mon Sep 17 00:00:00 2001
|
||||
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
||||
Date: Sun, 7 Jul 2019 19:52:16 -0500
|
||||
Subject: [PATCH] Zombie horse naturally spawn
|
||||
@@ -9,10 +9,10 @@ Subject: [PATCH] Zombie horse naturally spawn
|
||||
2 files changed, 14 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
index d13dc8fce..fc3a41e35 100644
|
||||
index 854c97bddb..b65df63333 100644
|
||||
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
@@ -597,12 +597,18 @@ public class WorldServer extends World {
|
||||
@@ -600,12 +600,18 @@ public class WorldServer extends World {
|
||||
boolean flag1 = this.getGameRules().getBoolean(GameRules.DO_MOB_SPAWNING) && this.random.nextDouble() < (double) difficultydamagescaler.b() * paperConfig.skeleHorseSpawnChance; // Paper
|
||||
|
||||
if (flag1) {
|
||||
@@ -38,7 +38,7 @@ index d13dc8fce..fc3a41e35 100644
|
||||
|
||||
this.strikeLightning(new EntityLightning(this, (double) blockposition.getX() + 0.5D, (double) blockposition.getY(), (double) blockposition.getZ() + 0.5D, flag1), org.bukkit.event.weather.LightningStrikeEvent.Cause.WEATHER); // CraftBukkit
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index 96a66926f..4c7469b90 100644
|
||||
index 96a66926fc..4c7469b903 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -657,9 +657,11 @@ public class PurpurWorldConfig {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From 08028ae0a027ecced21386341be053dc433ec59f Mon Sep 17 00:00:00 2001
|
||||
From daea9aea4038129c2b8b41593497c2da341f0c43 Mon Sep 17 00:00:00 2001
|
||||
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
||||
Date: Thu, 8 Aug 2019 15:29:15 -0500
|
||||
Subject: [PATCH] Implement AFK API
|
||||
@@ -18,7 +18,7 @@ Subject: [PATCH] Implement AFK API
|
||||
11 files changed, 111 insertions(+), 25 deletions(-)
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index 5d39d86f0..46bc91524 100644
|
||||
index 5d39d86f0f..46bc91524b 100644
|
||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||
@@ -1438,6 +1438,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
||||
@@ -30,7 +30,7 @@ index 5d39d86f0..46bc91524 100644
|
||||
double d3 = this.locX() - d0;
|
||||
double d4 = this.locY() - d1;
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java
|
||||
index 27cfc6654..d62174e9c 100644
|
||||
index 27cfc6654e..d62174e9c7 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityHuman.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityHuman.java
|
||||
@@ -86,6 +86,15 @@ public abstract class EntityHuman extends EntityLiving {
|
||||
@@ -50,7 +50,7 @@ index 27cfc6654..d62174e9c 100644
|
||||
super(EntityTypes.PLAYER, world);
|
||||
this.bV = ItemStack.a;
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
|
||||
index b66f9cd2c..0834ca328 100644
|
||||
index b66f9cd2c4..0834ca328b 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
|
||||
@@ -1625,8 +1625,51 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
|
||||
@@ -106,7 +106,7 @@ index b66f9cd2c..0834ca328 100644
|
||||
return this.serverStatisticManager;
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/IEntityAccess.java b/src/main/java/net/minecraft/server/IEntityAccess.java
|
||||
index e0d97d2c8..e1a7926d7 100644
|
||||
index e0d97d2c8b..e1a7926d7a 100644
|
||||
--- a/src/main/java/net/minecraft/server/IEntityAccess.java
|
||||
+++ b/src/main/java/net/minecraft/server/IEntityAccess.java
|
||||
@@ -150,28 +150,18 @@ public interface IEntityAccess {
|
||||
@@ -151,7 +151,7 @@ index e0d97d2c8..e1a7926d7 100644
|
||||
|
||||
@Nullable
|
||||
diff --git a/src/main/java/net/minecraft/server/IEntitySelector.java b/src/main/java/net/minecraft/server/IEntitySelector.java
|
||||
index 1398c47a2..0bf1a14b7 100644
|
||||
index 1398c47a2f..0bf1a14b7c 100644
|
||||
--- a/src/main/java/net/minecraft/server/IEntitySelector.java
|
||||
+++ b/src/main/java/net/minecraft/server/IEntitySelector.java
|
||||
@@ -7,6 +7,7 @@ import javax.annotation.Nullable;
|
||||
@@ -171,7 +171,7 @@ index 1398c47a2..0bf1a14b7 100644
|
||||
public static Predicate<Entity> a(double d0, double d1, double d2, double d3) {
|
||||
double d4 = d3 * d3;
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index ee961bc05..17b23ed2f 100644
|
||||
index ee961bc05c..17b23ed2fb 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -233,6 +233,12 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -206,10 +206,10 @@ index ee961bc05..17b23ed2f 100644
|
||||
if (from.getX() != Double.MAX_VALUE) {
|
||||
Location oldTo = to.clone();
|
||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
index 441249284..afb6ad44a 100644
|
||||
index b65df63333..8018bf6dd8 100644
|
||||
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
@@ -405,7 +405,7 @@ public class WorldServer extends World {
|
||||
@@ -408,7 +408,7 @@ public class WorldServer extends World {
|
||||
}
|
||||
|
||||
if (this.everyoneSleeping && this.players.stream().noneMatch((entityplayer) -> {
|
||||
@@ -218,7 +218,7 @@ index 441249284..afb6ad44a 100644
|
||||
})) {
|
||||
// CraftBukkit start
|
||||
long l = this.worldData.getDayTime() + 24000L;
|
||||
@@ -723,7 +723,7 @@ public class WorldServer extends World {
|
||||
@@ -726,7 +726,7 @@ public class WorldServer extends World {
|
||||
while (iterator.hasNext()) {
|
||||
EntityPlayer entityplayer = (EntityPlayer) iterator.next();
|
||||
|
||||
@@ -228,7 +228,7 @@ index 441249284..afb6ad44a 100644
|
||||
} else if (entityplayer.isSleeping()) {
|
||||
++j;
|
||||
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
index d6405b2ec..41dd1b861 100644
|
||||
index d6405b2ec5..41dd1b8616 100644
|
||||
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
||||
@@ -138,6 +138,17 @@ public class PurpurWorldConfig {
|
||||
@@ -250,7 +250,7 @@ index d6405b2ec..41dd1b861 100644
|
||||
public boolean batRidableInWater = false;
|
||||
public boolean batRequireShiftToMount = true;
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index dcbda5b35..c14493929 100644
|
||||
index dcbda5b35a..c144939291 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -2079,4 +2079,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -276,7 +276,7 @@ index dcbda5b35..c14493929 100644
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java
|
||||
index f735217e7..818f8070c 100644
|
||||
index f735217e7a..818f8070c5 100644
|
||||
--- a/src/main/java/org/spigotmc/ActivationRange.java
|
||||
+++ b/src/main/java/org/spigotmc/ActivationRange.java
|
||||
@@ -207,6 +207,7 @@ public class ActivationRange
|
||||
@@ -288,7 +288,7 @@ index f735217e7..818f8070c 100644
|
||||
ActivationType.MISC.boundingBox = player.getBoundingBox().grow( miscActivationRange, 256, miscActivationRange );
|
||||
ActivationType.RAIDER.boundingBox = player.getBoundingBox().grow( raiderActivationRange, 256, raiderActivationRange );
|
||||
diff --git a/src/main/resources/purpur.lang b/src/main/resources/purpur.lang
|
||||
index 7125c0477..e925e1374 100644
|
||||
index 7125c0477e..e925e1374d 100644
|
||||
--- a/src/main/resources/purpur.lang
|
||||
+++ b/src/main/resources/purpur.lang
|
||||
@@ -1,3 +1,5 @@
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From 6b15e6d5c97e3bee4ce7d47a08679a5b73437a7e Mon Sep 17 00:00:00 2001
|
||||
From 79234404abf4dff72c9563f80ee54b351978ed62 Mon Sep 17 00:00:00 2001
|
||||
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
|
||||
Date: Sat, 11 Jan 2020 23:12:52 -0600
|
||||
Subject: [PATCH] Add EntityPortalReadyEvent
|
||||
@@ -11,7 +11,7 @@ Subject: [PATCH] Add EntityPortalReadyEvent
|
||||
4 files changed, 17 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/BlockPortal.java b/src/main/java/net/minecraft/server/BlockPortal.java
|
||||
index 09c7c1318..6880cdd7f 100644
|
||||
index 09c7c13183..6880cdd7f9 100644
|
||||
--- a/src/main/java/net/minecraft/server/BlockPortal.java
|
||||
+++ b/src/main/java/net/minecraft/server/BlockPortal.java
|
||||
@@ -54,6 +54,7 @@ public class BlockPortal extends Block {
|
||||
@@ -86,7 +86,7 @@ index 09c7c1318..6880cdd7f 100644
|
||||
break;
|
||||
// CraftBukkit start - add the block to our list
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index 46bc91524..39bd34ab3 100644
|
||||
index 46bc91524b..39bd34ab34 100644
|
||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||
@@ -170,9 +170,9 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
||||
@@ -111,7 +111,7 @@ index 46bc91524..39bd34ab3 100644
|
||||
if (this instanceof EntityPlayer) {
|
||||
((EntityPlayer) this).a(this.world.worldProvider.getDimensionManager().getType() == DimensionManager.NETHER ? DimensionManager.OVERWORLD : DimensionManager.NETHER, PlayerTeleportEvent.TeleportCause.NETHER_PORTAL);
|
||||
diff --git a/src/main/java/net/minecraft/server/PortalTravelAgent.java b/src/main/java/net/minecraft/server/PortalTravelAgent.java
|
||||
index f84dd6d9b..f50e9670b 100644
|
||||
index f84dd6d9be..f50e9670bc 100644
|
||||
--- a/src/main/java/net/minecraft/server/PortalTravelAgent.java
|
||||
+++ b/src/main/java/net/minecraft/server/PortalTravelAgent.java
|
||||
@@ -11,6 +11,7 @@ public class PortalTravelAgent {
|
||||
@@ -141,10 +141,10 @@ index f84dd6d9b..f50e9670b 100644
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
index afb6ad44a..75424bfbc 100644
|
||||
index 8018bf6dd8..3546424a1c 100644
|
||||
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
@@ -75,7 +75,7 @@ public class WorldServer extends World {
|
||||
@@ -76,7 +76,7 @@ public class WorldServer extends World {
|
||||
public boolean savingDisabled;
|
||||
private boolean everyoneSleeping;
|
||||
private int emptyTime;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From 996bfc559c8d08e6ba40434b6dd1ef37778779e9 Mon Sep 17 00:00:00 2001
|
||||
From a75f52ba9053f7276ad8e6a950381c9c2e35f7d8 Mon Sep 17 00:00:00 2001
|
||||
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
|
||||
Date: Thu, 2 Apr 2020 00:28:06 -0500
|
||||
Subject: [PATCH] Optimize Chunk Ticks
|
||||
@@ -9,10 +9,10 @@ Subject: [PATCH] Optimize Chunk Ticks
|
||||
2 files changed, 25 insertions(+), 39 deletions(-)
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
|
||||
index 54e89c9cc..9af2c5c74 100644
|
||||
index 1209fbf1c9..0ebd2f8799 100644
|
||||
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
|
||||
@@ -781,11 +781,12 @@ public class ChunkProviderServer extends IChunkProvider {
|
||||
@@ -782,11 +782,12 @@ public class ChunkProviderServer extends IChunkProvider {
|
||||
int k = this.world.getGameRules().getInt(GameRules.RANDOM_TICK_SPEED);
|
||||
BlockPosition blockposition = this.world.getSpawn();
|
||||
// CraftBukkit start - Other mob type spawn tick rate
|
||||
@@ -30,7 +30,7 @@ index 54e89c9cc..9af2c5c74 100644
|
||||
// CraftBukkit end
|
||||
|
||||
this.world.getMethodProfiler().enter("naturalSpawnCount");
|
||||
@@ -831,40 +832,11 @@ public class ChunkProviderServer extends IChunkProvider {
|
||||
@@ -833,40 +834,11 @@ public class ChunkProviderServer extends IChunkProvider {
|
||||
if (flag1 && (this.allowMonsters || this.allowAnimals) && this.world.getWorldBorder().isInBounds(chunk.getPos()) && !this.playerChunkMap.isOutsideOfRange(playerchunk, chunkcoordintpair, true)) { // Spigot // Paper - optimise isOutsideOfRange
|
||||
this.world.getMethodProfiler().enter("spawner");
|
||||
this.world.timings.mobSpawn.startTiming(); // Spigot
|
||||
@@ -77,7 +77,7 @@ index 54e89c9cc..9af2c5c74 100644
|
||||
|
||||
// Paper start - only allow spawns upto the limit per chunk and update count afterwards
|
||||
diff --git a/src/main/java/net/minecraft/server/EnumCreatureType.java b/src/main/java/net/minecraft/server/EnumCreatureType.java
|
||||
index 3ed7fa324..7f236585d 100644
|
||||
index 3ed7fa324f..7f236585db 100644
|
||||
--- a/src/main/java/net/minecraft/server/EnumCreatureType.java
|
||||
+++ b/src/main/java/net/minecraft/server/EnumCreatureType.java
|
||||
@@ -31,11 +31,25 @@ public enum EnumCreatureType {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From 34f82044e292a66771ff5eccf4dadf2d3f8a3c97 Mon Sep 17 00:00:00 2001
|
||||
From 0d1892aab03c9d9cfd0402e584734bd177349546 Mon Sep 17 00:00:00 2001
|
||||
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
|
||||
Date: Sat, 4 Apr 2020 02:36:45 -0500
|
||||
Subject: [PATCH] Add more timings timers
|
||||
@@ -12,7 +12,7 @@ Subject: [PATCH] Add more timings timers
|
||||
5 files changed, 56 insertions(+)
|
||||
|
||||
diff --git a/src/main/java/co/aikar/timings/MinecraftTimings.java b/src/main/java/co/aikar/timings/MinecraftTimings.java
|
||||
index 37341d2d2..918eaf0c6 100644
|
||||
index 37341d2d2e..918eaf0c6b 100644
|
||||
--- a/src/main/java/co/aikar/timings/MinecraftTimings.java
|
||||
+++ b/src/main/java/co/aikar/timings/MinecraftTimings.java
|
||||
@@ -43,6 +43,28 @@ public final class MinecraftTimings {
|
||||
@@ -45,7 +45,7 @@ index 37341d2d2..918eaf0c6 100644
|
||||
|
||||
private MinecraftTimings() {}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
|
||||
index 3adc3434e..eb0befb35 100644
|
||||
index 3adc3434e1..eb0befb357 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityInsentient.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java
|
||||
@@ -1,5 +1,7 @@
|
||||
@@ -98,7 +98,7 @@ index 3adc3434e..eb0befb35 100644
|
||||
this.K();
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
index e9ef6d00c..29b60e287 100644
|
||||
index e9ef6d00c8..29b60e2879 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
|
||||
@@ -2398,7 +2398,9 @@ public abstract class EntityLiving extends Entity {
|
||||
@@ -164,7 +164,7 @@ index e9ef6d00c..29b60e287 100644
|
||||
// Purpur start
|
||||
if (EntityMoveEvent.getHandlerList().getRegisteredListeners().length > 0) {
|
||||
diff --git a/src/main/java/net/minecraft/server/PathfinderGoalSelector.java b/src/main/java/net/minecraft/server/PathfinderGoalSelector.java
|
||||
index 84d2abbcb..602b465f1 100644
|
||||
index a68fc11ec6..4b277a6f6d 100644
|
||||
--- a/src/main/java/net/minecraft/server/PathfinderGoalSelector.java
|
||||
+++ b/src/main/java/net/minecraft/server/PathfinderGoalSelector.java
|
||||
@@ -78,6 +78,7 @@ public class PathfinderGoalSelector {
|
||||
@@ -206,10 +206,10 @@ index 84d2abbcb..602b465f1 100644
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
index 43535c38a..7298b41ca 100644
|
||||
index 3546424a1c..799dfdf696 100644
|
||||
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
@@ -842,7 +842,9 @@ public class WorldServer extends World {
|
||||
@@ -845,7 +845,9 @@ public class WorldServer extends World {
|
||||
return IRegistry.ENTITY_TYPE.getKey(entity1.getEntityType()).toString();
|
||||
});
|
||||
gameprofilerfiller.c("tickPassenger");
|
||||
|
||||
Reference in New Issue
Block a user