Updated Upstream and Sidestream(s) (Tuinity/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:
69e6a4c Updated Upstream (Paper)

Purpur Changes:
391f9ad Updated Upstream (Paper)
This commit is contained in:
Ivan Pekov 2020-12-17 09:48:17 +02:00
parent d072a3583a
commit 2b78178637
No known key found for this signature in database
GPG Key ID: BC975C392D9CA3A3
44 changed files with 36 additions and 62 deletions

View File

@ -80,7 +80,6 @@ This is an overview over all patches that are currently used.
| server | Lagging threshold | William Blake Galbreath | |
| server | MC-147659 - Fix non black cats spawning in swamp huts | William Blake Galbreath | |
| server | MC-168772 Fix - Add turtle egg block options | William Blake Galbreath | |
| server | MC-4 Fix - Item position desync | William Blake Galbreath | |
| api | Modify POM | YatopiaMC | |
| server | Modify POM | YatopiaMC | |
| server | Modify default configs | tr7zw | |
@ -111,7 +110,6 @@ This is an overview over all patches that are currently used.
| server | Reduce projectile chunk loading | Paul Sauve | |
| server | Remove some streams and object allocations | Phoenix616 | |
| server | Respect PlayerKickEvent leaveMessage | Ivan Pekov | |
| server | Send more packets immediately | MrIvanPlays | |
| server | Shutdown Bootstrap thread pool | foss-mc | |
| server | Signs allow color codes | William Blake Galbreath | |
| server | Signs editable on right click | William Blake Galbreath | |

2
Purpur

@ -1 +1 @@
Subproject commit 2edb086e130819eca455926b73a088b7296386ed
Subproject commit 391f9addfd4be14e6f8b97c8ed8ce9f90919811d

@ -1 +1 @@
Subproject commit de6c2394d6db79d1263d64ebee43d26a4c8f6e8c
Subproject commit 69e6a4cbf368ecbe167afb983666ccdf1463108a

View File

@ -1 +1 @@
Purpur-config-files&Timings-stuff&Add-component-util&Barrels-and-enderchests-6-rows&Lagging-threshold&Configurable-villager-brain-ticks&Alternative-Keepalive-Handling&MC-168772-Fix-Add-turtle-egg-block-options&MC-4-Fix-Item-position-desync&Fix-outdated-server-showing-in-ping-before-server-fu&Dont-send-useless-entity-packets&MC-147659-Fix-non-black-cats-spawning-in-swamp-huts&Cows-eat-mushrooms&Snowman-drop-and-put-back-pumpkin&Signs-editable-on-right-click&Signs-allow-color-codes&Allow-soil-to-moisten-from-water-directly-under-it&Option-to-toggle-milk-curing-bad-omen&Fix-the-dead-lagging-the-server&Skip-events-if-there-s-no-listeners&Add-permission-for-F3-N-debug&Allow-leashing-villagers&PaperPR-Projectile-load-save-limit-per-chunk&Add-5-second-tps-average-in-tps&Entity-lifespan&Squid-EAR-immunity&Allow-anvil-colors&Add-no-tick-block-list&Add-option-to-disable-dolphin-treasure-searching&Stop-squids-floating-on-top-of-water&Despawn-rate-config-options-per-projectile-type&PaperPR-Add-hex-color-code-support-for-console-loggi&Persistent-TileEntity-Lore-and-DisplayName&Infinity-bow-settings&Allow-infinite-and-mending-enchantments-together&Config-migration-disable-saving-projectiles-to-disk-&Spread-out-and-optimise-player-list-ticks
Purpur-config-files&Timings-stuff&Add-component-util&Barrels-and-enderchests-6-rows&Lagging-threshold&Configurable-villager-brain-ticks&Alternative-Keepalive-Handling&MC-168772-Fix-Add-turtle-egg-block-options&Fix-outdated-server-showing-in-ping-before-server-fu&Dont-send-useless-entity-packets&MC-147659-Fix-non-black-cats-spawning-in-swamp-huts&Cows-eat-mushrooms&Snowman-drop-and-put-back-pumpkin&Signs-editable-on-right-click&Signs-allow-color-codes&Allow-soil-to-moisten-from-water-directly-under-it&Option-to-toggle-milk-curing-bad-omen&Fix-the-dead-lagging-the-server&Skip-events-if-there-s-no-listeners&Add-permission-for-F3-N-debug&Allow-leashing-villagers&PaperPR-Projectile-load-save-limit-per-chunk&Add-5-second-tps-average-in-tps&Entity-lifespan&Squid-EAR-immunity&Allow-anvil-colors&Add-no-tick-block-list&Add-option-to-disable-dolphin-treasure-searching&Stop-squids-floating-on-top-of-water&Despawn-rate-config-options-per-projectile-type&PaperPR-Add-hex-color-code-support-for-console-loggi&Persistent-TileEntity-Lore-and-DisplayName&Infinity-bow-settings&Allow-infinite-and-mending-enchantments-together&Config-migration-disable-saving-projectiles-to-disk-&Spread-out-and-optimise-player-list-ticks

View File

@ -411,7 +411,7 @@ index 39dce006ebf2bd81a9d6c62c25eb9bd55d24199e..00000000000000000000000000000000
- }
- // Spigot Start
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
index 41e2eb2c7691cdf515403f7280c075a531598e34..6297d874379b43202e32471086d7720e8c03c88b 100644
index 23bc865ea46b9113194f7da023310b8559f8b819..6c25e22da6568837c636d0a30c970676184b576d 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -1,5 +1,6 @@
@ -433,11 +433,16 @@ index 41e2eb2c7691cdf515403f7280c075a531598e34..6297d874379b43202e32471086d7720e
public static double laggingThreshold = 19.0D;
private static void tickLoopSettings() {
laggingThreshold = getDouble("settings.lagging-threshold", laggingThreshold);
@@ -172,4 +168,30 @@ public class PurpurConfig {
private static void fixItemPositionDesync() {
fixItemPositionDesync = getBoolean("settings.fix-item-position-desync", fixItemPositionDesync);
@@ -162,4 +158,35 @@ public class PurpurConfig {
InventoryType.ENDER_CHEST.setDefaultSize(enderChestSixRows ? 54 : 27);
enderChestPermissionRows = getBoolean("settings.blocks.ender_chest.use-permissions-for-rows", enderChestPermissionRows);
}
+
+ public static boolean dontSendUselessEntityPackets = false;
+ private static void dontSendUselessEntityPackets() {
+ dontSendUselessEntityPackets = getBoolean("settings.dont-send-useless-entity-packets", dontSendUselessEntityPackets);
+ }
+
+ public static boolean allowInfinityMending = false;
+ private static void enchantmentSettings() {
+ if (version < 5) {
@ -445,7 +450,7 @@ index 41e2eb2c7691cdf515403f7280c075a531598e34..6297d874379b43202e32471086d7720e
+ set("settings.enchantment.allow-infinity-and-mending-together", oldValue);
+ set("settings.enchantment.allow-infinite-and-mending-together", null);
+ }
+ allowInfinityMending = getBoolean("settings.enchantment.allow-infinity-and-mending-together", allowInfinityMending);
+ allowInfinityMending = getBoolean("settings.enchantment.allow-infinity-and-mending-together", allowInfinityMending);
+ }
+
+ public static boolean useHexColorsInConsole = true;

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Modify default configs
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
index e21ef1bdc61b7ae98eb752130a4d125c78c652d9..d0ee3aeb973146b55c3b194c9407e9e5f91a0f62 100644
index 5e24ddc7dce6f6ed45267df3217177583bdd9eb0..62e120242ec8cfbadc4d9e1b81f4ccc19c240aed 100644
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
@@ -206,7 +206,7 @@ public class PaperConfig {

View File

@ -5,7 +5,7 @@ Subject: [PATCH] Item stuck sleep config
diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java
index f2af9cb9d7c88c51a1a2e004a0eeb47b3d407b44..4812adaadc7a28794590849d4773a4fa66a7f913 100644
index 0ea6d243dfafab2184147f365ded3f992d9eda61..a3b0fa6afdc47b1589be58e0ddd2e69455ad31fb 100644
--- a/src/main/java/net/minecraft/server/EntityItem.java
+++ b/src/main/java/net/minecraft/server/EntityItem.java
@@ -82,7 +82,7 @@ public class EntityItem extends Entity {

View File

@ -1,29 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: MrIvanPlays <ivan@mrivanplays.com>
Date: Mon, 17 Aug 2020 08:51:44 +0300
Subject: [PATCH] Send more packets immediately
Paper did some changes around packet sending by introducing a queue and making (most of) the PLAY packets
send synchronously. This is completely fine, however the are some people who want to have better experience
with "cosmetic" stuff such as boss bar's, title's and scoreboard's. We allow those packets to pass instantly,
as the server shouldn't really care about those packets - they're not related with overall gameplay.
Additionally, I'm thinking of making those packets send asynchronously.
diff --git a/src/main/java/net/minecraft/server/NetworkManager.java b/src/main/java/net/minecraft/server/NetworkManager.java
index 7a2a8acea90a0e6f08f366c3d397a515f38e5395..d346ecbd67f9ed48a343fdbc7e8b81b0e7dda3d9 100644
--- a/src/main/java/net/minecraft/server/NetworkManager.java
+++ b/src/main/java/net/minecraft/server/NetworkManager.java
@@ -289,7 +289,11 @@ public class NetworkManager extends SimpleChannelInboundHandler<Packet<?>> {
return networkManager.isPending || networkManager.protocol != EnumProtocol.PLAY ||
packet instanceof PacketPlayOutKeepAlive ||
packet instanceof PacketPlayOutChat ||
- packet instanceof PacketPlayOutTabComplete;
+ packet instanceof PacketPlayOutTabComplete || // Yatopia
+ // Yatopia start
+ packet instanceof PacketPlayOutBoss ||
+ packet instanceof PacketPlayOutTitle;
+ // Yatopia end
}
// Paper end
}

View File

@ -5,11 +5,11 @@ Subject: [PATCH] ProxyForwardDataEvent
diff --git a/src/main/java/net/minecraft/server/HandshakeListener.java b/src/main/java/net/minecraft/server/HandshakeListener.java
index 1d60def8fa7041b3383c287153cbb9c6cec3d0f9..4b7caf04981e811c937f44b27662a9c220ba62f5 100644
index 79f726ef43e70b8882890007146df199824d14e3..edb7a9de55718d9c860c82580aca78c3d254ad57 100644
--- a/src/main/java/net/minecraft/server/HandshakeListener.java
+++ b/src/main/java/net/minecraft/server/HandshakeListener.java
@@ -92,6 +92,7 @@ public class HandshakeListener implements PacketHandshakingInListener {
this.getNetworkManager().socketAddress = new java.net.InetSocketAddress(event.getSocketAddressHostname(), ((java.net.InetSocketAddress) this.getNetworkManager().getSocketAddress()).getPort());
if (event.getSocketAddressHostname() != null) this.getNetworkManager().socketAddress = new java.net.InetSocketAddress(event.getSocketAddressHostname(), ((java.net.InetSocketAddress) this.getNetworkManager().getSocketAddress()).getPort());
this.getNetworkManager().spoofedUUID = event.getUniqueId();
this.getNetworkManager().spoofedProfile = gson.fromJson(event.getPropertiesJson(), com.mojang.authlib.properties.Property[].class);
+ if (proxyLogicEnabled) c.proxyProfileSpoof = true; // Yatopia
@ -83,7 +83,7 @@ index d987483255195c0bde713a92676baced1eaff2b3..2fa0f21cfa81670f6c3f18f76e7fa8d0
} catch (Exception ex) {
disconnect("Failed to verify username!");
diff --git a/src/main/java/net/minecraft/server/NetworkManager.java b/src/main/java/net/minecraft/server/NetworkManager.java
index d346ecbd67f9ed48a343fdbc7e8b81b0e7dda3d9..837056fdd8b8125bcfe39a1d49fa6e1797bba708 100644
index 6a0ec0105399066dede622b45c9471b32c162cf6..8ae1378e4cb5694130630943a84884dddecb9b3b 100644
--- a/src/main/java/net/minecraft/server/NetworkManager.java
+++ b/src/main/java/net/minecraft/server/NetworkManager.java
@@ -51,6 +51,7 @@ public class NetworkManager extends SimpleChannelInboundHandler<Packet<?>> {

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Respect PlayerKickEvent leaveMessage
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 4856247662012b6bdfe192d1b91167c91afead74..3c6ad3d5802f66d60e0087a16aedcd12254da420 100644
index 81ac7dae3b51c67a1a279fdb96cd1d50dd901f0b..c0fa18179cdd5367a5b346d7f795f969c0a6e2b7 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -318,7 +318,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -323,7 +323,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
this.networkManager.sendPacket(new PacketPlayOutKickDisconnect(ichatbasecomponent), (future) -> {
this.networkManager.close(ichatbasecomponent);
});
@ -17,7 +17,7 @@ index 4856247662012b6bdfe192d1b91167c91afead74..3c6ad3d5802f66d60e0087a16aedcd12
this.networkManager.stopReading();
MinecraftServer minecraftserver = this.minecraftServer;
NetworkManager networkmanager = this.networkManager;
@@ -1676,6 +1676,11 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -1681,6 +1681,11 @@ public class PlayerConnection implements PacketListenerPlayIn {
@Override
public void a(IChatBaseComponent ichatbasecomponent) {
@ -29,7 +29,7 @@ index 4856247662012b6bdfe192d1b91167c91afead74..3c6ad3d5802f66d60e0087a16aedcd12
// CraftBukkit start - Rarely it would send a disconnect line twice
if (this.processedDisconnect) {
return;
@@ -1691,7 +1696,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -1696,7 +1701,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
*/
this.player.p();

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Configurable flight checks
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 3c6ad3d5802f66d60e0087a16aedcd12254da420..3c68815c80b8f40d1b07bad080b3059c649b0b0e 100644
index c0fa18179cdd5367a5b346d7f795f969c0a6e2b7..86eb4b768eb52f0ff9371c65260c633f818e91af 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -175,7 +175,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -179,7 +179,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
++this.e;
this.processedMovePackets = this.receivedMovePackets;
if (this.B && !this.player.isSleeping()) {
@ -17,7 +17,7 @@ index 3c6ad3d5802f66d60e0087a16aedcd12254da420..3c68815c80b8f40d1b07bad080b3059c
PlayerConnection.LOGGER.warn("{} was kicked for floating too long!", this.player.getDisplayName().getString());
this.disconnect(com.destroystokyo.paper.PaperConfig.flyingKickPlayerMessage); // Paper - use configurable kick message
return;
@@ -194,7 +194,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -198,7 +198,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
this.w = this.r.locY();
this.x = this.r.locZ();
if (this.D && this.player.getRootVehicle().getRidingPassenger() == this.player) {

View File

@ -6,10 +6,10 @@ Subject: [PATCH] Configurable criterion triggers
This patch adds toggles for three criterion triggers that are called every tick. These can be very unnecessary, and especially in the case of CriterionTriggerEnterBlock, quite heavy.
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 42451ff5b9b345cd549fcbb496fc7bc053935580..1f54ce29006749e59cb4088b260b70596884a45d 100644
index 9b4c3b1a6eab4b399b3bfe957defcba585cb95d6..bb8c5ba0eccc2633652f662bb7fe2dcae2f2db18 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -431,6 +431,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -433,6 +433,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@Override
protected void a(IBlockData iblockdata) {
@ -17,7 +17,7 @@ index 42451ff5b9b345cd549fcbb496fc7bc053935580..1f54ce29006749e59cb4088b260b7059
CriterionTriggers.d.a(this, iblockdata);
}
@@ -573,7 +574,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -575,7 +576,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
this.playerConnection.sendPacket(new PacketPlayOutExperience(this.exp, this.expTotal, this.expLevel));
}

View File

@ -5,10 +5,10 @@ Subject: [PATCH] Configurable movement checks
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index 3c68815c80b8f40d1b07bad080b3059c649b0b0e..8344cebaf0255752fbf51e7dedc1965769bfeb56 100644
index 86eb4b768eb52f0ff9371c65260c633f818e91af..7353cf860245dfa051f93a8d32a9c3b14b063af2 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -438,7 +438,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -443,7 +443,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
}
// Paper end
@ -17,7 +17,7 @@ index 3c68815c80b8f40d1b07bad080b3059c649b0b0e..8344cebaf0255752fbf51e7dedc19657
// CraftBukkit end
PlayerConnection.LOGGER.warn("{} (vehicle of {}) moved too quickly! {},{},{}", entity.getDisplayName().getString(), this.player.getDisplayName().getString(), d6, d7, d8);
this.networkManager.sendPacket(new PacketPlayOutVehicleMove(entity));
@@ -463,7 +463,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -468,7 +468,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
d10 = d6 * d6 + d7 * d7 + d8 * d8;
boolean flag1 = false;
@ -26,7 +26,7 @@ index 3c68815c80b8f40d1b07bad080b3059c649b0b0e..8344cebaf0255752fbf51e7dedc19657
flag1 = true;
PlayerConnection.LOGGER.warn("{} (vehicle of {}) moved wrongly! {}", entity.getDisplayName().getString(), this.player.getDisplayName().getString(), Math.sqrt(d10));
}
@@ -1150,7 +1150,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -1155,7 +1155,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
if (!this.player.H() && (!this.player.getWorldServer().getGameRules().getBoolean(GameRules.DISABLE_ELYTRA_MOVEMENT_CHECK) || !this.player.isGliding())) {
float f2 = this.player.isGliding() ? 300.0F : 100.0F;
@ -35,7 +35,7 @@ index 3c68815c80b8f40d1b07bad080b3059c649b0b0e..8344cebaf0255752fbf51e7dedc19657
// CraftBukkit end
PlayerConnection.LOGGER.warn("{} moved too quickly! {},{},{}", this.player.getDisplayName().getString(), d7, d8, d9);
this.a(this.player.locX(), this.player.locY(), this.player.locZ(), this.player.yaw, this.player.pitch);
@@ -1216,7 +1216,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -1221,7 +1221,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
d11 = d7 * d7 + d8 * d8 + d9 * d9;
boolean flag1 = false;

View File

@ -84,10 +84,10 @@ index 6891e61bcfea82958e100abaef94865bf36a32c2..32ccc08455a88c510fe05713c8de7a5e
this.am = EntityFishingHook.HookState.FLYING;
this.Y = true;
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 1f54ce29006749e59cb4088b260b70596884a45d..6fe7151ba7d8ad105bf21aa89be5a7ab2f2aa0ca 100644
index bb8c5ba0eccc2633652f662bb7fe2dcae2f2db18..42c6d26131fa144707e0ecb244a8a3b26a19a383 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -186,7 +186,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -188,7 +188,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
long l = k * k;
int i1 = l > 2147483647L ? Integer.MAX_VALUE : (int) l;
int j1 = this.u(i1);
@ -96,7 +96,7 @@ index 1f54ce29006749e59cb4088b260b70596884a45d..6fe7151ba7d8ad105bf21aa89be5a7ab
for (int l1 = 0; l1 < i1; ++l1) {
int i2 = (k1 + j1 * l1) % i1;
@@ -224,7 +224,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -226,7 +226,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
long l = k * k;
int i1 = l > 2147483647L ? Integer.MAX_VALUE : (int) l;
int j1 = this.u(i1);