From c5a10665b8b80af650500b9263036f778f06d500 Mon Sep 17 00:00:00 2001 From: Bjarne Koll Date: Thu, 19 Sep 2024 16:36:07 +0200 Subject: [PATCH] Remove wall-time / unused skip tick protection (#11412) Spigot still maintains some partial implementation of "tick skipping", a practice in which the MinecraftServer.currentTick field is updated not by an increment of one per actual tick, but instead set to System.currentTimeMillis() / 50. This behaviour means that the tracked tick may "skip" a tick value in case a previous tick took more than the expected 50ms. To compensate for this in important paths, spigot/craftbukkit implements "wall-time". Instead of incrementing/decrementing ticks on block entities/entities by one for each call to their tick() method, they instead increment/decrement important values, like an ItemEntity's age or pickupDelay, by the difference of `currentTick - lastTick`, where `lastTick` is the value of `currentTick` during the last tick() call. These "fixes" however do not play nicely with minecraft's simulation distance as entities/block entities implementing the above behaviour would "catch up" their values when moving from a non-ticking chunk to a ticking one as their `lastTick` value remains stuck on the last tick in a ticking chunk and hence lead to a large "catch up" once ticked again. Paper completely removes the "tick skipping" behaviour (See patch "Further-improve-server-tick-loop"), making the above precautions completely unnecessary, which also rids paper of the previous described incompatibility with non-ticking chunks. --- patches/server/0009-MC-Utils.patch | 22 +-- patches/server/0010-Adventure.patch | 10 +- ...oleAppender-for-console-improvements.patch | 12 +- patches/server/0020-Plugin-remapping.patch | 8 +- patches/server/0023-Timings-v2.patch | 20 +-- ...024-Further-improve-server-tick-loop.patch | 12 +- ...0033-Expose-server-build-information.patch | 8 +- patches/server/0043-Optimize-explosions.patch | 4 +- ...ckPhysicsEvent-if-a-plugin-has-a-lis.patch | 6 +- .../0088-Configurable-Player-Collision.patch | 4 +- ...-possibility-for-getServer-singleton.patch | 6 +- .../0097-Async-GameProfileCache-saving.patch | 4 +- ...le-async-calls-to-restart-the-server.patch | 6 +- ...nt-extended-PaperServerListPingEvent.patch | 4 +- ...dd-Early-Warning-Feature-to-WatchDog.patch | 6 +- ...er-Thread-Pool-and-Thread-Priorities.patch | 4 +- .../0262-Optimize-World-Time-Updates.patch | 4 +- .../0275-Async-command-map-building.patch | 4 +- ...ts.patch => 0283-Server-Tick-Events.patch} | 6 +- ...-for-pickupDelay-breaks-picking-up-i.patch | 27 --- ...284-PlayerDeathEvent-getItemsToKeep.patch} | 0 ...ptimize-Captured-BlockEntity-Lookup.patch} | 0 ...> 0286-Mob-Spawner-API-Enhancements.patch} | 0 ...-to-changed-postToMainThread-method.patch} | 0 ...-item-frames-are-modified-MC-123450.patch} | 0 ...0289-Implement-CraftBlockSoundGroup.patch} | 0 ...90-Expose-the-internal-current-tick.patch} | 0 ...te-location-if-we-failed-to-read-it.patch} | 2 +- ...l-Spawned-mobs-towards-natural-spaw.patch} | 0 ...urable-projectile-relative-velocity.patch} | 0 ...h => 0294-offset-item-frame-ticking.patch} | 0 ...event-consuming-the-wrong-itemstack.patch} | 0 ...6-Dont-send-unnecessary-sign-update.patch} | 0 ...-option-to-disable-pillager-patrols.patch} | 0 ...k-loads-when-villagers-try-to-find-.patch} | 0 ...656-Fix-Follow-Range-Initial-Target.patch} | 0 ... 0300-Duplicate-UUID-Resolve-Option.patch} | 0 ...ayerDeathEvent-shouldDropExperience.patch} | 0 ...ading-chunks-checking-hive-position.patch} | 0 ...hunks-from-Hoppers-and-other-things.patch} | 0 ...timise-EntityGetter-getPlayerByUUID.patch} | 0 ...305-Fix-items-not-falling-correctly.patch} | 4 +- ...ize-call-to-getFluid-for-explosions.patch} | 0 ...ializing-mismatching-chunk-coordina.patch} | 0 ... 0308-Alternative-item-despawn-rate.patch} | 12 +- ...=> 0309-Tracking-Range-Improvements.patch} | 0 ...et-gravity-in-void.-Fixes-MC-167279.patch} | 0 ...11-Improve-Block-breakNaturally-API.patch} | 0 ...-getChunkAt-calls-for-loaded-chunks.patch} | 0 ...0313-Add-debug-for-sync-chunk-loads.patch} | 0 ... => 0314-Improve-java-version-check.patch} | 0 ...tch => 0315-Add-ThrownEggHatchEvent.patch} | 0 ...p-API.patch => 0316-Entity-Jump-API.patch} | 0 ...-to-nerf-pigmen-from-nether-portals.patch} | 0 ... => 0318-Make-the-GUI-graph-fancier.patch} | 0 ...19-add-hand-to-BlockMultiPlaceEvent.patch} | 2 +- ...ipwire-hook-placement-before-update.patch} | 0 ...o-allow-iron-golems-to-spawn-in-air.patch} | 0 ...chance-of-villager-zombie-infection.patch} | 0 ...tch => 0323-Optimise-Chunk-getFluid.patch} | 0 ...rbose-world-setting-to-false-by-def.patch} | 0 ...Add-tick-times-API-and-mspt-command.patch} | 6 +- ...26-Expose-MinecraftServer-isRunning.patch} | 0 ...dd-Raw-Byte-ItemStack-Serialization.patch} | 0 ...pawn-settings-and-per-player-option.patch} | 0 ...nections-shouldn-t-hold-up-shutdown.patch} | 0 ...ow-bees-to-load-chunks-for-beehives.patch} | 0 ...PlayerChunkMap-adds-crashing-server.patch} | 0 ...tch => 0332-Don-t-tick-dead-players.patch} | 0 ...-Player-s-shouldn-t-be-able-to-move.patch} | 0 ...ove-existing-players-to-world-spawn.patch} | 2 +- ....patch => 0335-Optimize-Pathfinding.patch} | 0 ...6-Reduce-Either-Optional-allocation.patch} | 0 ...uce-memory-footprint-of-CompoundTag.patch} | 0 ...ent-opening-inventories-when-frozen.patch} | 0 ...entity-collision-code-if-not-needed.patch} | 2 +- ...Implement-Player-Client-Options-API.patch} | 2 +- ...ayer-is-attempted-to-be-removed-fro.patch} | 0 ...Event-when-Player-is-actually-ready.patch} | 2 +- ...awn-point-if-spawn-in-unloaded-worl.patch} | 2 +- ...layerAttackEntityCooldownResetEvent.patch} | 2 +- ...-fire-BlockFade-on-worldgen-threads.patch} | 0 ...tom-creative-and-insomniac-controls.patch} | 2 +- ...tem-duplication-and-teleport-issues.patch} | 4 +- ...patch => 0348-Villager-Restocks-API.patch} | 0 ...ickItem-Packet-and-kick-for-invalid.patch} | 0 ...per-thread-native-byte-buffer-cache.patch} | 0 ....patch => 0351-misc-debugging-dumps.patch} | 10 +- ...2-Prevent-teleporting-dead-entities.patch} | 0 ...atch => 0353-Implement-Mob-Goal-API.patch} | 0 ...=> 0354-Add-villager-reputation-API.patch} | 0 ...eOrb-merging-stacking-API-and-fixes.patch} | 2 +- ...-Fix-PotionEffect-ignores-icon-flag.patch} | 2 +- ...API.patch => 0357-Potential-bed-API.patch} | 2 +- ...ait-for-Async-Tasks-during-shutdown.patch} | 6 +- ...er-respects-game-and-entity-rules-f.patch} | 0 ...-for-console-having-all-permissions.patch} | 0 ...x-villager-trading-demand-MC-163962.patch} | 0 ... => 0362-Maps-shouldn-t-load-chunks.patch} | 0 ...okup-for-Treasure-Maps-Fixes-lag-fr.patch} | 0 ...r-runTaskTimerAsynchronously-Plugin.patch} | 0 ...ton-physics-inconsistency-MC-188840.patch} | 0 ...sing-chunks-due-to-integer-overflow.patch} | 0 ...-position-desync-causing-tp-exploit.patch} | 0 ...older-method-without-block-snapshot.patch} | 0 ...0369-Add-PlayerRecipeBookClickEvent.patch} | 0 ...-Hide-sync-chunk-writes-behind-flag.patch} | 0 ...1-Add-permission-for-command-blocks.patch} | 0 ...position-and-AABB-are-never-invalid.patch} | 0 ...d-Difficulty-Remembering-Difficulty.patch} | 10 +- ...atch => 0374-Paper-dumpitem-command.patch} | 0 ...Legacy-Component-serialization-size.patch} | 0 ...Plugin-Tickets-to-API-Chunk-Methods.patch} | 2 +- ...-Add-BlockStateMeta-clearBlockState.patch} | 0 ...vert-legacy-attributes-in-Item-Meta.patch} | 0 ...-not-accept-invalid-client-settings.patch} | 0 ...e-fix-EntityTargetLivingEntityEvent.patch} | 0 ...patch => 0381-Add-entity-liquid-API.patch} | 0 ...atch => 0382-Add-PrepareResultEvent.patch} | 2 +- ...-for-portal-on-world-gen-entity-add.patch} | 2 +- ...x-arrows-never-despawning-MC-125757.patch} | 0 ...Vanilla-Command-permission-checking.patch} | 0 ...-Bukkit-world-container-is-not-used.patch} | 0 ...5885-Unable-to-disable-advancements.patch} | 0 ...taPlayer-leak-due-from-quitting-ear.patch} | 0 ...e-NetworkManager-Exception-Handling.patch} | 0 ...ix-some-rails-connecting-improperly.patch} | 0 ...stake-in-CB-NBT-int-deserialization.patch} | 0 ...support.patch => 0392-Brand-support.patch} | 0 ...PickupItemAnimation-to-LivingEntity.patch} | 0 ...h => 0394-Don-t-require-FACING-data.patch} | 0 ...eEvent-not-firing-for-all-use-cases.patch} | 0 ...PI.patch => 0396-Add-moon-phase-API.patch} | 0 ...rver-load-chunks-from-newer-version.patch} | 0 ...headless-pistons-from-being-created.patch} | 0 ...ent.patch => 0399-Add-BellRingEvent.patch} | 2 +- ...dd-zombie-targets-turtle-egg-config.patch} | 0 ...patch => 0401-Buffer-joins-to-world.patch} | 0 ...s-not-working-in-some-kick-messages.patch} | 0 ...I.patch => 0403-Add-more-Evoker-API.patch} | 0 ...Add-methods-to-get-translation-keys.patch} | 2 +- ...te-HoverEvent-from-ItemStack-Entity.patch} | 0 ...ch => 0406-Cache-block-data-strings.patch} | 4 +- ...rtation-and-cancel-velocity-if-tele.patch} | 2 +- ...l-open-container-api-to-HumanEntity.patch} | 0 ...aFixerUpper-Rewrite-Rules-on-demand.patch} | 0 ...-capture-to-capture-all-items-added.patch} | 0 ...-Counter-to-allow-plugins-to-use-va.patch} | 0 ...track-plugin-scoreboards-by-default.patch} | 0 ...king.patch => 0413-Entity-isTicking.patch} | 0 ...non-whitelisted-player-when-white-l.patch} | 4 +- ...-Concurrency-issue-in-ShufflingList.patch} | 0 ...eset-Ender-Crystals-on-Dragon-Spawn.patch} | 0 ...-large-move-vectors-crashing-server.patch} | 0 ...atch => 0418-Optimise-getType-calls.patch} | 0 ....patch => 0419-Villager-resetOffers.patch} | 0 ...ce-order-when-capturing-blockstates.patch} | 0 ...em-locations-dropped-from-campfires.patch} | 0 ...2-Fix-bell-block-entity-memory-leak.patch} | 0 ...ing-up-when-item-stack-is-empty-in-.patch} | 0 ...Add-getOfflinePlayerIfCached-String.patch} | 2 +- ...ch => 0425-Add-ignore-discounts-API.patch} | 0 ...Toggle-for-removing-existing-dragon.patch} | 0 ...x-client-lag-on-advancement-loading.patch} | 0 ...> 0428-Item-no-age-no-player-pickup.patch} | 0 ...429-Beacon-API-custom-effect-ranges.patch} | 0 ...tch => 0430-Add-API-for-quit-reason.patch} | 0 ...ng-Trader-spawn-rate-config-options.patch} | 0 ...patch => 0432-Add-Destroy-Speed-API.patch} | 0 ...-spawnParticle-x-y-z-precision-loss.patch} | 2 +- ...34-Add-LivingEntity-clearActiveItem.patch} | 0 ...=> 0435-Add-PlayerItemCooldownEvent.patch} | 0 ...rove-performance-of-the-end-generat.patch} | 0 ...PI.patch => 0437-More-lightning-API.patch} | 0 ...should-not-bypass-cramming-gamerule.patch} | 4 +- ...-missing-default-perms-for-commands.patch} | 0 ...h => 0440-Add-PlayerShearBlockEvent.patch} | 0 ....patch => 0441-Limit-recipe-packets.patch} | 0 ...-CraftSound-backwards-compatibility.patch} | 0 ...443-Player-Chunk-Load-Unload-Events.patch} | 0 ...4-Optimize-Dynamic-get-Missing-Keys.patch} | 0 ...-Expose-LivingEntity-hurt-direction.patch} | 0 ...OBSTRUCTED-reason-to-BedEnterResult.patch} | 2 +- ...valid-ingredient-lists-in-VillagerA.patch} | 0 ...nt.patch => 0448-Add-TargetHitEvent.patch} | 0 ... 0449-MC-4-Fix-item-position-desync.patch} | 0 ... 0450-Additional-Block-Material-API.patch} | 0 ...tch => 0451-Fix-harming-potion-dupe.patch} | 0 ...t-Material-from-Boats-and-Minecarts.patch} | 0 ...ob-spawner-spawn-egg-transformation.patch} | 0 ...ix-Not-a-string-Map-Conversion-spam.patch} | 0 ...-Add-PlayerFlowerPotManipulateEvent.patch} | 0 ...ct-event-not-being-called-sometimes.patch} | 0 ...h => 0457-Zombie-API-breaking-doors.patch} | 0 ...458-Fix-nerfed-slime-when-splitting.patch} | 0 ...=> 0459-Add-EntityLoadCrossbowEvent.patch} | 0 ...> 0460-Add-WorldGameRuleChangeEvent.patch} | 0 ...61-Add-ServerResourcesReloadedEvent.patch} | 6 +- ...d-settings-for-mobs-picking-up-loot.patch} | 0 ...> 0463-Add-BlockFailedDispenseEvent.patch} | 2 +- ...64-Add-PlayerLecternPageChangeEvent.patch} | 0 ...65-Add-PlayerLoomPatternSelectEvent.patch} | 0 ...nfigurable-door-breaking-difficulty.patch} | 0 ...ty-commands-shall-not-be-dispatched.patch} | 0 ...OIs.patch => 0468-Remove-stale-POIs.patch} | 0 ...h => 0469-Fix-villager-boat-exploit.patch} | 2 +- ...I.patch => 0470-Add-sendOpLevel-API.patch} | 4 +- ...istryAccess-for-managing-Registries.patch} | 0 ...h => 0472-Add-StructuresLocateEvent.patch} | 0 ...-for-requiring-a-player-participant.patch} | 0 ...nent-with-empty-text-instead-of-thr.patch} | 0 ...475-Make-schedule-command-per-world.patch} | 0 ...476-Configurable-max-leash-distance.patch} | 0 ...h => 0477-Add-BlockPreDispenseEvent.patch} | 0 ...8-Add-PlayerChangeBeaconEffectEvent.patch} | 0 ...e-for-always-placing-the-dragon-egg.patch} | 0 ...-PlayerStonecutterRecipeSelectEvent.patch} | 0 ...h => 0481-Expand-EntityUnleashEvent.patch} | 0 ...shield-blocking-on-dimension-change.patch} | 0 ...atch => 0483-Add-DragonEggFormEvent.patch} | 0 ...t.patch => 0484-Add-EntityMoveEvent.patch} | 4 +- ...isable-pathfinding-updates-on-block.patch} | 0 ... 0486-Inline-shift-direction-fields.patch} | 0 ...-adding-items-to-BlockDropItemEvent.patch} | 0 ...inThreadExecutor-to-BukkitScheduler.patch} | 0 ...entity-allow-attribute-registration.patch} | 0 ...ix-dead-slime-setSize-invincibility.patch} | 0 ...pes-should-return-an-immutable-list.patch} | 0 ...atch => 0492-Expose-Tracked-Players.patch} | 0 ...GUI.patch => 0493-Improve-ServerGUI.patch} | 0 ...494-fix-converting-txt-to-json-file.patch} | 0 ...atch => 0495-Add-worldborder-events.patch} | 0 ...h => 0496-Add-PlayerNameEntityEvent.patch} | 0 ...h => 0497-Add-recipe-to-cook-events.patch} | 0 ...patch => 0498-Add-Block-isValidTool.patch} | 0 ...using-signs-inside-spawn-protection.patch} | 0 ....patch => 0500-Expand-world-key-API.patch} | 0 ...ternative-constructor-for-Rotations.patch} | 0 ...d-item-when-player-has-disconnected.patch} | 0 ...elist-use-configurable-kick-message.patch} | 4 +- ...gnore-result-of-PlayerEditBookEvent.patch} | 0 ...tch => 0505-Expose-protocol-version.patch} | 0 ...ab-completions-for-brigadier-comman.patch} | 0 ...temConsumeEvent-cancelling-properly.patch} | 0 ...patch => 0508-Add-bypass-host-check.patch} | 0 ...0509-Set-area-affect-cloud-rotation.patch} | 0 ...add-isDeeplySleeping-to-HumanEntity.patch} | 0 ...add-consumeFuel-to-FurnaceBurnEvent.patch} | 0 ...-set-drop-chance-to-EntityEquipment.patch} | 0 ...ix-PigZombieAngerEvent-cancellation.patch} | 0 ...ix-PlayerItemHeldEvent-firing-twice.patch} | 0 ...ch => 0515-Add-PlayerDeepSleepEvent.patch} | 0 ...ld-API.patch => 0516-More-World-API.patch} | 0 ...=> 0517-Add-PlayerBedFailEnterEvent.patch} | 0 ...-to-convert-between-Component-and-B.patch} | 0 ...awnEvent-fix-passed-parameter-issue.patch} | 0 ...acon-activation-deactivation-events.patch} | 0 ...dd-Channel-initialization-listeners.patch} | 0 ...mands-if-tab-completion-is-disabled.patch} | 0 ...> 0523-Add-more-WanderingTrader-API.patch} | 0 ...dd-EntityBlockStorage-clearEntities.patch} | 0 ...ssage-to-PlayerAdvancementDoneEvent.patch} | 0 ... => 0526-Add-HiddenPotionEffect-API.patch} | 0 ...close.patch => 0527-Inventory-close.patch} | 0 ...-in-sunlight-API-for-Phantoms-and-S.patch} | 0 ...atch => 0529-Add-basic-Datapack-API.patch} | 0 ...ment-variable-to-disable-server-gui.patch} | 0 ...31-Expand-PlayerGameModeChangeEvent.patch} | 0 ... => 0532-ItemStack-repair-check-API.patch} | 0 ....patch => 0533-More-Enchantment-API.patch} | 0 ...ve-range-check-for-block-placing-up.patch} | 0 ...PI.patch => 0535-Add-Mob-lookAt-API.patch} | 0 ...f-bucket-dispenses-will-succeed-for.patch} | 0 ...0537-Add-Unix-domain-socket-support.patch} | 0 ... => 0538-Add-EntityInsideBlockEvent.patch} | 0 ...-Improve-item-default-attribute-API.patch} | 0 ...ause-to-Weather-ThunderChangeEvents.patch} | 0 ...patch => 0541-More-Lidded-Block-API.patch} | 0 ...42-Limit-item-frame-cursors-on-maps.patch} | 0 ... => 0543-Add-PlayerKickEvent-causes.patch} | 4 +- ...0544-Add-PufferFishStateChangeEvent.patch} | 0 ...erBucketEmptyEvent-result-itemstack.patch} | 0 ...tedContainer-instead-of-ThreadingDe.patch} | 0 ...-to-fix-items-merging-through-walls.patch} | 4 +- ...h => 0548-Add-BellRevealRaiderEvent.patch} | 0 ... 0549-Fix-invulnerable-end-crystals.patch} | 0 ...50-Add-ElderGuardianAppearanceEvent.patch} | 0 ...-Biome-Mob-Lookups-for-Mob-Spawning.patch} | 0 ...patch => 0552-Line-Of-Sight-Changes.patch} | 0 ... => 0553-add-per-world-spawn-limits.patch} | 0 ...h => 0554-Fix-potions-splash-events.patch} | 0 ... => 0555-Add-more-LimitedRegion-API.patch} | 0 ...layerDropItemEvent-using-wrong-item.patch} | 0 ...PI.patch => 0557-Missing-Entity-API.patch} | 0 ...of-Block-applyBoneMeal-always-being.patch} | 0 ...tChunkIfLoadedImmediately-in-places.patch} | 0 ...rom-signs-not-firing-command-events.patch} | 0 ...tch => 0561-Add-PlayerArmSwingEvent.patch} | 0 ...-event-leave-message-not-being-sent.patch} | 0 ...-t-apply-cramming-damage-to-players.patch} | 0 ...d-timings-for-sensors-and-behaviors.patch} | 0 ... 0565-Add-missing-forceDrop-toggles.patch} | 0 ...inger-API.patch => 0566-Stinger-API.patch} | 0 ... => 0567-Add-System.out-err-catcher.patch} | 0 ...AFK-kick-while-watching-end-credits.patch} | 0 ...iting-of-comments-to-server.propert.patch} | 0 ...tch => 0570-Add-PlayerSetSpawnEvent.patch} | 0 ...rs-respect-inventory-max-stack-size.patch} | 0 ...ize-entity-tracker-passenger-checks.patch} | 0 ...-option-for-Piglins-guarding-chests.patch} | 0 ...h => 0574-Add-EntityDamageItemEvent.patch} | 0 ...timize-indirect-passenger-iteration.patch} | 0 ...em-frame-map-cursor-update-interval.patch} | 0 ...arget-without-changing-other-things.patch} | 0 ...ch => 0578-Add-BlockBreakBlockEvent.patch} | 0 ...-data-components-copy-in-smithing-r.patch} | 0 ...patch => 0580-More-CommandBlock-API.patch} | 0 ...-missing-team-sidebar-display-slots.patch} | 0 ...0582-Add-back-EntityPortalExitEvent.patch} | 0 ...-find-targets-for-lightning-strikes.patch} | 0 ... 0584-Get-entity-default-attributes.patch} | 0 ...d-API.patch => 0585-Left-handed-API.patch} | 0 ...ch => 0586-Add-more-advancement-API.patch} | 0 ...587-Add-ItemFactory-getSpawnEgg-API.patch} | 0 ...tch => 0588-Add-critical-damage-API.patch} | 0 ...0589-Fix-issues-with-mob-conversion.patch} | 0 ...Collision-methods-to-various-places.patch} | 0 ...-ram-API.patch => 0591-Goat-ram-API.patch} | 0 ...dd-API-for-resetting-a-single-score.patch} | 0 ...3-Add-Raw-Byte-Entity-Serialization.patch} | 0 ...94-Vanilla-command-permission-fixes.patch} | 0 ...logic-for-inventories-on-chunk-unlo.patch} | 0 ...96-Fix-GameProfileCache-concurrency.patch} | 0 ...597-Improve-and-expand-AsyncCatcher.patch} | 0 ...per-mobcaps-and-paper-playermobcaps.patch} | 0 ...tize-ResourceLocation-error-logging.patch} | 0 ...lly-inline-methods-in-BlockPosition.patch} | 0 ...ler-threads-according-to-the-plugin.patch} | 0 ...-getChunkAt-has-inlined-logic-for-l.patch} | 0 ...our-chunk-data-off-disk-when-conver.patch} | 0 ...d-state-when-raytracing-skip-air-bl.patch} | 0 ...atch => 0605-Time-scoreboard-search.patch} | 0 ...rimise-map-impl-for-tracked-players.patch} | 0 ...h => 0607-Add-missing-InventoryType.patch} | 0 ...imise-BlockSoil-nearby-water-lookup.patch} | 0 ...ntory-not-closing-on-entity-removal.patch} | 0 ...rement-before-suggesting-root-nodes.patch} | 0 ...ServerboundCommandSuggestionPacket-.patch} | 0 ...h => 0612-Add-packet-limiter-config.patch} | 0 ...nColor-on-tropical-fish-bucket-meta.patch} | 0 ...=> 0614-Ensure-valid-vehicle-status.patch} | 0 ...ftlocked-end-exit-portal-generation.patch} | 0 ...r-causing-a-crash-when-trying-to-ge.patch} | 0 ...-t-log-debug-logging-being-disabled.patch} | 0 ...ous-menus-with-empty-level-accesses.patch} | 0 ...h => 0619-Preserve-overstacked-loot.patch} | 0 ...ate-head-rotation-in-missing-places.patch} | 0 ...unintended-light-block-manipulation.patch} | 0 ...0622-Fix-CraftCriteria-defaults-map.patch} | 0 ...Fix-upstreams-block-state-factories.patch} | 0 ... => 0624-Configurable-feature-seeds.patch} | 0 ... 0625-Add-root-admin-user-detection.patch} | 0 ...t-attempt-to-teleport-dead-entities.patch} | 0 ...ive-velocity-through-repeated-crits.patch} | 0 ...e-code-using-deprecated-for-removal.patch} | 0 ...=> 0629-Fix-Spigot-growth-modifiers.patch} | 0 ...OpenersCounter-openCount-from-going.patch} | 0 ...0631-Add-PlayerItemFrameChangeEvent.patch} | 0 ...tch => 0632-Optimize-HashMapPalette.patch} | 0 ...-isSectionEmpty-int-and-optimize-Pa.patch} | 0 ...patch => 0634-Add-more-Campfire-API.patch} | 0 ...data-to-disk-if-it-serializes-witho.patch} | 0 ...ard-CraftEntity-in-teleport-command.patch} | 0 ... => 0637-Improve-scoreboard-entries.patch} | 0 ...ch => 0638-Entity-powdered-snow-API.patch} | 0 ...0639-Add-API-for-item-entity-health.patch} | 0 ...ax-block-light-for-monster-spawning.patch} | 0 ...pistons-and-BlockPistonRetractEvent.patch} | 0 ...-canSmelt-methods-to-FurnaceInvento.patch} | 0 ...le-API.patch => 0643-Bucketable-API.patch} | 0 ...es.patch => 0644-Validate-usernames.patch} | 0 ...er-animal-spawn-height-configurable.patch} | 0 ...anilla-BiomeProvider-from-WorldInfo.patch} | 4 +- ...ion-for-worlds-affected-by-time-cmd.patch} | 0 ...heck-for-PersistentDataContainer-ha.patch} | 0 ...9-Multiple-Entries-with-Scoreboards.patch} | 0 ...650-Reset-placed-block-on-exception.patch} | 0 ...configurable-height-for-slime-spawn.patch} | 0 ...0652-Fix-xp-reward-for-baby-zombies.patch} | 0 ...lti-Block-Change-API-Implementation.patch} | 0 ...ent.patch => 0654-Fix-NotePlayEvent.patch} | 0 ....patch => 0655-Freeze-Tick-Lock-API.patch} | 0 ...h => 0656-More-PotionEffectType-API.patch} | 0 ...for-StructureTemplate.Pallete-cache.patch} | 0 ...command-sender-which-forwards-feedb.patch} | 0 ...-missing-structure-set-seed-configs.patch} | 0 ...lled-powdered-snow-bucket-placement.patch} | 2 +- ...ate-calls-to-CraftServer-getSpawnLi.patch} | 0 ...gs.patch => 0662-Add-GameEvent-tags.patch} | 0 ...ks-fairly-for-worlds-while-waiting-.patch} | 6 +- ...tch => 0664-Furnace-RecipesUsed-API.patch} | 0 ...gurable-sculk-sensor-listener-range.patch} | 0 ... => 0666-Add-missing-block-data-API.patch} | 0 ...fault-CustomSpawners-in-custom-worl.patch} | 4 +- ...-worldlist-before-initing-the-world.patch} | 4 +- ...s.patch => 0669-Custom-Potion-Mixes.patch} | 4 +- ...70-Force-close-world-loading-screen.patch} | 0 ...671-Fix-falling-block-spawn-methods.patch} | 0 ...Expose-furnace-minecart-push-values.patch} | 0 ...ojectileHitEvent-for-piercing-arrow.patch} | 0 ...I.patch => 0674-More-Projectile-API.patch} | 0 ...x-swamp-hut-cat-generation-deadlock.patch} | 0 ...le-movement-from-players-while-tele.patch} | 0 ...0677-Implement-getComputedBiome-API.patch} | 0 ...> 0678-Make-some-itemstacks-nonnull.patch} | 0 ...679-Implement-enchantWithLevels-API.patch} | 0 ...h => 0680-Fix-saving-in-unloadWorld.patch} | 0 ...h => 0681-Buffer-OOB-setBlock-calls.patch} | 0 ... 0682-Add-TameableDeathMessageEvent.patch} | 0 ...ock-data-for-EntityChangeBlockEvent.patch} | 0 ...bles-running-when-mob-loot-gamerule.patch} | 0 ...ssenger-world-matches-ridden-entity.patch} | 0 ...ys-and-optimize-reference-Holder-ta.patch} | 0 ...low-changing-the-EnderDragon-podium.patch} | 0 ...erriding-a-block-entity-during-worl.patch} | 0 ...t-tile-entity-copies-loading-chunks.patch} | 0 ...ead-of-display-name-in-PlayerList-g.patch} | 0 ...> 0691-Expand-PlayerItemDamageEvent.patch} | 2 +- ...> 0692-WorldCreator-keepSpawnLoaded.patch} | 0 ...-in-CraftPersistentDataTypeRegistry.patch} | 0 ...destroyed-trigger-in-the-correct-pl.patch} | 0 ...Event-and-CollarColorable-interface.patch} | 0 ...CauldronLevelChange-on-initial-fill.patch} | 0 ...snow-cauldrons-not-turning-to-water.patch} | 0 ...> 0698-Add-PlayerStopUsingItemEvent.patch} | 0 ...rs.patch => 0699-Don-t-tick-markers.patch} | 0 ...tch => 0700-Expand-FallingBlock-API.patch} | 0 ...0701-Add-support-for-Proxy-Protocol.patch} | 0 ...x-OfflinePlayer-getBedSpawnLocation.patch} | 2 +- ...tory-for-smokers-and-blast-furnaces.patch} | 0 ... 0704-Sanitize-sent-BlockEntity-NBT.patch} | 0 ...-selector-resolving-in-books-by-def.patch} | 0 ...ntity-loading-causing-async-lookups.patch} | 0 ...-on-world-create-while-being-ticked.patch} | 12 +- ...08-Dont-resent-entity-on-art-update.patch} | 0 ... => 0709-Add-WardenAngerChangeEvent.patch} | 0 ...strict-advancement-dimension-checks.patch} | 0 ...tant-BlockStateListPopulator-method.patch} | 0 ...I.patch => 0712-Nameable-Banner-API.patch} | 0 ...roadcast-messages-to-command-blocks.patch} | 0 ...pty-items-from-being-added-to-world.patch} | 0 ...hPotion-and-LingeringPotion-spawnin.patch} | 0 ...atch => 0716-Add-Player-getFishHook.patch} | 0 ...chunk-for-dynamic-game-event-listen.patch} | 0 ...s-missing-EntityDropItemEvent-calls.patch} | 0 ...PE.patch => 0719-Fix-Bee-flower-NPE.patch} | 0 ...-not-using-commands.spam-exclusions.patch} | 0 ...API.patch => 0721-More-Teleport-API.patch} | 0 ... => 0722-Add-EntityPortalReadyEvent.patch} | 0 ...level-random-in-entity-constructors.patch} | 2 +- ...k-entities-after-destroy-prediction.patch} | 0 ...on-plugins-accessing-faraway-chunks.patch} | 0 ...tom-Chat-Completion-Suggestions-API.patch} | 0 ...Add-and-fix-missing-BlockFadeEvents.patch} | 0 ...ion-API.patch => 0728-Collision-API.patch} | 0 ...nd-message-for-brigadier-syntax-exc.patch} | 0 ...API.patch => 0730-Block-Ticking-API.patch} | 0 ...-Add-Velocity-IP-Forwarding-Support.patch} | 0 ...732-Add-NamespacedKey-biome-methods.patch} | 0 ...x-plugin-loggers-on-server-shutdown.patch} | 4 +- ...ok-changes-from-crashing-the-server.patch} | 0 ...tityChangeBlockEvent-in-more-places.patch} | 0 ...> 0736-Missing-eating-regain-reason.patch} | 0 ....patch => 0737-Missing-effect-cause.patch} | 0 ...serialization-deserialization-for-P.patch} | 0 ...rameter-to-ProjectileSource-launchP.patch} | 0 ...0-Call-BlockPhysicsEvent-more-often.patch} | 0 ...0741-Configurable-chat-thread-limit.patch} | 0 ...of-WorldCreator-keepSpawnLoaded-ret.patch} | 0 ... 0743-fix-Jigsaw-block-kicking-user.patch} | 0 ...mEvent-for-mud-converting-into-clay.patch} | 0 ... => 0745-Add-getDrops-to-BlockState.patch} | 0 ...=> 0746-Fix-a-bunch-of-vanilla-bugs.patch} | 0 ...y-onTrackingStart-during-navigation.patch} | 0 ... 0748-Fix-custom-piglin-loved-items.patch} | 0 ...=> 0749-EntityPickupItemEvent-fixes.patch} | 0 ...interactions-with-items-on-cooldown.patch} | 0 ...-Add-PlayerInventorySlotChangeEvent.patch} | 0 ... 0752-Elder-Guardian-appearance-API.patch} | 0 ...ch => 0753-Add-entity-knockback-API.patch} | 0 ....patch => 0754-Detect-headless-JREs.patch} | 0 ...-vehicle-collision-event-not-called.patch} | 0 ...ch => 0756-Add-EntityToggleSitEvent.patch} | 0 ... => 0757-Add-fire-tick-delay-option.patch} | 0 ...patch => 0758-Add-Moving-Piston-API.patch} | 0 ...> 0759-Ignore-impossible-spawn-tick.patch} | 0 ...t-and-EntitySelectorParser-permissi.patch} | 0 ...Event-cancellation-cant-fully-preve.patch} | 0 ...0762-Add-PrePlayerAttackEntityEvent.patch} | 0 ...e-reset-EnderDragon-boss-event-name.patch} | 0 ... 0764-Add-Player-Warden-Warning-API.patch} | 0 ...a-friendly-methods-to-update-trades.patch} | 0 ...766-Add-paper-dumplisteners-command.patch} | 0 ...lobal-player-list-where-appropriate.patch} | 0 ...sync-entity-add-due-to-fungus-trees.patch} | 0 ....patch => 0769-ItemStack-damage-API.patch} | 2 +- ...tion-API.patch => 0770-Friction-API.patch} | 8 +- ...trol-player-s-insomnia-and-phantoms.patch} | 2 +- ...-premature-player-kicks-on-shutdown.patch} | 4 +- ... => 0773-Sync-offhand-slot-in-menus.patch} | 0 ... 0774-Player-Entity-Tracking-Events.patch} | 0 ...tch => 0775-Limit-pet-look-distance.patch} | 0 ...ments.patch => 0776-fix-Instruments.patch} | 0 ...for-some-hot-BlockBehavior-and-Flui.patch} | 0 ...es-in-dispense-events-regarding-sta.patch} | 0 ...tch => 0779-Add-BlockLockCheckEvent.patch} | 0 ... 0780-Add-Sneaking-API-for-Entities.patch} | 0 ... => 0781-Improve-logging-and-errors.patch} | 0 ....patch => 0782-Improve-PortalEvents.patch} | 0 ...ion-for-spider-worldborder-climbing.patch} | 0 ...sing-SpigotConfig-logCommands-check.patch} | 0 ...Allay-stopDancing-while-not-dancing.patch} | 0 ...ge.patch => 0786-Flying-Fall-Damage.patch} | 0 ...ion-moving-velocity-to-VehicleBlock.patch} | 0 ...onfig-for-disabling-entity-tag-tags.patch} | 0 ...e-player-info-update-packet-on-join.patch} | 0 ...k-items-during-EntityResurrectEvent.patch} | 0 ...en-API.patch => 0791-Win-Screen-API.patch} | 0 ...ItemStack-setAmount-null-assignment.patch} | 0 ...ix-force-opening-enchantment-tables.patch} | 0 ...tch => 0794-Add-Entity-Body-Yaw-API.patch} | 0 ...vent-sleeping-villagers-moving-towa.patch} | 0 ...=> 0796-Add-EntityFertilizeEggEvent.patch} | 0 ...ty-drop-not-updating-the-client-inv.patch} | 0 ...temEvent-and-EntityCompostItemEvent.patch} | 0 ...ctly-handle-ArmorStand-invisibility.patch} | 0 ...ancement-triggers-for-entity-damage.patch} | 0 ...801-Fix-text-display-error-on-spawn.patch} | 0 ...nventories-returning-null-Locations.patch} | 0 ...API.patch => 0803-Add-Shearable-API.patch} | 0 ...Fix-SpawnEggMeta-get-setSpawnedType.patch} | 0 ...g-to-bad-recipes-in-furnace-like-ti.patch} | 0 ...ence-violations-like-they-should-be.patch} | 0 ...xpired-keys-from-impacting-new-join.patch} | 0 ...ts-being-fired-from-unloaded-chunks.patch} | 0 ...0809-Use-array-for-gamerule-storage.patch} | 0 ...Fix-a-couple-of-upstream-bed-issues.patch} | 0 ...ix-demo-flag-not-enabling-demo-mode.patch} | 0 ... 0812-Add-Mob-Experience-reward-API.patch} | 0 ...redstone-on-top-of-trap-doors-early.patch} | 0 ...Lazy-Initialization-for-Enum-Fields.patch} | 0 ...15-More-accurate-isInOpenWater-impl.patch} | 0 ... => 0816-Expand-PlayerItemMendEvent.patch} | 0 ...sh-ProjectileSource-for-projectiles.patch} | 2 +- ... => 0818-Add-transient-modifier-API.patch} | 0 ...patch => 0819-Fix-block-place-logic.patch} | 0 ...nd-playing-for-BlockItem-ItemStacks.patch} | 2 +- ...l-BlockGrowEvent-for-missing-blocks.patch} | 0 ...nhasbukkit-default-if-alias-block-e.patch} | 0 ...pLike-spam-for-missing-key-selector.patch} | 0 ...-Fix-sniffer-removeExploredLocation.patch} | 0 ...to-remove-all-active-potion-effects.patch} | 0 ...rafting-result-amount-for-fireworks.patch} | 0 ...7-Add-event-for-player-editing-sign.patch} | 2 +- ...k-item-frames-if-players-can-see-it.patch} | 0 ...ermission-levels-for-command-blocks.patch} | 0 ...Add-option-to-disable-block-updates.patch} | 0 ...831-Call-missing-BlockDispenseEvent.patch} | 0 ...-chunks-for-supporting-block-checks.patch} | 0 ...Optimize-player-lookups-for-beacons.patch} | 0 ...I.patch => 0834-More-Sign-Block-API.patch} | 0 ...5-fix-item-meta-for-tadpole-buckets.patch} | 0 ...t-API.patch => 0836-Fix-BanList-API.patch} | 4 +- ...d-water-fluid-explosion-resistance-.patch} | 0 ...x-possible-NPE-on-painting-creation.patch} | 0 ...imer-for-Wandering-Traders-spawned-.patch} | 0 ...nceOrb-should-call-EntitySpawnEvent.patch} | 0 ...t-throw-both-Spread-and-Grow-Events.patch} | 0 ....patch => 0842-Add-whitelist-events.patch} | 0 ... 0843-Implement-PlayerFailMoveEvent.patch} | 0 ...olia-scheduler-and-owned-region-API.patch} | 4 +- ...se-allay-memory-on-non-item-targets.patch} | 0 ...API-for-updating-recipes-on-clients.patch} | 0 ...tion-when-spawning-display-entities.patch} | 0 ...848-Only-capture-actual-tree-growth.patch} | 2 +- ...rce-for-mushroom-block-spread-event.patch} | 0 ...Data-on-more-entities-when-spawning.patch} | 0 ...-Use-correct-seed-on-api-world-load.patch} | 0 ...ta-neighbour-ticks-outside-of-range.patch} | 0 ...> 0853-Cache-map-ids-on-item-frames.patch} | 0 ...-custom-statistic-criteria-creation.patch} | 0 ...atch => 0855-Bandaid-fix-for-Effect.patch} | 0 ...tch => 0856-SculkCatalyst-bloom-API.patch} | 0 ...API-for-an-entity-s-scoreboard-name.patch} | 0 ...lace-methods-with-old-StructureType.patch} | 0 ...e-namespaced-commands-if-send-names.patch} | 0 ...-handle-BlockBreakEvent-isDropItems.patch} | 0 ...entity-death-event-for-ender-dragon.patch} | 0 ...tity-tracking-range-by-Y-coordinate.patch} | 0 ... => 0863-Add-Listing-API-for-Player.patch} | 0 ...figurable-Region-Compression-Format.patch} | 0 ...5-Add-BlockFace-to-BlockDamageEvent.patch} | 0 ...h => 0866-Fix-NPE-on-Boat-getStatus.patch} | 0 ...e-API.patch => 0867-Expand-Pose-API.patch} | 0 ...patch => 0868-More-DragonBattle-API.patch} | 0 ...tch => 0869-Add-PlayerPickItemEvent.patch} | 0 ...=> 0870-Allow-trident-custom-damage.patch} | 0 ...1-Expose-hand-in-BlockCanBuildEvent.patch} | 0 ...-nearest-structure-border-iteration.patch} | 0 ...Implement-OfflinePlayer-isConnected.patch} | 2 +- ...esync.patch => 0874-Fix-slot-desync.patch} | 0 ...titleOverride-to-InventoryOpenEvent.patch} | 0 ...76-Configure-sniffer-egg-hatch-time.patch} | 0 ...-proximity-check-before-entity-look.patch} | 0 ...kip-POI-finding-if-stuck-in-vehicle.patch} | 0 ...t-sanity-checks-in-container-clicks.patch} | 0 ...ll-BlockRedstoneEvents-for-lecterns.patch} | 0 ...roper-checking-of-empty-item-stacks.patch} | 0 ...ix-silent-equipment-change-for-mobs.patch} | 0 ...h => 0883-Fix-spigot-s-Forced-Stats.patch} | 0 ...ing-InventoryHolders-to-inventories.patch} | 0 ...entities-in-chunks-that-are-positio.patch} | 0 ...sing-logs-for-log-ips-config-option.patch} | 0 ...n-on-UpgradeData.BlockFixers-class-.patch} | 0 ...-AdvancementProgress-getDateAwarded.patch} | 0 ...idebar-objectives-not-being-cleared.patch} | 0 ...x-missing-map-initialize-event-call.patch} | 0 ...a-when-attaching-firework-to-entity.patch} | 0 ...92-Fix-UnsafeValues-loadAdvancement.patch} | 0 ...> 0893-Add-player-idle-duration-API.patch} | 0 ...-if-we-can-see-non-visible-entities.patch} | 0 ...NPE-in-SculkBloomEvent-world-access.patch} | 0 ...tack-for-Player-sendEquipmentChange.patch} | 0 ...Ints.patch => 0897-Optimize-VarInts.patch} | 0 ...e-collision-shape-of-a-block-before.patch} | 0 ...redicate-for-blocks-when-raytracing.patch} | 0 ...em-packets-with-collector-as-source.patch} | 0 ... => 0901-Expand-LingeringPotion-API.patch} | 0 ...ngEffect-powers-lightning-rods-and-.patch} | 0 ...h-event-for-all-player-interactions.patch} | 0 ...everal-issues-with-EntityBreedEvent.patch} | 0 ...905-Add-UUID-attribute-modifier-API.patch} | 0 ...-event-call-for-entity-teleport-API.patch} | 0 ...y-create-LootContext-for-criterions.patch} | 0 ...-t-fire-sync-events-during-worldgen.patch} | 0 ...tch => 0909-Add-Structure-check-API.patch} | 0 ...-getAttributeModifier-duplication-c.patch} | 0 ...store-vanilla-entity-drops-behavior.patch} | 2 +- ...-Dont-resend-blocks-on-interactions.patch} | 2 +- ...tch => 0913-add-more-scoreboard-API.patch} | 0 ...stry.patch => 0914-Improve-Registry.patch} | 0 ...on-null-loc-for-EntityTeleportEvent.patch} | 0 ...h => 0916-Add-experience-points-API.patch} | 0 ...h => 0917-Add-drops-to-shear-events.patch} | 2 +- ...> 0918-Add-PlayerShieldDisableEvent.patch} | 0 ...ate-ResourceLocation-in-NBT-reading.patch} | 0 ...-experience-dropping-on-block-break.patch} | 0 ...> 0921-Fixup-NamespacedKey-handling.patch} | 0 ...22-Expose-LootTable-of-DecoratedPot.patch} | 0 ...location-of-Vec3D-by-entity-tracker.patch} | 0 ...rTradeEvent-and-PlayerPurchaseEvent.patch} | 0 ...h => 0925-Add-ShulkerDuplicateEvent.patch} | 0 ...dd-api-for-spawn-egg-texture-colors.patch} | 0 ... => 0927-Add-Lifecycle-Event-system.patch} | 0 ...patch => 0928-ItemStack-Tooltip-API.patch} | 0 ...Snapshot-includeLightData-parameter.patch} | 0 ...PI.patch => 0930-Add-FluidState-API.patch} | 0 ...patch => 0931-add-number-format-api.patch} | 0 ...patch => 0932-improve-BanList-types.patch} | 0 ...I.patch => 0933-Expanded-Hopper-API.patch} | 0 ...4-Add-BlockBreakProgressUpdateEvent.patch} | 0 ...=> 0935-Deprecate-ItemStack-setType.patch} | 0 ...ch => 0936-Add-CartographyItemEvent.patch} | 0 ...aid-API.patch => 0937-More-Raid-API.patch} | 0 ...ng-message-for-initial-server-start.patch} | 4 +- ...-Configurable-max-block-fluid-ticks.patch} | 0 ...=> 0940-Fix-bees-aging-inside-hives.patch} | 0 ...1-Disable-memory-reserve-allocating.patch} | 0 ...ByEntityEvent-for-unowned-wither-sk.patch} | 0 ....patch => 0943-Fix-DamageSource-API.patch} | 4 +- ...nvalid-block-entity-during-world-ge.patch} | 0 ...ackOverflowError-for-some-dispenses.patch} | 0 ...=> 0946-Improve-tag-parser-handling.patch} | 0 ...s.patch => 0947-Item-Mutation-Fixes.patch} | 0 ...-Per-world-ticks-per-spawn-settings.patch} | 0 ...e-changed-item-from-dispense-events.patch} | 0 ...nd-End-Portal-Frames-from-being-des.patch} | 0 ...e-disarming-not-working-as-intended.patch} | 0 ...-for-mobs-immune-to-default-effects.patch} | 0 ... => 0953-Deep-clone-nbt-tags-in-PDC.patch} | 0 ...954-Support-old-UUID-format-for-NBT.patch} | 0 ...55-Fix-shield-disable-inconsistency.patch} | 0 ...-Large-Packets-disconnecting-client.patch} | 0 ...emFlags.patch => 0957-Fix-ItemFlags.patch} | 0 ...et-damage-reduction-inconsistencies.patch} | 2 +- ...-handling-of-LivingEntity-actuallyH.patch} | 0 ...e-checking-handled-tags-in-itemmeta.patch} | 2 +- ...atch => 0961-General-ItemMeta-fixes.patch} | 0 ...62-Expose-hasColor-to-leather-armor.patch} | 0 ...-API-to-get-player-ha-proxy-address.patch} | 0 ....patch => 0964-More-Chest-Block-API.patch} | 0 ...ta-component-type-on-encoding-error.patch} | 0 ...=> 0966-Brigadier-based-command-API.patch} | 10 +- ... => 0967-Fix-issues-with-Recipe-API.patch} | 0 ...68-Fix-equipment-slot-and-group-API.patch} | 0 ...lugin-to-use-Paper-PluginLoader-API.patch} | 0 ...versized-item-data-in-equipment-and.patch} | 0 ...nt-NPE-if-hooked-entity-was-cleared.patch} | 0 ...ng-BlockPlaceEvent-calling-onRemove.patch} | 2 +- ...973-Add-missing-fishing-event-state.patch} | 0 ...ate-InvAction-HOTBAR_MOVE_AND_READD.patch} | 0 ...nnect-packet-in-phases-where-it-doe.patch} | 0 ...tch => 0976-Adopt-MaterialRerouting.patch} | 0 ...=> 0977-Suspicious-Effect-Entry-API.patch} | 0 ...eck-if-itemstack-is-stackable-first.patch} | 0 ...emoving-recipes-from-RecipeIterator.patch} | 0 ...mage-tick-when-blocking-with-shield.patch} | 0 ...he-experimental-smithing-inventory-.patch} | 0 ... 0982-Moonrise-optimisation-patches.patch} | 28 +-- ...> 0983-Rewrite-dataconverter-system.patch} | 0 ...84-disable-forced-empty-world-ticks.patch} | 0 ...dBounds-and-getBlockState-for-inlin.patch} | 0 ...tem-frames-performance-and-bug-fixe.patch} | 0 ...ing-for-EntityLiving-hasLineOfSight.patch} | 0 ...Manager-and-add-advanced-packet-sup.patch} | 0 ...89-Allow-Saving-of-Oversized-Chunks.patch} | 0 ...990-Flat-bedrock-generator-settings.patch} | 0 ...=> 0991-Entity-Activation-Range-2.0.patch} | 2 +- ...0992-Optional-per-player-mob-spawns.patch} | 0 ...4-Anti-Xray.patch => 0993-Anti-Xray.patch} | 0 ...-Eigencraft-redstone-implementation.patch} | 0 ...ate-Current-redstone-implementation.patch} | 0 ...g-PreCreatureSpawnEvent-with-per-pl.patch} | 0 ...city-compression-and-cipher-natives.patch} | 0 ...timize-Collision-to-not-load-chunks.patch} | 2 +- ...alSelector-Goal.Flag-Set-operations.patch} | 0 ...pers.patch => 1000-Optimize-Hoppers.patch} | 6 +- ...01-Entity-load-save-limit-per-chunk.patch} | 0 ...> 1002-Optimize-Voxel-Shape-Merging.patch} | 0 ...Optimize-Bit-Operations-by-inlining.patch} | 0 ...> 1004-Remove-streams-from-hot-code.patch} | 0 ...er-Remove-Streams-Optimized-collect.patch} | 0 ...ementation-for-blockstate-state-loo.patch} | 0 ...-type-tags-suggestions-in-selectors.patch} | 0 ...-Oversized-block-entities-in-chunks.patch} | 0 ...> 1009-API-for-checking-sent-chunks.patch} | 0 ...eck-distance-in-entity-interactions.patch} | 0 ...ch => 1011-Configurable-Sand-Duping.patch} | 0 ...=> 1012-Optimise-general-POI-access.patch} | 0 ...-Improve-performance-of-mass-crafts.patch} | 0 ...ch => 1014-Properly-resend-entities.patch} | 2 +- ...h => 1015-Registry-Modification-API.patch} | 0 ...016-Add-registry-entry-and-builders.patch} | 0 ...h => 1017-Improved-Watchdog-Support.patch} | 28 +-- ...8-Proxy-ItemStack-to-CraftItemStack.patch} | 0 ...-accessible-directly-from-ItemStack.patch} | 0 ...aft-commands-in-function-parsing-an.patch} | 0 ...21-optimize-dirt-and-snow-spreading.patch} | 0 ... 1022-Fix-NPE-for-Jukebox-setRecord.patch} | 0 ...023-Fix-CraftWorld-isChunkGenerated.patch} | 0 ...patch => 1024-fix-horse-inventories.patch} | 0 ...ityDamageEvents-before-actuallyHurt.patch} | 0 ...r-desync-when-new-players-are-added.patch} | 0 ...atch => 1027-Lag-compensation-ticks.patch} | 6 +- ...-more-information-in-watchdog-dumps.patch} | 2 +- ...ch => 1029-Write-SavedData-IO-async.patch} | 0 ... => 1030-Add-ItemType-getItemRarity.patch} | 0 ...Incremental-chunk-and-player-saving.patch} | 6 +- ...ulate-regionfile-header-if-it-is-co.patch} | 0 ...le-spark.patch => 1033-Bundle-spark.patch} | 12 +- ... => 1034-Add-plugin-info-at-startup.patch} | 0 ...tion-leniency-distance-configurable.patch} | 0 ...1036-Fix-PickupStatus-getting-reset.patch} | 0 ...ype-in-SculkSensorBlock-canActivate.patch} | 0 ...anPlaceOn-and-CanDestroy-NBT-values.patch} | 0 ...on-for-horizontal-only-item-merging.patch} | 4 +- ...n-checking-in-player-move-packet-ha.patch} | 0 ...041-Add-skipping-world-symlink-scan.patch} | 0 ... 1042-Add-even-more-Enchantment-API.patch} | 0 ...ble-API.patch => 1043-Leashable-API.patch} | 0 ...=> 1044-Fix-CraftBukkit-drag-system.patch} | 0 ...ent-firing-for-block-entity-loading.patch} | 0 ...-lootable-item-function-from-compas.patch} | 0 ...y-placed-blocks-on-the-end-platform.patch} | 0 ...048-Add-enchantment-seed-update-API.patch} | 0 ...ending-chat-to-client-with-updating.patch} | 0 ...Fix-InventoryOpenEvent-cancellation.patch} | 0 ...ire-BlockExpEvent-on-grindstone-use.patch} | 0 ... => 1052-Check-dead-flag-in-isAlive.patch} | 0 ...I.patch => 1053-Add-FeatureFlag-API.patch} | 0 ....patch => 1054-Tag-Lifecycle-Events.patch} | 0 ... => 1055-Item-serialization-as-json.patch} | 0 ...ate-slot-in-PlayerInventory-setSlot.patch} | 0 ...all-time-unused-skip-tick-protection.patch | 163 ++++++++++++++++++ 794 files changed, 402 insertions(+), 282 deletions(-) rename patches/server/{0284-Server-Tick-Events.patch => 0283-Server-Tick-Events.patch} (86%) delete mode 100644 patches/server/0283-don-t-go-below-0-for-pickupDelay-breaks-picking-up-i.patch rename patches/server/{0285-PlayerDeathEvent-getItemsToKeep.patch => 0284-PlayerDeathEvent-getItemsToKeep.patch} (100%) rename patches/server/{0286-Optimize-Captured-BlockEntity-Lookup.patch => 0285-Optimize-Captured-BlockEntity-Lookup.patch} (100%) rename patches/server/{0287-Mob-Spawner-API-Enhancements.patch => 0286-Mob-Spawner-API-Enhancements.patch} (100%) rename patches/server/{0288-Fix-CB-call-to-changed-postToMainThread-method.patch => 0287-Fix-CB-call-to-changed-postToMainThread-method.patch} (100%) rename patches/server/{0289-Fix-sounds-when-item-frames-are-modified-MC-123450.patch => 0288-Fix-sounds-when-item-frames-are-modified-MC-123450.patch} (100%) rename patches/server/{0290-Implement-CraftBlockSoundGroup.patch => 0289-Implement-CraftBlockSoundGroup.patch} (100%) rename patches/server/{0291-Expose-the-internal-current-tick.patch => 0290-Expose-the-internal-current-tick.patch} (100%) rename patches/server/{0292-Show-blockstate-location-if-we-failed-to-read-it.patch => 0291-Show-blockstate-location-if-we-failed-to-read-it.patch} (94%) rename patches/server/{0293-Only-count-Natural-Spawned-mobs-towards-natural-spaw.patch => 0292-Only-count-Natural-Spawned-mobs-towards-natural-spaw.patch} (100%) rename patches/server/{0294-Configurable-projectile-relative-velocity.patch => 0293-Configurable-projectile-relative-velocity.patch} (100%) rename patches/server/{0295-offset-item-frame-ticking.patch => 0294-offset-item-frame-ticking.patch} (100%) rename patches/server/{0296-Prevent-consuming-the-wrong-itemstack.patch => 0295-Prevent-consuming-the-wrong-itemstack.patch} (100%) rename patches/server/{0297-Dont-send-unnecessary-sign-update.patch => 0296-Dont-send-unnecessary-sign-update.patch} (100%) rename patches/server/{0298-Add-option-to-disable-pillager-patrols.patch => 0297-Add-option-to-disable-pillager-patrols.patch} (100%) rename patches/server/{0299-Prevent-sync-chunk-loads-when-villagers-try-to-find-.patch => 0298-Prevent-sync-chunk-loads-when-villagers-try-to-find-.patch} (100%) rename patches/server/{0300-MC-145656-Fix-Follow-Range-Initial-Target.patch => 0299-MC-145656-Fix-Follow-Range-Initial-Target.patch} (100%) rename patches/server/{0301-Duplicate-UUID-Resolve-Option.patch => 0300-Duplicate-UUID-Resolve-Option.patch} (100%) rename patches/server/{0302-PlayerDeathEvent-shouldDropExperience.patch => 0301-PlayerDeathEvent-shouldDropExperience.patch} (100%) rename patches/server/{0303-Prevent-bees-loading-chunks-checking-hive-position.patch => 0302-Prevent-bees-loading-chunks-checking-hive-position.patch} (100%) rename patches/server/{0304-Don-t-load-Chunks-from-Hoppers-and-other-things.patch => 0303-Don-t-load-Chunks-from-Hoppers-and-other-things.patch} (100%) rename patches/server/{0305-Optimise-EntityGetter-getPlayerByUUID.patch => 0304-Optimise-EntityGetter-getPlayerByUUID.patch} (100%) rename patches/server/{0306-Fix-items-not-falling-correctly.patch => 0305-Fix-items-not-falling-correctly.patch} (93%) rename patches/server/{0307-Optimize-call-to-getFluid-for-explosions.patch => 0306-Optimize-call-to-getFluid-for-explosions.patch} (100%) rename patches/server/{0308-Guard-against-serializing-mismatching-chunk-coordina.patch => 0307-Guard-against-serializing-mismatching-chunk-coordina.patch} (100%) rename patches/server/{0309-Alternative-item-despawn-rate.patch => 0308-Alternative-item-despawn-rate.patch} (88%) rename patches/server/{0310-Tracking-Range-Improvements.patch => 0309-Tracking-Range-Improvements.patch} (100%) rename patches/server/{0311-Bees-get-gravity-in-void.-Fixes-MC-167279.patch => 0310-Bees-get-gravity-in-void.-Fixes-MC-167279.patch} (100%) rename patches/server/{0312-Improve-Block-breakNaturally-API.patch => 0311-Improve-Block-breakNaturally-API.patch} (100%) rename patches/server/{0313-Optimise-getChunkAt-calls-for-loaded-chunks.patch => 0312-Optimise-getChunkAt-calls-for-loaded-chunks.patch} (100%) rename patches/server/{0314-Add-debug-for-sync-chunk-loads.patch => 0313-Add-debug-for-sync-chunk-loads.patch} (100%) rename patches/server/{0315-Improve-java-version-check.patch => 0314-Improve-java-version-check.patch} (100%) rename patches/server/{0316-Add-ThrownEggHatchEvent.patch => 0315-Add-ThrownEggHatchEvent.patch} (100%) rename patches/server/{0317-Entity-Jump-API.patch => 0316-Entity-Jump-API.patch} (100%) rename patches/server/{0318-Add-option-to-nerf-pigmen-from-nether-portals.patch => 0317-Add-option-to-nerf-pigmen-from-nether-portals.patch} (100%) rename patches/server/{0319-Make-the-GUI-graph-fancier.patch => 0318-Make-the-GUI-graph-fancier.patch} (100%) rename patches/server/{0320-add-hand-to-BlockMultiPlaceEvent.patch => 0319-add-hand-to-BlockMultiPlaceEvent.patch} (93%) rename patches/server/{0321-Validate-tripwire-hook-placement-before-update.patch => 0320-Validate-tripwire-hook-placement-before-update.patch} (100%) rename patches/server/{0322-Add-option-to-allow-iron-golems-to-spawn-in-air.patch => 0321-Add-option-to-allow-iron-golems-to-spawn-in-air.patch} (100%) rename patches/server/{0323-Configurable-chance-of-villager-zombie-infection.patch => 0322-Configurable-chance-of-villager-zombie-infection.patch} (100%) rename patches/server/{0324-Optimise-Chunk-getFluid.patch => 0323-Optimise-Chunk-getFluid.patch} (100%) rename patches/server/{0325-Set-spigots-verbose-world-setting-to-false-by-def.patch => 0324-Set-spigots-verbose-world-setting-to-false-by-def.patch} (100%) rename patches/server/{0326-Add-tick-times-API-and-mspt-command.patch => 0325-Add-tick-times-API-and-mspt-command.patch} (97%) rename patches/server/{0327-Expose-MinecraftServer-isRunning.patch => 0326-Expose-MinecraftServer-isRunning.patch} (100%) rename patches/server/{0328-Add-Raw-Byte-ItemStack-Serialization.patch => 0327-Add-Raw-Byte-ItemStack-Serialization.patch} (100%) rename patches/server/{0329-Pillager-patrol-spawn-settings-and-per-player-option.patch => 0328-Pillager-patrol-spawn-settings-and-per-player-option.patch} (100%) rename patches/server/{0330-Remote-Connections-shouldn-t-hold-up-shutdown.patch => 0329-Remote-Connections-shouldn-t-hold-up-shutdown.patch} (100%) rename patches/server/{0331-Do-not-allow-bees-to-load-chunks-for-beehives.patch => 0330-Do-not-allow-bees-to-load-chunks-for-beehives.patch} (100%) rename patches/server/{0332-Prevent-Double-PlayerChunkMap-adds-crashing-server.patch => 0331-Prevent-Double-PlayerChunkMap-adds-crashing-server.patch} (100%) rename patches/server/{0333-Don-t-tick-dead-players.patch => 0332-Don-t-tick-dead-players.patch} (100%) rename patches/server/{0334-Dead-Player-s-shouldn-t-be-able-to-move.patch => 0333-Dead-Player-s-shouldn-t-be-able-to-move.patch} (100%) rename patches/server/{0335-Don-t-move-existing-players-to-world-spawn.patch => 0334-Don-t-move-existing-players-to-world-spawn.patch} (96%) rename patches/server/{0336-Optimize-Pathfinding.patch => 0335-Optimize-Pathfinding.patch} (100%) rename patches/server/{0337-Reduce-Either-Optional-allocation.patch => 0336-Reduce-Either-Optional-allocation.patch} (100%) rename patches/server/{0338-Reduce-memory-footprint-of-CompoundTag.patch => 0337-Reduce-memory-footprint-of-CompoundTag.patch} (100%) rename patches/server/{0339-Prevent-opening-inventories-when-frozen.patch => 0338-Prevent-opening-inventories-when-frozen.patch} (100%) rename patches/server/{0340-Don-t-run-entity-collision-code-if-not-needed.patch => 0339-Don-t-run-entity-collision-code-if-not-needed.patch} (96%) rename patches/server/{0341-Implement-Player-Client-Options-API.patch => 0340-Implement-Player-Client-Options-API.patch} (99%) rename patches/server/{0342-Don-t-crash-if-player-is-attempted-to-be-removed-fro.patch => 0341-Don-t-crash-if-player-is-attempted-to-be-removed-fro.patch} (100%) rename patches/server/{0343-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch => 0342-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch} (98%) rename patches/server/{0344-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch => 0343-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch} (98%) rename patches/server/{0345-Add-PlayerAttackEntityCooldownResetEvent.patch => 0344-Add-PlayerAttackEntityCooldownResetEvent.patch} (95%) rename patches/server/{0346-Don-t-fire-BlockFade-on-worldgen-threads.patch => 0345-Don-t-fire-BlockFade-on-worldgen-threads.patch} (100%) rename patches/server/{0347-Add-phantom-creative-and-insomniac-controls.patch => 0346-Add-phantom-creative-and-insomniac-controls.patch} (97%) rename patches/server/{0348-Fix-item-duplication-and-teleport-issues.patch => 0347-Fix-item-duplication-and-teleport-issues.patch} (98%) rename patches/server/{0349-Villager-Restocks-API.patch => 0348-Villager-Restocks-API.patch} (100%) rename patches/server/{0350-Validate-PickItem-Packet-and-kick-for-invalid.patch => 0349-Validate-PickItem-Packet-and-kick-for-invalid.patch} (100%) rename patches/server/{0351-Set-cap-on-JDK-per-thread-native-byte-buffer-cache.patch => 0350-Set-cap-on-JDK-per-thread-native-byte-buffer-cache.patch} (100%) rename patches/server/{0352-misc-debugging-dumps.patch => 0351-misc-debugging-dumps.patch} (94%) rename patches/server/{0353-Prevent-teleporting-dead-entities.patch => 0352-Prevent-teleporting-dead-entities.patch} (100%) rename patches/server/{0354-Implement-Mob-Goal-API.patch => 0353-Implement-Mob-Goal-API.patch} (100%) rename patches/server/{0355-Add-villager-reputation-API.patch => 0354-Add-villager-reputation-API.patch} (100%) rename patches/server/{0356-ExperienceOrb-merging-stacking-API-and-fixes.patch => 0355-ExperienceOrb-merging-stacking-API-and-fixes.patch} (98%) rename patches/server/{0357-Fix-PotionEffect-ignores-icon-flag.patch => 0356-Fix-PotionEffect-ignores-icon-flag.patch} (97%) rename patches/server/{0358-Potential-bed-API.patch => 0357-Potential-bed-API.patch} (95%) rename patches/server/{0359-Wait-for-Async-Tasks-during-shutdown.patch => 0358-Wait-for-Async-Tasks-during-shutdown.patch} (92%) rename patches/server/{0360-Ensure-EntityRaider-respects-game-and-entity-rules-f.patch => 0359-Ensure-EntityRaider-respects-game-and-entity-rules-f.patch} (100%) rename patches/server/{0361-Add-option-for-console-having-all-permissions.patch => 0360-Add-option-for-console-having-all-permissions.patch} (100%) rename patches/server/{0362-Fix-villager-trading-demand-MC-163962.patch => 0361-Fix-villager-trading-demand-MC-163962.patch} (100%) rename patches/server/{0363-Maps-shouldn-t-load-chunks.patch => 0362-Maps-shouldn-t-load-chunks.patch} (100%) rename patches/server/{0364-Use-seed-based-lookup-for-Treasure-Maps-Fixes-lag-fr.patch => 0363-Use-seed-based-lookup-for-Treasure-Maps-Fixes-lag-fr.patch} (100%) rename patches/server/{0365-Fix-CraftScheduler-runTaskTimerAsynchronously-Plugin.patch => 0364-Fix-CraftScheduler-runTaskTimerAsynchronously-Plugin.patch} (100%) rename patches/server/{0366-Fix-piston-physics-inconsistency-MC-188840.patch => 0365-Fix-piston-physics-inconsistency-MC-188840.patch} (100%) rename patches/server/{0367-Fix-missing-chunks-due-to-integer-overflow.patch => 0366-Fix-missing-chunks-due-to-integer-overflow.patch} (100%) rename patches/server/{0368-Prevent-position-desync-causing-tp-exploit.patch => 0367-Prevent-position-desync-causing-tp-exploit.patch} (100%) rename patches/server/{0369-Inventory-getHolder-method-without-block-snapshot.patch => 0368-Inventory-getHolder-method-without-block-snapshot.patch} (100%) rename patches/server/{0370-Add-PlayerRecipeBookClickEvent.patch => 0369-Add-PlayerRecipeBookClickEvent.patch} (100%) rename patches/server/{0371-Hide-sync-chunk-writes-behind-flag.patch => 0370-Hide-sync-chunk-writes-behind-flag.patch} (100%) rename patches/server/{0372-Add-permission-for-command-blocks.patch => 0371-Add-permission-for-command-blocks.patch} (100%) rename patches/server/{0373-Ensure-Entity-position-and-AABB-are-never-invalid.patch => 0372-Ensure-Entity-position-and-AABB-are-never-invalid.patch} (100%) rename patches/server/{0374-Fix-Per-World-Difficulty-Remembering-Difficulty.patch => 0373-Fix-Per-World-Difficulty-Remembering-Difficulty.patch} (95%) rename patches/server/{0375-Paper-dumpitem-command.patch => 0374-Paper-dumpitem-command.patch} (100%) rename patches/server/{0376-Improve-Legacy-Component-serialization-size.patch => 0375-Improve-Legacy-Component-serialization-size.patch} (100%) rename patches/server/{0377-Add-Plugin-Tickets-to-API-Chunk-Methods.patch => 0376-Add-Plugin-Tickets-to-API-Chunk-Methods.patch} (98%) rename patches/server/{0378-Add-BlockStateMeta-clearBlockState.patch => 0377-Add-BlockStateMeta-clearBlockState.patch} (100%) rename patches/server/{0379-Convert-legacy-attributes-in-Item-Meta.patch => 0378-Convert-legacy-attributes-in-Item-Meta.patch} (100%) rename patches/server/{0380-Do-not-accept-invalid-client-settings.patch => 0379-Do-not-accept-invalid-client-settings.patch} (100%) rename patches/server/{0381-Improve-fix-EntityTargetLivingEntityEvent.patch => 0380-Improve-fix-EntityTargetLivingEntityEvent.patch} (100%) rename patches/server/{0382-Add-entity-liquid-API.patch => 0381-Add-entity-liquid-API.patch} (100%) rename patches/server/{0383-Add-PrepareResultEvent.patch => 0382-Add-PrepareResultEvent.patch} (99%) rename patches/server/{0384-Don-t-check-chunk-for-portal-on-world-gen-entity-add.patch => 0383-Don-t-check-chunk-for-portal-on-world-gen-entity-add.patch} (91%) rename patches/server/{0385-Fix-arrows-never-despawning-MC-125757.patch => 0384-Fix-arrows-never-despawning-MC-125757.patch} (100%) rename patches/server/{0386-Thread-Safe-Vanilla-Command-permission-checking.patch => 0385-Thread-Safe-Vanilla-Command-permission-checking.patch} (100%) rename patches/server/{0387-Fix-SPIGOT-5824-Bukkit-world-container-is-not-used.patch => 0386-Fix-SPIGOT-5824-Bukkit-world-container-is-not-used.patch} (100%) rename patches/server/{0388-Fix-SPIGOT-5885-Unable-to-disable-advancements.patch => 0387-Fix-SPIGOT-5885-Unable-to-disable-advancements.patch} (100%) rename patches/server/{0389-Fix-AdvancementDataPlayer-leak-due-from-quitting-ear.patch => 0388-Fix-AdvancementDataPlayer-leak-due-from-quitting-ear.patch} (100%) rename patches/server/{0390-Optimize-NetworkManager-Exception-Handling.patch => 0389-Optimize-NetworkManager-Exception-Handling.patch} (100%) rename patches/server/{0391-Fix-some-rails-connecting-improperly.patch => 0390-Fix-some-rails-connecting-improperly.patch} (100%) rename patches/server/{0392-Fix-regex-mistake-in-CB-NBT-int-deserialization.patch => 0391-Fix-regex-mistake-in-CB-NBT-int-deserialization.patch} (100%) rename patches/server/{0393-Brand-support.patch => 0392-Brand-support.patch} (100%) rename patches/server/{0394-Add-playPickupItemAnimation-to-LivingEntity.patch => 0393-Add-playPickupItemAnimation-to-LivingEntity.patch} (100%) rename patches/server/{0395-Don-t-require-FACING-data.patch => 0394-Don-t-require-FACING-data.patch} (100%) rename patches/server/{0396-Fix-SpawnChangeEvent-not-firing-for-all-use-cases.patch => 0395-Fix-SpawnChangeEvent-not-firing-for-all-use-cases.patch} (100%) rename patches/server/{0397-Add-moon-phase-API.patch => 0396-Add-moon-phase-API.patch} (100%) rename patches/server/{0398-Do-not-let-the-server-load-chunks-from-newer-version.patch => 0397-Do-not-let-the-server-load-chunks-from-newer-version.patch} (100%) rename patches/server/{0399-Prevent-headless-pistons-from-being-created.patch => 0398-Prevent-headless-pistons-from-being-created.patch} (100%) rename patches/server/{0400-Add-BellRingEvent.patch => 0399-Add-BellRingEvent.patch} (93%) rename patches/server/{0401-Add-zombie-targets-turtle-egg-config.patch => 0400-Add-zombie-targets-turtle-egg-config.patch} (100%) rename patches/server/{0402-Buffer-joins-to-world.patch => 0401-Buffer-joins-to-world.patch} (100%) rename patches/server/{0403-Fix-hex-colors-not-working-in-some-kick-messages.patch => 0402-Fix-hex-colors-not-working-in-some-kick-messages.patch} (100%) rename patches/server/{0404-Add-more-Evoker-API.patch => 0403-Add-more-Evoker-API.patch} (100%) rename patches/server/{0405-Add-methods-to-get-translation-keys.patch => 0404-Add-methods-to-get-translation-keys.patch} (99%) rename patches/server/{0406-Create-HoverEvent-from-ItemStack-Entity.patch => 0405-Create-HoverEvent-from-ItemStack-Entity.patch} (100%) rename patches/server/{0407-Cache-block-data-strings.patch => 0406-Cache-block-data-strings.patch} (95%) rename patches/server/{0408-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch => 0407-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch} (98%) rename patches/server/{0409-Add-additional-open-container-api-to-HumanEntity.patch => 0408-Add-additional-open-container-api-to-HumanEntity.patch} (100%) rename patches/server/{0410-Cache-DataFixerUpper-Rewrite-Rules-on-demand.patch => 0409-Cache-DataFixerUpper-Rewrite-Rules-on-demand.patch} (100%) rename patches/server/{0411-Extend-block-drop-capture-to-capture-all-items-added.patch => 0410-Extend-block-drop-capture-to-capture-all-items-added.patch} (100%) rename patches/server/{0412-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch => 0411-Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch} (100%) rename patches/server/{0413-Lazily-track-plugin-scoreboards-by-default.patch => 0412-Lazily-track-plugin-scoreboards-by-default.patch} (100%) rename patches/server/{0414-Entity-isTicking.patch => 0413-Entity-isTicking.patch} (100%) rename patches/server/{0415-Fix-deop-kicking-non-whitelisted-player-when-white-l.patch => 0414-Fix-deop-kicking-non-whitelisted-player-when-white-l.patch} (90%) rename patches/server/{0416-Fix-Concurrency-issue-in-ShufflingList.patch => 0415-Fix-Concurrency-issue-in-ShufflingList.patch} (100%) rename patches/server/{0417-Reset-Ender-Crystals-on-Dragon-Spawn.patch => 0416-Reset-Ender-Crystals-on-Dragon-Spawn.patch} (100%) rename patches/server/{0418-Fix-for-large-move-vectors-crashing-server.patch => 0417-Fix-for-large-move-vectors-crashing-server.patch} (100%) rename patches/server/{0419-Optimise-getType-calls.patch => 0418-Optimise-getType-calls.patch} (100%) rename patches/server/{0420-Villager-resetOffers.patch => 0419-Villager-resetOffers.patch} (100%) rename patches/server/{0421-Retain-block-place-order-when-capturing-blockstates.patch => 0420-Retain-block-place-order-when-capturing-blockstates.patch} (100%) rename patches/server/{0422-Fix-item-locations-dropped-from-campfires.patch => 0421-Fix-item-locations-dropped-from-campfires.patch} (100%) rename patches/server/{0423-Fix-bell-block-entity-memory-leak.patch => 0422-Fix-bell-block-entity-memory-leak.patch} (100%) rename patches/server/{0424-Avoid-error-bubbling-up-when-item-stack-is-empty-in-.patch => 0423-Avoid-error-bubbling-up-when-item-stack-is-empty-in-.patch} (100%) rename patches/server/{0425-Add-getOfflinePlayerIfCached-String.patch => 0424-Add-getOfflinePlayerIfCached-String.patch} (93%) rename patches/server/{0426-Add-ignore-discounts-API.patch => 0425-Add-ignore-discounts-API.patch} (100%) rename patches/server/{0427-Toggle-for-removing-existing-dragon.patch => 0426-Toggle-for-removing-existing-dragon.patch} (100%) rename patches/server/{0428-Fix-client-lag-on-advancement-loading.patch => 0427-Fix-client-lag-on-advancement-loading.patch} (100%) rename patches/server/{0429-Item-no-age-no-player-pickup.patch => 0428-Item-no-age-no-player-pickup.patch} (100%) rename patches/server/{0430-Beacon-API-custom-effect-ranges.patch => 0429-Beacon-API-custom-effect-ranges.patch} (100%) rename patches/server/{0431-Add-API-for-quit-reason.patch => 0430-Add-API-for-quit-reason.patch} (100%) rename patches/server/{0432-Add-Wandering-Trader-spawn-rate-config-options.patch => 0431-Add-Wandering-Trader-spawn-rate-config-options.patch} (100%) rename patches/server/{0433-Add-Destroy-Speed-API.patch => 0432-Add-Destroy-Speed-API.patch} (100%) rename patches/server/{0434-Fix-Player-spawnParticle-x-y-z-precision-loss.patch => 0433-Fix-Player-spawnParticle-x-y-z-precision-loss.patch} (93%) rename patches/server/{0435-Add-LivingEntity-clearActiveItem.patch => 0434-Add-LivingEntity-clearActiveItem.patch} (100%) rename patches/server/{0436-Add-PlayerItemCooldownEvent.patch => 0435-Add-PlayerItemCooldownEvent.patch} (100%) rename patches/server/{0437-Significantly-improve-performance-of-the-end-generat.patch => 0436-Significantly-improve-performance-of-the-end-generat.patch} (100%) rename patches/server/{0438-More-lightning-API.patch => 0437-More-lightning-API.patch} (100%) rename patches/server/{0439-Climbing-should-not-bypass-cramming-gamerule.patch => 0438-Climbing-should-not-bypass-cramming-gamerule.patch} (97%) rename patches/server/{0440-Add-missing-default-perms-for-commands.patch => 0439-Add-missing-default-perms-for-commands.patch} (100%) rename patches/server/{0441-Add-PlayerShearBlockEvent.patch => 0440-Add-PlayerShearBlockEvent.patch} (100%) rename patches/server/{0442-Limit-recipe-packets.patch => 0441-Limit-recipe-packets.patch} (100%) rename patches/server/{0443-Fix-CraftSound-backwards-compatibility.patch => 0442-Fix-CraftSound-backwards-compatibility.patch} (100%) rename patches/server/{0444-Player-Chunk-Load-Unload-Events.patch => 0443-Player-Chunk-Load-Unload-Events.patch} (100%) rename patches/server/{0445-Optimize-Dynamic-get-Missing-Keys.patch => 0444-Optimize-Dynamic-get-Missing-Keys.patch} (100%) rename patches/server/{0446-Expose-LivingEntity-hurt-direction.patch => 0445-Expose-LivingEntity-hurt-direction.patch} (100%) rename patches/server/{0447-Add-OBSTRUCTED-reason-to-BedEnterResult.patch => 0446-Add-OBSTRUCTED-reason-to-BedEnterResult.patch} (91%) rename patches/server/{0448-Fix-crash-from-invalid-ingredient-lists-in-VillagerA.patch => 0447-Fix-crash-from-invalid-ingredient-lists-in-VillagerA.patch} (100%) rename patches/server/{0449-Add-TargetHitEvent.patch => 0448-Add-TargetHitEvent.patch} (100%) rename patches/server/{0450-MC-4-Fix-item-position-desync.patch => 0449-MC-4-Fix-item-position-desync.patch} (100%) rename patches/server/{0451-Additional-Block-Material-API.patch => 0450-Additional-Block-Material-API.patch} (100%) rename patches/server/{0452-Fix-harming-potion-dupe.patch => 0451-Fix-harming-potion-dupe.patch} (100%) rename patches/server/{0453-API-to-get-Material-from-Boats-and-Minecarts.patch => 0452-API-to-get-Material-from-Boats-and-Minecarts.patch} (100%) rename patches/server/{0454-Allow-disabling-mob-spawner-spawn-egg-transformation.patch => 0453-Allow-disabling-mob-spawner-spawn-egg-transformation.patch} (100%) rename patches/server/{0455-Fix-Not-a-string-Map-Conversion-spam.patch => 0454-Fix-Not-a-string-Map-Conversion-spam.patch} (100%) rename patches/server/{0456-Add-PlayerFlowerPotManipulateEvent.patch => 0455-Add-PlayerFlowerPotManipulateEvent.patch} (100%) rename patches/server/{0457-Fix-interact-event-not-being-called-sometimes.patch => 0456-Fix-interact-event-not-being-called-sometimes.patch} (100%) rename patches/server/{0458-Zombie-API-breaking-doors.patch => 0457-Zombie-API-breaking-doors.patch} (100%) rename patches/server/{0459-Fix-nerfed-slime-when-splitting.patch => 0458-Fix-nerfed-slime-when-splitting.patch} (100%) rename patches/server/{0460-Add-EntityLoadCrossbowEvent.patch => 0459-Add-EntityLoadCrossbowEvent.patch} (100%) rename patches/server/{0461-Add-WorldGameRuleChangeEvent.patch => 0460-Add-WorldGameRuleChangeEvent.patch} (100%) rename patches/server/{0462-Add-ServerResourcesReloadedEvent.patch => 0461-Add-ServerResourcesReloadedEvent.patch} (94%) rename patches/server/{0463-Add-world-settings-for-mobs-picking-up-loot.patch => 0462-Add-world-settings-for-mobs-picking-up-loot.patch} (100%) rename patches/server/{0464-Add-BlockFailedDispenseEvent.patch => 0463-Add-BlockFailedDispenseEvent.patch} (96%) rename patches/server/{0465-Add-PlayerLecternPageChangeEvent.patch => 0464-Add-PlayerLecternPageChangeEvent.patch} (100%) rename patches/server/{0466-Add-PlayerLoomPatternSelectEvent.patch => 0465-Add-PlayerLoomPatternSelectEvent.patch} (100%) rename patches/server/{0467-Configurable-door-breaking-difficulty.patch => 0466-Configurable-door-breaking-difficulty.patch} (100%) rename patches/server/{0468-Empty-commands-shall-not-be-dispatched.patch => 0467-Empty-commands-shall-not-be-dispatched.patch} (100%) rename patches/server/{0469-Remove-stale-POIs.patch => 0468-Remove-stale-POIs.patch} (100%) rename patches/server/{0470-Fix-villager-boat-exploit.patch => 0469-Fix-villager-boat-exploit.patch} (93%) rename patches/server/{0471-Add-sendOpLevel-API.patch => 0470-Add-sendOpLevel-API.patch} (92%) rename patches/server/{0472-Add-RegistryAccess-for-managing-Registries.patch => 0471-Add-RegistryAccess-for-managing-Registries.patch} (100%) rename patches/server/{0473-Add-StructuresLocateEvent.patch => 0472-Add-StructuresLocateEvent.patch} (100%) rename patches/server/{0474-Collision-option-for-requiring-a-player-participant.patch => 0473-Collision-option-for-requiring-a-player-participant.patch} (100%) rename patches/server/{0475-Return-chat-component-with-empty-text-instead-of-thr.patch => 0474-Return-chat-component-with-empty-text-instead-of-thr.patch} (100%) rename patches/server/{0476-Make-schedule-command-per-world.patch => 0475-Make-schedule-command-per-world.patch} (100%) rename patches/server/{0477-Configurable-max-leash-distance.patch => 0476-Configurable-max-leash-distance.patch} (100%) rename patches/server/{0478-Add-BlockPreDispenseEvent.patch => 0477-Add-BlockPreDispenseEvent.patch} (100%) rename patches/server/{0479-Add-PlayerChangeBeaconEffectEvent.patch => 0478-Add-PlayerChangeBeaconEffectEvent.patch} (100%) rename patches/server/{0480-Add-toggle-for-always-placing-the-dragon-egg.patch => 0479-Add-toggle-for-always-placing-the-dragon-egg.patch} (100%) rename patches/server/{0481-Add-PlayerStonecutterRecipeSelectEvent.patch => 0480-Add-PlayerStonecutterRecipeSelectEvent.patch} (100%) rename patches/server/{0482-Expand-EntityUnleashEvent.patch => 0481-Expand-EntityUnleashEvent.patch} (100%) rename patches/server/{0483-Reset-shield-blocking-on-dimension-change.patch => 0482-Reset-shield-blocking-on-dimension-change.patch} (100%) rename patches/server/{0484-Add-DragonEggFormEvent.patch => 0483-Add-DragonEggFormEvent.patch} (100%) rename patches/server/{0485-Add-EntityMoveEvent.patch => 0484-Add-EntityMoveEvent.patch} (95%) rename patches/server/{0486-added-option-to-disable-pathfinding-updates-on-block.patch => 0485-added-option-to-disable-pathfinding-updates-on-block.patch} (100%) rename patches/server/{0487-Inline-shift-direction-fields.patch => 0486-Inline-shift-direction-fields.patch} (100%) rename patches/server/{0488-Allow-adding-items-to-BlockDropItemEvent.patch => 0487-Allow-adding-items-to-BlockDropItemEvent.patch} (100%) rename patches/server/{0489-Add-getMainThreadExecutor-to-BukkitScheduler.patch => 0488-Add-getMainThreadExecutor-to-BukkitScheduler.patch} (100%) rename patches/server/{0490-living-entity-allow-attribute-registration.patch => 0489-living-entity-allow-attribute-registration.patch} (100%) rename patches/server/{0491-fix-dead-slime-setSize-invincibility.patch => 0490-fix-dead-slime-setSize-invincibility.patch} (100%) rename patches/server/{0492-Merchant-getRecipes-should-return-an-immutable-list.patch => 0491-Merchant-getRecipes-should-return-an-immutable-list.patch} (100%) rename patches/server/{0493-Expose-Tracked-Players.patch => 0492-Expose-Tracked-Players.patch} (100%) rename patches/server/{0494-Improve-ServerGUI.patch => 0493-Improve-ServerGUI.patch} (100%) rename patches/server/{0495-fix-converting-txt-to-json-file.patch => 0494-fix-converting-txt-to-json-file.patch} (100%) rename patches/server/{0496-Add-worldborder-events.patch => 0495-Add-worldborder-events.patch} (100%) rename patches/server/{0497-Add-PlayerNameEntityEvent.patch => 0496-Add-PlayerNameEntityEvent.patch} (100%) rename patches/server/{0498-Add-recipe-to-cook-events.patch => 0497-Add-recipe-to-cook-events.patch} (100%) rename patches/server/{0499-Add-Block-isValidTool.patch => 0498-Add-Block-isValidTool.patch} (100%) rename patches/server/{0500-Allow-using-signs-inside-spawn-protection.patch => 0499-Allow-using-signs-inside-spawn-protection.patch} (100%) rename patches/server/{0501-Expand-world-key-API.patch => 0500-Expand-world-key-API.patch} (100%) rename patches/server/{0502-Add-fast-alternative-constructor-for-Rotations.patch => 0501-Add-fast-alternative-constructor-for-Rotations.patch} (100%) rename patches/server/{0503-Drop-carried-item-when-player-has-disconnected.patch => 0502-Drop-carried-item-when-player-has-disconnected.patch} (100%) rename patches/server/{0504-forced-whitelist-use-configurable-kick-message.patch => 0503-forced-whitelist-use-configurable-kick-message.patch} (87%) rename patches/server/{0505-Don-t-ignore-result-of-PlayerEditBookEvent.patch => 0504-Don-t-ignore-result-of-PlayerEditBookEvent.patch} (100%) rename patches/server/{0506-Expose-protocol-version.patch => 0505-Expose-protocol-version.patch} (100%) rename patches/server/{0507-Enhance-console-tab-completions-for-brigadier-comman.patch => 0506-Enhance-console-tab-completions-for-brigadier-comman.patch} (100%) rename patches/server/{0508-Fix-PlayerItemConsumeEvent-cancelling-properly.patch => 0507-Fix-PlayerItemConsumeEvent-cancelling-properly.patch} (100%) rename patches/server/{0509-Add-bypass-host-check.patch => 0508-Add-bypass-host-check.patch} (100%) rename patches/server/{0510-Set-area-affect-cloud-rotation.patch => 0509-Set-area-affect-cloud-rotation.patch} (100%) rename patches/server/{0511-add-isDeeplySleeping-to-HumanEntity.patch => 0510-add-isDeeplySleeping-to-HumanEntity.patch} (100%) rename patches/server/{0512-add-consumeFuel-to-FurnaceBurnEvent.patch => 0511-add-consumeFuel-to-FurnaceBurnEvent.patch} (100%) rename patches/server/{0513-add-get-set-drop-chance-to-EntityEquipment.patch => 0512-add-get-set-drop-chance-to-EntityEquipment.patch} (100%) rename patches/server/{0514-fix-PigZombieAngerEvent-cancellation.patch => 0513-fix-PigZombieAngerEvent-cancellation.patch} (100%) rename patches/server/{0515-fix-PlayerItemHeldEvent-firing-twice.patch => 0514-fix-PlayerItemHeldEvent-firing-twice.patch} (100%) rename patches/server/{0516-Add-PlayerDeepSleepEvent.patch => 0515-Add-PlayerDeepSleepEvent.patch} (100%) rename patches/server/{0517-More-World-API.patch => 0516-More-World-API.patch} (100%) rename patches/server/{0518-Add-PlayerBedFailEnterEvent.patch => 0517-Add-PlayerBedFailEnterEvent.patch} (100%) rename patches/server/{0519-Implement-methods-to-convert-between-Component-and-B.patch => 0518-Implement-methods-to-convert-between-Component-and-B.patch} (100%) rename patches/server/{0520-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch => 0519-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch} (100%) rename patches/server/{0521-Introduce-beacon-activation-deactivation-events.patch => 0520-Introduce-beacon-activation-deactivation-events.patch} (100%) rename patches/server/{0522-Add-Channel-initialization-listeners.patch => 0521-Add-Channel-initialization-listeners.patch} (100%) rename patches/server/{0523-Send-empty-commands-if-tab-completion-is-disabled.patch => 0522-Send-empty-commands-if-tab-completion-is-disabled.patch} (100%) rename patches/server/{0524-Add-more-WanderingTrader-API.patch => 0523-Add-more-WanderingTrader-API.patch} (100%) rename patches/server/{0525-Add-EntityBlockStorage-clearEntities.patch => 0524-Add-EntityBlockStorage-clearEntities.patch} (100%) rename patches/server/{0526-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch => 0525-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch} (100%) rename patches/server/{0527-Add-HiddenPotionEffect-API.patch => 0526-Add-HiddenPotionEffect-API.patch} (100%) rename patches/server/{0528-Inventory-close.patch => 0527-Inventory-close.patch} (100%) rename patches/server/{0529-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch => 0528-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch} (100%) rename patches/server/{0530-Add-basic-Datapack-API.patch => 0529-Add-basic-Datapack-API.patch} (100%) rename patches/server/{0531-Add-environment-variable-to-disable-server-gui.patch => 0530-Add-environment-variable-to-disable-server-gui.patch} (100%) rename patches/server/{0532-Expand-PlayerGameModeChangeEvent.patch => 0531-Expand-PlayerGameModeChangeEvent.patch} (100%) rename patches/server/{0533-ItemStack-repair-check-API.patch => 0532-ItemStack-repair-check-API.patch} (100%) rename patches/server/{0534-More-Enchantment-API.patch => 0533-More-Enchantment-API.patch} (100%) rename patches/server/{0535-Move-range-check-for-block-placing-up.patch => 0534-Move-range-check-for-block-placing-up.patch} (100%) rename patches/server/{0536-Add-Mob-lookAt-API.patch => 0535-Add-Mob-lookAt-API.patch} (100%) rename patches/server/{0537-Correctly-check-if-bucket-dispenses-will-succeed-for.patch => 0536-Correctly-check-if-bucket-dispenses-will-succeed-for.patch} (100%) rename patches/server/{0538-Add-Unix-domain-socket-support.patch => 0537-Add-Unix-domain-socket-support.patch} (100%) rename patches/server/{0539-Add-EntityInsideBlockEvent.patch => 0538-Add-EntityInsideBlockEvent.patch} (100%) rename patches/server/{0540-Improve-item-default-attribute-API.patch => 0539-Improve-item-default-attribute-API.patch} (100%) rename patches/server/{0541-Add-cause-to-Weather-ThunderChangeEvents.patch => 0540-Add-cause-to-Weather-ThunderChangeEvents.patch} (100%) rename patches/server/{0542-More-Lidded-Block-API.patch => 0541-More-Lidded-Block-API.patch} (100%) rename patches/server/{0543-Limit-item-frame-cursors-on-maps.patch => 0542-Limit-item-frame-cursors-on-maps.patch} (100%) rename patches/server/{0544-Add-PlayerKickEvent-causes.patch => 0543-Add-PlayerKickEvent-causes.patch} (99%) rename patches/server/{0545-Add-PufferFishStateChangeEvent.patch => 0544-Add-PufferFishStateChangeEvent.patch} (100%) rename patches/server/{0546-Fix-PlayerBucketEmptyEvent-result-itemstack.patch => 0545-Fix-PlayerBucketEmptyEvent-result-itemstack.patch} (100%) rename patches/server/{0547-Synchronize-PalettedContainer-instead-of-ThreadingDe.patch => 0546-Synchronize-PalettedContainer-instead-of-ThreadingDe.patch} (100%) rename patches/server/{0548-Add-option-to-fix-items-merging-through-walls.patch => 0547-Add-option-to-fix-items-merging-through-walls.patch} (89%) rename patches/server/{0549-Add-BellRevealRaiderEvent.patch => 0548-Add-BellRevealRaiderEvent.patch} (100%) rename patches/server/{0550-Fix-invulnerable-end-crystals.patch => 0549-Fix-invulnerable-end-crystals.patch} (100%) rename patches/server/{0551-Add-ElderGuardianAppearanceEvent.patch => 0550-Add-ElderGuardianAppearanceEvent.patch} (100%) rename patches/server/{0552-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch => 0551-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch} (100%) rename patches/server/{0553-Line-Of-Sight-Changes.patch => 0552-Line-Of-Sight-Changes.patch} (100%) rename patches/server/{0554-add-per-world-spawn-limits.patch => 0553-add-per-world-spawn-limits.patch} (100%) rename patches/server/{0555-Fix-potions-splash-events.patch => 0554-Fix-potions-splash-events.patch} (100%) rename patches/server/{0556-Add-more-LimitedRegion-API.patch => 0555-Add-more-LimitedRegion-API.patch} (100%) rename patches/server/{0557-Fix-PlayerDropItemEvent-using-wrong-item.patch => 0556-Fix-PlayerDropItemEvent-using-wrong-item.patch} (100%) rename patches/server/{0558-Missing-Entity-API.patch => 0557-Missing-Entity-API.patch} (100%) rename patches/server/{0559-Fix-return-value-of-Block-applyBoneMeal-always-being.patch => 0558-Fix-return-value-of-Block-applyBoneMeal-always-being.patch} (100%) rename patches/server/{0560-Use-getChunkIfLoadedImmediately-in-places.patch => 0559-Use-getChunkIfLoadedImmediately-in-places.patch} (100%) rename patches/server/{0561-Fix-commands-from-signs-not-firing-command-events.patch => 0560-Fix-commands-from-signs-not-firing-command-events.patch} (100%) rename patches/server/{0562-Add-PlayerArmSwingEvent.patch => 0561-Add-PlayerArmSwingEvent.patch} (100%) rename patches/server/{0563-Fix-kick-event-leave-message-not-being-sent.patch => 0562-Fix-kick-event-leave-message-not-being-sent.patch} (100%) rename patches/server/{0564-Don-t-apply-cramming-damage-to-players.patch => 0563-Don-t-apply-cramming-damage-to-players.patch} (100%) rename patches/server/{0565-Rate-options-and-timings-for-sensors-and-behaviors.patch => 0564-Rate-options-and-timings-for-sensors-and-behaviors.patch} (100%) rename patches/server/{0566-Add-missing-forceDrop-toggles.patch => 0565-Add-missing-forceDrop-toggles.patch} (100%) rename patches/server/{0567-Stinger-API.patch => 0566-Stinger-API.patch} (100%) rename patches/server/{0568-Add-System.out-err-catcher.patch => 0567-Add-System.out-err-catcher.patch} (100%) rename patches/server/{0569-Prevent-AFK-kick-while-watching-end-credits.patch => 0568-Prevent-AFK-kick-while-watching-end-credits.patch} (100%) rename patches/server/{0570-Allow-skipping-writing-of-comments-to-server.propert.patch => 0569-Allow-skipping-writing-of-comments-to-server.propert.patch} (100%) rename patches/server/{0571-Add-PlayerSetSpawnEvent.patch => 0570-Add-PlayerSetSpawnEvent.patch} (100%) rename patches/server/{0572-Make-hoppers-respect-inventory-max-stack-size.patch => 0571-Make-hoppers-respect-inventory-max-stack-size.patch} (100%) rename patches/server/{0573-Optimize-entity-tracker-passenger-checks.patch => 0572-Optimize-entity-tracker-passenger-checks.patch} (100%) rename patches/server/{0574-Config-option-for-Piglins-guarding-chests.patch => 0573-Config-option-for-Piglins-guarding-chests.patch} (100%) rename patches/server/{0575-Add-EntityDamageItemEvent.patch => 0574-Add-EntityDamageItemEvent.patch} (100%) rename patches/server/{0576-Optimize-indirect-passenger-iteration.patch => 0575-Optimize-indirect-passenger-iteration.patch} (100%) rename patches/server/{0577-Configurable-item-frame-map-cursor-update-interval.patch => 0576-Configurable-item-frame-map-cursor-update-interval.patch} (100%) rename patches/server/{0578-Change-EnderEye-target-without-changing-other-things.patch => 0577-Change-EnderEye-target-without-changing-other-things.patch} (100%) rename patches/server/{0579-Add-BlockBreakBlockEvent.patch => 0578-Add-BlockBreakBlockEvent.patch} (100%) rename patches/server/{0580-Option-to-prevent-data-components-copy-in-smithing-r.patch => 0579-Option-to-prevent-data-components-copy-in-smithing-r.patch} (100%) rename patches/server/{0581-More-CommandBlock-API.patch => 0580-More-CommandBlock-API.patch} (100%) rename patches/server/{0582-Add-missing-team-sidebar-display-slots.patch => 0581-Add-missing-team-sidebar-display-slots.patch} (100%) rename patches/server/{0583-Add-back-EntityPortalExitEvent.patch => 0582-Add-back-EntityPortalExitEvent.patch} (100%) rename patches/server/{0584-Add-methods-to-find-targets-for-lightning-strikes.patch => 0583-Add-methods-to-find-targets-for-lightning-strikes.patch} (100%) rename patches/server/{0585-Get-entity-default-attributes.patch => 0584-Get-entity-default-attributes.patch} (100%) rename patches/server/{0586-Left-handed-API.patch => 0585-Left-handed-API.patch} (100%) rename patches/server/{0587-Add-more-advancement-API.patch => 0586-Add-more-advancement-API.patch} (100%) rename patches/server/{0588-Add-ItemFactory-getSpawnEgg-API.patch => 0587-Add-ItemFactory-getSpawnEgg-API.patch} (100%) rename patches/server/{0589-Add-critical-damage-API.patch => 0588-Add-critical-damage-API.patch} (100%) rename patches/server/{0590-Fix-issues-with-mob-conversion.patch => 0589-Fix-issues-with-mob-conversion.patch} (100%) rename patches/server/{0591-Add-hasCollision-methods-to-various-places.patch => 0590-Add-hasCollision-methods-to-various-places.patch} (100%) rename patches/server/{0592-Goat-ram-API.patch => 0591-Goat-ram-API.patch} (100%) rename patches/server/{0593-Add-API-for-resetting-a-single-score.patch => 0592-Add-API-for-resetting-a-single-score.patch} (100%) rename patches/server/{0594-Add-Raw-Byte-Entity-Serialization.patch => 0593-Add-Raw-Byte-Entity-Serialization.patch} (100%) rename patches/server/{0595-Vanilla-command-permission-fixes.patch => 0594-Vanilla-command-permission-fixes.patch} (100%) rename patches/server/{0596-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch => 0595-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch} (100%) rename patches/server/{0597-Fix-GameProfileCache-concurrency.patch => 0596-Fix-GameProfileCache-concurrency.patch} (100%) rename patches/server/{0598-Improve-and-expand-AsyncCatcher.patch => 0597-Improve-and-expand-AsyncCatcher.patch} (100%) rename patches/server/{0599-Add-paper-mobcaps-and-paper-playermobcaps.patch => 0598-Add-paper-mobcaps-and-paper-playermobcaps.patch} (100%) rename patches/server/{0600-Sanitize-ResourceLocation-error-logging.patch => 0599-Sanitize-ResourceLocation-error-logging.patch} (100%) rename patches/server/{0601-Manually-inline-methods-in-BlockPosition.patch => 0600-Manually-inline-methods-in-BlockPosition.patch} (100%) rename patches/server/{0602-Name-craft-scheduler-threads-according-to-the-plugin.patch => 0601-Name-craft-scheduler-threads-according-to-the-plugin.patch} (100%) rename patches/server/{0603-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch => 0602-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch} (100%) rename patches/server/{0604-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch => 0603-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch} (100%) rename patches/server/{0605-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch => 0604-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch} (100%) rename patches/server/{0606-Time-scoreboard-search.patch => 0605-Time-scoreboard-search.patch} (100%) rename patches/server/{0607-Oprimise-map-impl-for-tracked-players.patch => 0606-Oprimise-map-impl-for-tracked-players.patch} (100%) rename patches/server/{0608-Add-missing-InventoryType.patch => 0607-Add-missing-InventoryType.patch} (100%) rename patches/server/{0609-Optimise-BlockSoil-nearby-water-lookup.patch => 0608-Optimise-BlockSoil-nearby-water-lookup.patch} (100%) rename patches/server/{0610-Fix-merchant-inventory-not-closing-on-entity-removal.patch => 0609-Fix-merchant-inventory-not-closing-on-entity-removal.patch} (100%) rename patches/server/{0611-Check-requirement-before-suggesting-root-nodes.patch => 0610-Check-requirement-before-suggesting-root-nodes.patch} (100%) rename patches/server/{0612-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch => 0611-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch} (100%) rename patches/server/{0613-Add-packet-limiter-config.patch => 0612-Add-packet-limiter-config.patch} (100%) rename patches/server/{0614-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch => 0613-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch} (100%) rename patches/server/{0615-Ensure-valid-vehicle-status.patch => 0614-Ensure-valid-vehicle-status.patch} (100%) rename patches/server/{0616-Prevent-softlocked-end-exit-portal-generation.patch => 0615-Prevent-softlocked-end-exit-portal-generation.patch} (100%) rename patches/server/{0617-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch => 0616-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch} (100%) rename patches/server/{0618-Don-t-log-debug-logging-being-disabled.patch => 0617-Don-t-log-debug-logging-being-disabled.patch} (100%) rename patches/server/{0619-fix-various-menus-with-empty-level-accesses.patch => 0618-fix-various-menus-with-empty-level-accesses.patch} (100%) rename patches/server/{0620-Preserve-overstacked-loot.patch => 0619-Preserve-overstacked-loot.patch} (100%) rename patches/server/{0621-Update-head-rotation-in-missing-places.patch => 0620-Update-head-rotation-in-missing-places.patch} (100%) rename patches/server/{0622-prevent-unintended-light-block-manipulation.patch => 0621-prevent-unintended-light-block-manipulation.patch} (100%) rename patches/server/{0623-Fix-CraftCriteria-defaults-map.patch => 0622-Fix-CraftCriteria-defaults-map.patch} (100%) rename patches/server/{0624-Fix-upstreams-block-state-factories.patch => 0623-Fix-upstreams-block-state-factories.patch} (100%) rename patches/server/{0625-Configurable-feature-seeds.patch => 0624-Configurable-feature-seeds.patch} (100%) rename patches/server/{0626-Add-root-admin-user-detection.patch => 0625-Add-root-admin-user-detection.patch} (100%) rename patches/server/{0627-don-t-attempt-to-teleport-dead-entities.patch => 0626-don-t-attempt-to-teleport-dead-entities.patch} (100%) rename patches/server/{0628-Prevent-excessive-velocity-through-repeated-crits.patch => 0627-Prevent-excessive-velocity-through-repeated-crits.patch} (100%) rename patches/server/{0629-Remove-client-side-code-using-deprecated-for-removal.patch => 0628-Remove-client-side-code-using-deprecated-for-removal.patch} (100%) rename patches/server/{0630-Fix-Spigot-growth-modifiers.patch => 0629-Fix-Spigot-growth-modifiers.patch} (100%) rename patches/server/{0631-Prevent-ContainerOpenersCounter-openCount-from-going.patch => 0630-Prevent-ContainerOpenersCounter-openCount-from-going.patch} (100%) rename patches/server/{0632-Add-PlayerItemFrameChangeEvent.patch => 0631-Add-PlayerItemFrameChangeEvent.patch} (100%) rename patches/server/{0633-Optimize-HashMapPalette.patch => 0632-Optimize-HashMapPalette.patch} (100%) rename patches/server/{0634-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch => 0633-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch} (100%) rename patches/server/{0635-Add-more-Campfire-API.patch => 0634-Add-more-Campfire-API.patch} (100%) rename patches/server/{0636-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch => 0635-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch} (100%) rename patches/server/{0637-Forward-CraftEntity-in-teleport-command.patch => 0636-Forward-CraftEntity-in-teleport-command.patch} (100%) rename patches/server/{0638-Improve-scoreboard-entries.patch => 0637-Improve-scoreboard-entries.patch} (100%) rename patches/server/{0639-Entity-powdered-snow-API.patch => 0638-Entity-powdered-snow-API.patch} (100%) rename patches/server/{0640-Add-API-for-item-entity-health.patch => 0639-Add-API-for-item-entity-health.patch} (100%) rename patches/server/{0641-Configurable-max-block-light-for-monster-spawning.patch => 0640-Configurable-max-block-light-for-monster-spawning.patch} (100%) rename patches/server/{0642-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch => 0641-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch} (100%) rename patches/server/{0643-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch => 0642-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch} (100%) rename patches/server/{0644-Bucketable-API.patch => 0643-Bucketable-API.patch} (100%) rename patches/server/{0645-Validate-usernames.patch => 0644-Validate-usernames.patch} (100%) rename patches/server/{0646-Make-water-animal-spawn-height-configurable.patch => 0645-Make-water-animal-spawn-height-configurable.patch} (100%) rename patches/server/{0647-Expose-vanilla-BiomeProvider-from-WorldInfo.patch => 0646-Expose-vanilla-BiomeProvider-from-WorldInfo.patch} (98%) rename patches/server/{0648-Add-config-option-for-worlds-affected-by-time-cmd.patch => 0647-Add-config-option-for-worlds-affected-by-time-cmd.patch} (100%) rename patches/server/{0649-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch => 0648-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch} (100%) rename patches/server/{0650-Multiple-Entries-with-Scoreboards.patch => 0649-Multiple-Entries-with-Scoreboards.patch} (100%) rename patches/server/{0651-Reset-placed-block-on-exception.patch => 0650-Reset-placed-block-on-exception.patch} (100%) rename patches/server/{0652-Add-configurable-height-for-slime-spawn.patch => 0651-Add-configurable-height-for-slime-spawn.patch} (100%) rename patches/server/{0653-Fix-xp-reward-for-baby-zombies.patch => 0652-Fix-xp-reward-for-baby-zombies.patch} (100%) rename patches/server/{0654-Multi-Block-Change-API-Implementation.patch => 0653-Multi-Block-Change-API-Implementation.patch} (100%) rename patches/server/{0655-Fix-NotePlayEvent.patch => 0654-Fix-NotePlayEvent.patch} (100%) rename patches/server/{0656-Freeze-Tick-Lock-API.patch => 0655-Freeze-Tick-Lock-API.patch} (100%) rename patches/server/{0657-More-PotionEffectType-API.patch => 0656-More-PotionEffectType-API.patch} (100%) rename patches/server/{0658-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch => 0657-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch} (100%) rename patches/server/{0659-API-for-creating-command-sender-which-forwards-feedb.patch => 0658-API-for-creating-command-sender-which-forwards-feedb.patch} (100%) rename patches/server/{0660-Add-missing-structure-set-seed-configs.patch => 0659-Add-missing-structure-set-seed-configs.patch} (100%) rename patches/server/{0661-Fix-cancelled-powdered-snow-bucket-placement.patch => 0660-Fix-cancelled-powdered-snow-bucket-placement.patch} (95%) rename patches/server/{0662-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch => 0661-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch} (100%) rename patches/server/{0663-Add-GameEvent-tags.patch => 0662-Add-GameEvent-tags.patch} (100%) rename patches/server/{0664-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch => 0663-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch} (87%) rename patches/server/{0665-Furnace-RecipesUsed-API.patch => 0664-Furnace-RecipesUsed-API.patch} (100%) rename patches/server/{0666-Configurable-sculk-sensor-listener-range.patch => 0665-Configurable-sculk-sensor-listener-range.patch} (100%) rename patches/server/{0667-Add-missing-block-data-API.patch => 0666-Add-missing-block-data-API.patch} (100%) rename patches/server/{0668-Option-to-have-default-CustomSpawners-in-custom-worl.patch => 0667-Option-to-have-default-CustomSpawners-in-custom-worl.patch} (94%) rename patches/server/{0669-Put-world-into-worldlist-before-initing-the-world.patch => 0668-Put-world-into-worldlist-before-initing-the-world.patch} (93%) rename patches/server/{0670-Custom-Potion-Mixes.patch => 0669-Custom-Potion-Mixes.patch} (99%) rename patches/server/{0671-Force-close-world-loading-screen.patch => 0670-Force-close-world-loading-screen.patch} (100%) rename patches/server/{0672-Fix-falling-block-spawn-methods.patch => 0671-Fix-falling-block-spawn-methods.patch} (100%) rename patches/server/{0673-Expose-furnace-minecart-push-values.patch => 0672-Expose-furnace-minecart-push-values.patch} (100%) rename patches/server/{0674-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch => 0673-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch} (100%) rename patches/server/{0675-More-Projectile-API.patch => 0674-More-Projectile-API.patch} (100%) rename patches/server/{0676-Fix-swamp-hut-cat-generation-deadlock.patch => 0675-Fix-swamp-hut-cat-generation-deadlock.patch} (100%) rename patches/server/{0677-Don-t-allow-vehicle-movement-from-players-while-tele.patch => 0676-Don-t-allow-vehicle-movement-from-players-while-tele.patch} (100%) rename patches/server/{0678-Implement-getComputedBiome-API.patch => 0677-Implement-getComputedBiome-API.patch} (100%) rename patches/server/{0679-Make-some-itemstacks-nonnull.patch => 0678-Make-some-itemstacks-nonnull.patch} (100%) rename patches/server/{0680-Implement-enchantWithLevels-API.patch => 0679-Implement-enchantWithLevels-API.patch} (100%) rename patches/server/{0681-Fix-saving-in-unloadWorld.patch => 0680-Fix-saving-in-unloadWorld.patch} (100%) rename patches/server/{0682-Buffer-OOB-setBlock-calls.patch => 0681-Buffer-OOB-setBlock-calls.patch} (100%) rename patches/server/{0683-Add-TameableDeathMessageEvent.patch => 0682-Add-TameableDeathMessageEvent.patch} (100%) rename patches/server/{0684-Fix-new-block-data-for-EntityChangeBlockEvent.patch => 0683-Fix-new-block-data-for-EntityChangeBlockEvent.patch} (100%) rename patches/server/{0685-fix-player-loottables-running-when-mob-loot-gamerule.patch => 0684-fix-player-loottables-running-when-mob-loot-gamerule.patch} (100%) rename patches/server/{0686-Ensure-entity-passenger-world-matches-ridden-entity.patch => 0685-Ensure-entity-passenger-world-matches-ridden-entity.patch} (100%) rename patches/server/{0687-Cache-resource-keys-and-optimize-reference-Holder-ta.patch => 0686-Cache-resource-keys-and-optimize-reference-Holder-ta.patch} (100%) rename patches/server/{0688-Allow-changing-the-EnderDragon-podium.patch => 0687-Allow-changing-the-EnderDragon-podium.patch} (100%) rename patches/server/{0689-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch => 0688-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch} (100%) rename patches/server/{0690-Prevent-tile-entity-copies-loading-chunks.patch => 0689-Prevent-tile-entity-copies-loading-chunks.patch} (100%) rename patches/server/{0691-Use-username-instead-of-display-name-in-PlayerList-g.patch => 0690-Use-username-instead-of-display-name-in-PlayerList-g.patch} (100%) rename patches/server/{0692-Expand-PlayerItemDamageEvent.patch => 0691-Expand-PlayerItemDamageEvent.patch} (94%) rename patches/server/{0693-WorldCreator-keepSpawnLoaded.patch => 0692-WorldCreator-keepSpawnLoaded.patch} (100%) rename patches/server/{0694-Fix-CME-in-CraftPersistentDataTypeRegistry.patch => 0693-Fix-CME-in-CraftPersistentDataTypeRegistry.patch} (100%) rename patches/server/{0695-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch => 0694-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch} (100%) rename patches/server/{0696-Add-EntityDyeEvent-and-CollarColorable-interface.patch => 0695-Add-EntityDyeEvent-and-CollarColorable-interface.patch} (100%) rename patches/server/{0697-Fire-CauldronLevelChange-on-initial-fill.patch => 0696-Fire-CauldronLevelChange-on-initial-fill.patch} (100%) rename patches/server/{0698-fix-powder-snow-cauldrons-not-turning-to-water.patch => 0697-fix-powder-snow-cauldrons-not-turning-to-water.patch} (100%) rename patches/server/{0699-Add-PlayerStopUsingItemEvent.patch => 0698-Add-PlayerStopUsingItemEvent.patch} (100%) rename patches/server/{0700-Don-t-tick-markers.patch => 0699-Don-t-tick-markers.patch} (100%) rename patches/server/{0701-Expand-FallingBlock-API.patch => 0700-Expand-FallingBlock-API.patch} (100%) rename patches/server/{0702-Add-support-for-Proxy-Protocol.patch => 0701-Add-support-for-Proxy-Protocol.patch} (100%) rename patches/server/{0703-Fix-OfflinePlayer-getBedSpawnLocation.patch => 0702-Fix-OfflinePlayer-getBedSpawnLocation.patch} (96%) rename patches/server/{0704-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch => 0703-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch} (100%) rename patches/server/{0705-Sanitize-sent-BlockEntity-NBT.patch => 0704-Sanitize-sent-BlockEntity-NBT.patch} (100%) rename patches/server/{0706-Disable-component-selector-resolving-in-books-by-def.patch => 0705-Disable-component-selector-resolving-in-books-by-def.patch} (100%) rename patches/server/{0707-Prevent-entity-loading-causing-async-lookups.patch => 0706-Prevent-entity-loading-causing-async-lookups.patch} (100%) rename patches/server/{0708-Throw-exception-on-world-create-while-being-ticked.patch => 0707-Throw-exception-on-world-create-while-being-ticked.patch} (90%) rename patches/server/{0709-Dont-resent-entity-on-art-update.patch => 0708-Dont-resent-entity-on-art-update.patch} (100%) rename patches/server/{0710-Add-WardenAngerChangeEvent.patch => 0709-Add-WardenAngerChangeEvent.patch} (100%) rename patches/server/{0711-Add-option-for-strict-advancement-dimension-checks.patch => 0710-Add-option-for-strict-advancement-dimension-checks.patch} (100%) rename patches/server/{0712-Add-missing-important-BlockStateListPopulator-method.patch => 0711-Add-missing-important-BlockStateListPopulator-method.patch} (100%) rename patches/server/{0713-Nameable-Banner-API.patch => 0712-Nameable-Banner-API.patch} (100%) rename patches/server/{0714-Don-t-broadcast-messages-to-command-blocks.patch => 0713-Don-t-broadcast-messages-to-command-blocks.patch} (100%) rename patches/server/{0715-Prevent-empty-items-from-being-added-to-world.patch => 0714-Prevent-empty-items-from-being-added-to-world.patch} (100%) rename patches/server/{0716-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch => 0715-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch} (100%) rename patches/server/{0717-Add-Player-getFishHook.patch => 0716-Add-Player-getFishHook.patch} (100%) rename patches/server/{0718-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch => 0717-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch} (100%) rename patches/server/{0719-Add-various-missing-EntityDropItemEvent-calls.patch => 0718-Add-various-missing-EntityDropItemEvent-calls.patch} (100%) rename patches/server/{0720-Fix-Bee-flower-NPE.patch => 0719-Fix-Bee-flower-NPE.patch} (100%) rename patches/server/{0721-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch => 0720-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch} (100%) rename patches/server/{0722-More-Teleport-API.patch => 0721-More-Teleport-API.patch} (100%) rename patches/server/{0723-Add-EntityPortalReadyEvent.patch => 0722-Add-EntityPortalReadyEvent.patch} (100%) rename patches/server/{0724-Don-t-use-level-random-in-entity-constructors.patch => 0723-Don-t-use-level-random-in-entity-constructors.patch} (96%) rename patches/server/{0725-Send-block-entities-after-destroy-prediction.patch => 0724-Send-block-entities-after-destroy-prediction.patch} (100%) rename patches/server/{0726-Warn-on-plugins-accessing-faraway-chunks.patch => 0725-Warn-on-plugins-accessing-faraway-chunks.patch} (100%) rename patches/server/{0727-Custom-Chat-Completion-Suggestions-API.patch => 0726-Custom-Chat-Completion-Suggestions-API.patch} (100%) rename patches/server/{0728-Add-and-fix-missing-BlockFadeEvents.patch => 0727-Add-and-fix-missing-BlockFadeEvents.patch} (100%) rename patches/server/{0729-Collision-API.patch => 0728-Collision-API.patch} (100%) rename patches/server/{0730-Fix-suggest-command-message-for-brigadier-syntax-exc.patch => 0729-Fix-suggest-command-message-for-brigadier-syntax-exc.patch} (100%) rename patches/server/{0731-Block-Ticking-API.patch => 0730-Block-Ticking-API.patch} (100%) rename patches/server/{0732-Add-Velocity-IP-Forwarding-Support.patch => 0731-Add-Velocity-IP-Forwarding-Support.patch} (100%) rename patches/server/{0733-Add-NamespacedKey-biome-methods.patch => 0732-Add-NamespacedKey-biome-methods.patch} (100%) rename patches/server/{0734-Fix-plugin-loggers-on-server-shutdown.patch => 0733-Fix-plugin-loggers-on-server-shutdown.patch} (94%) rename patches/server/{0735-Stop-large-look-changes-from-crashing-the-server.patch => 0734-Stop-large-look-changes-from-crashing-the-server.patch} (100%) rename patches/server/{0736-Fire-EntityChangeBlockEvent-in-more-places.patch => 0735-Fire-EntityChangeBlockEvent-in-more-places.patch} (100%) rename patches/server/{0737-Missing-eating-regain-reason.patch => 0736-Missing-eating-regain-reason.patch} (100%) rename patches/server/{0738-Missing-effect-cause.patch => 0737-Missing-effect-cause.patch} (100%) rename patches/server/{0739-Added-byte-array-serialization-deserialization-for-P.patch => 0738-Added-byte-array-serialization-deserialization-for-P.patch} (100%) rename patches/server/{0740-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch => 0739-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch} (100%) rename patches/server/{0741-Call-BlockPhysicsEvent-more-often.patch => 0740-Call-BlockPhysicsEvent-more-often.patch} (100%) rename patches/server/{0742-Configurable-chat-thread-limit.patch => 0741-Configurable-chat-thread-limit.patch} (100%) rename patches/server/{0743-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch => 0742-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch} (100%) rename patches/server/{0744-fix-Jigsaw-block-kicking-user.patch => 0743-fix-Jigsaw-block-kicking-user.patch} (100%) rename patches/server/{0745-use-BlockFormEvent-for-mud-converting-into-clay.patch => 0744-use-BlockFormEvent-for-mud-converting-into-clay.patch} (100%) rename patches/server/{0746-Add-getDrops-to-BlockState.patch => 0745-Add-getDrops-to-BlockState.patch} (100%) rename patches/server/{0747-Fix-a-bunch-of-vanilla-bugs.patch => 0746-Fix-a-bunch-of-vanilla-bugs.patch} (100%) rename patches/server/{0748-Remove-unnecessary-onTrackingStart-during-navigation.patch => 0747-Remove-unnecessary-onTrackingStart-during-navigation.patch} (100%) rename patches/server/{0749-Fix-custom-piglin-loved-items.patch => 0748-Fix-custom-piglin-loved-items.patch} (100%) rename patches/server/{0750-EntityPickupItemEvent-fixes.patch => 0749-EntityPickupItemEvent-fixes.patch} (100%) rename patches/server/{0751-Correctly-handle-interactions-with-items-on-cooldown.patch => 0750-Correctly-handle-interactions-with-items-on-cooldown.patch} (100%) rename patches/server/{0752-Add-PlayerInventorySlotChangeEvent.patch => 0751-Add-PlayerInventorySlotChangeEvent.patch} (100%) rename patches/server/{0753-Elder-Guardian-appearance-API.patch => 0752-Elder-Guardian-appearance-API.patch} (100%) rename patches/server/{0754-Add-entity-knockback-API.patch => 0753-Add-entity-knockback-API.patch} (100%) rename patches/server/{0755-Detect-headless-JREs.patch => 0754-Detect-headless-JREs.patch} (100%) rename patches/server/{0756-fix-entity-vehicle-collision-event-not-called.patch => 0755-fix-entity-vehicle-collision-event-not-called.patch} (100%) rename patches/server/{0757-Add-EntityToggleSitEvent.patch => 0756-Add-EntityToggleSitEvent.patch} (100%) rename patches/server/{0758-Add-fire-tick-delay-option.patch => 0757-Add-fire-tick-delay-option.patch} (100%) rename patches/server/{0759-Add-Moving-Piston-API.patch => 0758-Add-Moving-Piston-API.patch} (100%) rename patches/server/{0760-Ignore-impossible-spawn-tick.patch => 0759-Ignore-impossible-spawn-tick.patch} (100%) rename patches/server/{0761-Fix-EntityArgument-and-EntitySelectorParser-permissi.patch => 0760-Fix-EntityArgument-and-EntitySelectorParser-permissi.patch} (100%) rename patches/server/{0762-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch => 0761-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch} (100%) rename patches/server/{0763-Add-PrePlayerAttackEntityEvent.patch => 0762-Add-PrePlayerAttackEntityEvent.patch} (100%) rename patches/server/{0764-ensure-reset-EnderDragon-boss-event-name.patch => 0763-ensure-reset-EnderDragon-boss-event-name.patch} (100%) rename patches/server/{0765-Add-Player-Warden-Warning-API.patch => 0764-Add-Player-Warden-Warning-API.patch} (100%) rename patches/server/{0766-More-vanilla-friendly-methods-to-update-trades.patch => 0765-More-vanilla-friendly-methods-to-update-trades.patch} (100%) rename patches/server/{0767-Add-paper-dumplisteners-command.patch => 0766-Add-paper-dumplisteners-command.patch} (100%) rename patches/server/{0768-check-global-player-list-where-appropriate.patch => 0767-check-global-player-list-where-appropriate.patch} (100%) rename patches/server/{0769-Fix-async-entity-add-due-to-fungus-trees.patch => 0768-Fix-async-entity-add-due-to-fungus-trees.patch} (100%) rename patches/server/{0770-ItemStack-damage-API.patch => 0769-ItemStack-damage-API.patch} (98%) rename patches/server/{0771-Friction-API.patch => 0770-Friction-API.patch} (96%) rename patches/server/{0772-Ability-to-control-player-s-insomnia-and-phantoms.patch => 0771-Ability-to-control-player-s-insomnia-and-phantoms.patch} (97%) rename patches/server/{0773-Fix-premature-player-kicks-on-shutdown.patch => 0772-Fix-premature-player-kicks-on-shutdown.patch} (95%) rename patches/server/{0774-Sync-offhand-slot-in-menus.patch => 0773-Sync-offhand-slot-in-menus.patch} (100%) rename patches/server/{0775-Player-Entity-Tracking-Events.patch => 0774-Player-Entity-Tracking-Events.patch} (100%) rename patches/server/{0776-Limit-pet-look-distance.patch => 0775-Limit-pet-look-distance.patch} (100%) rename patches/server/{0777-fix-Instruments.patch => 0776-fix-Instruments.patch} (100%) rename patches/server/{0778-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch => 0777-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch} (100%) rename patches/server/{0779-Fix-inconsistencies-in-dispense-events-regarding-sta.patch => 0778-Fix-inconsistencies-in-dispense-events-regarding-sta.patch} (100%) rename patches/server/{0780-Add-BlockLockCheckEvent.patch => 0779-Add-BlockLockCheckEvent.patch} (100%) rename patches/server/{0781-Add-Sneaking-API-for-Entities.patch => 0780-Add-Sneaking-API-for-Entities.patch} (100%) rename patches/server/{0782-Improve-logging-and-errors.patch => 0781-Improve-logging-and-errors.patch} (100%) rename patches/server/{0783-Improve-PortalEvents.patch => 0782-Improve-PortalEvents.patch} (100%) rename patches/server/{0784-Add-config-option-for-spider-worldborder-climbing.patch => 0783-Add-config-option-for-spider-worldborder-climbing.patch} (100%) rename patches/server/{0785-Add-missing-SpigotConfig-logCommands-check.patch => 0784-Add-missing-SpigotConfig-logCommands-check.patch} (100%) rename patches/server/{0786-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch => 0785-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch} (100%) rename patches/server/{0787-Flying-Fall-Damage.patch => 0786-Flying-Fall-Damage.patch} (100%) rename patches/server/{0788-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch => 0787-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch} (100%) rename patches/server/{0789-config-for-disabling-entity-tag-tags.patch => 0788-config-for-disabling-entity-tag-tags.patch} (100%) rename patches/server/{0790-Use-single-player-info-update-packet-on-join.patch => 0789-Use-single-player-info-update-packet-on-join.patch} (100%) rename patches/server/{0791-Correctly-shrink-items-during-EntityResurrectEvent.patch => 0790-Correctly-shrink-items-during-EntityResurrectEvent.patch} (100%) rename patches/server/{0792-Win-Screen-API.patch => 0791-Win-Screen-API.patch} (100%) rename patches/server/{0793-Remove-CraftItemStack-setAmount-null-assignment.patch => 0792-Remove-CraftItemStack-setAmount-null-assignment.patch} (100%) rename patches/server/{0794-Fix-force-opening-enchantment-tables.patch => 0793-Fix-force-opening-enchantment-tables.patch} (100%) rename patches/server/{0795-Add-Entity-Body-Yaw-API.patch => 0794-Add-Entity-Body-Yaw-API.patch} (100%) rename patches/server/{0796-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch => 0795-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch} (100%) rename patches/server/{0797-Add-EntityFertilizeEggEvent.patch => 0796-Add-EntityFertilizeEggEvent.patch} (100%) rename patches/server/{0798-Fix-HumanEntity-drop-not-updating-the-client-inv.patch => 0797-Fix-HumanEntity-drop-not-updating-the-client-inv.patch} (100%) rename patches/server/{0799-Add-CompostItemEvent-and-EntityCompostItemEvent.patch => 0798-Add-CompostItemEvent-and-EntityCompostItemEvent.patch} (100%) rename patches/server/{0800-Correctly-handle-ArmorStand-invisibility.patch => 0799-Correctly-handle-ArmorStand-invisibility.patch} (100%) rename patches/server/{0801-Fix-advancement-triggers-for-entity-damage.patch => 0800-Fix-advancement-triggers-for-entity-damage.patch} (100%) rename patches/server/{0802-Fix-text-display-error-on-spawn.patch => 0801-Fix-text-display-error-on-spawn.patch} (100%) rename patches/server/{0803-Fix-inventories-returning-null-Locations.patch => 0802-Fix-inventories-returning-null-Locations.patch} (100%) rename patches/server/{0804-Add-Shearable-API.patch => 0803-Add-Shearable-API.patch} (100%) rename patches/server/{0805-Fix-SpawnEggMeta-get-setSpawnedType.patch => 0804-Fix-SpawnEggMeta-get-setSpawnedType.patch} (100%) rename patches/server/{0806-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch => 0805-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch} (100%) rename patches/server/{0807-Treat-sequence-violations-like-they-should-be.patch => 0806-Treat-sequence-violations-like-they-should-be.patch} (100%) rename patches/server/{0808-Prevent-causing-expired-keys-from-impacting-new-join.patch => 0807-Prevent-causing-expired-keys-from-impacting-new-join.patch} (100%) rename patches/server/{0809-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch => 0808-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch} (100%) rename patches/server/{0810-Use-array-for-gamerule-storage.patch => 0809-Use-array-for-gamerule-storage.patch} (100%) rename patches/server/{0811-Fix-a-couple-of-upstream-bed-issues.patch => 0810-Fix-a-couple-of-upstream-bed-issues.patch} (100%) rename patches/server/{0812-Fix-demo-flag-not-enabling-demo-mode.patch => 0811-Fix-demo-flag-not-enabling-demo-mode.patch} (100%) rename patches/server/{0813-Add-Mob-Experience-reward-API.patch => 0812-Add-Mob-Experience-reward-API.patch} (100%) rename patches/server/{0814-Break-redstone-on-top-of-trap-doors-early.patch => 0813-Break-redstone-on-top-of-trap-doors-early.patch} (100%) rename patches/server/{0815-Avoid-Lazy-Initialization-for-Enum-Fields.patch => 0814-Avoid-Lazy-Initialization-for-Enum-Fields.patch} (100%) rename patches/server/{0816-More-accurate-isInOpenWater-impl.patch => 0815-More-accurate-isInOpenWater-impl.patch} (100%) rename patches/server/{0817-Expand-PlayerItemMendEvent.patch => 0816-Expand-PlayerItemMendEvent.patch} (100%) rename patches/server/{0818-Refresh-ProjectileSource-for-projectiles.patch => 0817-Refresh-ProjectileSource-for-projectiles.patch} (97%) rename patches/server/{0819-Add-transient-modifier-API.patch => 0818-Add-transient-modifier-API.patch} (100%) rename patches/server/{0820-Fix-block-place-logic.patch => 0819-Fix-block-place-logic.patch} (100%) rename patches/server/{0821-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch => 0820-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch} (94%) rename patches/server/{0822-Call-BlockGrowEvent-for-missing-blocks.patch => 0821-Call-BlockGrowEvent-for-missing-blocks.patch} (100%) rename patches/server/{0823-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch => 0822-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch} (100%) rename patches/server/{0824-fix-MapLike-spam-for-missing-key-selector.patch => 0823-fix-MapLike-spam-for-missing-key-selector.patch} (100%) rename patches/server/{0825-Fix-sniffer-removeExploredLocation.patch => 0824-Fix-sniffer-removeExploredLocation.patch} (100%) rename patches/server/{0826-Add-method-to-remove-all-active-potion-effects.patch => 0825-Add-method-to-remove-all-active-potion-effects.patch} (100%) rename patches/server/{0827-Fix-incorrect-crafting-result-amount-for-fireworks.patch => 0826-Fix-incorrect-crafting-result-amount-for-fireworks.patch} (100%) rename patches/server/{0828-Add-event-for-player-editing-sign.patch => 0827-Add-event-for-player-editing-sign.patch} (98%) rename patches/server/{0829-Only-tick-item-frames-if-players-can-see-it.patch => 0828-Only-tick-item-frames-if-players-can-see-it.patch} (100%) rename patches/server/{0830-Fix-cmd-permission-levels-for-command-blocks.patch => 0829-Fix-cmd-permission-levels-for-command-blocks.patch} (100%) rename patches/server/{0831-Add-option-to-disable-block-updates.patch => 0830-Add-option-to-disable-block-updates.patch} (100%) rename patches/server/{0832-Call-missing-BlockDispenseEvent.patch => 0831-Call-missing-BlockDispenseEvent.patch} (100%) rename patches/server/{0833-Don-t-load-chunks-for-supporting-block-checks.patch => 0832-Don-t-load-chunks-for-supporting-block-checks.patch} (100%) rename patches/server/{0834-Optimize-player-lookups-for-beacons.patch => 0833-Optimize-player-lookups-for-beacons.patch} (100%) rename patches/server/{0835-More-Sign-Block-API.patch => 0834-More-Sign-Block-API.patch} (100%) rename patches/server/{0836-fix-item-meta-for-tadpole-buckets.patch => 0835-fix-item-meta-for-tadpole-buckets.patch} (100%) rename patches/server/{0837-Fix-BanList-API.patch => 0836-Fix-BanList-API.patch} (99%) rename patches/server/{0838-Determine-lava-and-water-fluid-explosion-resistance-.patch => 0837-Determine-lava-and-water-fluid-explosion-resistance-.patch} (100%) rename patches/server/{0839-Fix-possible-NPE-on-painting-creation.patch => 0838-Fix-possible-NPE-on-painting-creation.patch} (100%) rename patches/server/{0840-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch => 0839-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch} (100%) rename patches/server/{0841-ExperienceOrb-should-call-EntitySpawnEvent.patch => 0840-ExperienceOrb-should-call-EntitySpawnEvent.patch} (100%) rename patches/server/{0842-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch => 0841-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch} (100%) rename patches/server/{0843-Add-whitelist-events.patch => 0842-Add-whitelist-events.patch} (100%) rename patches/server/{0844-Implement-PlayerFailMoveEvent.patch => 0843-Implement-PlayerFailMoveEvent.patch} (100%) rename patches/server/{0845-Folia-scheduler-and-owned-region-API.patch => 0844-Folia-scheduler-and-owned-region-API.patch} (99%) rename patches/server/{0846-Only-erase-allay-memory-on-non-item-targets.patch => 0845-Only-erase-allay-memory-on-non-item-targets.patch} (100%) rename patches/server/{0847-API-for-updating-recipes-on-clients.patch => 0846-API-for-updating-recipes-on-clients.patch} (100%) rename patches/server/{0848-Fix-rotation-when-spawning-display-entities.patch => 0847-Fix-rotation-when-spawning-display-entities.patch} (100%) rename patches/server/{0849-Only-capture-actual-tree-growth.patch => 0848-Only-capture-actual-tree-growth.patch} (98%) rename patches/server/{0850-Use-correct-source-for-mushroom-block-spread-event.patch => 0849-Use-correct-source-for-mushroom-block-spread-event.patch} (100%) rename patches/server/{0851-Respect-randomizeData-on-more-entities-when-spawning.patch => 0850-Respect-randomizeData-on-more-entities-when-spawning.patch} (100%) rename patches/server/{0852-Use-correct-seed-on-api-world-load.patch => 0851-Use-correct-seed-on-api-world-load.patch} (100%) rename patches/server/{0853-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch => 0852-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch} (100%) rename patches/server/{0854-Cache-map-ids-on-item-frames.patch => 0853-Cache-map-ids-on-item-frames.patch} (100%) rename patches/server/{0855-Fix-custom-statistic-criteria-creation.patch => 0854-Fix-custom-statistic-criteria-creation.patch} (100%) rename patches/server/{0856-Bandaid-fix-for-Effect.patch => 0855-Bandaid-fix-for-Effect.patch} (100%) rename patches/server/{0857-SculkCatalyst-bloom-API.patch => 0856-SculkCatalyst-bloom-API.patch} (100%) rename patches/server/{0858-API-for-an-entity-s-scoreboard-name.patch => 0857-API-for-an-entity-s-scoreboard-name.patch} (100%) rename patches/server/{0859-Deprecate-and-replace-methods-with-old-StructureType.patch => 0858-Deprecate-and-replace-methods-with-old-StructureType.patch} (100%) rename patches/server/{0860-Don-t-tab-complete-namespaced-commands-if-send-names.patch => 0859-Don-t-tab-complete-namespaced-commands-if-send-names.patch} (100%) rename patches/server/{0861-Properly-handle-BlockBreakEvent-isDropItems.patch => 0860-Properly-handle-BlockBreakEvent-isDropItems.patch} (100%) rename patches/server/{0862-Fire-entity-death-event-for-ender-dragon.patch => 0861-Fire-entity-death-event-for-ender-dragon.patch} (100%) rename patches/server/{0863-Configurable-entity-tracking-range-by-Y-coordinate.patch => 0862-Configurable-entity-tracking-range-by-Y-coordinate.patch} (100%) rename patches/server/{0864-Add-Listing-API-for-Player.patch => 0863-Add-Listing-API-for-Player.patch} (100%) rename patches/server/{0865-Configurable-Region-Compression-Format.patch => 0864-Configurable-Region-Compression-Format.patch} (100%) rename patches/server/{0866-Add-BlockFace-to-BlockDamageEvent.patch => 0865-Add-BlockFace-to-BlockDamageEvent.patch} (100%) rename patches/server/{0867-Fix-NPE-on-Boat-getStatus.patch => 0866-Fix-NPE-on-Boat-getStatus.patch} (100%) rename patches/server/{0868-Expand-Pose-API.patch => 0867-Expand-Pose-API.patch} (100%) rename patches/server/{0869-More-DragonBattle-API.patch => 0868-More-DragonBattle-API.patch} (100%) rename patches/server/{0870-Add-PlayerPickItemEvent.patch => 0869-Add-PlayerPickItemEvent.patch} (100%) rename patches/server/{0871-Allow-trident-custom-damage.patch => 0870-Allow-trident-custom-damage.patch} (100%) rename patches/server/{0872-Expose-hand-in-BlockCanBuildEvent.patch => 0871-Expose-hand-in-BlockCanBuildEvent.patch} (100%) rename patches/server/{0873-Optimize-nearest-structure-border-iteration.patch => 0872-Optimize-nearest-structure-border-iteration.patch} (100%) rename patches/server/{0874-Implement-OfflinePlayer-isConnected.patch => 0873-Implement-OfflinePlayer-isConnected.patch} (94%) rename patches/server/{0875-Fix-slot-desync.patch => 0874-Fix-slot-desync.patch} (100%) rename patches/server/{0876-Add-titleOverride-to-InventoryOpenEvent.patch => 0875-Add-titleOverride-to-InventoryOpenEvent.patch} (100%) rename patches/server/{0877-Configure-sniffer-egg-hatch-time.patch => 0876-Configure-sniffer-egg-hatch-time.patch} (100%) rename patches/server/{0878-Do-crystal-portal-proximity-check-before-entity-look.patch => 0877-Do-crystal-portal-proximity-check-before-entity-look.patch} (100%) rename patches/server/{0879-Skip-POI-finding-if-stuck-in-vehicle.patch => 0878-Skip-POI-finding-if-stuck-in-vehicle.patch} (100%) rename patches/server/{0880-Add-slot-sanity-checks-in-container-clicks.patch => 0879-Add-slot-sanity-checks-in-container-clicks.patch} (100%) rename patches/server/{0881-Call-BlockRedstoneEvents-for-lecterns.patch => 0880-Call-BlockRedstoneEvents-for-lecterns.patch} (100%) rename patches/server/{0882-Allow-proper-checking-of-empty-item-stacks.patch => 0881-Allow-proper-checking-of-empty-item-stacks.patch} (100%) rename patches/server/{0883-Fix-silent-equipment-change-for-mobs.patch => 0882-Fix-silent-equipment-change-for-mobs.patch} (100%) rename patches/server/{0884-Fix-spigot-s-Forced-Stats.patch => 0883-Fix-spigot-s-Forced-Stats.patch} (100%) rename patches/server/{0885-Add-missing-InventoryHolders-to-inventories.patch => 0884-Add-missing-InventoryHolders-to-inventories.patch} (100%) rename patches/server/{0886-Do-not-read-tile-entities-in-chunks-that-are-positio.patch => 0885-Do-not-read-tile-entities-in-chunks-that-are-positio.patch} (100%) rename patches/server/{0887-Add-missing-logs-for-log-ips-config-option.patch => 0886-Add-missing-logs-for-log-ips-config-option.patch} (100%) rename patches/server/{0888-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch => 0887-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch} (100%) rename patches/server/{0889-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch => 0888-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch} (100%) rename patches/server/{0890-Fix-team-sidebar-objectives-not-being-cleared.patch => 0889-Fix-team-sidebar-objectives-not-being-cleared.patch} (100%) rename patches/server/{0891-Fix-missing-map-initialize-event-call.patch => 0890-Fix-missing-map-initialize-event-call.patch} (100%) rename patches/server/{0892-Update-entity-data-when-attaching-firework-to-entity.patch => 0891-Update-entity-data-when-attaching-firework-to-entity.patch} (100%) rename patches/server/{0893-Fix-UnsafeValues-loadAdvancement.patch => 0892-Fix-UnsafeValues-loadAdvancement.patch} (100%) rename patches/server/{0894-Add-player-idle-duration-API.patch => 0893-Add-player-idle-duration-API.patch} (100%) rename patches/server/{0895-Don-t-check-if-we-can-see-non-visible-entities.patch => 0894-Don-t-check-if-we-can-see-non-visible-entities.patch} (100%) rename patches/server/{0896-Fix-NPE-in-SculkBloomEvent-world-access.patch => 0895-Fix-NPE-in-SculkBloomEvent-world-access.patch} (100%) rename patches/server/{0897-Allow-null-itemstack-for-Player-sendEquipmentChange.patch => 0896-Allow-null-itemstack-for-Player-sendEquipmentChange.patch} (100%) rename patches/server/{0898-Optimize-VarInts.patch => 0897-Optimize-VarInts.patch} (100%) rename patches/server/{0899-Add-API-to-get-the-collision-shape-of-a-block-before.patch => 0898-Add-API-to-get-the-collision-shape-of-a-block-before.patch} (100%) rename patches/server/{0900-Add-predicate-for-blocks-when-raytracing.patch => 0899-Add-predicate-for-blocks-when-raytracing.patch} (100%) rename patches/server/{0901-Broadcast-take-item-packets-with-collector-as-source.patch => 0900-Broadcast-take-item-packets-with-collector-as-source.patch} (100%) rename patches/server/{0902-Expand-LingeringPotion-API.patch => 0901-Expand-LingeringPotion-API.patch} (100%) rename patches/server/{0903-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch => 0902-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch} (100%) rename patches/server/{0904-Add-hand-to-fish-event-for-all-player-interactions.patch => 0903-Add-hand-to-fish-event-for-all-player-interactions.patch} (100%) rename patches/server/{0905-Fix-several-issues-with-EntityBreedEvent.patch => 0904-Fix-several-issues-with-EntityBreedEvent.patch} (100%) rename patches/server/{0906-Add-UUID-attribute-modifier-API.patch => 0905-Add-UUID-attribute-modifier-API.patch} (100%) rename patches/server/{0907-Fix-missing-event-call-for-entity-teleport-API.patch => 0906-Fix-missing-event-call-for-entity-teleport-API.patch} (100%) rename patches/server/{0908-Lazily-create-LootContext-for-criterions.patch => 0907-Lazily-create-LootContext-for-criterions.patch} (100%) rename patches/server/{0909-Don-t-fire-sync-events-during-worldgen.patch => 0908-Don-t-fire-sync-events-during-worldgen.patch} (100%) rename patches/server/{0910-Add-Structure-check-API.patch => 0909-Add-Structure-check-API.patch} (100%) rename patches/server/{0911-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch => 0910-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch} (100%) rename patches/server/{0912-Restore-vanilla-entity-drops-behavior.patch => 0911-Restore-vanilla-entity-drops-behavior.patch} (99%) rename patches/server/{0913-Dont-resend-blocks-on-interactions.patch => 0912-Dont-resend-blocks-on-interactions.patch} (99%) rename patches/server/{0914-add-more-scoreboard-API.patch => 0913-add-more-scoreboard-API.patch} (100%) rename patches/server/{0915-Improve-Registry.patch => 0914-Improve-Registry.patch} (100%) rename patches/server/{0916-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch => 0915-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch} (100%) rename patches/server/{0917-Add-experience-points-API.patch => 0916-Add-experience-points-API.patch} (100%) rename patches/server/{0918-Add-drops-to-shear-events.patch => 0917-Add-drops-to-shear-events.patch} (99%) rename patches/server/{0919-Add-PlayerShieldDisableEvent.patch => 0918-Add-PlayerShieldDisableEvent.patch} (100%) rename patches/server/{0920-Validate-ResourceLocation-in-NBT-reading.patch => 0919-Validate-ResourceLocation-in-NBT-reading.patch} (100%) rename patches/server/{0921-Properly-handle-experience-dropping-on-block-break.patch => 0920-Properly-handle-experience-dropping-on-block-break.patch} (100%) rename patches/server/{0922-Fixup-NamespacedKey-handling.patch => 0921-Fixup-NamespacedKey-handling.patch} (100%) rename patches/server/{0923-Expose-LootTable-of-DecoratedPot.patch => 0922-Expose-LootTable-of-DecoratedPot.patch} (100%) rename patches/server/{0924-Reduce-allocation-of-Vec3D-by-entity-tracker.patch => 0923-Reduce-allocation-of-Vec3D-by-entity-tracker.patch} (100%) rename patches/server/{0925-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch => 0924-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch} (100%) rename patches/server/{0926-Add-ShulkerDuplicateEvent.patch => 0925-Add-ShulkerDuplicateEvent.patch} (100%) rename patches/server/{0927-Add-api-for-spawn-egg-texture-colors.patch => 0926-Add-api-for-spawn-egg-texture-colors.patch} (100%) rename patches/server/{0928-Add-Lifecycle-Event-system.patch => 0927-Add-Lifecycle-Event-system.patch} (100%) rename patches/server/{0929-ItemStack-Tooltip-API.patch => 0928-ItemStack-Tooltip-API.patch} (100%) rename patches/server/{0930-Add-getChunkSnapshot-includeLightData-parameter.patch => 0929-Add-getChunkSnapshot-includeLightData-parameter.patch} (100%) rename patches/server/{0931-Add-FluidState-API.patch => 0930-Add-FluidState-API.patch} (100%) rename patches/server/{0932-add-number-format-api.patch => 0931-add-number-format-api.patch} (100%) rename patches/server/{0933-improve-BanList-types.patch => 0932-improve-BanList-types.patch} (100%) rename patches/server/{0934-Expanded-Hopper-API.patch => 0933-Expanded-Hopper-API.patch} (100%) rename patches/server/{0935-Add-BlockBreakProgressUpdateEvent.patch => 0934-Add-BlockBreakProgressUpdateEvent.patch} (100%) rename patches/server/{0936-Deprecate-ItemStack-setType.patch => 0935-Deprecate-ItemStack-setType.patch} (100%) rename patches/server/{0937-Add-CartographyItemEvent.patch => 0936-Add-CartographyItemEvent.patch} (100%) rename patches/server/{0938-More-Raid-API.patch => 0937-More-Raid-API.patch} (100%) rename patches/server/{0939-Add-onboarding-message-for-initial-server-start.patch => 0938-Add-onboarding-message-for-initial-server-start.patch} (97%) rename patches/server/{0940-Configurable-max-block-fluid-ticks.patch => 0939-Configurable-max-block-fluid-ticks.patch} (100%) rename patches/server/{0941-Fix-bees-aging-inside-hives.patch => 0940-Fix-bees-aging-inside-hives.patch} (100%) rename patches/server/{0942-Disable-memory-reserve-allocating.patch => 0941-Disable-memory-reserve-allocating.patch} (100%) rename patches/server/{0943-Fire-EntityDamageByEntityEvent-for-unowned-wither-sk.patch => 0942-Fire-EntityDamageByEntityEvent-for-unowned-wither-sk.patch} (100%) rename patches/server/{0944-Fix-DamageSource-API.patch => 0943-Fix-DamageSource-API.patch} (98%) rename patches/server/{0945-Fix-creation-of-invalid-block-entity-during-world-ge.patch => 0944-Fix-creation-of-invalid-block-entity-during-world-ge.patch} (100%) rename patches/server/{0946-Fix-possible-StackOverflowError-for-some-dispenses.patch => 0945-Fix-possible-StackOverflowError-for-some-dispenses.patch} (100%) rename patches/server/{0947-Improve-tag-parser-handling.patch => 0946-Improve-tag-parser-handling.patch} (100%) rename patches/server/{0948-Item-Mutation-Fixes.patch => 0947-Item-Mutation-Fixes.patch} (100%) rename patches/server/{0949-Per-world-ticks-per-spawn-settings.patch => 0948-Per-world-ticks-per-spawn-settings.patch} (100%) rename patches/server/{0950-Properly-track-the-changed-item-from-dispense-events.patch => 0949-Properly-track-the-changed-item-from-dispense-events.patch} (100%) rename patches/server/{0951-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch => 0950-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch} (100%) rename patches/server/{0952-Fix-tripwire-disarming-not-working-as-intended.patch => 0951-Fix-tripwire-disarming-not-working-as-intended.patch} (100%) rename patches/server/{0953-Add-config-for-mobs-immune-to-default-effects.patch => 0952-Add-config-for-mobs-immune-to-default-effects.patch} (100%) rename patches/server/{0954-Deep-clone-nbt-tags-in-PDC.patch => 0953-Deep-clone-nbt-tags-in-PDC.patch} (100%) rename patches/server/{0955-Support-old-UUID-format-for-NBT.patch => 0954-Support-old-UUID-format-for-NBT.patch} (100%) rename patches/server/{0956-Fix-shield-disable-inconsistency.patch => 0955-Fix-shield-disable-inconsistency.patch} (100%) rename patches/server/{0957-Handle-Large-Packets-disconnecting-client.patch => 0956-Handle-Large-Packets-disconnecting-client.patch} (100%) rename patches/server/{0958-Fix-ItemFlags.patch => 0957-Fix-ItemFlags.patch} (100%) rename patches/server/{0959-Fix-helmet-damage-reduction-inconsistencies.patch => 0958-Fix-helmet-damage-reduction-inconsistencies.patch} (92%) rename patches/server/{0960-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch => 0959-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch} (100%) rename patches/server/{0961-improve-checking-handled-tags-in-itemmeta.patch => 0960-improve-checking-handled-tags-in-itemmeta.patch} (99%) rename patches/server/{0962-General-ItemMeta-fixes.patch => 0961-General-ItemMeta-fixes.patch} (100%) rename patches/server/{0963-Expose-hasColor-to-leather-armor.patch => 0962-Expose-hasColor-to-leather-armor.patch} (100%) rename patches/server/{0964-Added-API-to-get-player-ha-proxy-address.patch => 0963-Added-API-to-get-player-ha-proxy-address.patch} (100%) rename patches/server/{0965-More-Chest-Block-API.patch => 0964-More-Chest-Block-API.patch} (100%) rename patches/server/{0966-Print-data-component-type-on-encoding-error.patch => 0965-Print-data-component-type-on-encoding-error.patch} (100%) rename patches/server/{0967-Brigadier-based-command-API.patch => 0966-Brigadier-based-command-API.patch} (99%) rename patches/server/{0968-Fix-issues-with-Recipe-API.patch => 0967-Fix-issues-with-Recipe-API.patch} (100%) rename patches/server/{0969-Fix-equipment-slot-and-group-API.patch => 0968-Fix-equipment-slot-and-group-API.patch} (100%) rename patches/server/{0970-Allow-Bukkit-plugin-to-use-Paper-PluginLoader-API.patch => 0969-Allow-Bukkit-plugin-to-use-Paper-PluginLoader-API.patch} (100%) rename patches/server/{0971-Prevent-sending-oversized-item-data-in-equipment-and.patch => 0970-Prevent-sending-oversized-item-data-in-equipment-and.patch} (100%) rename patches/server/{0972-Prevent-NPE-if-hooked-entity-was-cleared.patch => 0971-Prevent-NPE-if-hooked-entity-was-cleared.patch} (100%) rename patches/server/{0973-Fix-cancelling-BlockPlaceEvent-calling-onRemove.patch => 0972-Fix-cancelling-BlockPlaceEvent-calling-onRemove.patch} (97%) rename patches/server/{0974-Add-missing-fishing-event-state.patch => 0973-Add-missing-fishing-event-state.patch} (100%) rename patches/server/{0975-Deprecate-InvAction-HOTBAR_MOVE_AND_READD.patch => 0974-Deprecate-InvAction-HOTBAR_MOVE_AND_READD.patch} (100%) rename patches/server/{0976-Fix-sending-disconnect-packet-in-phases-where-it-doe.patch => 0975-Fix-sending-disconnect-packet-in-phases-where-it-doe.patch} (100%) rename patches/server/{0977-Adopt-MaterialRerouting.patch => 0976-Adopt-MaterialRerouting.patch} (100%) rename patches/server/{0978-Suspicious-Effect-Entry-API.patch => 0977-Suspicious-Effect-Entry-API.patch} (100%) rename patches/server/{0979-check-if-itemstack-is-stackable-first.patch => 0978-check-if-itemstack-is-stackable-first.patch} (100%) rename patches/server/{0980-Fix-removing-recipes-from-RecipeIterator.patch => 0979-Fix-removing-recipes-from-RecipeIterator.patch} (100%) rename patches/server/{0981-Configurable-damage-tick-when-blocking-with-shield.patch => 0980-Configurable-damage-tick-when-blocking-with-shield.patch} (100%) rename patches/server/{0982-Properly-remove-the-experimental-smithing-inventory-.patch => 0981-Properly-remove-the-experimental-smithing-inventory-.patch} (100%) rename patches/server/{0983-Moonrise-optimisation-patches.patch => 0982-Moonrise-optimisation-patches.patch} (99%) rename patches/server/{0984-Rewrite-dataconverter-system.patch => 0983-Rewrite-dataconverter-system.patch} (100%) rename patches/server/{0985-disable-forced-empty-world-ticks.patch => 0984-disable-forced-empty-world-ticks.patch} (100%) rename patches/server/{0986-Optimize-isInWorldBounds-and-getBlockState-for-inlin.patch => 0985-Optimize-isInWorldBounds-and-getBlockState-for-inlin.patch} (100%) rename patches/server/{0987-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch => 0986-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch} (100%) rename patches/server/{0988-Strip-raytracing-for-EntityLiving-hasLineOfSight.patch => 0987-Strip-raytracing-for-EntityLiving-hasLineOfSight.patch} (100%) rename patches/server/{0989-Optimize-Network-Manager-and-add-advanced-packet-sup.patch => 0988-Optimize-Network-Manager-and-add-advanced-packet-sup.patch} (100%) rename patches/server/{0990-Allow-Saving-of-Oversized-Chunks.patch => 0989-Allow-Saving-of-Oversized-Chunks.patch} (100%) rename patches/server/{0991-Flat-bedrock-generator-settings.patch => 0990-Flat-bedrock-generator-settings.patch} (100%) rename patches/server/{0992-Entity-Activation-Range-2.0.patch => 0991-Entity-Activation-Range-2.0.patch} (99%) rename patches/server/{0993-Optional-per-player-mob-spawns.patch => 0992-Optional-per-player-mob-spawns.patch} (100%) rename patches/server/{0994-Anti-Xray.patch => 0993-Anti-Xray.patch} (100%) rename patches/server/{0995-Eigencraft-redstone-implementation.patch => 0994-Eigencraft-redstone-implementation.patch} (100%) rename patches/server/{0996-Add-Alternate-Current-redstone-implementation.patch => 0995-Add-Alternate-Current-redstone-implementation.patch} (100%) rename patches/server/{0997-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch => 0996-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch} (100%) rename patches/server/{0998-Use-Velocity-compression-and-cipher-natives.patch => 0997-Use-Velocity-compression-and-cipher-natives.patch} (100%) rename patches/server/{0999-Optimize-Collision-to-not-load-chunks.patch => 0998-Optimize-Collision-to-not-load-chunks.patch} (98%) rename patches/server/{1000-Optimize-GoalSelector-Goal.Flag-Set-operations.patch => 0999-Optimize-GoalSelector-Goal.Flag-Set-operations.patch} (100%) rename patches/server/{1001-Optimize-Hoppers.patch => 1000-Optimize-Hoppers.patch} (99%) rename patches/server/{1002-Entity-load-save-limit-per-chunk.patch => 1001-Entity-load-save-limit-per-chunk.patch} (100%) rename patches/server/{1003-Optimize-Voxel-Shape-Merging.patch => 1002-Optimize-Voxel-Shape-Merging.patch} (100%) rename patches/server/{1004-Optimize-Bit-Operations-by-inlining.patch => 1003-Optimize-Bit-Operations-by-inlining.patch} (100%) rename patches/server/{1005-Remove-streams-from-hot-code.patch => 1004-Remove-streams-from-hot-code.patch} (100%) rename patches/server/{1006-Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch => 1005-Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch} (100%) rename patches/server/{1007-Custom-table-implementation-for-blockstate-state-loo.patch => 1006-Custom-table-implementation-for-blockstate-state-loo.patch} (100%) rename patches/server/{1008-Fix-entity-type-tags-suggestions-in-selectors.patch => 1007-Fix-entity-type-tags-suggestions-in-selectors.patch} (100%) rename patches/server/{1009-Handle-Oversized-block-entities-in-chunks.patch => 1008-Handle-Oversized-block-entities-in-chunks.patch} (100%) rename patches/server/{1010-API-for-checking-sent-chunks.patch => 1009-API-for-checking-sent-chunks.patch} (100%) rename patches/server/{1011-Check-distance-in-entity-interactions.patch => 1010-Check-distance-in-entity-interactions.patch} (100%) rename patches/server/{1012-Configurable-Sand-Duping.patch => 1011-Configurable-Sand-Duping.patch} (100%) rename patches/server/{1013-Optimise-general-POI-access.patch => 1012-Optimise-general-POI-access.patch} (100%) rename patches/server/{1014-Improve-performance-of-mass-crafts.patch => 1013-Improve-performance-of-mass-crafts.patch} (100%) rename patches/server/{1015-Properly-resend-entities.patch => 1014-Properly-resend-entities.patch} (99%) rename patches/server/{1016-Registry-Modification-API.patch => 1015-Registry-Modification-API.patch} (100%) rename patches/server/{1017-Add-registry-entry-and-builders.patch => 1016-Add-registry-entry-and-builders.patch} (100%) rename patches/server/{1018-Improved-Watchdog-Support.patch => 1017-Improved-Watchdog-Support.patch} (96%) rename patches/server/{1019-Proxy-ItemStack-to-CraftItemStack.patch => 1018-Proxy-ItemStack-to-CraftItemStack.patch} (100%) rename patches/server/{1020-Make-a-PDC-view-accessible-directly-from-ItemStack.patch => 1019-Make-a-PDC-view-accessible-directly-from-ItemStack.patch} (100%) rename patches/server/{1021-Prioritize-Minecraft-commands-in-function-parsing-an.patch => 1020-Prioritize-Minecraft-commands-in-function-parsing-an.patch} (100%) rename patches/server/{1022-optimize-dirt-and-snow-spreading.patch => 1021-optimize-dirt-and-snow-spreading.patch} (100%) rename patches/server/{1023-Fix-NPE-for-Jukebox-setRecord.patch => 1022-Fix-NPE-for-Jukebox-setRecord.patch} (100%) rename patches/server/{1024-Fix-CraftWorld-isChunkGenerated.patch => 1023-Fix-CraftWorld-isChunkGenerated.patch} (100%) rename patches/server/{1025-fix-horse-inventories.patch => 1024-fix-horse-inventories.patch} (100%) rename patches/server/{1026-Only-call-EntityDamageEvents-before-actuallyHurt.patch => 1025-Only-call-EntityDamageEvents-before-actuallyHurt.patch} (100%) rename patches/server/{1027-Fix-entity-tracker-desync-when-new-players-are-added.patch => 1026-Fix-entity-tracker-desync-when-new-players-are-added.patch} (100%) rename patches/server/{1028-Lag-compensation-ticks.patch => 1027-Lag-compensation-ticks.patch} (97%) rename patches/server/{1029-Detail-more-information-in-watchdog-dumps.patch => 1028-Detail-more-information-in-watchdog-dumps.patch} (99%) rename patches/server/{1030-Write-SavedData-IO-async.patch => 1029-Write-SavedData-IO-async.patch} (100%) rename patches/server/{1031-Add-ItemType-getItemRarity.patch => 1030-Add-ItemType-getItemRarity.patch} (100%) rename patches/server/{1032-Incremental-chunk-and-player-saving.patch => 1031-Incremental-chunk-and-player-saving.patch} (97%) rename patches/server/{1033-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch => 1032-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch} (100%) rename patches/server/{1034-Bundle-spark.patch => 1033-Bundle-spark.patch} (97%) rename patches/server/{1035-Add-plugin-info-at-startup.patch => 1034-Add-plugin-info-at-startup.patch} (100%) rename patches/server/{1036-Make-interaction-leniency-distance-configurable.patch => 1035-Make-interaction-leniency-distance-configurable.patch} (100%) rename patches/server/{1037-Fix-PickupStatus-getting-reset.patch => 1036-Fix-PickupStatus-getting-reset.patch} (100%) rename patches/server/{1038-Check-for-block-type-in-SculkSensorBlock-canActivate.patch => 1037-Check-for-block-type-in-SculkSensorBlock-canActivate.patch} (100%) rename patches/server/{1039-Add-API-for-CanPlaceOn-and-CanDestroy-NBT-values.patch => 1038-Add-API-for-CanPlaceOn-and-CanDestroy-NBT-values.patch} (100%) rename patches/server/{1040-Configuration-for-horizontal-only-item-merging.patch => 1039-Configuration-for-horizontal-only-item-merging.patch} (92%) rename patches/server/{1041-Optimise-collision-checking-in-player-move-packet-ha.patch => 1040-Optimise-collision-checking-in-player-move-packet-ha.patch} (100%) rename patches/server/{1042-Add-skipping-world-symlink-scan.patch => 1041-Add-skipping-world-symlink-scan.patch} (100%) rename patches/server/{1043-Add-even-more-Enchantment-API.patch => 1042-Add-even-more-Enchantment-API.patch} (100%) rename patches/server/{1044-Leashable-API.patch => 1043-Leashable-API.patch} (100%) rename patches/server/{1045-Fix-CraftBukkit-drag-system.patch => 1044-Fix-CraftBukkit-drag-system.patch} (100%) rename patches/server/{1046-Fix-SculkBloomEvent-firing-for-block-entity-loading.patch => 1045-Fix-SculkBloomEvent-firing-for-block-entity-loading.patch} (100%) rename patches/server/{1047-Remove-set-damage-lootable-item-function-from-compas.patch => 1046-Remove-set-damage-lootable-item-function-from-compas.patch} (100%) rename patches/server/{1048-Properly-destroy-placed-blocks-on-the-end-platform.patch => 1047-Properly-destroy-placed-blocks-on-the-end-platform.patch} (100%) rename patches/server/{1049-Add-enchantment-seed-update-API.patch => 1048-Add-enchantment-seed-update-API.patch} (100%) rename patches/server/{1050-Fix-synchronise-sending-chat-to-client-with-updating.patch => 1049-Fix-synchronise-sending-chat-to-client-with-updating.patch} (100%) rename patches/server/{1051-Fix-InventoryOpenEvent-cancellation.patch => 1050-Fix-InventoryOpenEvent-cancellation.patch} (100%) rename patches/server/{1052-Fire-BlockExpEvent-on-grindstone-use.patch => 1051-Fire-BlockExpEvent-on-grindstone-use.patch} (100%) rename patches/server/{1053-Check-dead-flag-in-isAlive.patch => 1052-Check-dead-flag-in-isAlive.patch} (100%) rename patches/server/{1054-Add-FeatureFlag-API.patch => 1053-Add-FeatureFlag-API.patch} (100%) rename patches/server/{1055-Tag-Lifecycle-Events.patch => 1054-Tag-Lifecycle-Events.patch} (100%) rename patches/server/{1056-Item-serialization-as-json.patch => 1055-Item-serialization-as-json.patch} (100%) rename patches/server/{1057-Validate-slot-in-PlayerInventory-setSlot.patch => 1056-Validate-slot-in-PlayerInventory-setSlot.patch} (100%) create mode 100644 patches/server/1057-Remove-wall-time-unused-skip-tick-protection.patch diff --git a/patches/server/0009-MC-Utils.patch b/patches/server/0009-MC-Utils.patch index 8ace4e3739..f4ec305721 100644 --- a/patches/server/0009-MC-Utils.patch +++ b/patches/server/0009-MC-Utils.patch @@ -4416,18 +4416,10 @@ index 3e5a85a7ad6149b04622c254fbc2e174896a4128..3f662692ed4846e026a9d48595e7b3b2 + } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 40adb6117b9e0d5f70103113202a07715e403e2a..cef1761cdaf3e456695f2de61f4295fb99361914 100644 +index 40adb6117b9e0d5f70103113202a07715e403e2a..c9cab509796599b13ca3422de1049aed78348704 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -310,6 +310,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop S spin(Function serverFactory) { - AtomicReference atomicreference = new AtomicReference(); -@@ -973,6 +974,9 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop processQueue = new java.util.concurrent.ConcurrentLinkedQueue(); public int autosavePeriod; -@@ -384,7 +383,9 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop implements ServerInfo, ChunkIOErrorReporter, CommandSource, AutoCloseable { -@@ -912,6 +912,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0 && this.ticksUntilAutosave <= 0) { this.ticksUntilAutosave = this.autosavePeriod; // CraftBukkit end @@ -807,7 +807,7 @@ index 5a4cdbc4b92a48c614564e4e421f05a9eb5b072b..d76dae9ce9022308b316080ac48b7030 this.profiler.push("tallying"); long j = Util.getNanos() - i; int k = this.tickCount % 100; -@@ -1358,8 +1382,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { entityplayer.connection.suspendFlushing(); }); @@ -851,7 +851,7 @@ index 5a4cdbc4b92a48c614564e4e421f05a9eb5b072b..d76dae9ce9022308b316080ac48b7030 // Send time updates to everyone, it will get the right time from the world the player is in. if (this.tickCount % 20 == 0) { for (int i = 0; i < this.getPlayerList().players.size(); ++i) { -@@ -1457,7 +1480,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { -@@ -2548,9 +2550,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { MinecraftServer.LOGGER.error("Uncaught exception in server thread", throwable); }); diff --git a/patches/server/0262-Optimize-World-Time-Updates.patch b/patches/server/0262-Optimize-World-Time-Updates.patch index 1ce97af599..ab47d03d57 100644 --- a/patches/server/0262-Optimize-World-Time-Updates.patch +++ b/patches/server/0262-Optimize-World-Time-Updates.patch @@ -8,10 +8,10 @@ the updates per world, so that we can re-use the same packet object for every player unless they have per-player time enabled. diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 995ee6b2af01a14d61a031008dd05518668a98ae..0b266d3855723752d7789340f5d98ea106a97722 100644 +index f3f3f80f14bc1df13b80033aa143fcccab6f3a31..699191356a9d873fa6bbe04ea3e5db91eb2db41d 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1562,12 +1562,24 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop -Date: Sun, 24 Mar 2019 18:09:20 -0400 -Subject: [PATCH] don't go below 0 for pickupDelay, breaks picking up items - -vanilla checks for == 0 - -diff --git a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java -index f9dfd6e7b610cfee75524a525ab0e72bed5522da..6dfa43036afeba75a7ecc5a82637f081624d5c69 100644 ---- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java -+++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java -@@ -149,6 +149,7 @@ public class ItemEntity extends Entity implements TraceableEntity { - // CraftBukkit start - Use wall time for pickup and despawn timers - int elapsedTicks = MinecraftServer.currentTick - this.lastTick; - if (this.pickupDelay != 32767) this.pickupDelay -= elapsedTicks; -+ this.pickupDelay = Math.max(0, this.pickupDelay); // Paper - don't go below 0 - if (this.age != -32768) this.age += elapsedTicks; - this.lastTick = MinecraftServer.currentTick; - // CraftBukkit end -@@ -234,6 +235,7 @@ public class ItemEntity extends Entity implements TraceableEntity { - // CraftBukkit start - Use wall time for pickup and despawn timers - int elapsedTicks = MinecraftServer.currentTick - this.lastTick; - if (this.pickupDelay != 32767) this.pickupDelay -= elapsedTicks; -+ this.pickupDelay = Math.max(0, this.pickupDelay); // Paper - don't go below 0 - if (this.age != -32768) this.age += elapsedTicks; - this.lastTick = MinecraftServer.currentTick; - // CraftBukkit end diff --git a/patches/server/0285-PlayerDeathEvent-getItemsToKeep.patch b/patches/server/0284-PlayerDeathEvent-getItemsToKeep.patch similarity index 100% rename from patches/server/0285-PlayerDeathEvent-getItemsToKeep.patch rename to patches/server/0284-PlayerDeathEvent-getItemsToKeep.patch diff --git a/patches/server/0286-Optimize-Captured-BlockEntity-Lookup.patch b/patches/server/0285-Optimize-Captured-BlockEntity-Lookup.patch similarity index 100% rename from patches/server/0286-Optimize-Captured-BlockEntity-Lookup.patch rename to patches/server/0285-Optimize-Captured-BlockEntity-Lookup.patch diff --git a/patches/server/0287-Mob-Spawner-API-Enhancements.patch b/patches/server/0286-Mob-Spawner-API-Enhancements.patch similarity index 100% rename from patches/server/0287-Mob-Spawner-API-Enhancements.patch rename to patches/server/0286-Mob-Spawner-API-Enhancements.patch diff --git a/patches/server/0288-Fix-CB-call-to-changed-postToMainThread-method.patch b/patches/server/0287-Fix-CB-call-to-changed-postToMainThread-method.patch similarity index 100% rename from patches/server/0288-Fix-CB-call-to-changed-postToMainThread-method.patch rename to patches/server/0287-Fix-CB-call-to-changed-postToMainThread-method.patch diff --git a/patches/server/0289-Fix-sounds-when-item-frames-are-modified-MC-123450.patch b/patches/server/0288-Fix-sounds-when-item-frames-are-modified-MC-123450.patch similarity index 100% rename from patches/server/0289-Fix-sounds-when-item-frames-are-modified-MC-123450.patch rename to patches/server/0288-Fix-sounds-when-item-frames-are-modified-MC-123450.patch diff --git a/patches/server/0290-Implement-CraftBlockSoundGroup.patch b/patches/server/0289-Implement-CraftBlockSoundGroup.patch similarity index 100% rename from patches/server/0290-Implement-CraftBlockSoundGroup.patch rename to patches/server/0289-Implement-CraftBlockSoundGroup.patch diff --git a/patches/server/0291-Expose-the-internal-current-tick.patch b/patches/server/0290-Expose-the-internal-current-tick.patch similarity index 100% rename from patches/server/0291-Expose-the-internal-current-tick.patch rename to patches/server/0290-Expose-the-internal-current-tick.patch diff --git a/patches/server/0292-Show-blockstate-location-if-we-failed-to-read-it.patch b/patches/server/0291-Show-blockstate-location-if-we-failed-to-read-it.patch similarity index 94% rename from patches/server/0292-Show-blockstate-location-if-we-failed-to-read-it.patch rename to patches/server/0291-Show-blockstate-location-if-we-failed-to-read-it.patch index 35f4f6c443..c12cf5a95d 100644 --- a/patches/server/0292-Show-blockstate-location-if-we-failed-to-read-it.patch +++ b/patches/server/0291-Show-blockstate-location-if-we-failed-to-read-it.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Show blockstate location if we failed to read it diff --git a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java -index a7bb7d263cb981fcf6dd35a3b32270e89e96945a..92133f16c192f5caf9962a08401ff914550747f8 100644 +index 1ca25dfdb9ec5c3a4d26b71484e1326e1f50b40d..302955eed07d3af91f90875583c70a236bbe11b2 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java +++ b/src/main/java/org/bukkit/craftbukkit/block/CraftBlockEntityState.java @@ -32,6 +32,7 @@ public class CraftBlockEntityState extends CraftBlockStat diff --git a/patches/server/0293-Only-count-Natural-Spawned-mobs-towards-natural-spaw.patch b/patches/server/0292-Only-count-Natural-Spawned-mobs-towards-natural-spaw.patch similarity index 100% rename from patches/server/0293-Only-count-Natural-Spawned-mobs-towards-natural-spaw.patch rename to patches/server/0292-Only-count-Natural-Spawned-mobs-towards-natural-spaw.patch diff --git a/patches/server/0294-Configurable-projectile-relative-velocity.patch b/patches/server/0293-Configurable-projectile-relative-velocity.patch similarity index 100% rename from patches/server/0294-Configurable-projectile-relative-velocity.patch rename to patches/server/0293-Configurable-projectile-relative-velocity.patch diff --git a/patches/server/0295-offset-item-frame-ticking.patch b/patches/server/0294-offset-item-frame-ticking.patch similarity index 100% rename from patches/server/0295-offset-item-frame-ticking.patch rename to patches/server/0294-offset-item-frame-ticking.patch diff --git a/patches/server/0296-Prevent-consuming-the-wrong-itemstack.patch b/patches/server/0295-Prevent-consuming-the-wrong-itemstack.patch similarity index 100% rename from patches/server/0296-Prevent-consuming-the-wrong-itemstack.patch rename to patches/server/0295-Prevent-consuming-the-wrong-itemstack.patch diff --git a/patches/server/0297-Dont-send-unnecessary-sign-update.patch b/patches/server/0296-Dont-send-unnecessary-sign-update.patch similarity index 100% rename from patches/server/0297-Dont-send-unnecessary-sign-update.patch rename to patches/server/0296-Dont-send-unnecessary-sign-update.patch diff --git a/patches/server/0298-Add-option-to-disable-pillager-patrols.patch b/patches/server/0297-Add-option-to-disable-pillager-patrols.patch similarity index 100% rename from patches/server/0298-Add-option-to-disable-pillager-patrols.patch rename to patches/server/0297-Add-option-to-disable-pillager-patrols.patch diff --git a/patches/server/0299-Prevent-sync-chunk-loads-when-villagers-try-to-find-.patch b/patches/server/0298-Prevent-sync-chunk-loads-when-villagers-try-to-find-.patch similarity index 100% rename from patches/server/0299-Prevent-sync-chunk-loads-when-villagers-try-to-find-.patch rename to patches/server/0298-Prevent-sync-chunk-loads-when-villagers-try-to-find-.patch diff --git a/patches/server/0300-MC-145656-Fix-Follow-Range-Initial-Target.patch b/patches/server/0299-MC-145656-Fix-Follow-Range-Initial-Target.patch similarity index 100% rename from patches/server/0300-MC-145656-Fix-Follow-Range-Initial-Target.patch rename to patches/server/0299-MC-145656-Fix-Follow-Range-Initial-Target.patch diff --git a/patches/server/0301-Duplicate-UUID-Resolve-Option.patch b/patches/server/0300-Duplicate-UUID-Resolve-Option.patch similarity index 100% rename from patches/server/0301-Duplicate-UUID-Resolve-Option.patch rename to patches/server/0300-Duplicate-UUID-Resolve-Option.patch diff --git a/patches/server/0302-PlayerDeathEvent-shouldDropExperience.patch b/patches/server/0301-PlayerDeathEvent-shouldDropExperience.patch similarity index 100% rename from patches/server/0302-PlayerDeathEvent-shouldDropExperience.patch rename to patches/server/0301-PlayerDeathEvent-shouldDropExperience.patch diff --git a/patches/server/0303-Prevent-bees-loading-chunks-checking-hive-position.patch b/patches/server/0302-Prevent-bees-loading-chunks-checking-hive-position.patch similarity index 100% rename from patches/server/0303-Prevent-bees-loading-chunks-checking-hive-position.patch rename to patches/server/0302-Prevent-bees-loading-chunks-checking-hive-position.patch diff --git a/patches/server/0304-Don-t-load-Chunks-from-Hoppers-and-other-things.patch b/patches/server/0303-Don-t-load-Chunks-from-Hoppers-and-other-things.patch similarity index 100% rename from patches/server/0304-Don-t-load-Chunks-from-Hoppers-and-other-things.patch rename to patches/server/0303-Don-t-load-Chunks-from-Hoppers-and-other-things.patch diff --git a/patches/server/0305-Optimise-EntityGetter-getPlayerByUUID.patch b/patches/server/0304-Optimise-EntityGetter-getPlayerByUUID.patch similarity index 100% rename from patches/server/0305-Optimise-EntityGetter-getPlayerByUUID.patch rename to patches/server/0304-Optimise-EntityGetter-getPlayerByUUID.patch diff --git a/patches/server/0306-Fix-items-not-falling-correctly.patch b/patches/server/0305-Fix-items-not-falling-correctly.patch similarity index 93% rename from patches/server/0306-Fix-items-not-falling-correctly.patch rename to patches/server/0305-Fix-items-not-falling-correctly.patch index aaff528185..5be02c3b7b 100644 --- a/patches/server/0306-Fix-items-not-falling-correctly.patch +++ b/patches/server/0305-Fix-items-not-falling-correctly.patch @@ -15,10 +15,10 @@ This patch resolves the conflict by offsetting checking Spigot's entity activation range check from an item's move method. diff --git a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java -index 6dfa43036afeba75a7ecc5a82637f081624d5c69..8351e46f667a8f8dd96d97ec15c0165261a2fab4 100644 +index f9dfd6e7b610cfee75524a525ab0e72bed5522da..e110296a95441a13ec431d897796326b0277edb1 100644 --- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java +++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java -@@ -176,7 +176,7 @@ public class ItemEntity extends Entity implements TraceableEntity { +@@ -175,7 +175,7 @@ public class ItemEntity extends Entity implements TraceableEntity { } } diff --git a/patches/server/0307-Optimize-call-to-getFluid-for-explosions.patch b/patches/server/0306-Optimize-call-to-getFluid-for-explosions.patch similarity index 100% rename from patches/server/0307-Optimize-call-to-getFluid-for-explosions.patch rename to patches/server/0306-Optimize-call-to-getFluid-for-explosions.patch diff --git a/patches/server/0308-Guard-against-serializing-mismatching-chunk-coordina.patch b/patches/server/0307-Guard-against-serializing-mismatching-chunk-coordina.patch similarity index 100% rename from patches/server/0308-Guard-against-serializing-mismatching-chunk-coordina.patch rename to patches/server/0307-Guard-against-serializing-mismatching-chunk-coordina.patch diff --git a/patches/server/0309-Alternative-item-despawn-rate.patch b/patches/server/0308-Alternative-item-despawn-rate.patch similarity index 88% rename from patches/server/0309-Alternative-item-despawn-rate.patch rename to patches/server/0308-Alternative-item-despawn-rate.patch index 5f9a648f99..d4e1a80c7c 100644 --- a/patches/server/0309-Alternative-item-despawn-rate.patch +++ b/patches/server/0308-Alternative-item-despawn-rate.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Alternative item-despawn-rate Co-authored-by: Noah van der Aa diff --git a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java -index 8351e46f667a8f8dd96d97ec15c0165261a2fab4..2e550c7db6cebc941590c35337fd47416407a5aa 100644 +index e110296a95441a13ec431d897796326b0277edb1..c724359995d65c88e7f365eea55f3e4382a46ddd 100644 --- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java +++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java @@ -62,6 +62,7 @@ public class ItemEntity extends Entity implements TraceableEntity { @@ -17,7 +17,7 @@ index 8351e46f667a8f8dd96d97ec15c0165261a2fab4..2e550c7db6cebc941590c35337fd4741 public ItemEntity(EntityType type, Level world) { super(type, world); -@@ -216,7 +217,7 @@ public class ItemEntity extends Entity implements TraceableEntity { +@@ -215,7 +216,7 @@ public class ItemEntity extends Entity implements TraceableEntity { } } @@ -26,7 +26,7 @@ index 8351e46f667a8f8dd96d97ec15c0165261a2fab4..2e550c7db6cebc941590c35337fd4741 // CraftBukkit start - fire ItemDespawnEvent if (CraftEventFactory.callItemDespawnEvent(this).isCancelled()) { this.age = 0; -@@ -240,7 +241,7 @@ public class ItemEntity extends Entity implements TraceableEntity { +@@ -238,7 +239,7 @@ public class ItemEntity extends Entity implements TraceableEntity { this.lastTick = MinecraftServer.currentTick; // CraftBukkit end @@ -35,7 +35,7 @@ index 8351e46f667a8f8dd96d97ec15c0165261a2fab4..2e550c7db6cebc941590c35337fd4741 // CraftBukkit start - fire ItemDespawnEvent if (org.bukkit.craftbukkit.event.CraftEventFactory.callItemDespawnEvent(this).isCancelled()) { this.age = 0; -@@ -296,7 +297,7 @@ public class ItemEntity extends Entity implements TraceableEntity { +@@ -294,7 +295,7 @@ public class ItemEntity extends Entity implements TraceableEntity { private boolean isMergable() { ItemStack itemstack = this.getItem(); @@ -44,7 +44,7 @@ index 8351e46f667a8f8dd96d97ec15c0165261a2fab4..2e550c7db6cebc941590c35337fd4741 } private void tryToMerge(ItemEntity other) { -@@ -544,6 +545,7 @@ public class ItemEntity extends Entity implements TraceableEntity { +@@ -542,6 +543,7 @@ public class ItemEntity extends Entity implements TraceableEntity { public void setItem(ItemStack stack) { this.getEntityData().set(ItemEntity.DATA_ITEM, stack); @@ -52,7 +52,7 @@ index 8351e46f667a8f8dd96d97ec15c0165261a2fab4..2e550c7db6cebc941590c35337fd4741 } @Override -@@ -598,7 +600,7 @@ public class ItemEntity extends Entity implements TraceableEntity { +@@ -596,7 +598,7 @@ public class ItemEntity extends Entity implements TraceableEntity { public void makeFakeItem() { this.setNeverPickUp(); diff --git a/patches/server/0310-Tracking-Range-Improvements.patch b/patches/server/0309-Tracking-Range-Improvements.patch similarity index 100% rename from patches/server/0310-Tracking-Range-Improvements.patch rename to patches/server/0309-Tracking-Range-Improvements.patch diff --git a/patches/server/0311-Bees-get-gravity-in-void.-Fixes-MC-167279.patch b/patches/server/0310-Bees-get-gravity-in-void.-Fixes-MC-167279.patch similarity index 100% rename from patches/server/0311-Bees-get-gravity-in-void.-Fixes-MC-167279.patch rename to patches/server/0310-Bees-get-gravity-in-void.-Fixes-MC-167279.patch diff --git a/patches/server/0312-Improve-Block-breakNaturally-API.patch b/patches/server/0311-Improve-Block-breakNaturally-API.patch similarity index 100% rename from patches/server/0312-Improve-Block-breakNaturally-API.patch rename to patches/server/0311-Improve-Block-breakNaturally-API.patch diff --git a/patches/server/0313-Optimise-getChunkAt-calls-for-loaded-chunks.patch b/patches/server/0312-Optimise-getChunkAt-calls-for-loaded-chunks.patch similarity index 100% rename from patches/server/0313-Optimise-getChunkAt-calls-for-loaded-chunks.patch rename to patches/server/0312-Optimise-getChunkAt-calls-for-loaded-chunks.patch diff --git a/patches/server/0314-Add-debug-for-sync-chunk-loads.patch b/patches/server/0313-Add-debug-for-sync-chunk-loads.patch similarity index 100% rename from patches/server/0314-Add-debug-for-sync-chunk-loads.patch rename to patches/server/0313-Add-debug-for-sync-chunk-loads.patch diff --git a/patches/server/0315-Improve-java-version-check.patch b/patches/server/0314-Improve-java-version-check.patch similarity index 100% rename from patches/server/0315-Improve-java-version-check.patch rename to patches/server/0314-Improve-java-version-check.patch diff --git a/patches/server/0316-Add-ThrownEggHatchEvent.patch b/patches/server/0315-Add-ThrownEggHatchEvent.patch similarity index 100% rename from patches/server/0316-Add-ThrownEggHatchEvent.patch rename to patches/server/0315-Add-ThrownEggHatchEvent.patch diff --git a/patches/server/0317-Entity-Jump-API.patch b/patches/server/0316-Entity-Jump-API.patch similarity index 100% rename from patches/server/0317-Entity-Jump-API.patch rename to patches/server/0316-Entity-Jump-API.patch diff --git a/patches/server/0318-Add-option-to-nerf-pigmen-from-nether-portals.patch b/patches/server/0317-Add-option-to-nerf-pigmen-from-nether-portals.patch similarity index 100% rename from patches/server/0318-Add-option-to-nerf-pigmen-from-nether-portals.patch rename to patches/server/0317-Add-option-to-nerf-pigmen-from-nether-portals.patch diff --git a/patches/server/0319-Make-the-GUI-graph-fancier.patch b/patches/server/0318-Make-the-GUI-graph-fancier.patch similarity index 100% rename from patches/server/0319-Make-the-GUI-graph-fancier.patch rename to patches/server/0318-Make-the-GUI-graph-fancier.patch diff --git a/patches/server/0320-add-hand-to-BlockMultiPlaceEvent.patch b/patches/server/0319-add-hand-to-BlockMultiPlaceEvent.patch similarity index 93% rename from patches/server/0320-add-hand-to-BlockMultiPlaceEvent.patch rename to patches/server/0319-add-hand-to-BlockMultiPlaceEvent.patch index 56eb680f94..078a0ba255 100644 --- a/patches/server/0320-add-hand-to-BlockMultiPlaceEvent.patch +++ b/patches/server/0319-add-hand-to-BlockMultiPlaceEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] add hand to BlockMultiPlaceEvent diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 6a018f9c289a539b07855d75e4cc2d3c2828ded1..e25ca301a4b9b252d3f75013e4e14df9b14aa7b9 100644 +index 8172a75aef7c3dcdd92817f148466a4cad4c78ed..235ac5c12dab593da3a40e348a010ff626ce74a3 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -412,13 +412,18 @@ public class CraftEventFactory { diff --git a/patches/server/0321-Validate-tripwire-hook-placement-before-update.patch b/patches/server/0320-Validate-tripwire-hook-placement-before-update.patch similarity index 100% rename from patches/server/0321-Validate-tripwire-hook-placement-before-update.patch rename to patches/server/0320-Validate-tripwire-hook-placement-before-update.patch diff --git a/patches/server/0322-Add-option-to-allow-iron-golems-to-spawn-in-air.patch b/patches/server/0321-Add-option-to-allow-iron-golems-to-spawn-in-air.patch similarity index 100% rename from patches/server/0322-Add-option-to-allow-iron-golems-to-spawn-in-air.patch rename to patches/server/0321-Add-option-to-allow-iron-golems-to-spawn-in-air.patch diff --git a/patches/server/0323-Configurable-chance-of-villager-zombie-infection.patch b/patches/server/0322-Configurable-chance-of-villager-zombie-infection.patch similarity index 100% rename from patches/server/0323-Configurable-chance-of-villager-zombie-infection.patch rename to patches/server/0322-Configurable-chance-of-villager-zombie-infection.patch diff --git a/patches/server/0324-Optimise-Chunk-getFluid.patch b/patches/server/0323-Optimise-Chunk-getFluid.patch similarity index 100% rename from patches/server/0324-Optimise-Chunk-getFluid.patch rename to patches/server/0323-Optimise-Chunk-getFluid.patch diff --git a/patches/server/0325-Set-spigots-verbose-world-setting-to-false-by-def.patch b/patches/server/0324-Set-spigots-verbose-world-setting-to-false-by-def.patch similarity index 100% rename from patches/server/0325-Set-spigots-verbose-world-setting-to-false-by-def.patch rename to patches/server/0324-Set-spigots-verbose-world-setting-to-false-by-def.patch diff --git a/patches/server/0326-Add-tick-times-API-and-mspt-command.patch b/patches/server/0325-Add-tick-times-API-and-mspt-command.patch similarity index 97% rename from patches/server/0326-Add-tick-times-API-and-mspt-command.patch rename to patches/server/0325-Add-tick-times-API-and-mspt-command.patch index e1bd6dcc6c..ab7f366958 100644 --- a/patches/server/0326-Add-tick-times-API-and-mspt-command.patch +++ b/patches/server/0325-Add-tick-times-API-and-mspt-command.patch @@ -125,7 +125,7 @@ index 72f2e81b9905a0d57ed8e2a88578f62d5235c456..7b58b2d6297800c2dcdbf7539e5ab8e7 public static void registerCommands(final MinecraftServer server) { diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 3ffb330a16797c04694f73b0cd9f5b38a07641b4..ff73167bfe210305491e35f18adc2755d3651a85 100644 +index ddc3da84c5a55d2cd977fcdb18121351606a6b3c..53bb62c1dcb487be915759d22e06aea80be54f36 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -258,6 +258,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index bfa914857ff36d6c2f5f96a1ddbc4ca96c3ee7ac..855edf966c36e6ee9ec524e189b18d711baeec78 100644 +index 4c32b26e29ca3db0a2f62052e14bcc3e4c1cdea5..cf18f17f181bc94a2b5f4ac6926c2388ec3178c8 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3544,10 +3544,24 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0341-Implement-Player-Client-Options-API.patch b/patches/server/0340-Implement-Player-Client-Options-API.patch similarity index 99% rename from patches/server/0341-Implement-Player-Client-Options-API.patch rename to patches/server/0340-Implement-Player-Client-Options-API.patch index e7bff21f02..d190884bb0 100644 --- a/patches/server/0341-Implement-Player-Client-Options-API.patch +++ b/patches/server/0340-Implement-Player-Client-Options-API.patch @@ -136,7 +136,7 @@ index 7daa310dd5d3eb1befb9983ce85e0354771af71d..8938f90c53de8aef71aa70522a66a69e this.adventure$locale = java.util.Objects.requireNonNullElse(net.kyori.adventure.translation.Translator.parseLocale(this.language), java.util.Locale.US); // Paper this.requestedViewDistance = clientOptions.viewDistance(); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index d0af4b838bd43ef2388e918ac14e7acec71b63ef..b9487ce9391413c4c596cc5450ed5c396347ec1b 100644 +index 1959e2af13daa06293c10ea2a4f68e319fac26ad..068ff2c228308ec87fcc6d1352bd63b91bd34a93 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -653,6 +653,28 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0342-Don-t-crash-if-player-is-attempted-to-be-removed-fro.patch b/patches/server/0341-Don-t-crash-if-player-is-attempted-to-be-removed-fro.patch similarity index 100% rename from patches/server/0342-Don-t-crash-if-player-is-attempted-to-be-removed-fro.patch rename to patches/server/0341-Don-t-crash-if-player-is-attempted-to-be-removed-fro.patch diff --git a/patches/server/0343-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch b/patches/server/0342-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch similarity index 98% rename from patches/server/0343-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch rename to patches/server/0342-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch index 91acc7ee25..fda85df8ca 100644 --- a/patches/server/0343-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch +++ b/patches/server/0342-Fire-PlayerJoinEvent-when-Player-is-actually-ready.patch @@ -55,7 +55,7 @@ index 8938f90c53de8aef71aa70522a66a69edb467e73..e6e7dc17d1196a8211a565355f34b5dc // CraftBukkit end public boolean isRealPlayer; // Paper diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index d29885aabcead3d410329ba3056a48bb29ff75cf..9da65c0d3e8398d018da28a8668481aaf9ded472 100644 +index 2cbdcdf0349e7efa797802d0d339d158153690af..5390ce62ec8afd24d2e028ea04d2ef3029a125f9 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -297,6 +297,12 @@ public abstract class PlayerList { diff --git a/patches/server/0344-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch b/patches/server/0343-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch similarity index 98% rename from patches/server/0344-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch rename to patches/server/0343-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch index a75160c9e4..b739652ade 100644 --- a/patches/server/0344-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch +++ b/patches/server/0343-Move-player-to-spawn-point-if-spawn-in-unloaded-worl.patch @@ -10,7 +10,7 @@ Co-authored-by: Wyatt Childers Co-authored-by: Jake Potrebic diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 9da65c0d3e8398d018da28a8668481aaf9ded472..9044ed6cba10314c52c44a19be1fa88771c54be6 100644 +index 5390ce62ec8afd24d2e028ea04d2ef3029a125f9..6f587c4bb4704d93552ba61335d87b1852fc169c 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -197,6 +197,7 @@ public abstract class PlayerList { diff --git a/patches/server/0345-Add-PlayerAttackEntityCooldownResetEvent.patch b/patches/server/0344-Add-PlayerAttackEntityCooldownResetEvent.patch similarity index 95% rename from patches/server/0345-Add-PlayerAttackEntityCooldownResetEvent.patch rename to patches/server/0344-Add-PlayerAttackEntityCooldownResetEvent.patch index 6958e0c01f..3348155d85 100644 --- a/patches/server/0345-Add-PlayerAttackEntityCooldownResetEvent.patch +++ b/patches/server/0344-Add-PlayerAttackEntityCooldownResetEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add PlayerAttackEntityCooldownResetEvent diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 855edf966c36e6ee9ec524e189b18d711baeec78..926c8fd21bb610dc07658c41431a7795ba4f2870 100644 +index cf18f17f181bc94a2b5f4ac6926c2388ec3178c8..42c4adabe451cd32aa362075395a9fcc384ea788 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -2277,7 +2277,17 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0346-Don-t-fire-BlockFade-on-worldgen-threads.patch b/patches/server/0345-Don-t-fire-BlockFade-on-worldgen-threads.patch similarity index 100% rename from patches/server/0346-Don-t-fire-BlockFade-on-worldgen-threads.patch rename to patches/server/0345-Don-t-fire-BlockFade-on-worldgen-threads.patch diff --git a/patches/server/0347-Add-phantom-creative-and-insomniac-controls.patch b/patches/server/0346-Add-phantom-creative-and-insomniac-controls.patch similarity index 97% rename from patches/server/0347-Add-phantom-creative-and-insomniac-controls.patch rename to patches/server/0346-Add-phantom-creative-and-insomniac-controls.patch index 9a012509be..0eea572994 100644 --- a/patches/server/0347-Add-phantom-creative-and-insomniac-controls.patch +++ b/patches/server/0346-Add-phantom-creative-and-insomniac-controls.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add phantom creative and insomniac controls diff --git a/src/main/java/net/minecraft/world/entity/EntitySelector.java b/src/main/java/net/minecraft/world/entity/EntitySelector.java -index 3207166061bf9c4d7bf3f38e5a9f7aff23ccd5c1..ee4495b67c46cf1282cdd6ad15b224b0b7b10bfb 100644 +index f7014bf5faae03a04c31cbdaeb27188c47156c2d..eb425fac573881f3aad09ae75a32184fb0e325a6 100644 --- a/src/main/java/net/minecraft/world/entity/EntitySelector.java +++ b/src/main/java/net/minecraft/world/entity/EntitySelector.java @@ -28,6 +28,7 @@ public final class EntitySelector { diff --git a/patches/server/0348-Fix-item-duplication-and-teleport-issues.patch b/patches/server/0347-Fix-item-duplication-and-teleport-issues.patch similarity index 98% rename from patches/server/0348-Fix-item-duplication-and-teleport-issues.patch rename to patches/server/0347-Fix-item-duplication-and-teleport-issues.patch index c577f08518..86f3c094a3 100644 --- a/patches/server/0348-Fix-item-duplication-and-teleport-issues.patch +++ b/patches/server/0347-Fix-item-duplication-and-teleport-issues.patch @@ -69,7 +69,7 @@ index d80fd4e2f41583f83c9527ccf4ce80afe851276a..10015beb7a2de890fe27bffde8f55c1d public float getBlockExplosionResistance(Explosion explosion, BlockGetter world, BlockPos pos, BlockState blockState, FluidState fluidState, float max) { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 926c8fd21bb610dc07658c41431a7795ba4f2870..c0bbeaa4a37c1ba9f5125a0c68f4511aac6a0e71 100644 +index 42c4adabe451cd32aa362075395a9fcc384ea788..8920099eb488c37b036b7bd97fbd4f7db505c77c 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1728,9 +1728,9 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -124,7 +124,7 @@ index 92bb0c63330ad3a4cb13b2dc655020714e9b1ffd..cc1189c2d7dc57ba8f29aad4ba5d2a07 } } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index e25ca301a4b9b252d3f75013e4e14df9b14aa7b9..9548ee5b43458ccc865f800d1f1b69245a821658 100644 +index 235ac5c12dab593da3a40e348a010ff626ce74a3..26f8a8cb18205bfb9fe9dc557097946987ddcb18 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -905,6 +905,11 @@ public class CraftEventFactory { diff --git a/patches/server/0349-Villager-Restocks-API.patch b/patches/server/0348-Villager-Restocks-API.patch similarity index 100% rename from patches/server/0349-Villager-Restocks-API.patch rename to patches/server/0348-Villager-Restocks-API.patch diff --git a/patches/server/0350-Validate-PickItem-Packet-and-kick-for-invalid.patch b/patches/server/0349-Validate-PickItem-Packet-and-kick-for-invalid.patch similarity index 100% rename from patches/server/0350-Validate-PickItem-Packet-and-kick-for-invalid.patch rename to patches/server/0349-Validate-PickItem-Packet-and-kick-for-invalid.patch diff --git a/patches/server/0351-Set-cap-on-JDK-per-thread-native-byte-buffer-cache.patch b/patches/server/0350-Set-cap-on-JDK-per-thread-native-byte-buffer-cache.patch similarity index 100% rename from patches/server/0351-Set-cap-on-JDK-per-thread-native-byte-buffer-cache.patch rename to patches/server/0350-Set-cap-on-JDK-per-thread-native-byte-buffer-cache.patch diff --git a/patches/server/0352-misc-debugging-dumps.patch b/patches/server/0351-misc-debugging-dumps.patch similarity index 94% rename from patches/server/0352-misc-debugging-dumps.patch rename to patches/server/0351-misc-debugging-dumps.patch index 51357a8884..ba40cf94e5 100644 --- a/patches/server/0352-misc-debugging-dumps.patch +++ b/patches/server/0351-misc-debugging-dumps.patch @@ -49,10 +49,10 @@ index e25fc35716aff1d1805884b18f67b0eb33d8c05c..8ca9ac8eff9d605baa878ca24e165ac5 StackTraceElement[] astacktraceelement = exception.getStackTrace(); diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index ff73167bfe210305491e35f18adc2755d3651a85..1088a91ee131d1c303961557d8fb90101c2d8d3b 100644 +index 53bb62c1dcb487be915759d22e06aea80be54f36..8b17df3d18fe9acc1a7b10c6809886da0143f8c5 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -916,6 +916,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 94f2b0fa94ebc2572c33623fa5883dd7ed56c55a..9cf3e1e20799caf4ba469ef6d5d86bfe176641f7 100644 +index b6238c327e91a52b77135290762feb8b1085fc7e..b1c4970920ca8972f637c846106ae37822e495cf 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -484,7 +484,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/patches/server/0358-Potential-bed-API.patch b/patches/server/0357-Potential-bed-API.patch similarity index 95% rename from patches/server/0358-Potential-bed-API.patch rename to patches/server/0357-Potential-bed-API.patch index 9b500674e0..899b989746 100644 --- a/patches/server/0358-Potential-bed-API.patch +++ b/patches/server/0357-Potential-bed-API.patch @@ -8,7 +8,7 @@ Adds a new method to fetch the location of a player's bed without generating any getPotentialBedLocation - Gets the last known location of a player's bed. This does not preform any check if the bed is still valid and does not load any chunks. diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java -index b55919a0e61a36697c95599dba17dbe2b788fd2a..084938fa2ffa7ee462766bf03f8e2b4c0fd4bf6b 100644 +index ba63c58d40cb3b8655fdb8177c423c67ac7cc3ef..c17dd4205983855615289cf0a5619056d237f325 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftHumanEntity.java @@ -12,6 +12,7 @@ import net.minecraft.nbt.CompoundTag; diff --git a/patches/server/0359-Wait-for-Async-Tasks-during-shutdown.patch b/patches/server/0358-Wait-for-Async-Tasks-during-shutdown.patch similarity index 92% rename from patches/server/0359-Wait-for-Async-Tasks-during-shutdown.patch rename to patches/server/0358-Wait-for-Async-Tasks-during-shutdown.patch index 86d1266b2e..289e0129e9 100644 --- a/patches/server/0359-Wait-for-Async-Tasks-during-shutdown.patch +++ b/patches/server/0358-Wait-for-Async-Tasks-during-shutdown.patch @@ -10,10 +10,10 @@ Adds a 5 second grace period for any async tasks to finish and warns if any are still running after that delay just as reload does. diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 1088a91ee131d1c303961557d8fb90101c2d8d3b..2d25ba18d3db4b3eea8bd30812656f1ade4c2a67 100644 +index 8b17df3d18fe9acc1a7b10c6809886da0143f8c5..0370d26bd1e1d2fe1d640b052aca8a9c05dcb9dc 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -943,6 +943,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop completablefuture = CompletableFuture.supplyAsync(() -> { Stream stream = dataPacks.stream(); // CraftBukkit - decompile error PackRepository resourcepackrepository = this.packRepository; -@@ -2148,6 +2154,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0; // Paper - BlockPhysicsEvent diff --git a/patches/server/0486-added-option-to-disable-pathfinding-updates-on-block.patch b/patches/server/0485-added-option-to-disable-pathfinding-updates-on-block.patch similarity index 100% rename from patches/server/0486-added-option-to-disable-pathfinding-updates-on-block.patch rename to patches/server/0485-added-option-to-disable-pathfinding-updates-on-block.patch diff --git a/patches/server/0487-Inline-shift-direction-fields.patch b/patches/server/0486-Inline-shift-direction-fields.patch similarity index 100% rename from patches/server/0487-Inline-shift-direction-fields.patch rename to patches/server/0486-Inline-shift-direction-fields.patch diff --git a/patches/server/0488-Allow-adding-items-to-BlockDropItemEvent.patch b/patches/server/0487-Allow-adding-items-to-BlockDropItemEvent.patch similarity index 100% rename from patches/server/0488-Allow-adding-items-to-BlockDropItemEvent.patch rename to patches/server/0487-Allow-adding-items-to-BlockDropItemEvent.patch diff --git a/patches/server/0489-Add-getMainThreadExecutor-to-BukkitScheduler.patch b/patches/server/0488-Add-getMainThreadExecutor-to-BukkitScheduler.patch similarity index 100% rename from patches/server/0489-Add-getMainThreadExecutor-to-BukkitScheduler.patch rename to patches/server/0488-Add-getMainThreadExecutor-to-BukkitScheduler.patch diff --git a/patches/server/0490-living-entity-allow-attribute-registration.patch b/patches/server/0489-living-entity-allow-attribute-registration.patch similarity index 100% rename from patches/server/0490-living-entity-allow-attribute-registration.patch rename to patches/server/0489-living-entity-allow-attribute-registration.patch diff --git a/patches/server/0491-fix-dead-slime-setSize-invincibility.patch b/patches/server/0490-fix-dead-slime-setSize-invincibility.patch similarity index 100% rename from patches/server/0491-fix-dead-slime-setSize-invincibility.patch rename to patches/server/0490-fix-dead-slime-setSize-invincibility.patch diff --git a/patches/server/0492-Merchant-getRecipes-should-return-an-immutable-list.patch b/patches/server/0491-Merchant-getRecipes-should-return-an-immutable-list.patch similarity index 100% rename from patches/server/0492-Merchant-getRecipes-should-return-an-immutable-list.patch rename to patches/server/0491-Merchant-getRecipes-should-return-an-immutable-list.patch diff --git a/patches/server/0493-Expose-Tracked-Players.patch b/patches/server/0492-Expose-Tracked-Players.patch similarity index 100% rename from patches/server/0493-Expose-Tracked-Players.patch rename to patches/server/0492-Expose-Tracked-Players.patch diff --git a/patches/server/0494-Improve-ServerGUI.patch b/patches/server/0493-Improve-ServerGUI.patch similarity index 100% rename from patches/server/0494-Improve-ServerGUI.patch rename to patches/server/0493-Improve-ServerGUI.patch diff --git a/patches/server/0495-fix-converting-txt-to-json-file.patch b/patches/server/0494-fix-converting-txt-to-json-file.patch similarity index 100% rename from patches/server/0495-fix-converting-txt-to-json-file.patch rename to patches/server/0494-fix-converting-txt-to-json-file.patch diff --git a/patches/server/0496-Add-worldborder-events.patch b/patches/server/0495-Add-worldborder-events.patch similarity index 100% rename from patches/server/0496-Add-worldborder-events.patch rename to patches/server/0495-Add-worldborder-events.patch diff --git a/patches/server/0497-Add-PlayerNameEntityEvent.patch b/patches/server/0496-Add-PlayerNameEntityEvent.patch similarity index 100% rename from patches/server/0497-Add-PlayerNameEntityEvent.patch rename to patches/server/0496-Add-PlayerNameEntityEvent.patch diff --git a/patches/server/0498-Add-recipe-to-cook-events.patch b/patches/server/0497-Add-recipe-to-cook-events.patch similarity index 100% rename from patches/server/0498-Add-recipe-to-cook-events.patch rename to patches/server/0497-Add-recipe-to-cook-events.patch diff --git a/patches/server/0499-Add-Block-isValidTool.patch b/patches/server/0498-Add-Block-isValidTool.patch similarity index 100% rename from patches/server/0499-Add-Block-isValidTool.patch rename to patches/server/0498-Add-Block-isValidTool.patch diff --git a/patches/server/0500-Allow-using-signs-inside-spawn-protection.patch b/patches/server/0499-Allow-using-signs-inside-spawn-protection.patch similarity index 100% rename from patches/server/0500-Allow-using-signs-inside-spawn-protection.patch rename to patches/server/0499-Allow-using-signs-inside-spawn-protection.patch diff --git a/patches/server/0501-Expand-world-key-API.patch b/patches/server/0500-Expand-world-key-API.patch similarity index 100% rename from patches/server/0501-Expand-world-key-API.patch rename to patches/server/0500-Expand-world-key-API.patch diff --git a/patches/server/0502-Add-fast-alternative-constructor-for-Rotations.patch b/patches/server/0501-Add-fast-alternative-constructor-for-Rotations.patch similarity index 100% rename from patches/server/0502-Add-fast-alternative-constructor-for-Rotations.patch rename to patches/server/0501-Add-fast-alternative-constructor-for-Rotations.patch diff --git a/patches/server/0503-Drop-carried-item-when-player-has-disconnected.patch b/patches/server/0502-Drop-carried-item-when-player-has-disconnected.patch similarity index 100% rename from patches/server/0503-Drop-carried-item-when-player-has-disconnected.patch rename to patches/server/0502-Drop-carried-item-when-player-has-disconnected.patch diff --git a/patches/server/0504-forced-whitelist-use-configurable-kick-message.patch b/patches/server/0503-forced-whitelist-use-configurable-kick-message.patch similarity index 87% rename from patches/server/0504-forced-whitelist-use-configurable-kick-message.patch rename to patches/server/0503-forced-whitelist-use-configurable-kick-message.patch index 4ec0ee6b72..96926fac4a 100644 --- a/patches/server/0504-forced-whitelist-use-configurable-kick-message.patch +++ b/patches/server/0503-forced-whitelist-use-configurable-kick-message.patch @@ -5,10 +5,10 @@ Subject: [PATCH] forced whitelist: use configurable kick message diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index d38cc3e642eb33759175227fbf86ed250cf0b9f3..e02e57d243bc8bccddcf3e3c40887fb774f5e460 100644 +index 43b28b56c7949f95af5b7e99b04b93ed711d8880..6651afa50cfaf53959f89108904d4bf65a0fc495 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -2288,7 +2288,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop list = ImmutableList.of(new PhantomSpawner(), new PatrolSpawner(), new CatSpawner(), new VillageSiege(), new WanderingTraderSpawner(iworlddataserver)); LevelStem worlddimension = (LevelStem) dimensions.get(dimensionKey); diff --git a/patches/server/0648-Add-config-option-for-worlds-affected-by-time-cmd.patch b/patches/server/0647-Add-config-option-for-worlds-affected-by-time-cmd.patch similarity index 100% rename from patches/server/0648-Add-config-option-for-worlds-affected-by-time-cmd.patch rename to patches/server/0647-Add-config-option-for-worlds-affected-by-time-cmd.patch diff --git a/patches/server/0649-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch b/patches/server/0648-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch similarity index 100% rename from patches/server/0649-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch rename to patches/server/0648-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch diff --git a/patches/server/0650-Multiple-Entries-with-Scoreboards.patch b/patches/server/0649-Multiple-Entries-with-Scoreboards.patch similarity index 100% rename from patches/server/0650-Multiple-Entries-with-Scoreboards.patch rename to patches/server/0649-Multiple-Entries-with-Scoreboards.patch diff --git a/patches/server/0651-Reset-placed-block-on-exception.patch b/patches/server/0650-Reset-placed-block-on-exception.patch similarity index 100% rename from patches/server/0651-Reset-placed-block-on-exception.patch rename to patches/server/0650-Reset-placed-block-on-exception.patch diff --git a/patches/server/0652-Add-configurable-height-for-slime-spawn.patch b/patches/server/0651-Add-configurable-height-for-slime-spawn.patch similarity index 100% rename from patches/server/0652-Add-configurable-height-for-slime-spawn.patch rename to patches/server/0651-Add-configurable-height-for-slime-spawn.patch diff --git a/patches/server/0653-Fix-xp-reward-for-baby-zombies.patch b/patches/server/0652-Fix-xp-reward-for-baby-zombies.patch similarity index 100% rename from patches/server/0653-Fix-xp-reward-for-baby-zombies.patch rename to patches/server/0652-Fix-xp-reward-for-baby-zombies.patch diff --git a/patches/server/0654-Multi-Block-Change-API-Implementation.patch b/patches/server/0653-Multi-Block-Change-API-Implementation.patch similarity index 100% rename from patches/server/0654-Multi-Block-Change-API-Implementation.patch rename to patches/server/0653-Multi-Block-Change-API-Implementation.patch diff --git a/patches/server/0655-Fix-NotePlayEvent.patch b/patches/server/0654-Fix-NotePlayEvent.patch similarity index 100% rename from patches/server/0655-Fix-NotePlayEvent.patch rename to patches/server/0654-Fix-NotePlayEvent.patch diff --git a/patches/server/0656-Freeze-Tick-Lock-API.patch b/patches/server/0655-Freeze-Tick-Lock-API.patch similarity index 100% rename from patches/server/0656-Freeze-Tick-Lock-API.patch rename to patches/server/0655-Freeze-Tick-Lock-API.patch diff --git a/patches/server/0657-More-PotionEffectType-API.patch b/patches/server/0656-More-PotionEffectType-API.patch similarity index 100% rename from patches/server/0657-More-PotionEffectType-API.patch rename to patches/server/0656-More-PotionEffectType-API.patch diff --git a/patches/server/0658-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch b/patches/server/0657-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch similarity index 100% rename from patches/server/0658-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch rename to patches/server/0657-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch diff --git a/patches/server/0659-API-for-creating-command-sender-which-forwards-feedb.patch b/patches/server/0658-API-for-creating-command-sender-which-forwards-feedb.patch similarity index 100% rename from patches/server/0659-API-for-creating-command-sender-which-forwards-feedb.patch rename to patches/server/0658-API-for-creating-command-sender-which-forwards-feedb.patch diff --git a/patches/server/0660-Add-missing-structure-set-seed-configs.patch b/patches/server/0659-Add-missing-structure-set-seed-configs.patch similarity index 100% rename from patches/server/0660-Add-missing-structure-set-seed-configs.patch rename to patches/server/0659-Add-missing-structure-set-seed-configs.patch diff --git a/patches/server/0661-Fix-cancelled-powdered-snow-bucket-placement.patch b/patches/server/0660-Fix-cancelled-powdered-snow-bucket-placement.patch similarity index 95% rename from patches/server/0661-Fix-cancelled-powdered-snow-bucket-placement.patch rename to patches/server/0660-Fix-cancelled-powdered-snow-bucket-placement.patch index 6a3d835ae7..08a9dbf2e4 100644 --- a/patches/server/0661-Fix-cancelled-powdered-snow-bucket-placement.patch +++ b/patches/server/0660-Fix-cancelled-powdered-snow-bucket-placement.patch @@ -8,7 +8,7 @@ snow bucket didn't revert grass that became snowy because of the placement. diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 7daecce161b4853a84520010d430600d9a7a903b..1cfd41f36724f0c54489ad7c1c41486e45467a23 100644 +index ad1cb11245108b5cb187b686ed7e6bc769193b52..ec3be7fb4eb4560fe0106ac127f17d7437612157 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -422,7 +422,7 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/0662-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch b/patches/server/0661-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch similarity index 100% rename from patches/server/0662-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch rename to patches/server/0661-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch diff --git a/patches/server/0663-Add-GameEvent-tags.patch b/patches/server/0662-Add-GameEvent-tags.patch similarity index 100% rename from patches/server/0663-Add-GameEvent-tags.patch rename to patches/server/0662-Add-GameEvent-tags.patch diff --git a/patches/server/0664-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch b/patches/server/0663-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch similarity index 87% rename from patches/server/0664-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch rename to patches/server/0663-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch index b22ddd6951..f73960e08f 100644 --- a/patches/server/0664-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch +++ b/patches/server/0663-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch @@ -9,10 +9,10 @@ This might result in chunks loading far slower in the nether, for example. diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 188b1844ca6ee5a97f7a588121255417a184a4df..ca6be44c6b2d0176ea41b1735106c5af7cf9f868 100644 +index 718b653a118a1c64d07efab93192f10dfcbf414e..d45f234fe389ade739bb13f824a1f650709220b8 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1371,6 +1371,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop S spin(Function serverFactory) { AtomicReference atomicreference = new AtomicReference(); -@@ -1582,7 +1583,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0; // Paper - BlockPhysicsEvent -@@ -1649,6 +1652,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop type, Level world) { super(type, world); -@@ -186,7 +187,11 @@ public class ItemEntity extends Entity implements TraceableEntity { +@@ -185,7 +186,11 @@ public class ItemEntity extends Entity implements TraceableEntity { this.move(MoverType.SELF, this.getDeltaMovement()); float f = 0.98F; @@ -79,7 +79,7 @@ index 30056568a9701fcb664682f329175d3bfee79b60..ea0d9335446b20073b9aafb9de453097 f = this.level().getBlockState(this.getBlockPosBelowThatAffectsMyMovement()).getBlock().getFriction() * 0.98F; } -@@ -395,6 +400,11 @@ public class ItemEntity extends Entity implements TraceableEntity { +@@ -393,6 +398,11 @@ public class ItemEntity extends Entity implements TraceableEntity { @Override public void addAdditionalSaveData(CompoundTag nbt) { @@ -91,7 +91,7 @@ index 30056568a9701fcb664682f329175d3bfee79b60..ea0d9335446b20073b9aafb9de453097 nbt.putShort("Health", (short) this.health); nbt.putShort("Age", (short) this.age); nbt.putShort("PickupDelay", (short) this.pickupDelay); -@@ -437,6 +447,17 @@ public class ItemEntity extends Entity implements TraceableEntity { +@@ -435,6 +445,17 @@ public class ItemEntity extends Entity implements TraceableEntity { this.setItem(ItemStack.EMPTY); } diff --git a/patches/server/0772-Ability-to-control-player-s-insomnia-and-phantoms.patch b/patches/server/0771-Ability-to-control-player-s-insomnia-and-phantoms.patch similarity index 97% rename from patches/server/0772-Ability-to-control-player-s-insomnia-and-phantoms.patch rename to patches/server/0771-Ability-to-control-player-s-insomnia-and-phantoms.patch index 5bc45a7af4..03be2495a7 100644 --- a/patches/server/0772-Ability-to-control-player-s-insomnia-and-phantoms.patch +++ b/patches/server/0771-Ability-to-control-player-s-insomnia-and-phantoms.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Ability to control player's insomnia and phantoms diff --git a/src/main/java/net/minecraft/world/entity/EntitySelector.java b/src/main/java/net/minecraft/world/entity/EntitySelector.java -index e382a29b441b656f35bc24cb90f95cb4def433d2..d8cc5614502db7025349e085381b6b32ad32296a 100644 +index 302decdccd37c5579473c8fc33adda3956be7603..dca7b99e97f21bf6cfae6ee69eeac95d0bcf6863 100644 --- a/src/main/java/net/minecraft/world/entity/EntitySelector.java +++ b/src/main/java/net/minecraft/world/entity/EntitySelector.java @@ -28,7 +28,18 @@ public final class EntitySelector { diff --git a/patches/server/0773-Fix-premature-player-kicks-on-shutdown.patch b/patches/server/0772-Fix-premature-player-kicks-on-shutdown.patch similarity index 95% rename from patches/server/0773-Fix-premature-player-kicks-on-shutdown.patch rename to patches/server/0772-Fix-premature-player-kicks-on-shutdown.patch index d3dbe3d230..034840341e 100644 --- a/patches/server/0773-Fix-premature-player-kicks-on-shutdown.patch +++ b/patches/server/0772-Fix-premature-player-kicks-on-shutdown.patch @@ -47,10 +47,10 @@ index 4d9f1fc884050993287adfa4578a87da710623fb..a8dfe7a4b3d01bf75587be078f471d1e this.disconnect((Component) Component.translatable("multiplayer.disconnect.server_shutdown")); } catch (ClassCastException classcastexception) { diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 3aba668f9a34cabc26063c61660ab22f83b1070e..a72b278826be1d0da79ca619ea9a9a437fa9c54b 100644 +index bef05e09c654794405832ad75c3471f63399dfee..2cc22a9a5483c62cdf64870f5ce62b33018bef06 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -2093,7 +2093,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { this.banner = CraftMetaShield.getBlockState(DyeColor.getByWoolData((byte) color.getId())); diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java -index 0b680f4d79e9d04b755309ac46969d7e43fd3c5f..213bc163daeb98d2d5cfaf02e18688c65c5d219c 100644 +index ca714e165e453d1072d083441d8b985290ada75a..302906467b12189e21633369c005736863f46dd5 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaSkull.java @@ -48,8 +48,8 @@ class CraftMetaSkull extends CraftMetaItem implements SkullMeta { diff --git a/patches/server/0962-General-ItemMeta-fixes.patch b/patches/server/0961-General-ItemMeta-fixes.patch similarity index 100% rename from patches/server/0962-General-ItemMeta-fixes.patch rename to patches/server/0961-General-ItemMeta-fixes.patch diff --git a/patches/server/0963-Expose-hasColor-to-leather-armor.patch b/patches/server/0962-Expose-hasColor-to-leather-armor.patch similarity index 100% rename from patches/server/0963-Expose-hasColor-to-leather-armor.patch rename to patches/server/0962-Expose-hasColor-to-leather-armor.patch diff --git a/patches/server/0964-Added-API-to-get-player-ha-proxy-address.patch b/patches/server/0963-Added-API-to-get-player-ha-proxy-address.patch similarity index 100% rename from patches/server/0964-Added-API-to-get-player-ha-proxy-address.patch rename to patches/server/0963-Added-API-to-get-player-ha-proxy-address.patch diff --git a/patches/server/0965-More-Chest-Block-API.patch b/patches/server/0964-More-Chest-Block-API.patch similarity index 100% rename from patches/server/0965-More-Chest-Block-API.patch rename to patches/server/0964-More-Chest-Block-API.patch diff --git a/patches/server/0966-Print-data-component-type-on-encoding-error.patch b/patches/server/0965-Print-data-component-type-on-encoding-error.patch similarity index 100% rename from patches/server/0966-Print-data-component-type-on-encoding-error.patch rename to patches/server/0965-Print-data-component-type-on-encoding-error.patch diff --git a/patches/server/0967-Brigadier-based-command-API.patch b/patches/server/0966-Brigadier-based-command-API.patch similarity index 99% rename from patches/server/0967-Brigadier-based-command-API.patch rename to patches/server/0966-Brigadier-based-command-API.patch index 8f0836b78a..876063208b 100644 --- a/patches/server/0967-Brigadier-based-command-API.patch +++ b/patches/server/0966-Brigadier-based-command-API.patch @@ -2242,7 +2242,7 @@ index 55484826fc5ddd04ae024e25a0251796d7fa9c28..237e4f7b24908e9ade9a483eb7ae05fa Component component = message.resolveComponent(commandSourceStack); CommandSigningContext commandSigningContext = commandSourceStack.getSigningContext(); diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index e055769071841d56ec7e2a64fc519d1f8b48ff42..c97fb8eec949c693d4e822d8cf2e666a0858f20c 100644 +index 42a74f5471da882d63c194b1e212f78a94b103ec..a093f29a0b75b5a9e2db2238698d2f3f4ac14ed1 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -306,7 +306,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { @@ -2283,7 +2283,7 @@ index e055769071841d56ec7e2a64fc519d1f8b48ff42..c97fb8eec949c693d4e822d8cf2e666a this.packRepository.setSelected(dataPacks); WorldDataConfiguration worlddataconfiguration = new WorldDataConfiguration(MinecraftServer.getSelectedPacks(this.packRepository, true), this.worldData.enabledFeatures()); -@@ -2194,8 +2196,17 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop S spin(Function serverFactory) { AtomicReference atomicreference = new AtomicReference(); @@ -22455,7 +22455,7 @@ index c97fb8eec949c693d4e822d8cf2e666a0858f20c..4a4ce372dd105d07f58d7d93d856cb39 ((MinecraftServer) atomicreference.get()).runServer(); }, "Server thread"); -@@ -341,6 +341,77 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { return false; } : this::haveTime); @@ -22615,7 +22615,7 @@ index c97fb8eec949c693d4e822d8cf2e666a0858f20c..4a4ce372dd105d07f58d7d93d856cb39 this.profiler.popPush("nextTickWait"); this.mayHaveDelayedTasks = true; this.delayedTasksMaxNextTickTimeNanos = Math.max(Util.getNanos() + i, this.nextTickTimeNanos); -@@ -1392,6 +1464,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { @@ -22632,7 +22632,7 @@ index c97fb8eec949c693d4e822d8cf2e666a0858f20c..4a4ce372dd105d07f58d7d93d856cb39 if (entity.isRemoved()) { continue; } -@@ -2655,6 +2728,13 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0; // Paper - BlockPhysicsEvent worldserver.hasEntityMoveEvent = io.papermc.paper.event.entity.EntityMoveEvent.getHandlerList().getRegisteredListeners().length > 0; // Paper - Add EntityMoveEvent @@ -62,7 +62,7 @@ index 4a4ce372dd105d07f58d7d93d856cb3969969806..fb3dcce4e1888f96fdd260740d9d9559 this.profiler.push(() -> { String s = String.valueOf(worldserver); diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 66047f876aedbcc33b86b5cfe2ace588523eb810..5367ece16352523cd7d3f432a137bbed68f82638 100644 +index 96b24c1415af531feef7d8ab4724f7fed3ae8388..eec0ec43590be7e8ae5b530a7404c98b5e23cb53 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -809,10 +809,16 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/1002-Entity-load-save-limit-per-chunk.patch b/patches/server/1001-Entity-load-save-limit-per-chunk.patch similarity index 100% rename from patches/server/1002-Entity-load-save-limit-per-chunk.patch rename to patches/server/1001-Entity-load-save-limit-per-chunk.patch diff --git a/patches/server/1003-Optimize-Voxel-Shape-Merging.patch b/patches/server/1002-Optimize-Voxel-Shape-Merging.patch similarity index 100% rename from patches/server/1003-Optimize-Voxel-Shape-Merging.patch rename to patches/server/1002-Optimize-Voxel-Shape-Merging.patch diff --git a/patches/server/1004-Optimize-Bit-Operations-by-inlining.patch b/patches/server/1003-Optimize-Bit-Operations-by-inlining.patch similarity index 100% rename from patches/server/1004-Optimize-Bit-Operations-by-inlining.patch rename to patches/server/1003-Optimize-Bit-Operations-by-inlining.patch diff --git a/patches/server/1005-Remove-streams-from-hot-code.patch b/patches/server/1004-Remove-streams-from-hot-code.patch similarity index 100% rename from patches/server/1005-Remove-streams-from-hot-code.patch rename to patches/server/1004-Remove-streams-from-hot-code.patch diff --git a/patches/server/1006-Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch b/patches/server/1005-Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch similarity index 100% rename from patches/server/1006-Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch rename to patches/server/1005-Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch diff --git a/patches/server/1007-Custom-table-implementation-for-blockstate-state-loo.patch b/patches/server/1006-Custom-table-implementation-for-blockstate-state-loo.patch similarity index 100% rename from patches/server/1007-Custom-table-implementation-for-blockstate-state-loo.patch rename to patches/server/1006-Custom-table-implementation-for-blockstate-state-loo.patch diff --git a/patches/server/1008-Fix-entity-type-tags-suggestions-in-selectors.patch b/patches/server/1007-Fix-entity-type-tags-suggestions-in-selectors.patch similarity index 100% rename from patches/server/1008-Fix-entity-type-tags-suggestions-in-selectors.patch rename to patches/server/1007-Fix-entity-type-tags-suggestions-in-selectors.patch diff --git a/patches/server/1009-Handle-Oversized-block-entities-in-chunks.patch b/patches/server/1008-Handle-Oversized-block-entities-in-chunks.patch similarity index 100% rename from patches/server/1009-Handle-Oversized-block-entities-in-chunks.patch rename to patches/server/1008-Handle-Oversized-block-entities-in-chunks.patch diff --git a/patches/server/1010-API-for-checking-sent-chunks.patch b/patches/server/1009-API-for-checking-sent-chunks.patch similarity index 100% rename from patches/server/1010-API-for-checking-sent-chunks.patch rename to patches/server/1009-API-for-checking-sent-chunks.patch diff --git a/patches/server/1011-Check-distance-in-entity-interactions.patch b/patches/server/1010-Check-distance-in-entity-interactions.patch similarity index 100% rename from patches/server/1011-Check-distance-in-entity-interactions.patch rename to patches/server/1010-Check-distance-in-entity-interactions.patch diff --git a/patches/server/1012-Configurable-Sand-Duping.patch b/patches/server/1011-Configurable-Sand-Duping.patch similarity index 100% rename from patches/server/1012-Configurable-Sand-Duping.patch rename to patches/server/1011-Configurable-Sand-Duping.patch diff --git a/patches/server/1013-Optimise-general-POI-access.patch b/patches/server/1012-Optimise-general-POI-access.patch similarity index 100% rename from patches/server/1013-Optimise-general-POI-access.patch rename to patches/server/1012-Optimise-general-POI-access.patch diff --git a/patches/server/1014-Improve-performance-of-mass-crafts.patch b/patches/server/1013-Improve-performance-of-mass-crafts.patch similarity index 100% rename from patches/server/1014-Improve-performance-of-mass-crafts.patch rename to patches/server/1013-Improve-performance-of-mass-crafts.patch diff --git a/patches/server/1015-Properly-resend-entities.patch b/patches/server/1014-Properly-resend-entities.patch similarity index 99% rename from patches/server/1015-Properly-resend-entities.patch rename to patches/server/1014-Properly-resend-entities.patch index 956f16576f..148750ed59 100644 --- a/patches/server/1015-Properly-resend-entities.patch +++ b/patches/server/1014-Properly-resend-entities.patch @@ -134,7 +134,7 @@ index 3a90dd1289d393426151d4457edaf99731cc34db..ec058eb6a10500831f173dcb47576c32 } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index e541a77381b03bd4dc648fc50aef77c304157fc0..34b67d7551c0ce354bc7bdb6a3581100c983ac47 100644 +index 52f3d0d4ce28cc6566166ae9a5a1b236ff8c027d..74231cb1c89079473d1727aa3ae2a539d4250317 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -684,13 +684,45 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess diff --git a/patches/server/1016-Registry-Modification-API.patch b/patches/server/1015-Registry-Modification-API.patch similarity index 100% rename from patches/server/1016-Registry-Modification-API.patch rename to patches/server/1015-Registry-Modification-API.patch diff --git a/patches/server/1017-Add-registry-entry-and-builders.patch b/patches/server/1016-Add-registry-entry-and-builders.patch similarity index 100% rename from patches/server/1017-Add-registry-entry-and-builders.patch rename to patches/server/1016-Add-registry-entry-and-builders.patch diff --git a/patches/server/1018-Improved-Watchdog-Support.patch b/patches/server/1017-Improved-Watchdog-Support.patch similarity index 96% rename from patches/server/1018-Improved-Watchdog-Support.patch rename to patches/server/1017-Improved-Watchdog-Support.patch index 5d035a4ad4..4c18803565 100644 --- a/patches/server/1018-Improved-Watchdog-Support.patch +++ b/patches/server/1017-Improved-Watchdog-Support.patch @@ -115,7 +115,7 @@ index 244a19ecd0234fa1d7a6ecfea20751595688605d..581bd217304e0f9e0b2113c335694805 /* CraftBukkit start - Replace everything OptionParser optionparser = new OptionParser(); diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index fb3dcce4e1888f96fdd260740d9d955962d879fc..93ebdbfad4f9f300f31a124d8d4b36c4f5ce382c 100644 +index c13b4f39c19dd6a62ae39688bde5a4739b391e59..d25d500a2206d4f7e821de3766e8a523df4370e3 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -307,7 +307,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop S spin(Function serverFactory) { AtomicReference atomicreference = new AtomicReference(); Thread thread = new ca.spottedleaf.moonrise.common.util.TickThread(() -> { // Paper - rewrite chunk system -@@ -489,6 +492,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop S spin(Function serverFactory) { AtomicReference atomicreference = new AtomicReference(); -@@ -1765,6 +1766,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0; // Paper - BlockPhysicsEvent worldserver.hasEntityMoveEvent = io.papermc.paper.event.entity.EntityMoveEvent.getHandlerList().getRegisteredListeners().length > 0; // Paper - Add EntityMoveEvent net.minecraft.world.level.block.entity.HopperBlockEntity.skipHopperEvents = worldserver.paperConfig().hopper.disableMoveEvent || org.bukkit.event.inventory.InventoryMoveItemEvent.getHandlerList().getRegisteredListeners().length == 0; // Paper - Perf: Optimize Hoppers diff --git a/patches/server/1029-Detail-more-information-in-watchdog-dumps.patch b/patches/server/1028-Detail-more-information-in-watchdog-dumps.patch similarity index 99% rename from patches/server/1029-Detail-more-information-in-watchdog-dumps.patch rename to patches/server/1028-Detail-more-information-in-watchdog-dumps.patch index 1806b418e3..cddaca3e53 100644 --- a/patches/server/1029-Detail-more-information-in-watchdog-dumps.patch +++ b/patches/server/1028-Detail-more-information-in-watchdog-dumps.patch @@ -122,7 +122,7 @@ index 9e1af229f52a8ac09833901ad53bd154fed34a4f..c5698b05cc3ea4cb1bc6789c30f2aab7 private void tickPassenger(Entity vehicle, Entity passenger) { diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 34b67d7551c0ce354bc7bdb6a3581100c983ac47..e0827d8bb3fa17d4f590a5342ff41a514f623e68 100644 +index 74231cb1c89079473d1727aa3ae2a539d4250317..9f68c0fda7f5526eb97619f1a35ed3b78d1b3751 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -1086,8 +1086,43 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess diff --git a/patches/server/1030-Write-SavedData-IO-async.patch b/patches/server/1029-Write-SavedData-IO-async.patch similarity index 100% rename from patches/server/1030-Write-SavedData-IO-async.patch rename to patches/server/1029-Write-SavedData-IO-async.patch diff --git a/patches/server/1031-Add-ItemType-getItemRarity.patch b/patches/server/1030-Add-ItemType-getItemRarity.patch similarity index 100% rename from patches/server/1031-Add-ItemType-getItemRarity.patch rename to patches/server/1030-Add-ItemType-getItemRarity.patch diff --git a/patches/server/1032-Incremental-chunk-and-player-saving.patch b/patches/server/1031-Incremental-chunk-and-player-saving.patch similarity index 97% rename from patches/server/1032-Incremental-chunk-and-player-saving.patch rename to patches/server/1031-Incremental-chunk-and-player-saving.patch index 171e0f1feb..8c2a39d8fe 100644 --- a/patches/server/1032-Incremental-chunk-and-player-saving.patch +++ b/patches/server/1031-Incremental-chunk-and-player-saving.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Incremental chunk and player saving diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index a2875f7cdfb6b43ed59cff41ab4122a08c4cc57f..45695abbeb0a6d47b31b23ba6c464f17e99d7898 100644 +index b64c3e29e2b8e890073fee0b45c8b8dfc2b642fd..aa38e3b297209cc121e7dc7a6ac9588c18bf9357 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -993,7 +993,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop +Date: Mon, 16 Sep 2024 23:07:29 +0200 +Subject: [PATCH] Remove wall-time / unused skip tick protection + +Spigot still maintains some partial implementation of "tick skipping", a +practice in which the MinecraftServer.currentTick field is updated not +by an increment of one per actual tick, but instead set to +System.currentTimeMillis() / 50. This behaviour means that the tracked +tick may "skip" a tick value in case a previous tick took more than the +expected 50ms. + +To compensate for this in important paths, spigot/craftbukkit +implements "wall-time". Instead of incrementing/decrementing ticks on +block entities/entities by one for each call to their tick() method, +they instead increment/decrement important values, like +an ItemEntity's age or pickupDelay, by the difference of +`currentTick - lastTick`, where `lastTick` is the value of +`currentTick` during the last tick() call. + +These "fixes" however do not play nicely with minecraft's simulation +distance as entities/block entities implementing the above behaviour +would "catch up" their values when moving from a non-ticking chunk to a +ticking one as their `lastTick` value remains stuck on the last tick in +a ticking chunk and hence lead to a large "catch up" once ticked again. + +Paper completely removes the "tick skipping" behaviour (See patch +"Further-improve-server-tick-loop"), making the above precautions +completely unnecessary, which also rids paper of the previous described +incompatibility with non-ticking chunks. + +diff --git a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java +index 03cfa29bdb426a9fb6b1b6be6e897da48d4f2f3e..4423973d4d9a2c3879d98d1d4c8b8c117c677ac5 100644 +--- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java ++++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java +@@ -60,7 +60,7 @@ public class ItemEntity extends Entity implements TraceableEntity { + @Nullable + public UUID target; + public final float bobOffs; +- private int lastTick = MinecraftServer.currentTick - 1; // CraftBukkit ++ // private int lastTick = MinecraftServer.currentTick - 1; // CraftBukkit // Paper - remove anti tick skipping measures / wall time + public boolean canMobPickup = true; // Paper - Item#canEntityPickup + private int despawnRate = -1; // Paper - Alternative item-despawn-rate + public net.kyori.adventure.util.TriState frictionState = net.kyori.adventure.util.TriState.NOT_SET; // Paper - Friction API +@@ -153,12 +153,11 @@ public class ItemEntity extends Entity implements TraceableEntity { + this.discard(EntityRemoveEvent.Cause.DESPAWN); // CraftBukkit - add Bukkit remove cause + } else { + super.tick(); +- // CraftBukkit start - Use wall time for pickup and despawn timers +- int elapsedTicks = MinecraftServer.currentTick - this.lastTick; +- if (this.pickupDelay != 32767) this.pickupDelay -= elapsedTicks; +- if (this.age != -32768) this.age += elapsedTicks; +- this.lastTick = MinecraftServer.currentTick; +- // CraftBukkit end ++ // Paper start - remove anti tick skipping measures / wall time - revert to vanilla ++ if (this.pickupDelay > 0 && this.pickupDelay != 32767) { ++ --this.pickupDelay; ++ } ++ // Paper end - remove anti tick skipping measures / wall time - revert to vanilla + + this.xo = this.getX(); + this.yo = this.getY(); +@@ -211,7 +210,7 @@ public class ItemEntity extends Entity implements TraceableEntity { + this.mergeWithNeighbours(); + } + +- /* CraftBukkit start - moved up ++ // Paper - remove anti tick skipping measures / wall time - revert to vanilla /* CraftBukkit start - moved up + if (this.age != -32768) { + ++this.age; + } +@@ -242,12 +241,14 @@ public class ItemEntity extends Entity implements TraceableEntity { + // Spigot start - copied from above + @Override + public void inactiveTick() { +- // CraftBukkit start - Use wall time for pickup and despawn timers +- int elapsedTicks = MinecraftServer.currentTick - this.lastTick; +- if (this.pickupDelay != 32767) this.pickupDelay -= elapsedTicks; +- if (this.age != -32768) this.age += elapsedTicks; +- this.lastTick = MinecraftServer.currentTick; +- // CraftBukkit end ++ // Paper start - remove anti tick skipping measures / wall time - copied from above ++ if (this.pickupDelay > 0 && this.pickupDelay != 32767) { ++ --this.pickupDelay; ++ } ++ if (this.age != -32768) { ++ ++this.age; ++ } ++ // Paper end - remove anti tick skipping measures / wall time - copied from above + + if (!this.level().isClientSide && this.age >= this.despawnRate) { // Spigot // Paper - Alternative item-despawn-rate + // CraftBukkit start - fire ItemDespawnEvent +diff --git a/src/main/java/net/minecraft/world/entity/monster/Zombie.java b/src/main/java/net/minecraft/world/entity/monster/Zombie.java +index 2280004638fd19ed018cb3e77d53a018b34ec516..2b43337ac63d051718a2074fcc46e128a1d65129 100644 +--- a/src/main/java/net/minecraft/world/entity/monster/Zombie.java ++++ b/src/main/java/net/minecraft/world/entity/monster/Zombie.java +@@ -96,7 +96,7 @@ public class Zombie extends Monster { + private boolean canBreakDoors; + private int inWaterTime; + public int conversionTime; +- private int lastTick = MinecraftServer.currentTick; // CraftBukkit - add field ++ // private int lastTick = MinecraftServer.currentTick; // CraftBukkit - add field // Paper - remove anti tick skipping measures / wall time + private boolean shouldBurnInDay = true; // Paper - Add more Zombie API + + public Zombie(EntityType type, Level world) { +@@ -219,10 +219,7 @@ public class Zombie extends Monster { + public void tick() { + if (!this.level().isClientSide && this.isAlive() && !this.isNoAi()) { + if (this.isUnderWaterConverting()) { +- // CraftBukkit start - Use wall time instead of ticks for conversion +- int elapsedTicks = MinecraftServer.currentTick - this.lastTick; +- this.conversionTime -= elapsedTicks; +- // CraftBukkit end ++ --this.conversionTime; // Paper - remove anti tick skipping measures / wall time + if (this.conversionTime < 0) { + this.doUnderWaterConversion(); + } +@@ -239,7 +236,7 @@ public class Zombie extends Monster { + } + + super.tick(); +- this.lastTick = MinecraftServer.currentTick; // CraftBukkit ++ // this.lastTick = MinecraftServer.currentTick; // CraftBukkit // Paper - remove anti tick skipping measures / wall time + } + + @Override +@@ -280,7 +277,7 @@ public class Zombie extends Monster { + } + // Paper end - Add more Zombie API + public void startUnderWaterConversion(int ticksUntilWaterConversion) { +- this.lastTick = MinecraftServer.currentTick; // CraftBukkit ++ // this.lastTick = MinecraftServer.currentTick; // CraftBukkit // Paper - remove anti tick skipping measures / wall time + this.conversionTime = ticksUntilWaterConversion; + this.getEntityData().set(Zombie.DATA_DROWNED_CONVERSION_ID, true); + } +diff --git a/src/main/java/net/minecraft/world/level/block/entity/BrewingStandBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/BrewingStandBlockEntity.java +index a2fafef89d5354e2cb02f5672810909950a57777..bf2c303a314205590a2839e0f729af3a9ff40a86 100644 +--- a/src/main/java/net/minecraft/world/level/block/entity/BrewingStandBlockEntity.java ++++ b/src/main/java/net/minecraft/world/level/block/entity/BrewingStandBlockEntity.java +@@ -54,7 +54,7 @@ public class BrewingStandBlockEntity extends BaseContainerBlockEntity implements + public int fuel; + protected final ContainerData dataAccess; + // CraftBukkit start - add fields and methods +- private int lastTick = MinecraftServer.currentTick; ++ // private int lastTick = MinecraftServer.currentTick; // Paper - remove anti tick skipping measures / wall time + public List transaction = new java.util.ArrayList(); + private int maxStack = MAX_STACK; + +@@ -169,12 +169,10 @@ public class BrewingStandBlockEntity extends BaseContainerBlockEntity implements + boolean flag1 = blockEntity.brewTime > 0; + ItemStack itemstack1 = (ItemStack) blockEntity.items.get(3); + +- // CraftBukkit start - Use wall time instead of ticks for brewing +- int elapsedTicks = MinecraftServer.currentTick - blockEntity.lastTick; +- blockEntity.lastTick = MinecraftServer.currentTick; ++ // Paper - remove anti tick skipping measures / wall time + + if (flag1) { +- blockEntity.brewTime -= elapsedTicks; ++ --blockEntity.brewTime; // Paper - remove anti tick skipping measures / wall time - revert to vanilla + boolean flag2 = blockEntity.brewTime <= 0; // == -> <= + // CraftBukkit end +