diff --git a/leaf-server/minecraft-patches/features/0174-Optimize-Entity-distanceToSqr.patch b/leaf-server/minecraft-patches/features/0174-Optimize-Entity-distanceToSqr.patch index edef344e..cebefad3 100644 --- a/leaf-server/minecraft-patches/features/0174-Optimize-Entity-distanceToSqr.patch +++ b/leaf-server/minecraft-patches/features/0174-Optimize-Entity-distanceToSqr.patch @@ -8,10 +8,18 @@ avoids multiple casting in Entity#distanceTo, using Math#sqrt directly instead o these methods more able to be inlined by the JIT compiler. diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index c44cc7107ff6cf1fd72e222773847deddf05e61c..4e914104b02355fb854b0f4946671429264e1e1d 100644 +index c44cc7107ff6cf1fd72e222773847deddf05e61c..3a82ed1958a7686191692d9eafdc62b6d5f6fb3c 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java -@@ -2260,31 +2260,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -394,6 +394,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess + private int sectionY = Integer.MIN_VALUE; + private int sectionZ = Integer.MIN_VALUE; + private boolean updatingSectionStatus; ++ private final boolean enableFMA = Boolean.getBoolean("Leaf.enableFMA"); // Leaf - Optimize Entity distanceTo + + @Override + public final boolean moonrise$isHardColliding() { +@@ -2260,31 +2261,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return new Vec3(this.xOld, this.yOld, this.zOld); } @@ -43,7 +51,7 @@ index c44cc7107ff6cf1fd72e222773847deddf05e61c..4e914104b02355fb854b0f4946671429 public void playerTouch(Player player) { } -@@ -5509,4 +5484,34 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -5509,4 +5485,34 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return false; } // Purpur end - Ridables @@ -56,21 +64,21 @@ index c44cc7107ff6cf1fd72e222773847deddf05e61c..4e914104b02355fb854b0f4946671429 + final double dx = this.getX() - entity.getX(); + final double dy = this.getY() - entity.getY(); + final double dz = this.getZ() - entity.getZ(); -+ return (float) Math.sqrt(org.dreeam.leaf.LeafBootstrap.enableFMA ? Math.fma(dx, dx, Math.fma(dy, dy, dz * dz)) : dx * dx + dy * dy + dz * dz); ++ return (float) Math.sqrt(enableFMA ? Math.fma(dx, dx, Math.fma(dy, dy, dz * dz)) : dx * dx + dy * dy + dz * dz); + } + + public final double distanceToSqr(final double x, final double y, final double z) { + final double dx = this.getX() - x; + final double dy = this.getY() - y; + final double dz = this.getZ() - z; -+ return org.dreeam.leaf.LeafBootstrap.enableFMA ? Math.fma(dx, dx, Math.fma(dy, dy, dz * dz)) : dx * dx + dy * dy + dz * dz; ++ return enableFMA ? Math.fma(dx, dx, Math.fma(dy, dy, dz * dz)) : dx * dx + dy * dy + dz * dz; + } + + public final double distanceToSqr(Vec3 vector) { + final double dx = this.getX() - vector.x; + final double dy = this.getY() - vector.y; + final double dz = this.getZ() - vector.z; -+ return org.dreeam.leaf.LeafBootstrap.enableFMA ? Math.fma(dx, dx, Math.fma(dy, dy, dz * dz)) : dx * dx + dy * dy + dz * dz; ++ return enableFMA ? Math.fma(dx, dx, Math.fma(dy, dy, dz * dz)) : dx * dx + dy * dy + dz * dz; + } + + public double distanceToSqr(Entity entity) { diff --git a/leaf-server/minecraft-patches/features/0193-Cache-supporting-block-check.patch b/leaf-server/minecraft-patches/features/0193-Cache-supporting-block-check.patch index c4412626..90f31d43 100644 --- a/leaf-server/minecraft-patches/features/0193-Cache-supporting-block-check.patch +++ b/leaf-server/minecraft-patches/features/0193-Cache-supporting-block-check.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Cache supporting block check diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index 4e914104b02355fb854b0f4946671429264e1e1d..1d75ea57923f891a07b0c29e065ad46cdfac9b91 100644 +index 3a82ed1958a7686191692d9eafdc62b6d5f6fb3c..8fc75395600fec45b69e95feae201d84b72fa996 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java -@@ -1104,12 +1104,36 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1105,12 +1105,36 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return this.mainSupportingBlockPos.isPresent() && this.mainSupportingBlockPos.get().equals(pos); } @@ -45,7 +45,7 @@ index 4e914104b02355fb854b0f4946671429264e1e1d..1d75ea57923f891a07b0c29e065ad46c this.mainSupportingBlockPos = optional; } else if (movement != null) { AABB aabb1 = aabb.move(-movement.x, 0.0, -movement.z); -@@ -1126,6 +1150,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1127,6 +1151,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } } diff --git a/leaf-server/minecraft-patches/features/0199-optimize-mob-despawn.patch b/leaf-server/minecraft-patches/features/0199-optimize-mob-despawn.patch index 57c6da6d..ce206d83 100644 --- a/leaf-server/minecraft-patches/features/0199-optimize-mob-despawn.patch +++ b/leaf-server/minecraft-patches/features/0199-optimize-mob-despawn.patch @@ -38,10 +38,10 @@ index 7fb763e89e43698bfb2b9fcf6296705384e8624a..91752678f887559132921cff61697478 final net.minecraft.world.level.levelgen.BitRandomSource simpleRandom = this.simpleRandom; // Paper - optimise random ticking // Leaf - Faster random generator - upcasting ChunkPos pos = chunk.getPos(); diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index 1d75ea57923f891a07b0c29e065ad46cdfac9b91..b87a1a2452cd236b4bdf7a7f12cae03f58833ccd 100644 +index 8fc75395600fec45b69e95feae201d84b72fa996..c9b0bc7ad989b85ad6224ef13d8cbbbe300b0606 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java -@@ -5132,6 +5132,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -5133,6 +5133,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public void checkDespawn() { } diff --git a/leaf-server/minecraft-patches/features/0209-SparklyPaper-Parallel-world-ticking.patch b/leaf-server/minecraft-patches/features/0209-SparklyPaper-Parallel-world-ticking.patch index 1cd972ff..85161995 100644 --- a/leaf-server/minecraft-patches/features/0209-SparklyPaper-Parallel-world-ticking.patch +++ b/leaf-server/minecraft-patches/features/0209-SparklyPaper-Parallel-world-ticking.patch @@ -849,10 +849,10 @@ index f9e7532f86122a379692561a639a209a126e8bba..fab317d6c9a1c914f19bae11846cb576 if (isLocatorBarEnabledFor(player)) { if (!connection.isBroken()) { diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index b87a1a2452cd236b4bdf7a7f12cae03f58833ccd..d3b4c193b82accd424a4201eee2a25b81315ef0c 100644 +index c9b0bc7ad989b85ad6224ef13d8cbbbe300b0606..317e6ee0cf5c49501cba71b883cae205fb1cd54c 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java -@@ -3509,15 +3509,40 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3510,15 +3510,40 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess if (this.portalProcess != null) { if (this.portalProcess.processPortalTeleportation(serverLevel, this, this.canUsePortal(false))) { this.setPortalCooldown(); @@ -900,7 +900,7 @@ index b87a1a2452cd236b4bdf7a7f12cae03f58833ccd..d3b4c193b82accd424a4201eee2a25b8 } else if (this.portalProcess.hasExpired()) { this.portalProcess = null; } -@@ -4094,6 +4119,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4095,6 +4120,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } private Entity teleportCrossDimension(ServerLevel oldLevel, ServerLevel newLevel, TeleportTransition teleportTransition) { diff --git a/leaf-server/minecraft-patches/features/0225-Prevent-double-chunk-retrieving-in-entity-fluid-push.patch b/leaf-server/minecraft-patches/features/0225-Prevent-double-chunk-retrieving-in-entity-fluid-push.patch index 74836bf6..91c61f15 100644 --- a/leaf-server/minecraft-patches/features/0225-Prevent-double-chunk-retrieving-in-entity-fluid-push.patch +++ b/leaf-server/minecraft-patches/features/0225-Prevent-double-chunk-retrieving-in-entity-fluid-push.patch @@ -11,10 +11,10 @@ As part of: Airplane (https://github.com/TECHNOVE/Airplane) Licensed under: GPL-3.0 (https://www.gnu.org/licenses/gpl-3.0.html) diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index d3b4c193b82accd424a4201eee2a25b81315ef0c..e4c07980e88b56210566b100a6055e7fb68922e0 100644 +index 317e6ee0cf5c49501cba71b883cae205fb1cd54c..41220d9c74a09515ffa24ff2c9b5979f37fa4c2a 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java -@@ -4812,10 +4812,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4813,10 +4813,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess // Paper start - optimise collisions public boolean updateFluidHeightAndDoFluidPushing(final TagKey fluid, final double flowScale) { @@ -26,7 +26,7 @@ index d3b4c193b82accd424a4201eee2a25b81315ef0c..e4c07980e88b56210566b100a6055e7f final AABB boundingBox = this.getBoundingBox().deflate(1.0E-3); final Level world = this.level; -@@ -4851,7 +4848,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4852,7 +4849,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess for (int currChunkZ = minChunkZ; currChunkZ <= maxChunkZ; ++currChunkZ) { for (int currChunkX = minChunkX; currChunkX <= maxChunkX; ++currChunkX) { diff --git a/leaf-server/minecraft-patches/features/0242-Optimise-player-movement-checks.patch b/leaf-server/minecraft-patches/features/0242-Optimise-player-movement-checks.patch index 0f428419..8c1a0dcf 100644 --- a/leaf-server/minecraft-patches/features/0242-Optimise-player-movement-checks.patch +++ b/leaf-server/minecraft-patches/features/0242-Optimise-player-movement-checks.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Optimise player movement checks diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index e4c07980e88b56210566b100a6055e7fb68922e0..ab0cf0bff7b477327fd92a20e6c7bc7d62f418d2 100644 +index 41220d9c74a09515ffa24ff2c9b5979f37fa4c2a..078b194a3e916edabc577debd425298dd7f8d75c 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java -@@ -1216,7 +1216,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1217,7 +1217,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } // Paper end diff --git a/leaf-server/minecraft-patches/features/0249-Optimize-isEyeInFluid.patch b/leaf-server/minecraft-patches/features/0249-Optimize-isEyeInFluid.patch index 4ea79c43..7da20f4b 100644 --- a/leaf-server/minecraft-patches/features/0249-Optimize-isEyeInFluid.patch +++ b/leaf-server/minecraft-patches/features/0249-Optimize-isEyeInFluid.patch @@ -92,7 +92,7 @@ index f2ec8dafb133999bed21eb48b118ab5d382bc962..a26943a7c70ac8b8eb3be5cd1f9838e4 if (rounded > 0) { this.awardStat(Stats.WALK_UNDER_WATER_ONE_CM, rounded); diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index ab0cf0bff7b477327fd92a20e6c7bc7d62f418d2..ceede6519645cb488ea4152842e00751eef53a6c 100644 +index 078b194a3e916edabc577debd425298dd7f8d75c..09dfc36c4491ad6b7e959be678e1d15c48969d04 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java @@ -288,7 +288,14 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @@ -111,7 +111,7 @@ index ab0cf0bff7b477327fd92a20e6c7bc7d62f418d2..ceede6519645cb488ea4152842e00751 public int invulnerableTime; protected boolean firstTick = true; protected final SynchedEntityData entityData; -@@ -2070,8 +2077,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2071,8 +2078,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } private void updateFluidOnEyes() { @@ -122,7 +122,7 @@ index ab0cf0bff7b477327fd92a20e6c7bc7d62f418d2..ceede6519645cb488ea4152842e00751 double eyeY = this.getEyeY(); if (!( this.getVehicle() instanceof AbstractBoat abstractBoat -@@ -2083,7 +2090,10 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2084,7 +2091,10 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess FluidState fluidState = this.level().getFluidState(blockPos); double d = blockPos.getY() + fluidState.getHeight(this.level(), blockPos); if (d > eyeY) { @@ -134,7 +134,7 @@ index ab0cf0bff7b477327fd92a20e6c7bc7d62f418d2..ceede6519645cb488ea4152842e00751 } } } -@@ -2163,9 +2173,25 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2164,9 +2174,25 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } } diff --git a/leaf-server/minecraft-patches/features/0267-optimize-waypoint.patch b/leaf-server/minecraft-patches/features/0267-optimize-waypoint.patch index 8b737ead..3ee61ef5 100644 --- a/leaf-server/minecraft-patches/features/0267-optimize-waypoint.patch +++ b/leaf-server/minecraft-patches/features/0267-optimize-waypoint.patch @@ -5,10 +5,10 @@ Subject: [PATCH] optimize waypoint diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index ceede6519645cb488ea4152842e00751eef53a6c..5eaaeb6f6a87d3a2d851b1840c4f3acbc47a0766 100644 +index 09dfc36c4491ad6b7e959be678e1d15c48969d04..b66d834985b966d3dd0090e1b851baf8d4e3df1c 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java -@@ -5144,6 +5144,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -5145,6 +5145,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return; } // Paper end - Block invalid positions and bounding box @@ -16,7 +16,7 @@ index ceede6519645cb488ea4152842e00751eef53a6c..5eaaeb6f6a87d3a2d851b1840c4f3acb if (this.position.x != x || this.position.y != y || this.position.z != z) { synchronized (this.posLock) { // Paper - detailed watchdog information this.position = new Vec3(x, y, z); -@@ -5151,7 +5152,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -5152,7 +5153,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess int floor = Mth.floor(x); int floor1 = Mth.floor(y); int floor2 = Mth.floor(z); @@ -26,7 +26,7 @@ index ceede6519645cb488ea4152842e00751eef53a6c..5eaaeb6f6a87d3a2d851b1840c4f3acb this.blockPosition = new BlockPos(floor, floor1, floor2); this.inBlockState = null; if (SectionPos.blockToSectionCoord(floor) != this.chunkPosition.x || SectionPos.blockToSectionCoord(floor2) != this.chunkPosition.z) { -@@ -5160,7 +5162,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -5161,7 +5163,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } this.levelCallback.onMove(); diff --git a/leaf-server/minecraft-patches/features/0268-Paw-optimization.patch b/leaf-server/minecraft-patches/features/0268-Paw-optimization.patch index 042f4a63..b9d875ed 100644 --- a/leaf-server/minecraft-patches/features/0268-Paw-optimization.patch +++ b/leaf-server/minecraft-patches/features/0268-Paw-optimization.patch @@ -132,10 +132,10 @@ index 964c97a394122083a2f3c77b8ca529592c826080..a58ba94171b54feee82e4ec3d68d23f4 private void tickPassenger(Entity ridingEntity, Entity passengerEntity, final boolean isActive) { // Paper - EAR 2 diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index 5eaaeb6f6a87d3a2d851b1840c4f3acbc47a0766..30a8c865bc754216266a1d1932130972f2fd67a2 100644 +index b66d834985b966d3dd0090e1b851baf8d4e3df1c..45067a5ddc8f9421479947f4aa9e5c595bfaeccc 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java -@@ -1170,16 +1170,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1171,16 +1171,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess return this.onGround; } @@ -152,7 +152,7 @@ index 5eaaeb6f6a87d3a2d851b1840c4f3acbc47a0766..30a8c865bc754216266a1d1932130972 public void move(MoverType type, Vec3 movement) { // Gale start - VMP - skip entity move if movement is zero if (!this.boundingBoxChanged && movement.equals(Vec3.ZERO)) { -@@ -1187,16 +1177,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1188,16 +1178,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } // Gale end - VMP - skip entity move if movement is zero final Vec3 originalMovement = movement; // Paper - Expose pre-collision velocity @@ -169,7 +169,7 @@ index 5eaaeb6f6a87d3a2d851b1840c4f3acbc47a0766..30a8c865bc754216266a1d1932130972 if (this.noPhysics) { this.setPos(this.getX() + movement.x, this.getY() + movement.y, this.getZ() + movement.z); } else { -@@ -1320,13 +1301,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1321,13 +1302,6 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess // Gale end - skip negligible planar movement multiplication } } @@ -183,7 +183,7 @@ index 5eaaeb6f6a87d3a2d851b1840c4f3acbc47a0766..30a8c865bc754216266a1d1932130972 } private void applyMovementEmissionAndPlaySound(Entity.MovementEmission movementEmission, Vec3 movement, BlockPos pos, BlockState state) { -@@ -5045,9 +5019,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -5046,9 +5020,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public void setDeltaMovement(Vec3 deltaMovement) { @@ -193,7 +193,7 @@ index 5eaaeb6f6a87d3a2d851b1840c4f3acbc47a0766..30a8c865bc754216266a1d1932130972 } public void addDeltaMovement(Vec3 addend) { -@@ -5146,9 +5118,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -5147,9 +5119,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess // Paper end - Block invalid positions and bounding box boolean blockUpdated; // Leaf - optimize waypoint if (this.position.x != x || this.position.y != y || this.position.z != z) { diff --git a/leaf-server/minecraft-patches/features/0274-optimize-checkInsideBlocks-calls.patch b/leaf-server/minecraft-patches/features/0274-optimize-checkInsideBlocks-calls.patch index a7ba6ec6..8f1ae231 100644 --- a/leaf-server/minecraft-patches/features/0274-optimize-checkInsideBlocks-calls.patch +++ b/leaf-server/minecraft-patches/features/0274-optimize-checkInsideBlocks-calls.patch @@ -11,10 +11,10 @@ Subject: [PATCH] optimize checkInsideBlocks calls License: LGPL-3.0 (https://www.gnu.org/licenses/lgpl-3.0.html) diff --git a/net/minecraft/world/entity/Entity.java b/net/minecraft/world/entity/Entity.java -index 30a8c865bc754216266a1d1932130972f2fd67a2..e7b375720c1bb78a9c3edf6d49c973eba1fcf115 100644 +index 45067a5ddc8f9421479947f4aa9e5c595bfaeccc..49bd5ee0e739d084b514f704ed4006922fcf0201 100644 --- a/net/minecraft/world/entity/Entity.java +++ b/net/minecraft/world/entity/Entity.java -@@ -1733,8 +1733,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1734,8 +1734,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } } @@ -29,7 +29,7 @@ index 30a8c865bc754216266a1d1932130972f2fd67a2..e7b375720c1bb78a9c3edf6d49c973eb BlockGetter.forEachBlockIntersectedBetween( vec3, vec31, -@@ -1743,35 +1748,51 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1744,35 +1749,51 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess if (!this.isAlive()) { return false; } else { @@ -88,7 +88,7 @@ index 30a8c865bc754216266a1d1932130972f2fd67a2..e7b375720c1bb78a9c3edf6d49c973eb } this.debugBlockIntersection(pos, flag, flag1); -@@ -1781,6 +1802,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1782,6 +1803,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } ); } diff --git a/leaf-server/paper-patches/features/0006-Leaf-Bootstrap.patch b/leaf-server/paper-patches/features/0006-Leaf-Bootstrap.patch deleted file mode 100644 index 840e1c02..00000000 --- a/leaf-server/paper-patches/features/0006-Leaf-Bootstrap.patch +++ /dev/null @@ -1,20 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Dreeam <61569423+Dreeam-qwq@users.noreply.github.com> -Date: Wed, 31 Jul 2024 22:05:21 +0800 -Subject: [PATCH] Leaf Bootstrap - -org.bukkit.craftbukkit.Main#main -> LeafBootstrap -> PaperBootstrap -> ... - -diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index 7675acdca2162e403f4ff523bcdd6efe0cb42d49..d10df0f81d922c3a5eca62afc376457fb8d4c197 100644 ---- a/src/main/java/org/bukkit/craftbukkit/Main.java -+++ b/src/main/java/org/bukkit/craftbukkit/Main.java -@@ -239,7 +239,7 @@ public class Main { - System.setProperty("library.jansi.version", "Paper"); // Paper - set meaningless jansi version to prevent git builds from crashing on Windows - System.setProperty("jdk.console", "java.base"); // Paper - revert default console provider back to java.base so we can have our own jline - -- io.papermc.paper.PaperBootstrap.boot(options); -+ org.dreeam.leaf.LeafBootstrap.boot(options); // Leaf - Leaf Boostrap - } catch (Throwable t) { - t.printStackTrace(); - } diff --git a/leaf-server/paper-patches/features/0007-Leaf-Commands.patch b/leaf-server/paper-patches/features/0006-Leaf-Commands.patch similarity index 100% rename from leaf-server/paper-patches/features/0007-Leaf-Commands.patch rename to leaf-server/paper-patches/features/0006-Leaf-Commands.patch diff --git a/leaf-server/paper-patches/features/0008-Leaf-JUnit-test-suite.patch b/leaf-server/paper-patches/features/0007-Leaf-JUnit-test-suite.patch similarity index 100% rename from leaf-server/paper-patches/features/0008-Leaf-JUnit-test-suite.patch rename to leaf-server/paper-patches/features/0007-Leaf-JUnit-test-suite.patch diff --git a/leaf-server/paper-patches/features/0009-Purpur-Server-Paper-Changes.patch b/leaf-server/paper-patches/features/0008-Purpur-Server-Paper-Changes.patch similarity index 99% rename from leaf-server/paper-patches/features/0009-Purpur-Server-Paper-Changes.patch rename to leaf-server/paper-patches/features/0008-Purpur-Server-Paper-Changes.patch index 0cd7170a..e3588fe4 100644 --- a/leaf-server/paper-patches/features/0009-Purpur-Server-Paper-Changes.patch +++ b/leaf-server/paper-patches/features/0008-Purpur-Server-Paper-Changes.patch @@ -689,7 +689,7 @@ index aa0a61d7f3128543b698647663fa4a9af2a8255a..405b0164a67fe75ec6c5aee4d7302f53 public Collection getStructures(int x, int z) { return this.getStructures(x, z, struct -> true); diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index d10df0f81d922c3a5eca62afc376457fb8d4c197..c03726447fa79270d00f3c4384f0b43f9e421073 100644 +index 7675acdca2162e403f4ff523bcdd6efe0cb42d49..748bd9650da4a209743b7a5dde584b2e19c5a578 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java @@ -164,6 +164,14 @@ public class Main { diff --git a/leaf-server/paper-patches/features/0010-Fix-Pufferfish-and-Purpur-patches.patch b/leaf-server/paper-patches/features/0009-Fix-Pufferfish-and-Purpur-patches.patch similarity index 100% rename from leaf-server/paper-patches/features/0010-Fix-Pufferfish-and-Purpur-patches.patch rename to leaf-server/paper-patches/features/0009-Fix-Pufferfish-and-Purpur-patches.patch diff --git a/leaf-server/paper-patches/features/0011-Simpler-ShapelessRecipe-comparison-for-vanilla.patch b/leaf-server/paper-patches/features/0010-Simpler-ShapelessRecipe-comparison-for-vanilla.patch similarity index 100% rename from leaf-server/paper-patches/features/0011-Simpler-ShapelessRecipe-comparison-for-vanilla.patch rename to leaf-server/paper-patches/features/0010-Simpler-ShapelessRecipe-comparison-for-vanilla.patch diff --git a/leaf-server/paper-patches/features/0012-Print-stack-trace-for-plugins-not-shutting-down-task.patch b/leaf-server/paper-patches/features/0011-Print-stack-trace-for-plugins-not-shutting-down-task.patch similarity index 100% rename from leaf-server/paper-patches/features/0012-Print-stack-trace-for-plugins-not-shutting-down-task.patch rename to leaf-server/paper-patches/features/0011-Print-stack-trace-for-plugins-not-shutting-down-task.patch diff --git a/leaf-server/paper-patches/features/0013-SIMD-support.patch b/leaf-server/paper-patches/features/0012-SIMD-support.patch similarity index 100% rename from leaf-server/paper-patches/features/0013-SIMD-support.patch rename to leaf-server/paper-patches/features/0012-SIMD-support.patch diff --git a/leaf-server/paper-patches/features/0014-Make-book-writing-configurable.patch b/leaf-server/paper-patches/features/0013-Make-book-writing-configurable.patch similarity index 100% rename from leaf-server/paper-patches/features/0014-Make-book-writing-configurable.patch rename to leaf-server/paper-patches/features/0013-Make-book-writing-configurable.patch diff --git a/leaf-server/paper-patches/features/0015-Do-not-log-legacy-Material-initialization.patch b/leaf-server/paper-patches/features/0014-Do-not-log-legacy-Material-initialization.patch similarity index 100% rename from leaf-server/paper-patches/features/0015-Do-not-log-legacy-Material-initialization.patch rename to leaf-server/paper-patches/features/0014-Do-not-log-legacy-Material-initialization.patch diff --git a/leaf-server/paper-patches/features/0016-Do-not-log-Not-Secure-marker.patch b/leaf-server/paper-patches/features/0015-Do-not-log-Not-Secure-marker.patch similarity index 100% rename from leaf-server/paper-patches/features/0016-Do-not-log-Not-Secure-marker.patch rename to leaf-server/paper-patches/features/0015-Do-not-log-Not-Secure-marker.patch diff --git a/leaf-server/paper-patches/features/0017-Reduce-array-allocations.patch b/leaf-server/paper-patches/features/0016-Reduce-array-allocations.patch similarity index 100% rename from leaf-server/paper-patches/features/0017-Reduce-array-allocations.patch rename to leaf-server/paper-patches/features/0016-Reduce-array-allocations.patch diff --git a/leaf-server/paper-patches/features/0018-CraftBukkit-UUID-to-world-map.patch b/leaf-server/paper-patches/features/0017-CraftBukkit-UUID-to-world-map.patch similarity index 100% rename from leaf-server/paper-patches/features/0018-CraftBukkit-UUID-to-world-map.patch rename to leaf-server/paper-patches/features/0017-CraftBukkit-UUID-to-world-map.patch diff --git a/leaf-server/paper-patches/features/0019-Specific-interval-TPS-API.patch b/leaf-server/paper-patches/features/0018-Specific-interval-TPS-API.patch similarity index 100% rename from leaf-server/paper-patches/features/0019-Specific-interval-TPS-API.patch rename to leaf-server/paper-patches/features/0018-Specific-interval-TPS-API.patch diff --git a/leaf-server/paper-patches/features/0020-5-second-TPS-average.patch b/leaf-server/paper-patches/features/0019-5-second-TPS-average.patch similarity index 100% rename from leaf-server/paper-patches/features/0020-5-second-TPS-average.patch rename to leaf-server/paper-patches/features/0019-5-second-TPS-average.patch diff --git a/leaf-server/paper-patches/features/0021-Last-tick-time-API.patch b/leaf-server/paper-patches/features/0020-Last-tick-time-API.patch similarity index 100% rename from leaf-server/paper-patches/features/0021-Last-tick-time-API.patch rename to leaf-server/paper-patches/features/0020-Last-tick-time-API.patch diff --git a/leaf-server/paper-patches/features/0022-Show-last-tick-time-in-tps-command.patch b/leaf-server/paper-patches/features/0021-Show-last-tick-time-in-tps-command.patch similarity index 100% rename from leaf-server/paper-patches/features/0022-Show-last-tick-time-in-tps-command.patch rename to leaf-server/paper-patches/features/0021-Show-last-tick-time-in-tps-command.patch diff --git a/leaf-server/paper-patches/features/0023-Pre-compute-VarLong-sizes.patch b/leaf-server/paper-patches/features/0022-Pre-compute-VarLong-sizes.patch similarity index 100% rename from leaf-server/paper-patches/features/0023-Pre-compute-VarLong-sizes.patch rename to leaf-server/paper-patches/features/0022-Pre-compute-VarLong-sizes.patch diff --git a/leaf-server/paper-patches/features/0024-Optimize-VarInt-write-and-VarLong-write.patch b/leaf-server/paper-patches/features/0023-Optimize-VarInt-write-and-VarLong-write.patch similarity index 100% rename from leaf-server/paper-patches/features/0024-Optimize-VarInt-write-and-VarLong-write.patch rename to leaf-server/paper-patches/features/0023-Optimize-VarInt-write-and-VarLong-write.patch diff --git a/leaf-server/paper-patches/features/0025-Virtual-thread-support.patch b/leaf-server/paper-patches/features/0024-Virtual-thread-support.patch similarity index 100% rename from leaf-server/paper-patches/features/0025-Virtual-thread-support.patch rename to leaf-server/paper-patches/features/0024-Virtual-thread-support.patch diff --git a/leaf-server/paper-patches/features/0026-Remove-Timings.patch b/leaf-server/paper-patches/features/0025-Remove-Timings.patch similarity index 100% rename from leaf-server/paper-patches/features/0026-Remove-Timings.patch rename to leaf-server/paper-patches/features/0025-Remove-Timings.patch diff --git a/leaf-server/paper-patches/features/0027-KeYi-Player-Skull-API.patch b/leaf-server/paper-patches/features/0026-KeYi-Player-Skull-API.patch similarity index 100% rename from leaf-server/paper-patches/features/0027-KeYi-Player-Skull-API.patch rename to leaf-server/paper-patches/features/0026-KeYi-Player-Skull-API.patch diff --git a/leaf-server/paper-patches/features/0028-Slice-Smooth-Teleports.patch b/leaf-server/paper-patches/features/0027-Slice-Smooth-Teleports.patch similarity index 100% rename from leaf-server/paper-patches/features/0028-Slice-Smooth-Teleports.patch rename to leaf-server/paper-patches/features/0027-Slice-Smooth-Teleports.patch diff --git a/leaf-server/paper-patches/features/0029-Leaves-Protocol-Core.patch b/leaf-server/paper-patches/features/0028-Leaves-Protocol-Core.patch similarity index 100% rename from leaf-server/paper-patches/features/0029-Leaves-Protocol-Core.patch rename to leaf-server/paper-patches/features/0028-Leaves-Protocol-Core.patch diff --git a/leaf-server/paper-patches/features/0030-Leaves-Replay-Mod-API.patch b/leaf-server/paper-patches/features/0029-Leaves-Replay-Mod-API.patch similarity index 100% rename from leaf-server/paper-patches/features/0030-Leaves-Replay-Mod-API.patch rename to leaf-server/paper-patches/features/0029-Leaves-Replay-Mod-API.patch diff --git a/leaf-server/paper-patches/features/0031-Skip-event-if-no-listeners.patch b/leaf-server/paper-patches/features/0030-Skip-event-if-no-listeners.patch similarity index 94% rename from leaf-server/paper-patches/features/0031-Skip-event-if-no-listeners.patch rename to leaf-server/paper-patches/features/0030-Skip-event-if-no-listeners.patch index 6998ab47..d63fb4f2 100644 --- a/leaf-server/paper-patches/features/0031-Skip-event-if-no-listeners.patch +++ b/leaf-server/paper-patches/features/0030-Skip-event-if-no-listeners.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Skip event if no listeners diff --git a/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java b/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java -index 780f3a48152fef6a06dc67bf7fbd1965b13bc4fa..379c2dc1853e45a96dda9b13bf28b7e08f65658a 100644 +index 99662395fef09017ff0843da6c482815dd4456d3..bb76cbc2a4e93f33486025b3a86c4ddeb7a5a7a4 100644 --- a/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java +++ b/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java @@ -35,6 +35,10 @@ class PaperEventManager { diff --git a/leaf-server/paper-patches/features/0032-SparklyPaper-Optimize-canSee-checks.patch b/leaf-server/paper-patches/features/0031-SparklyPaper-Optimize-canSee-checks.patch similarity index 100% rename from leaf-server/paper-patches/features/0032-SparklyPaper-Optimize-canSee-checks.patch rename to leaf-server/paper-patches/features/0031-SparklyPaper-Optimize-canSee-checks.patch diff --git a/leaf-server/paper-patches/features/0033-Including-5s-in-getTPS.patch b/leaf-server/paper-patches/features/0032-Including-5s-in-getTPS.patch similarity index 100% rename from leaf-server/paper-patches/features/0033-Including-5s-in-getTPS.patch rename to leaf-server/paper-patches/features/0032-Including-5s-in-getTPS.patch diff --git a/leaf-server/paper-patches/features/0034-Don-t-throw-exception-on-missing-ResourceKey-value.patch b/leaf-server/paper-patches/features/0033-Don-t-throw-exception-on-missing-ResourceKey-value.patch similarity index 100% rename from leaf-server/paper-patches/features/0034-Don-t-throw-exception-on-missing-ResourceKey-value.patch rename to leaf-server/paper-patches/features/0033-Don-t-throw-exception-on-missing-ResourceKey-value.patch diff --git a/leaf-server/paper-patches/features/0035-Virtual-Thread-for-async-scheduler.patch b/leaf-server/paper-patches/features/0034-Virtual-Thread-for-async-scheduler.patch similarity index 100% rename from leaf-server/paper-patches/features/0035-Virtual-Thread-for-async-scheduler.patch rename to leaf-server/paper-patches/features/0034-Virtual-Thread-for-async-scheduler.patch diff --git a/leaf-server/paper-patches/features/0036-Mirai-Configurable-chat-message-signatures.patch b/leaf-server/paper-patches/features/0035-Mirai-Configurable-chat-message-signatures.patch similarity index 100% rename from leaf-server/paper-patches/features/0036-Mirai-Configurable-chat-message-signatures.patch rename to leaf-server/paper-patches/features/0035-Mirai-Configurable-chat-message-signatures.patch diff --git a/leaf-server/paper-patches/features/0037-Matter-Secure-Seed.patch b/leaf-server/paper-patches/features/0036-Matter-Secure-Seed.patch similarity index 100% rename from leaf-server/paper-patches/features/0037-Matter-Secure-Seed.patch rename to leaf-server/paper-patches/features/0036-Matter-Secure-Seed.patch diff --git a/leaf-server/paper-patches/features/0038-Faster-random-generator.patch b/leaf-server/paper-patches/features/0037-Faster-random-generator.patch similarity index 100% rename from leaf-server/paper-patches/features/0038-Faster-random-generator.patch rename to leaf-server/paper-patches/features/0037-Faster-random-generator.patch diff --git a/leaf-server/paper-patches/features/0039-Configurable-unknown-command-message.patch b/leaf-server/paper-patches/features/0038-Configurable-unknown-command-message.patch similarity index 100% rename from leaf-server/paper-patches/features/0039-Configurable-unknown-command-message.patch rename to leaf-server/paper-patches/features/0038-Configurable-unknown-command-message.patch diff --git a/leaf-server/paper-patches/features/0040-Replace-world-map-with-optimized-collection.patch b/leaf-server/paper-patches/features/0039-Replace-world-map-with-optimized-collection.patch similarity index 100% rename from leaf-server/paper-patches/features/0040-Replace-world-map-with-optimized-collection.patch rename to leaf-server/paper-patches/features/0039-Replace-world-map-with-optimized-collection.patch diff --git a/leaf-server/paper-patches/features/0041-Cache-CraftEntityType-minecraftToBukkit-convert.patch b/leaf-server/paper-patches/features/0040-Cache-CraftEntityType-minecraftToBukkit-convert.patch similarity index 100% rename from leaf-server/paper-patches/features/0041-Cache-CraftEntityType-minecraftToBukkit-convert.patch rename to leaf-server/paper-patches/features/0040-Cache-CraftEntityType-minecraftToBukkit-convert.patch diff --git a/leaf-server/paper-patches/features/0042-Multithreaded-Tracker.patch b/leaf-server/paper-patches/features/0041-Multithreaded-Tracker.patch similarity index 100% rename from leaf-server/paper-patches/features/0042-Multithreaded-Tracker.patch rename to leaf-server/paper-patches/features/0041-Multithreaded-Tracker.patch diff --git a/leaf-server/paper-patches/features/0043-Asynchronous-locator.patch b/leaf-server/paper-patches/features/0042-Asynchronous-locator.patch similarity index 95% rename from leaf-server/paper-patches/features/0043-Asynchronous-locator.patch rename to leaf-server/paper-patches/features/0042-Asynchronous-locator.patch index cfbf1934..3ea0df17 100644 --- a/leaf-server/paper-patches/features/0043-Asynchronous-locator.patch +++ b/leaf-server/paper-patches/features/0042-Asynchronous-locator.patch @@ -24,7 +24,7 @@ index 69cdd304d255d52c9b7dc9b6a33ffdb630b79abe..a4aa2615823d77920ff55b8aa0bcc27a this(group, run, name, ID_GENERATOR.incrementAndGet()); } diff --git a/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java b/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java -index 379c2dc1853e45a96dda9b13bf28b7e08f65658a..b9c159537c7db0ff85ebb0ff6b510e5b5061f5f9 100644 +index bb76cbc2a4e93f33486025b3a86c4ddeb7a5a7a4..4a14505106312abd01f1406debe50c0410200c03 100644 --- a/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java +++ b/src/main/java/io/papermc/paper/plugin/manager/PaperEventManager.java @@ -42,6 +42,12 @@ class PaperEventManager { diff --git a/leaf-server/paper-patches/features/0044-EMC-Don-t-use-snapshots-for-acquiring-blockstate.patch b/leaf-server/paper-patches/features/0043-EMC-Don-t-use-snapshots-for-acquiring-blockstate.patch similarity index 89% rename from leaf-server/paper-patches/features/0044-EMC-Don-t-use-snapshots-for-acquiring-blockstate.patch rename to leaf-server/paper-patches/features/0043-EMC-Don-t-use-snapshots-for-acquiring-blockstate.patch index de0d9a65..4ccd5226 100644 --- a/leaf-server/paper-patches/features/0044-EMC-Don-t-use-snapshots-for-acquiring-blockstate.patch +++ b/leaf-server/paper-patches/features/0043-EMC-Don-t-use-snapshots-for-acquiring-blockstate.patch @@ -7,7 +7,7 @@ Original license: MIT Original project: https://github.com/starlis/empirecraft diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java -index a4d5c65edc1db59f3486ce5d3757cc306211a54b..b00a82816784ea2f6422ca98c1f11597105cc177 100644 +index 6809f9dcf8510c714145d99d250eb69f98d9bf27..dd122bbbe2c33183017dbde6997d3f1cd08479b5 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlock.java @@ -332,7 +332,7 @@ public class CraftBlock implements Block { @@ -20,7 +20,7 @@ index a4d5c65edc1db59f3486ce5d3757cc306211a54b..b00a82816784ea2f6422ca98c1f11597 // Paper start diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java -index a43f3d6e54de52da6b1ee050aefd0028a1adafcf..db71a9fc02bfac7799b58f07da044e53b2273e98 100644 +index 3c9131ac3cfb4f758e76830ca48813feb321e4c6..18f09de5c6549df3562e710ede825f75d69c046e 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockStates.java @@ -185,7 +185,7 @@ public final class CraftBlockStates { diff --git a/leaf-server/paper-patches/features/0045-Faster-CraftServer-getworlds-list-creation.patch b/leaf-server/paper-patches/features/0044-Faster-CraftServer-getworlds-list-creation.patch similarity index 100% rename from leaf-server/paper-patches/features/0045-Faster-CraftServer-getworlds-list-creation.patch rename to leaf-server/paper-patches/features/0044-Faster-CraftServer-getworlds-list-creation.patch diff --git a/leaf-server/paper-patches/features/0046-Cache-chunk-key.patch b/leaf-server/paper-patches/features/0045-Cache-chunk-key.patch similarity index 100% rename from leaf-server/paper-patches/features/0046-Cache-chunk-key.patch rename to leaf-server/paper-patches/features/0045-Cache-chunk-key.patch diff --git a/leaf-server/paper-patches/features/0047-Async-structure-locate-api.patch b/leaf-server/paper-patches/features/0046-Async-structure-locate-api.patch similarity index 100% rename from leaf-server/paper-patches/features/0047-Async-structure-locate-api.patch rename to leaf-server/paper-patches/features/0046-Async-structure-locate-api.patch diff --git a/leaf-server/paper-patches/features/0048-PlayerInventoryOverflowEvent.patch b/leaf-server/paper-patches/features/0047-PlayerInventoryOverflowEvent.patch similarity index 100% rename from leaf-server/paper-patches/features/0048-PlayerInventoryOverflowEvent.patch rename to leaf-server/paper-patches/features/0047-PlayerInventoryOverflowEvent.patch diff --git a/leaf-server/paper-patches/features/0049-Paper-PR-Fix-MC-117075-Block-Entities-Unload-Lag-Spi.patch b/leaf-server/paper-patches/features/0048-Paper-PR-Fix-MC-117075-Block-Entities-Unload-Lag-Spi.patch similarity index 100% rename from leaf-server/paper-patches/features/0049-Paper-PR-Fix-MC-117075-Block-Entities-Unload-Lag-Spi.patch rename to leaf-server/paper-patches/features/0048-Paper-PR-Fix-MC-117075-Block-Entities-Unload-Lag-Spi.patch diff --git a/leaf-server/paper-patches/features/0050-SparklyPaper-Parallel-world-ticking.patch b/leaf-server/paper-patches/features/0049-SparklyPaper-Parallel-world-ticking.patch similarity index 100% rename from leaf-server/paper-patches/features/0050-SparklyPaper-Parallel-world-ticking.patch rename to leaf-server/paper-patches/features/0049-SparklyPaper-Parallel-world-ticking.patch diff --git a/leaf-server/paper-patches/features/0051-Paper-PR-Throttle-failed-spawn-attempts.patch b/leaf-server/paper-patches/features/0050-Paper-PR-Throttle-failed-spawn-attempts.patch similarity index 100% rename from leaf-server/paper-patches/features/0051-Paper-PR-Throttle-failed-spawn-attempts.patch rename to leaf-server/paper-patches/features/0050-Paper-PR-Throttle-failed-spawn-attempts.patch diff --git a/leaf-server/paper-patches/features/0052-Async-playerdata-saving.patch b/leaf-server/paper-patches/features/0051-Async-playerdata-saving.patch similarity index 100% rename from leaf-server/paper-patches/features/0052-Async-playerdata-saving.patch rename to leaf-server/paper-patches/features/0051-Async-playerdata-saving.patch diff --git a/leaf-server/paper-patches/features/0053-Async-chunk-sending.patch b/leaf-server/paper-patches/features/0052-Async-chunk-sending.patch similarity index 100% rename from leaf-server/paper-patches/features/0053-Async-chunk-sending.patch rename to leaf-server/paper-patches/features/0052-Async-chunk-sending.patch diff --git a/leaf-server/paper-patches/features/0054-Optimise-player-movement-checks.patch b/leaf-server/paper-patches/features/0053-Optimise-player-movement-checks.patch similarity index 100% rename from leaf-server/paper-patches/features/0054-Optimise-player-movement-checks.patch rename to leaf-server/paper-patches/features/0053-Optimise-player-movement-checks.patch diff --git a/leaf-server/paper-patches/features/0055-optimise-ReferenceList.patch b/leaf-server/paper-patches/features/0054-optimise-ReferenceList.patch similarity index 100% rename from leaf-server/paper-patches/features/0055-optimise-ReferenceList.patch rename to leaf-server/paper-patches/features/0054-optimise-ReferenceList.patch diff --git a/leaf-server/paper-patches/features/0056-cache-getBiome.patch b/leaf-server/paper-patches/features/0055-cache-getBiome.patch similarity index 100% rename from leaf-server/paper-patches/features/0056-cache-getBiome.patch rename to leaf-server/paper-patches/features/0055-cache-getBiome.patch diff --git a/leaf-server/paper-patches/features/0057-dump-pwt-thread.patch b/leaf-server/paper-patches/features/0056-dump-pwt-thread.patch similarity index 100% rename from leaf-server/paper-patches/features/0057-dump-pwt-thread.patch rename to leaf-server/paper-patches/features/0056-dump-pwt-thread.patch diff --git a/leaf-server/paper-patches/features/0058-Paw-optimization.patch b/leaf-server/paper-patches/features/0057-Paw-optimization.patch similarity index 95% rename from leaf-server/paper-patches/features/0058-Paw-optimization.patch rename to leaf-server/paper-patches/features/0057-Paw-optimization.patch index 8770433e..25d957c1 100644 --- a/leaf-server/paper-patches/features/0058-Paw-optimization.patch +++ b/leaf-server/paper-patches/features/0057-Paw-optimization.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Paw optimization Some random optimizations diff --git a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java -index e9ec96e9aee0cdf72ff18f8a42389ff78869f58c..ae0b0e2bea46707d78adc60d2cc212a813bef076 100644 +index 5aeda80229b14053bfb8a71a937efb6793fa229d..471ae6dfd6acada34ce732a7154c403f3e739c62 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java +++ b/src/main/java/org/bukkit/craftbukkit/block/data/CraftBlockData.java @@ -244,13 +244,37 @@ public class CraftBlockData implements BlockData { diff --git a/leaf-server/paper-patches/features/0059-optimize-despawn.patch b/leaf-server/paper-patches/features/0058-optimize-despawn.patch similarity index 96% rename from leaf-server/paper-patches/features/0059-optimize-despawn.patch rename to leaf-server/paper-patches/features/0058-optimize-despawn.patch index 17c237b1..e06b20cd 100644 --- a/leaf-server/paper-patches/features/0059-optimize-despawn.patch +++ b/leaf-server/paper-patches/features/0058-optimize-despawn.patch @@ -5,7 +5,7 @@ Subject: [PATCH] optimize despawn diff --git a/src/main/java/io/papermc/paper/configuration/WorldConfiguration.java b/src/main/java/io/papermc/paper/configuration/WorldConfiguration.java -index ed687b0ab589fd2ddb8bf77f42ba42cf8b1c2ea7..5d075f51baeaf775a458f459b762bf629e695f2e 100644 +index 70577f480d2acc3724ab8ab296edc952254c5dac..136a78ab446ed75d2b5b6741c3003e5c9d532d85 100644 --- a/src/main/java/io/papermc/paper/configuration/WorldConfiguration.java +++ b/src/main/java/io/papermc/paper/configuration/WorldConfiguration.java @@ -178,7 +178,7 @@ public class WorldConfiguration extends ConfigurationPart { diff --git a/leaf-server/paper-patches/features/0060-optimize-mob-spawning.patch b/leaf-server/paper-patches/features/0059-optimize-mob-spawning.patch similarity index 100% rename from leaf-server/paper-patches/features/0060-optimize-mob-spawning.patch rename to leaf-server/paper-patches/features/0059-optimize-mob-spawning.patch diff --git a/leaf-server/paper-patches/features/0061-Toggleable-async-catcher.patch b/leaf-server/paper-patches/features/0060-Toggleable-async-catcher.patch similarity index 100% rename from leaf-server/paper-patches/features/0061-Toggleable-async-catcher.patch rename to leaf-server/paper-patches/features/0060-Toggleable-async-catcher.patch diff --git a/leaf-server/paper-patches/features/0062-Op-lock.patch b/leaf-server/paper-patches/features/0061-Op-lock.patch similarity index 100% rename from leaf-server/paper-patches/features/0062-Op-lock.patch rename to leaf-server/paper-patches/features/0061-Op-lock.patch diff --git a/leaf-server/paper-patches/features/0063-cache-profile-data.patch b/leaf-server/paper-patches/features/0062-cache-profile-data.patch similarity index 100% rename from leaf-server/paper-patches/features/0063-cache-profile-data.patch rename to leaf-server/paper-patches/features/0062-cache-profile-data.patch diff --git a/leaf-server/src/main/java/org/dreeam/leaf/LeafBootstrap.java b/leaf-server/src/main/java/org/dreeam/leaf/LeafBootstrap.java deleted file mode 100644 index 1b015716..00000000 --- a/leaf-server/src/main/java/org/dreeam/leaf/LeafBootstrap.java +++ /dev/null @@ -1,18 +0,0 @@ -package org.dreeam.leaf; - -import io.papermc.paper.PaperBootstrap; -import joptsimple.OptionSet; - -public class LeafBootstrap { - - public static final boolean enableFMA = Boolean.getBoolean("Leaf.enableFMA"); // Leaf - Optimize Entity distanceTo - - public static void boot(final OptionSet options) { - //runPreBootTasks(); - - PaperBootstrap.boot(options); - } - - private static void runPreBootTasks() { - } -} diff --git a/leaf-server/src/main/java/org/dreeam/leaf/config/modules/opt/OptimizeDespawn.java b/leaf-server/src/main/java/org/dreeam/leaf/config/modules/opt/OptimizeDespawn.java index 524e68fa..b7e28d75 100644 --- a/leaf-server/src/main/java/org/dreeam/leaf/config/modules/opt/OptimizeDespawn.java +++ b/leaf-server/src/main/java/org/dreeam/leaf/config/modules/opt/OptimizeDespawn.java @@ -1,7 +1,6 @@ package org.dreeam.leaf.config.modules.opt; import gg.pufferfish.pufferfish.simd.SIMDDetection; -import org.dreeam.leaf.LeafBootstrap; import org.dreeam.leaf.config.ConfigModules; import org.dreeam.leaf.config.EnumConfigCategory; import org.dreeam.leaf.config.annotations.Experimental; @@ -19,7 +18,7 @@ public class OptimizeDespawn extends ConfigModules { enabled = config.getBoolean(getBasePath(), enabled); if (enabled) { gg.pufferfish.pufferfish.simd.SIMDDetection.initialize(); - if (!LeafBootstrap.enableFMA || !SIMDDetection.isEnabled()) { + if (!Boolean.getBoolean("Leaf.enableFMA") || !SIMDDetection.isEnabled()) { LOGGER.info("NOTE: Recommend enabling FMA and Vector API to work with optimize-mob-despawn."); } } diff --git a/leaf-server/src/main/java/org/dreeam/leaf/world/DespawnMap.java b/leaf-server/src/main/java/org/dreeam/leaf/world/DespawnMap.java index 9fffed71..75ab6518 100644 --- a/leaf-server/src/main/java/org/dreeam/leaf/world/DespawnMap.java +++ b/leaf-server/src/main/java/org/dreeam/leaf/world/DespawnMap.java @@ -12,7 +12,6 @@ import net.minecraft.world.entity.Mob; import net.minecraft.world.entity.MobCategory; import net.minecraft.world.level.entity.EntityTickList; import org.bukkit.event.entity.EntityRemoveEvent; -import org.dreeam.leaf.LeafBootstrap; import java.util.Map; import java.util.OptionalInt; @@ -22,7 +21,7 @@ public final class DespawnMap { private static final double[] EMPTY_DOUBLES = {}; private static final long[] EMPTY_LONGS = {}; private static final int[] EMPTY_INTS = {}; - static final boolean FMA = LeafBootstrap.enableFMA; + static final boolean FMA = Boolean.getBoolean("Leaf.enableFMA"); private static final boolean SIMD = SIMDDetection.isEnabled(); private static final int LEAF_THRESHOLD = SIMD ? DespawnVectorAPI.DOUBLE_VECTOR_LENGTH : 4; private static final int INITIAL_CAP = 8;