9
0
mirror of https://github.com/Winds-Studio/Leaf.git synced 2025-12-19 15:09:25 +00:00
Files
Leaf/leaf-server/minecraft-patches/features/0123-SparklyPaper-Skip-distanceToSqr-call-in-ServerEntity.patch
Dreeam acc71b20a9 Updated Upstream (Paper/Purpur)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@89cdcba5 [ci/skip] Replace wiki mention for BlockType#isOccluding (#12446)
PaperMC/Paper@5f0b8292 Re-add chunk position check to regionfile recalculation patch
PaperMC/Paper@04b91129 Update projects dependents GitHub Action (#12436)
PaperMC/Paper@def0532f Fix writing headers and update to be more papery (#12459)
PaperMC/Paper@d22644aa Expand cooldown API (#12435)
PaperMC/Paper@df429932 Fix floating warning log when the kick event is canceled (#12374)
PaperMC/Paper@a820bdae [ci/skip] Some javadoc fixes
PaperMC/Paper@55f20209 Fix CCE in LingeringPotionSplashEvent (#12463)
PaperMC/Paper@1410a22b Fix passengers sending when riding players
PaperMC/Paper@767868dd Fix some components (#12457)
PaperMC/Paper@9cddf136 Fix portal create event block list (#12373)
PaperMC/Paper@a112d370 Fix horse_variant and tropical_fish_pattern (#12472)
PaperMC/Paper@a211ac2e Remove unused warning (#12478)
PaperMC/Paper@ae512811 Add isSuffocating to Block and BlockState (#12445)
PaperMC/Paper@3409e2d7 Mace was not included in the ENCHANTABLE MaterialSetTag (#12476)
PaperMC/Paper@1cfc96bc Add keyStream() API to registries (#12479)
PaperMC/Paper@3222985e [ci/skip] Rebuild patches
PaperMC/Paper@deaccd2c [ci/skip] Add file reference url to help.yml (#12481)
PaperMC/Paper@f86b4352 Add vault change state event (#12069)
PaperMC/Paper@3e3b42cd Update player chat session sync (#12382)
PaperMC/Paper@f8fa4f6f Add method to retrieve FishHook (#12310)
PaperMC/Paper@b9d3147d Use correct placed block position for sound (#12410)
PaperMC/Paper@952338b3 [ci/skip] Add missing exception docs to Player#listPlayer (#12488)
PaperMC/Paper@1db37853 [ci/skip] improve javadoc for off-hand swaps through getHotbarButton (#12489)
PaperMC/Paper@d1810f24 Allow Server#getDefaultGameMode before worlds are initialized (#12490)
PaperMC/Paper@02d20ff7 Fix NPE in Server#getMap before worlds are loaded (#12492)
PaperMC/Paper@9e873f50 Fix inconsistencies between offline/online spawn position getter (#11960)
PaperMC/Paper@fc0c3717 Fix handling of resultant crafting container from craftItemResult (#12307)
PaperMC/Paper@a7a76c8f Add methods for Armadillo (#12031)
PaperMC/Paper@a74400d9 Update adventure to 4.21.0 (#12499)
PaperMC/Paper@1e930763 Fix ipv6 loopback addresses being able to get connection throttled (#12155)
PaperMC/Paper@646b80ca Fix unnecessary map data saves (#12296)
PaperMC/Paper@e663f999 Add combat tracker API (#11853)
PaperMC/Paper@cd4fe5b7 [ci/skip] Drop non-applicable ATs (#12498)
PaperMC/Paper@5acfdd6a Fix save/load NaN Entity Motion (#12269)
PaperMC/Paper@2754d7c3 Add Throw EntityChangeBlockEvent for BrushableBlockEntity#brush (#12133)
PaperMC/Paper@567f63ae Parity for respawn events (#11792)
PaperMC/Paper@bc3d946f Normalizes CraftEntity#toString/getHandle (#12170)
PaperMC/Paper@0e9b94d5 Fix ItemStack amount issues with Chat Components (#12216)
PaperMC/Paper@835b9559 Add a method on InventoryView to get the MenuType (#12193)
PaperMC/Paper@c9411bfb Fix min ItemStack amount check for asHoverEvent (#12505)
PaperMC/Paper@1acf3b38 Infer block entity data in brigadier blockstate argument (#12197)
PaperMC/Paper@b9b3cd65 Use components instead of ChatColor in more places  (#12507)
PaperMC/Paper@ec421715 Add missing spaces back (#12508)

Purpur Changes:
PurpurMC/Purpur@c3870bda Updated Upstream (Paper)
PurpurMC/Purpur@8b5044e0 [ci/skip] add idea project icon
PurpurMC/Purpur@f2f682fb Updated Upstream (Paper)
PurpurMC/Purpur@bdeba761 Updated Upstream (Paper)
PurpurMC/Purpur@96f5b044 drop void damage height/damage migration
PurpurMC/Purpur@6cc78b63 Updated Upstream (Paper)
PurpurMC/Purpur@4ce97c1d [ci/skip] Update occurences of version numbers to 1.21.5 (#1658)
PurpurMC/Purpur@7f5c4036 Updated Upstream (Paper)
PurpurMC/Purpur@4fdf1d11 Updated Upstream (Paper)
PurpurMC/Purpur@8c77678e Updated Upstream (Paper)
2025-05-02 03:10:20 -04:00

33 lines
1.9 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: MrPowerGamerBR <git@mrpowergamerbr.com>
Date: Wed, 15 Nov 2023 23:39:36 -0300
Subject: [PATCH] SparklyPaper: Skip "distanceToSqr" call in
"ServerEntity#sendChanges" if the delta movement hasn't changed
Original project: https://github.com/SparklyPower/SparklyPaper
The "distanceToSqr" call is a bit expensive, so avoiding it is pretty nice, around ~15% calls are skipped with this check
We could also check if the x,y,z coordinates are equal, but for now, let's just keep the identity check, which also helps us since Minecraft's code does reuse the original delta movement Vec3 object
diff --git a/net/minecraft/server/level/ServerEntity.java b/net/minecraft/server/level/ServerEntity.java
index 0db57c334bef3b6473ae1b734f953e150862eab5..27e8c6a61cfa30b4e5bcc8ac30b0023940d9f310 100644
--- a/net/minecraft/server/level/ServerEntity.java
+++ b/net/minecraft/server/level/ServerEntity.java
@@ -211,6 +211,7 @@ public class ServerEntity {
if (this.entity.hasImpulse || this.trackDelta || this.entity instanceof LivingEntity && ((LivingEntity)this.entity).isFallFlying()) {
Vec3 deltaMovement = this.entity.getDeltaMovement();
+ if (deltaMovement != this.lastSentMovement) { // SparklyPaper start - skip distanceToSqr call in ServerEntity#sendChanges if the delta movement hasn't changed
double d = deltaMovement.distanceToSqr(this.lastSentMovement);
if (d > 1.0E-7 || d > 0.0 && deltaMovement.lengthSqr() == 0.0) {
this.lastSentMovement = deltaMovement;
@@ -228,6 +229,7 @@ public class ServerEntity {
this.broadcast.accept(new ClientboundSetEntityMotionPacket(this.entity.getId(), this.lastSentMovement));
}
}
+ } // SparklyPaper end
}
if (packet != null) {