* Updated Upstream and Sidestream(s) (Tuinity/AirplaneLite)

Upstream/An Sidestream has released updates that appears to apply and compile correctly
This update has NOT been tested by YatopiaMC and as with ANY update, please do your own testing.

Tuinity Changes:
06ce05b Fix broken chunk loading while under high block update stress

AirplaneLite Changes:
1b05468 Always reset comment list
adbefaa DEAR merged! (fix comment)
6e86873 Merge branch 'perf/activation-ranges'
12c221c Merge pull request #2 from Encode42/master
6095a90 Fix webhook build status
9ec74d9 Fix compile error
b0adfa5 Hoglin support
829a3a2 Rebuild patches
553e5c4 Merge branch 'master' into perf/activation-ranges
95fb8ac Merge branch 'master' into perf/activation-ranges
4444971 ok
767e9e1 DEAR for piglins
ce074ea Merge branch 'master' into perf/activation-ranges
f12fce4 lower bound on activation prio
d9962ce Add villager dynamic EAR ticking
10929cc Spelling
21d241c Merge branch 'master' into perf/activation-ranges
8f0039a Add configuration to activation ranges
c758dfa Merge branch 'master' into perf/activation-ranges
17605f8 Raise lowest tick amount to 1s
1b604ca Fix Paper inactive tick, finish our range impl
72f27b7 Merge master
dafa5a9 Merge branch 'master' into perf/activation-ranges
55c051f Tuning, still needs config
089d995 First pass at dynamic activation range

* Updated Upstream and Sidestream(s) (Tuinity/AirplaneLite/Purpur)

Upstream/An Sidestream has released updates that appears to apply and compile correctly
This update has NOT been tested by YatopiaMC and as with ANY update, please do your own testing.

Tuinity Changes:
06ce05b Fix broken chunk loading while under high block update stress

AirplaneLite Changes:
1b05468 Always reset comment list
adbefaa DEAR merged! (fix comment)
6e86873 Merge branch 'perf/activation-ranges'
12c221c Merge pull request #2 from Encode42/master
6095a90 Fix webhook build status
9ec74d9 Fix compile error
b0adfa5 Hoglin support
829a3a2 Rebuild patches
553e5c4 Merge branch 'master' into perf/activation-ranges
95fb8ac Merge branch 'master' into perf/activation-ranges
4444971 ok
767e9e1 DEAR for piglins
ce074ea Merge branch 'master' into perf/activation-ranges
f12fce4 lower bound on activation prio
d9962ce Add villager dynamic EAR ticking
10929cc Spelling
21d241c Merge branch 'master' into perf/activation-ranges
8f0039a Add configuration to activation ranges
c758dfa Merge branch 'master' into perf/activation-ranges
17605f8 Raise lowest tick amount to 1s
1b604ca Fix Paper inactive tick, finish our range impl
72f27b7 Merge master
dafa5a9 Merge branch 'master' into perf/activation-ranges
55c051f Tuning, still needs config
089d995 First pass at dynamic activation range

Purpur Changes:
d72b228 Updated Upstream (Paper & Tuinity)

* whoops

* Updated Upstream and Sidestream(s) (Tuinity)

Upstream/An Sidestream has released updates that appears to apply and compile correctly
This update has NOT been tested by YatopiaMC and as with ANY update, please do your own testing.

Tuinity Changes:
f8c0db4 Call queueUpdate() when scheduling chunk lighting

* Updated Upstream and Sidestream(s) (Paper/Purpur)

Upstream/An Sidestream has released updates that appears to apply and compile correctly
This update has NOT been tested by YatopiaMC and as with ANY update, please do your own testing.

Paper Changes:
a98d389d1 Updated Upstream (CraftBukkit/Spigot) (#5119)

Purpur Changes:
f3644e1 Updated Upstream (Paper & Tuinity)
This commit is contained in:
Simon Gardling 2021-01-27 11:13:19 -05:00 committed by GitHub
parent 2a411ec655
commit 2e12bc7147
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
37 changed files with 90 additions and 84 deletions

2
Paper

@ -1 +1 @@
Subproject commit fc4c0bc42e32809eabf37bf378f16b394a71eae0
Subproject commit a98d389d1fca55b32d2e1b575aaa3803177e80b1

View File

@ -27,10 +27,10 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 8bceb152d9c7a3227c4bd3bb47964cf69abea0b4..c86f947a4c9843beec08f2b2ac52c0021063c285 100644
index edc7cd59167ad713e178ec5fc565615240b45a9c..07d23711cdb49c663859e3c0376dc5b08b479b0a 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -3046,7 +3046,7 @@ public abstract class EntityLiving extends Entity {
@@ -3045,7 +3045,7 @@ public abstract class EntityLiving extends Entity {
Vec3D vec3d = new Vec3D(this.locX(), this.getHeadY(), this.locZ());
Vec3D vec3d1 = new Vec3D(entity.locX(), entity.getHeadY(), entity.locZ());

View File

@ -20,7 +20,7 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index c86f947a4c9843beec08f2b2ac52c0021063c285..0dbd3e0cf72881b766b624621f8dcd0fff3b66b4 100644
index 07d23711cdb49c663859e3c0376dc5b08b479b0a..51bd0e6a5b0de30ebc8e9160c99d568c65b57d40 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -819,11 +819,13 @@ public abstract class EntityLiving extends Entity {

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Don't wake up entities when damage event is cancelled
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 0dbd3e0cf72881b766b624621f8dcd0fff3b66b4..93a5c897e9154c26b201177a4372bb6e5af42a78 100644
index 51bd0e6a5b0de30ebc8e9160c99d568c65b57d40..266174436b0fad60087afb86458fdc705577523c 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -1117,9 +1117,12 @@ public abstract class EntityLiving extends Entity {

View File

@ -30,7 +30,7 @@ index 2a91f07ca9c4dc0cb3b5aef5c9c1db7f69773530..7604fd83de9cfe93d427a9a1f6bbbee7
protected int getChestSlots() {
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 4fe5a8d0201d662c68dd58eeb8cf1d304787edb4..279662570c0bbd6c00b5732881cd35dfe694b25d 100644
index 365066cd7844261c5d437db17ebd61d0631ca140..59f0088eaa7f6682b2ddf34a2d5363b49738fdbe 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -132,6 +132,7 @@ public abstract class EntityLiving extends Entity {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] EntityMoveEvent
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 279662570c0bbd6c00b5732881cd35dfe694b25d..50cb2551598101d1c12007c53421b6c2f59ce2aa 100644
index 59f0088eaa7f6682b2ddf34a2d5363b49738fdbe..fdc0df2b08a586a584f9cfd0075aa68f129e4055 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2813,6 +2813,20 @@ public abstract class EntityLiving extends Entity {
@@ -2812,6 +2812,20 @@ public abstract class EntityLiving extends Entity {
this.collideNearby();
this.world.getMethodProfiler().exit();

View File

@ -118,7 +118,7 @@ index 7582a3a0955db2bc79daeced8e9c869f4276815a..7d9027d881e6e3eb0d1f8478ac7a1501
float f = difficultydamagescaler.d();
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 50cb2551598101d1c12007c53421b6c2f59ce2aa..02a49d9ddc58f44471f92cd40b8b968fc7984e73 100644
index fdc0df2b08a586a584f9cfd0075aa68f129e4055..f975fcf0acd80a0a6bdf9bd6fe5b15c013e4f09f 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -165,6 +165,7 @@ public abstract class EntityLiving extends Entity {

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Dont send useless entity packets
diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
index f322dccd834ff56b99f8796309709b5b6ac01456..228236bce14bfdf930570b453862dcfaae9e4823 100644
index 526c1419af7bd0b6098a8f9a0a24a64ba61c6ebc..81a82a1fa811956a8b5233677981c2d3783b34fb 100644
--- a/src/main/java/net/minecraft/server/EntityTrackerEntry.java
+++ b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
@@ -172,6 +172,7 @@ public class EntityTrackerEntry {

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Add option to set armorstand step height
diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java
index bf932bf0eea4e52603b3b4ec41013df7c930773d..41a36ce6d446b78bdd7a4739ad372a2ee19da116 100644
index 0ef9516fbe9283cb1aca71eb9dbdbec0d98c8fa4..9e37bf25689691f9640b294c482978e8e3b6e627 100644
--- a/src/main/java/net/minecraft/server/EntityArmorStand.java
+++ b/src/main/java/net/minecraft/server/EntityArmorStand.java
@@ -625,6 +625,7 @@ public class EntityArmorStand extends EntityLiving {

View File

@ -110,7 +110,7 @@ index 42e6761c8b18b79ffd3f4d5e853ea87a2c153c23..cfb009c811bd2908d38da1b0007cb7aa
public EntityCow createChild(WorldServer worldserver, EntityAgeable entityageable) {
return (EntityCow) EntityTypes.COW.a((World) worldserver);
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 02a49d9ddc58f44471f92cd40b8b968fc7984e73..65a54b6bf113ca6e88929e23c5d5cbfc6cfc7bad 100644
index f975fcf0acd80a0a6bdf9bd6fe5b15c013e4f09f..403bac8d8f921eab4bc0d60fb082eadd6996602b 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -80,7 +80,7 @@ public abstract class EntityLiving extends Entity {

View File

@ -22,7 +22,7 @@ index 2291135eaef64c403183724cb6e413cd7e472672..bc61aaff65a7dc1e7534452b285953b8
super(i, j, k);
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 65a54b6bf113ca6e88929e23c5d5cbfc6cfc7bad..4bd1322892e1c46addd795254d9ae6d3e7dc1e5b 100644
index 403bac8d8f921eab4bc0d60fb082eadd6996602b..49ba80902868574c6f4efcc3f80ad46fb762e4be 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -98,9 +98,9 @@ public abstract class EntityLiving extends Entity {

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Disable loot drops on death by cramming
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 4bd1322892e1c46addd795254d9ae6d3e7dc1e5b..bef80c83c551abe2cc23cf73e6c737313ad399c9 100644
index 49ba80902868574c6f4efcc3f80ad46fb762e4be..04bfc8cabaf0ffdb6834e01ae02cbd7b46cb4c4a 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -1493,8 +1493,10 @@ public abstract class EntityLiving extends Entity {

View File

@ -17,7 +17,7 @@ index 4ed4f31c8e34279f9aa9fd7bbddbb36239ea36ef..f18941c7c740959181b728ab9da06c7e
public void f(double d0, double d1, double d2) {
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index bef80c83c551abe2cc23cf73e6c737313ad399c9..9b1ecf6101e146843b4d2eeabc3e0e3c4fde54b5 100644
index 04bfc8cabaf0ffdb6834e01ae02cbd7b46cb4c4a..dc054574289cde53acc9eef34ac1d7c89b789d34 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2492,7 +2492,7 @@ public abstract class EntityLiving extends Entity {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Implement elytra settings
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 9b1ecf6101e146843b4d2eeabc3e0e3c4fde54b5..82ef4c9c534f4a0840a61d33c7727bd4770c7511 100644
index dc054574289cde53acc9eef34ac1d7c89b789d34..878199d01161953811d535ae49c817c82adf9776 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2851,7 +2851,16 @@ public abstract class EntityLiving extends Entity {
@@ -2850,7 +2850,16 @@ public abstract class EntityLiving extends Entity {
if (itemstack.getItem() == Items.ELYTRA && ItemElytra.d(itemstack)) {
flag = true;
if (!this.world.isClientSide && (this.be + 1) % 20 == 0) {

View File

@ -74,7 +74,7 @@ index d99cecc4075338d7b8f154ab94d8ac04190ba371..ec37d2c3b0393c43097bdfc6064ebe3a
+ // Purpur end
}
diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
index 228236bce14bfdf930570b453862dcfaae9e4823..ad06bd81eded5d60f16c2d0ad1a4390f4b5a11a5 100644
index 81a82a1fa811956a8b5233677981c2d3783b34fb..a9d60e5dc2f3b38a192a68d79bcf78e4873664a2 100644
--- a/src/main/java/net/minecraft/server/EntityTrackerEntry.java
+++ b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
@@ -106,6 +106,15 @@ public class EntityTrackerEntry {

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Add option to teleport to spawn if outside world border
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 82ef4c9c534f4a0840a61d33c7727bd4770c7511..bfbe9b82c14a525bffa96a8dfa071e8805ce6006 100644
index 878199d01161953811d535ae49c817c82adf9776..9f3b9b42c1509bfd71206702799421dd716e61e4 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -280,6 +280,7 @@ public abstract class EntityLiving extends Entity {

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Totems work in inventory
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index bfbe9b82c14a525bffa96a8dfa071e8805ce6006..c22fa35197ae23526a29bcbf69f3022ffc0701e1 100644
index 9f3b9b42c1509bfd71206702799421dd716e61e4..7e3acb424720c2bdac3d5c5da034087cb15dab23 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -1327,6 +1327,19 @@ public abstract class EntityLiving extends Entity {

View File

@ -2372,7 +2372,7 @@ index bdff2368836dca230a6622a205d5772834afc6ee..9ee03b233b71d1b4b85a9a5e1f0ea9fe
float f1 = 1.0F + (this.random.nextFloat() - this.random.nextFloat()) * 0.2F;
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index c22fa35197ae23526a29bcbf69f3022ffc0701e1..618739799bc5dc2550198465b1e46e494f473ad9 100644
index 7e3acb424720c2bdac3d5c5da034087cb15dab23..8182fe994179a7344ff2657a328e7d91e40a7673 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -462,7 +462,7 @@ public abstract class EntityLiving extends Entity {
@ -2406,7 +2406,7 @@ index c22fa35197ae23526a29bcbf69f3022ffc0701e1..618739799bc5dc2550198465b1e46e49
public void q(float f) {
this.bu = f;
}
@@ -2846,6 +2848,20 @@ public abstract class EntityLiving extends Entity {
@@ -2845,6 +2847,20 @@ public abstract class EntityLiving extends Entity {
}
}
// Purpur end

View File

@ -6,7 +6,7 @@ Subject: [PATCH] Apply display names from item forms of entities to entities
diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java
index 41a36ce6d446b78bdd7a4739ad372a2ee19da116..e6de89e7f57c3c130dedb8407cd4cd577d394b9a 100644
index 9e37bf25689691f9640b294c482978e8e3b6e627..759a8f95038778aead2f33a65a2d8f2d6b26a765 100644
--- a/src/main/java/net/minecraft/server/EntityArmorStand.java
+++ b/src/main/java/net/minecraft/server/EntityArmorStand.java
@@ -553,7 +553,13 @@ public class EntityArmorStand extends EntityLiving {

View File

@ -7,7 +7,7 @@ Configurable chance to spawn a wolf that is rabid.
Rabid wolves attack all players, mobs, and animals.
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 618739799bc5dc2550198465b1e46e494f473ad9..3836d772d07efb7e9a9e7ecc7141330f0cd15801 100644
index 8182fe994179a7344ff2657a328e7d91e40a7673..d4098a382b2cd4deb64c4bff007aed41fae7e7fc 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2094,6 +2094,7 @@ public abstract class EntityLiving extends Entity {

View File

@ -146,7 +146,7 @@ index d12de20cf4bb2345c616d3cc0b9f50bddb5135ee..3f3be1b2ded6ad118ae7860c1231c7af
// CraftBukkit start - fire ExplosionPrimeEvent
ExplosionPrimeEvent event = new ExplosionPrimeEvent((org.bukkit.entity.Explosive) this.getBukkitEntity());
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 3836d772d07efb7e9a9e7ecc7141330f0cd15801..8bceb152d9c7a3227c4bd3bb47964cf69abea0b4 100644
index d4098a382b2cd4deb64c4bff007aed41fae7e7fc..edc7cd59167ad713e178ec5fc565615240b45a9c 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -1472,7 +1472,7 @@ public abstract class EntityLiving extends Entity {

View File

@ -30,7 +30,7 @@ index cb4856e3bbb25e1077f5b4832f359549d57acd7e..41844f30a2a98eb14559b3ab0885ae73
this.inWater = false;
} else if (this.a((Tag) TagsFluid.WATER, 0.014D)) {
diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java
index e6de89e7f57c3c130dedb8407cd4cd577d394b9a..91df44d2e4f09fb612ae7bcb6c6a3dbb99aaba41 100644
index 759a8f95038778aead2f33a65a2d8f2d6b26a765..74fda434ed7beb6612f46ed75fdccad59f394b60 100644
--- a/src/main/java/net/minecraft/server/EntityArmorStand.java
+++ b/src/main/java/net/minecraft/server/EntityArmorStand.java
@@ -52,10 +52,12 @@ public class EntityArmorStand extends EntityLiving {

View File

@ -232,7 +232,7 @@ index a4bbf3d9520db9911a5709d8d8c60322ee2fb8e2..a61a9e71c435000eab1b906026767a45
try {
boolean execChunkTask = com.destroystokyo.paper.io.chunk.ChunkTaskManager.pollChunkWaitQueue() || ChunkProviderServer.this.world.asyncChunkTaskManager.pollNextChunkTask(); // Paper
diff --git a/src/main/java/net/minecraft/server/EntityTrackerEntry.java b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
index 4efc40c01ec12b80bd7cf9d35cf0ea0df973baf7..f322dccd834ff56b99f8796309709b5b6ac01456 100644
index 3960a975e74ed81c45819fe5e0f01c6c18252982..526c1419af7bd0b6098a8f9a0a24a64ba61c6ebc 100644
--- a/src/main/java/net/minecraft/server/EntityTrackerEntry.java
+++ b/src/main/java/net/minecraft/server/EntityTrackerEntry.java
@@ -74,6 +74,7 @@ public class EntityTrackerEntry {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Reduce allocation rate from crammed entities
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index d417878a1584c9e5ec33b94fc65b29f84fb3a5e9..4fe5a8d0201d662c68dd58eeb8cf1d304787edb4 100644
index 7b5bb97d410e20d3aa6b9222e4f8ad878e667bc8..365066cd7844261c5d437db17ebd61d0631ca140 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2858,7 +2858,11 @@ public abstract class EntityLiving extends Entity {
@@ -2857,7 +2857,11 @@ public abstract class EntityLiving extends Entity {
return;
}
// Paper - end don't run getEntities if we're not going to use its result
@ -21,7 +21,7 @@ index d417878a1584c9e5ec33b94fc65b29f84fb3a5e9..4fe5a8d0201d662c68dd58eeb8cf1d30
if (!list.isEmpty()) {
// Paper - move up
@@ -2887,6 +2891,9 @@ public abstract class EntityLiving extends Entity {
@@ -2886,6 +2890,9 @@ public abstract class EntityLiving extends Entity {
this.C(entity);
}
}

View File

@ -4650,7 +4650,7 @@ index 1aa070db60f5473576fb5d056cadde5106766489..24e6f3141ff4434f770e956a8d240bf8
}
diff --git a/src/main/java/net/minecraft/server/IChunkAccess.java b/src/main/java/net/minecraft/server/IChunkAccess.java
index 180b6b58dc5663158db84b6f1257591439b48c31..564703d87c47eab34a23cb5d159cc66cdbfc00a3 100644
index 180b6b58dc5663158db84b6f1257591439b48c31..eb0d794b7275af7f860e7c7b85a9e3b2aa4a863f 100644
--- a/src/main/java/net/minecraft/server/IChunkAccess.java
+++ b/src/main/java/net/minecraft/server/IChunkAccess.java
@@ -24,6 +24,36 @@ public interface IChunkAccess extends IBlockAccess, IStructureAccess {
@ -4698,14 +4698,16 @@ index 180b6b58dc5663158db84b6f1257591439b48c31..564703d87c47eab34a23cb5d159cc66c
Stream<BlockPosition> m();
TickList<Block> n();
@@ -142,6 +173,7 @@ public interface IChunkAccess extends IBlockAccess, IStructureAccess {
@@ -142,7 +173,9 @@ public interface IChunkAccess extends IBlockAccess, IStructureAccess {
return ashortlist[i];
}
+ default boolean isLit() { return this.r(); } // Tuinity - OBFHELPER
boolean r();
+ default void setLit(boolean lit) { this.b(lit); } // Tuinity - OBFHELPER
void b(boolean flag);
}
diff --git a/src/main/java/net/minecraft/server/ILightAccess.java b/src/main/java/net/minecraft/server/ILightAccess.java
index be5384ee41290b24b0c419c3e8f4553db34b2399..df28f7a6bf4c650a22ddf046eae4d5e8ca5879a9 100644
--- a/src/main/java/net/minecraft/server/ILightAccess.java
@ -4724,7 +4726,7 @@ index be5384ee41290b24b0c419c3e8f4553db34b2399..df28f7a6bf4c650a22ddf046eae4d5e8
IBlockAccess getWorld();
diff --git a/src/main/java/net/minecraft/server/LightEngineThreaded.java b/src/main/java/net/minecraft/server/LightEngineThreaded.java
index 2f9c97dd4e1d705a87772d18c7ab4883a876af08..168fe23177dfaa401396c1e460f56273ee0a59e4 100644
index 2f9c97dd4e1d705a87772d18c7ab4883a876af08..3c4c3e43b5b947f7332f2dd6d1f1dae4be7708ab 100644
--- a/src/main/java/net/minecraft/server/LightEngineThreaded.java
+++ b/src/main/java/net/minecraft/server/LightEngineThreaded.java
@@ -2,6 +2,11 @@ package net.minecraft.server;
@ -4840,8 +4842,8 @@ index 2f9c97dd4e1d705a87772d18c7ab4883a876af08..168fe23177dfaa401396c1e460f56273
+ } else {
+ this.holdingChunks.put(coordinate, current + 1);
+ }
+ }
+
}
+ protected final void releaseLightWorkChunk(int chunkX, int chunkZ) {
+ final long coordinate = MCUtil.getCoordinateKey(chunkX, chunkZ);
+ final int current = this.holdingChunks.get(coordinate);
@ -4906,8 +4908,8 @@ index 2f9c97dd4e1d705a87772d18c7ab4883a876af08..168fe23177dfaa401396c1e460f56273
+ }
+
+ return CompletableFuture.completedFuture(playerChunk.getAvailableChunkNow());
}
+ }
+
+ // note: task is discarded if the chunk is not at light status or if the chunk is not lit
+ protected final void scheduleLightWorkTask(int chunkX, int chunkZ, LightEngineThreaded.Update type, Runnable task) {
+ if (!org.bukkit.Bukkit.isPrimaryThread()) {
@ -5059,47 +5061,39 @@ index 2f9c97dd4e1d705a87772d18c7ab4883a876af08..168fe23177dfaa401396c1e460f56273
this.a(chunkcoordintpair.x, chunkcoordintpair.z, () -> {
return 0;
}, LightEngineThreaded.Update.PRE_UPDATE, SystemUtils.a(() -> {
@@ -277,6 +526,7 @@ public class LightEngineThreaded extends LightEngine implements AutoCloseable {
return;
}
// Paper end
+ if (this.theLightEngine == null) { // Tuinity - replace light engine impl
ChunkSection[] achunksection = ichunkaccess.getSections();
@@ -264,6 +513,31 @@ public class LightEngineThreaded extends LightEngine implements AutoCloseable {
public CompletableFuture<IChunkAccess> a(IChunkAccess ichunkaccess, boolean flag) {
ChunkCoordIntPair chunkcoordintpair = ichunkaccess.getPos();
for (int i = 0; i < 16; ++i) {
@@ -293,16 +543,29 @@ public class LightEngineThreaded extends LightEngine implements AutoCloseable {
super.a(blockposition, ichunkaccess.g(blockposition));
});
}
+ } else { // Tuinity start - replace light engine impl
+ // Tuinity start - replace light engine
+ if (this.theLightEngine != null) {
+ // make the completion of this future only depend on pre-update execution
+ // post-update is used for block updates, so by using pre here we prioritise chunk lighting
+ return CompletableFuture.supplyAsync(() -> {
+ Boolean[] emptySections = com.tuinity.tuinity.chunk.light.StarLightEngine.getEmptySectionsForChunk(ichunkaccess);
+ if (!flag) {
+ ichunkaccess.setLit(false);
+ this.theLightEngine.lightChunk(ichunkaccess, emptySections);
+ ichunkaccess.setLit(true);
+ } else {
+ this.theLightEngine.forceLoadInChunk(ichunkaccess, emptySections);
+ // can't really force the chunk to be edged checked, as we need neighbouring chunks - but we don't have
+ // them, so if it's not loaded then i guess we can't do edge checks. later loads of the chunk should
+ // catch what we miss here.
+ this.theLightEngine.checkChunkEdges(chunkcoordintpair.x, chunkcoordintpair.z);
+ }
+
+ } // Tuinity end - replace light engine impl
// this.d.c(chunkcoordintpair); // Paper - move into post task below
}, () -> {
return "lightChunk " + chunkcoordintpair + " " + flag;
// Paper start - merge the 2 together
}), () -> {
- this.d.c(chunkcoordintpair); // Paper - release light tickets as post task to ensure they stay loaded until fully done
+ this.d.c(chunkcoordintpair); // Paper - release light tickets as post task to ensure they stay loaded until fully done // Tuinity - diff on change, copied to top of method for early return if the chunk is already lit
if (skippedPre[0]) return; // Paper - future's already complete
ichunkaccess.b(true);
- super.b(chunkcoordintpair, false);
+ if (this.theLightEngine == null) super.b(chunkcoordintpair, false); // Tuinity - replace light engine impl
// Paper start
future.complete(ichunkaccess);
});
@@ -311,7 +574,7 @@ public class LightEngineThreaded extends LightEngine implements AutoCloseable {
+ // safe to move the release light to here, as all the work required is done now
+ this.playerChunkMap.removeLightTicket(chunkcoordintpair); // copied from below
+ return ichunkaccess;
+ }, (runnable) -> {
+ LightEngineThreaded.this.scheduleTask(chunkcoordintpair.x, chunkcoordintpair.z, LightEngineThreaded.Update.PRE_UPDATE, runnable);
+ LightEngineThreaded.this.queueUpdate();
+ });
+ }
+ // Tuinity end - replace light engine
+
// Paper start
//ichunkaccess.b(false); // Don't need to disable this
long pair = chunkcoordintpair.pair();
@@ -311,7 +585,7 @@ public class LightEngineThreaded extends LightEngine implements AutoCloseable {
}
public void queueUpdate() {
@ -5108,7 +5102,7 @@ index 2f9c97dd4e1d705a87772d18c7ab4883a876af08..168fe23177dfaa401396c1e460f56273
this.b.a((() -> { // Paper - decompile error
this.b();
this.g.set(false);
@@ -325,17 +588,36 @@ public class LightEngineThreaded extends LightEngine implements AutoCloseable {
@@ -325,17 +599,36 @@ public class LightEngineThreaded extends LightEngine implements AutoCloseable {
private final java.util.List<Runnable> pre = new java.util.ArrayList<>();
private final java.util.List<Runnable> post = new java.util.ArrayList<>();
private void b() {
@ -5293,6 +5287,18 @@ index 8b4ab23563a9a0c047267143dc3c6c5545d6c125..ac82f1791ce07e9a23cf97ca34974ab2
}
}
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index caaffea1b670ddfd20bf39cbd55da1c5cf561288..9be1581868627b99709bcd446de6dc89c34b42d3 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -1316,6 +1316,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
// Tuinity end - force competion on the main thread
}
+ protected final void removeLightTicket(ChunkCoordIntPair chunkcoordintpair) { this.c(chunkcoordintpair); } // Tuinity - OBFHELPER
protected void c(ChunkCoordIntPair chunkcoordintpair) {
this.executor.a(SystemUtils.a(() -> {
this.chunkDistanceManager.b(TicketType.LIGHT, chunkcoordintpair, 33 + ChunkStatus.a(ChunkStatus.FEATURES), chunkcoordintpair);
diff --git a/src/main/java/net/minecraft/server/ProtoChunk.java b/src/main/java/net/minecraft/server/ProtoChunk.java
index a3ac883500eaebb353ad3108a17b5c740e384b03..d8b759874545293764690b2ba08a4bd7605c76ae 100644
--- a/src/main/java/net/minecraft/server/ProtoChunk.java

View File

@ -44,7 +44,7 @@ index 55fa3911703f96cf1f97c82b19d8e2d0d220016b..b92ca4a6de01f3f86367fb8dfe3591b0
Vec3D vec3d = new Vec3D(((double) pathpoint.a + this.a.locX()) / 2.0D, ((double) pathpoint.b + this.a.locY()) / 2.0D, ((double) pathpoint.c + this.a.locZ()) / 2.0D);
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index caaffea1b670ddfd20bf39cbd55da1c5cf561288..e136195f3e806c50492b89811e82940fd38bafa6 100644
index 9be1581868627b99709bcd446de6dc89c34b42d3..5fe928e4511f320aef1f3b94a092d2a7d8450706 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -291,7 +291,15 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {

View File

@ -25,7 +25,7 @@ index 13d067f48647dea63ef1bf3a2a3e0868074ba75f..04afd7f285db2f281a038e0be6f557b8
this.a(Long.MAX_VALUE, i, j, flag);
}
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
index e136195f3e806c50492b89811e82940fd38bafa6..16779ffa00caf32752170700e1d88092802fa932 100644
index 5fe928e4511f320aef1f3b94a092d2a7d8450706..a42571cfd2c9c80df27e59db832cb64c2a64e141 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -838,6 +838,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {

View File

@ -47,7 +47,7 @@ index 3ee8d31c453105eca7b96bede39a9ebbf40e1c2c..0a9f03526abf0638ada15d9810b94988
this.setAllowFlight(dedicatedserverproperties.allowFlight);
this.setResourcePack(dedicatedserverproperties.resourcePack, this.ba());
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 93a5c897e9154c26b201177a4372bb6e5af42a78..41027a01aa331315e8c17a100f29fa6f00f85988 100644
index 266174436b0fad60087afb86458fdc705577523c..05e1cbfa603ec6910b2565fb98513b6b366f2379 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -270,6 +270,7 @@ public abstract class EntityLiving extends Entity {

View File

@ -59,10 +59,10 @@ index f452cc575adf9137f3b9f1eef1904f8116c7a7ec..15aa603a771c327879a4088609850fb8
}
\ No newline at end of file
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 41027a01aa331315e8c17a100f29fa6f00f85988..ab873b37a818b304d097dbe1958885235ba7077f 100644
index 05e1cbfa603ec6910b2565fb98513b6b366f2379..0985a4498fbfaa3652041627b8a4d7d6bb8165fc 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2932,7 +2932,7 @@ public abstract class EntityLiving extends Entity {
@@ -2931,7 +2931,7 @@ public abstract class EntityLiving extends Entity {
// Paper - end don't run getEntities if we're not going to use its result
// Tuinity start - reduce memory allocation from collideNearby
List<Entity> list = com.tuinity.tuinity.util.CachedLists.getTempGetEntitiesList();

View File

@ -39,10 +39,10 @@ index 5d3bb5f393a1e0e4a2e8b9a466530a91279697a9..7f084e7f11a829c10d113c7fb39eec0b
if (enumdirection2 != EnumDirection.DOWN && world.isBlockFacePowered(blockposition1.shift(enumdirection2), enumdirection2)) {
return true;
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index ab873b37a818b304d097dbe1958885235ba7077f..62948f586e298d711fbe893ab29d6d61dc6bb62f 100644
index 0985a4498fbfaa3652041627b8a4d7d6bb8165fc..5727981e59f8ebe5ae2a955313e19080fce6ecd6 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2616,10 +2616,12 @@ public abstract class EntityLiving extends Entity {
@@ -2615,10 +2615,12 @@ public abstract class EntityLiving extends Entity {
}

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Fix LightEngineThreaded memory leak
diff --git a/src/main/java/net/minecraft/server/LightEngineThreaded.java b/src/main/java/net/minecraft/server/LightEngineThreaded.java
index 168fe23177dfaa401396c1e460f56273ee0a59e4..4141cf02690e13350a10cdfa5e09344c56703f04 100644
index 3c4c3e43b5b947f7332f2dd6d1f1dae4be7708ab..be4193a1c1f4d7bb62d42b786f33f636863a3dfb 100644
--- a/src/main/java/net/minecraft/server/LightEngineThreaded.java
+++ b/src/main/java/net/minecraft/server/LightEngineThreaded.java
@@ -110,6 +110,8 @@ public class LightEngineThreaded extends LightEngine implements AutoCloseable {

@ -1 +1 @@
Subproject commit 459bb20578ad026c4cb879ac8206ed68de0b7602
Subproject commit 1b054681ed6b0263eee1d10864ee58e3ea04bc29

@ -1 +1 @@
Subproject commit 7b0b3f74e188b9502d712c78c4b8a4bcceaf8046
Subproject commit f3644e18a2dd656fea2e3de5bd8e020252c5fc78

@ -1 +1 @@
Subproject commit d3ee22224addb3d6997feedf4eba95962786f7d7
Subproject commit f8c0db48055c9374597c05cd8359db2147432216

View File

@ -1 +1 @@
459bb20578ad026c4cb879ac8206ed68de0b7602
1b054681ed6b0263eee1d10864ee58e3ea04bc29

View File

@ -1 +1 @@
7b0b3f74e188b9502d712c78c4b8a4bcceaf8046
f3644e18a2dd656fea2e3de5bd8e020252c5fc78

View File

@ -1 +1 @@
d3ee22224addb3d6997feedf4eba95962786f7d7
f8c0db48055c9374597c05cd8359db2147432216