From 25013d997057eb89471d285db2a4b40acde6272d Mon Sep 17 00:00:00 2001 From: Nassim Jahnke Date: Mon, 22 Jan 2024 21:04:08 +0100 Subject: [PATCH] [ci skip] Move some disruptive patches back --- ...rimise-map-impl-for-tracked-players.patch} | 2 +- ...imise-BlockSoil-nearby-water-lookup.patch} | 0 ... 0670-Distance-manager-tick-timings.patch} | 4 +- ...ntory-not-closing-on-entity-removal.patch} | 4 +- ...rement-before-suggesting-root-nodes.patch} | 0 ...ServerboundCommandSuggestionPacket-.patch} | 2 +- ...h => 0674-Add-packet-limiter-config.patch} | 2 +- ...nColor-on-tropical-fish-bucket-meta.patch} | 0 ...=> 0676-Ensure-valid-vehicle-status.patch} | 2 +- ...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 => 0681-Preserve-overstacked-loot.patch} | 0 ...ate-head-rotation-in-missing-places.patch} | 6 +- ...unintended-light-block-manipulation.patch} | 0 ...0684-Fix-CraftCriteria-defaults-map.patch} | 0 ...Fix-upstreams-block-state-factories.patch} | 0 ... => 0686-Configurable-feature-seeds.patch} | 2 +- ... 0687-Add-root-admin-user-detection.patch} | 0 ...ays-allow-item-changing-in-Fireball.patch} | 0 ...t-attempt-to-teleport-dead-entities.patch} | 2 +- ...ive-velocity-through-repeated-crits.patch} | 2 +- ...e-code-using-deprecated-for-removal.patch} | 0 ...emoving-recipes-from-RecipeIterator.patch} | 0 ...versized-item-data-in-equipment-and.patch} | 2 +- ...e-unnecessary-itemmeta-from-clients.patch} | 4 +- ...=> 0695-Fix-Spigot-growth-modifiers.patch} | 0 ...OpenersCounter-openCount-from-going.patch} | 0 ...0697-Add-PlayerItemFrameChangeEvent.patch} | 0 ...tch => 0698-Optimize-HashMapPalette.patch} | 0 ...low-delegation-to-vanilla-chunk-gen.patch} | 2 +- ...-isSectionEmpty-int-and-optimize-Pa.patch} | 0 ...patch => 0701-Add-more-Campfire-API.patch} | 0 ...data-to-disk-if-it-serializes-witho.patch} | 14 ++-- ...ard-CraftEntity-in-teleport-command.patch} | 6 +- ... => 0704-Improve-scoreboard-entries.patch} | 0 ...ch => 0705-Entity-powdered-snow-API.patch} | 0 ...0706-Add-API-for-item-entity-health.patch} | 0 ...ax-block-light-for-monster-spawning.patch} | 0 ...pistons-and-BlockPistonRetractEvent.patch} | 0 ...plifiers-greater-than-127-correctly.patch} | 0 ...-canSmelt-methods-to-FurnaceInvento.patch} | 0 ...=> 0711-Fix-bees-aging-inside-hives.patch} | 0 ...le-API.patch => 0712-Bucketable-API.patch} | 0 ...es.patch => 0713-Validate-usernames.patch} | 6 +- ...er-animal-spawn-height-configurable.patch} | 0 ...anilla-BiomeProvider-from-WorldInfo.patch} | 6 +- ...ion-for-worlds-affected-by-time-cmd.patch} | 0 ...heck-for-PersistentDataContainer-ha.patch} | 0 ...8-Multiple-Entries-with-Scoreboards.patch} | 0 ...719-Reset-placed-block-on-exception.patch} | 0 ...configurable-height-for-slime-spawn.patch} | 0 ...0721-Fix-xp-reward-for-baby-zombies.patch} | 0 ...lti-Block-Change-API-Implementation.patch} | 0 ...ent.patch => 0723-Fix-NotePlayEvent.patch} | 0 ....patch => 0724-Freeze-Tick-Lock-API.patch} | 8 +-- ...h => 0725-More-PotionEffectType-API.patch} | 0 ...for-StructureTemplate.Pallete-cache.patch} | 0 ...command-sender-which-forwards-feedb.patch} | 2 +- ...-missing-structure-set-seed-configs.patch} | 2 +- ...h => 0729-Implement-regenerateChunk.patch} | 2 +- ...lled-powdered-snow-bucket-placement.patch} | 0 ...ate-calls-to-CraftServer-getSpawnLi.patch} | 2 +- ...gs.patch => 0732-Add-GameEvent-tags.patch} | 2 +- ...ks-fairly-for-worlds-while-waiting-.patch} | 8 +-- ...tch => 0734-Furnace-RecipesUsed-API.patch} | 0 ...gurable-sculk-sensor-listener-range.patch} | 0 ...d-missing-block-data-mins-and-maxes.patch} | 0 ...fault-CustomSpawners-in-custom-worl.patch} | 2 +- ...-worldlist-before-initing-the-world.patch} | 4 +- ... => 0739-Fix-Entity-Position-Desync.patch} | 0 ...s.patch => 0740-Custom-Potion-Mixes.patch} | 6 +- ...41-Force-close-world-loading-screen.patch} | 2 +- ...742-Fix-falling-block-spawn-methods.patch} | 2 +- ...Expose-furnace-minecart-push-values.patch} | 0 ...ojectileHitEvent-for-piercing-arrow.patch} | 0 ...I.patch => 0745-More-Projectile-API.patch} | 2 +- ...x-swamp-hut-cat-generation-deadlock.patch} | 0 ...le-movement-from-players-while-tele.patch} | 2 +- ...0748-Implement-getComputedBiome-API.patch} | 0 ...> 0749-Make-some-itemstacks-nonnull.patch} | 0 ...750-Implement-enchantWithLevels-API.patch} | 0 ...h => 0751-Fix-saving-in-unloadWorld.patch} | 2 +- ...h => 0752-Buffer-OOB-setBlock-calls.patch} | 0 ... 0753-Add-TameableDeathMessageEvent.patch} | 0 ...ock-data-for-EntityChangeBlockEvent.patch} | 4 +- ...bles-running-when-mob-loot-gamerule.patch} | 2 +- ...ssenger-world-matches-ridden-entity.patch} | 4 +- ...s.patch => 0757-cache-resource-keys.patch} | 0 ...low-changing-the-EnderDragon-podium.patch} | 0 ...erriding-a-block-entity-during-worl.patch} | 0 ...eGrowEvent-species-for-RED_MUSHROOM.patch} | 0 ...t-tile-entity-copies-loading-chunks.patch} | 4 +- ...ead-of-display-name-in-PlayerList-g.patch} | 2 +- ...-ServerLevel-for-gamerule-callbacks.patch} | 6 +- ...> 0764-Expand-PlayerItemDamageEvent.patch} | 0 ...> 0765-WorldCreator-keepSpawnLoaded.patch} | 2 +- ...-in-CraftPersistentDataTypeRegistry.patch} | 0 ...destroyed-trigger-in-the-correct-pl.patch} | 2 +- ...Event-and-CollarColorable-interface.patch} | 0 ...CauldronLevelChange-on-initial-fill.patch} | 0 ...snow-cauldrons-not-turning-to-water.patch} | 0 ...> 0771-Add-PlayerStopUsingItemEvent.patch} | 2 +- ...rs.patch => 0772-Don-t-tick-markers.patch} | 4 +- ...tch => 0773-Expand-FallingBlock-API.patch} | 2 +- ...-not-accept-invalid-client-settings.patch} | 4 +- ...0775-Add-support-for-Proxy-Protocol.patch} | 19 +----- ...x-OfflinePlayer-getBedSpawnLocation.patch} | 0 ...tory-for-smokers-and-blast-furnaces.patch} | 0 ... 0778-Sanitize-sent-BlockEntity-NBT.patch} | 0 ...-selector-resolving-in-books-by-def.patch} | 0 ...ntity-loading-causing-async-lookups.patch} | 2 +- ...-on-world-create-while-being-ticked.patch} | 10 +-- ...82-Dont-resent-entity-on-art-update.patch} | 0 ... => 0783-Add-WardenAngerChangeEvent.patch} | 0 ...strict-advancement-dimension-checks.patch} | 2 +- ...tant-BlockStateListPopulator-method.patch} | 0 ...I.patch => 0786-Nameable-Banner-API.patch} | 0 ...roadcast-messages-to-command-blocks.patch} | 2 +- ...pty-items-from-being-added-to-world.patch} | 4 +- ...hPotion-and-LingeringPotion-spawnin.patch} | 0 ...atch => 0790-Add-Player-getFishHook.patch} | 0 ...chunk-for-dynamic-game-event-listen.patch} | 0 ...s-missing-EntityDropItemEvent-calls.patch} | 4 +- ...PE.patch => 0793-Fix-Bee-flower-NPE.patch} | 0 ...-not-using-commands.spam-exclusions.patch} | 4 +- ...API.patch => 0795-More-Teleport-API.patch} | 4 +- ... => 0796-Add-EntityPortalReadyEvent.patch} | 6 +- ...level-random-in-entity-constructors.patch} | 2 +- ...k-entities-after-destroy-prediction.patch} | 6 +- ...on-plugins-accessing-faraway-chunks.patch} | 6 +- ...tom-Chat-Completion-Suggestions-API.patch} | 0 ...Add-and-fix-missing-BlockFadeEvents.patch} | 0 ...ion-API.patch => 0802-Collision-API.patch} | 0 ...nd-message-for-brigadier-syntax-exc.patch} | 2 +- ...API.patch => 0804-Block-Ticking-API.patch} | 0 ...-Add-Velocity-IP-Forwarding-Support.patch} | 8 +-- ...806-Add-NamespacedKey-biome-methods.patch} | 0 ...x-plugin-loggers-on-server-shutdown.patch} | 2 +- ...ok-changes-from-crashing-the-server.patch} | 4 +- ...tityChangeBlockEvent-in-more-places.patch} | 0 ...> 0810-Missing-eating-regain-reason.patch} | 0 ....patch => 0811-Missing-effect-cause.patch} | 0 ...serialization-deserialization-for-P.patch} | 0 ...rameter-to-ProjectileSource-launchP.patch} | 0 ...4-Call-BlockPhysicsEvent-more-often.patch} | 0 ...0815-Configurable-chat-thread-limit.patch} | 0 ...of-WorldCreator-keepSpawnLoaded-ret.patch} | 0 ... 0817-fix-Jigsaw-block-kicking-user.patch} | 0 ...mEvent-for-mud-converting-into-clay.patch} | 0 ... => 0819-Add-getDrops-to-BlockState.patch} | 0 ...=> 0820-Fix-a-bunch-of-vanilla-bugs.patch} | 16 ++--- ...y-onTrackingStart-during-navigation.patch} | 6 +- ... 0822-Fix-custom-piglin-loved-items.patch} | 0 ...=> 0823-EntityPickupItemEvent-fixes.patch} | 0 ...interactions-with-items-on-cooldown.patch} | 4 +- ...-Add-PlayerInventorySlotChangeEvent.patch} | 2 +- ... 0826-Elder-Guardian-appearance-API.patch} | 0 ...ow-changing-bed-s-occupied-property.patch} | 0 ...ch => 0828-Add-entity-knockback-API.patch} | 0 ....patch => 0829-Detect-headless-JREs.patch} | 0 ...-vehicle-collision-event-not-called.patch} | 0 ...ch => 0831-Add-EntityToggleSitEvent.patch} | 0 ... => 0832-Add-fire-tick-delay-option.patch} | 0 ...patch => 0833-Add-Moving-Piston-API.patch} | 0 ...> 0834-Ignore-impossible-spawn-tick.patch} | 2 +- ...source-for-fireworks-from-dispenser.patch} | 0 ...t-suggestion-permissions-to-align-w.patch} | 6 +- ...Event-cancellation-cant-fully-preve.patch} | 4 +- ...0838-Add-PrePlayerAttackEntityEvent.patch} | 2 +- ...e-reset-EnderDragon-boss-event-name.patch} | 0 ...-green-map-markers-do-not-disappear.patch} | 0 ... 0841-Add-Player-Warden-Warning-API.patch} | 0 ...a-friendly-methods-to-update-trades.patch} | 2 +- ...843-Add-paper-dumplisteners-command.patch} | 0 ...lobal-player-list-where-appropriate.patch} | 10 +-- ...sync-entity-add-due-to-fungus-trees.patch} | 0 ....patch => 0846-ItemStack-damage-API.patch} | 0 ...tion-API.patch => 0847-Friction-API.patch} | 0 ...trol-player-s-insomnia-and-phantoms.patch} | 0 ...=> 0849-Fix-player-kick-on-shutdown.patch} | 8 +-- ... => 0850-Sync-offhand-slot-in-menus.patch} | 2 +- ... 0851-Player-Entity-Tracking-Events.patch} | 6 +- ...tch => 0852-Limit-pet-look-distance.patch} | 0 ...nd-additions-to-the-SpawnReason-API.patch} | 2 +- ...ments.patch => 0854-fix-Instruments.patch} | 0 ...for-some-hot-BlockBehavior-and-Flui.patch} | 8 +-- ...es-in-dispense-events-regarding-sta.patch} | 0 ...tch => 0857-Add-BlockLockCheckEvent.patch} | 0 ... 0858-Add-Sneaking-API-for-Entities.patch} | 2 +- ... => 0859-Improve-logging-and-errors.patch} | 4 +- ....patch => 0860-Improve-PortalEvents.patch} | 4 +- ...ion-for-spider-worldborder-climbing.patch} | 0 ...sing-SpigotConfig-logCommands-check.patch} | 4 +- ...Allay-stopDancing-while-not-dancing.patch} | 0 ...ge.patch => 0864-Flying-Fall-Damage.patch} | 2 +- ...k-state-to-BlockExplodeEvent-and-En.patch} | 2 +- ...ion-moving-velocity-to-VehicleBlock.patch} | 4 +- ...onfig-for-disabling-entity-tag-tags.patch} | 2 +- ...e-player-info-update-packet-on-join.patch} | 6 +- ...k-items-during-EntityResurrectEvent.patch} | 2 +- ...en-API.patch => 0870-Win-Screen-API.patch} | 0 ...ItemStack-setAmount-null-assignment.patch} | 0 ...ix-force-opening-enchantment-tables.patch} | 0 ...tch => 0873-Add-Entity-Body-Yaw-API.patch} | 4 +- ...vent-sleeping-villagers-moving-towa.patch} | 0 ...hen-a-captured-block-state-is-outda.patch} | 4 +- ...=> 0876-Add-EntityFertilizeEggEvent.patch} | 4 +- ...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} | 2 +- ...881-Fix-text-display-error-on-spawn.patch} | 0 ...nventories-returning-null-Locations.patch} | 0 ...API.patch => 0883-Add-Shearable-API.patch} | 0 ...Fix-SpawnEggMeta-get-setSpawnedType.patch} | 0 ...ives-generating-from-using-bonemeal.patch} | 2 +- ...g-to-bad-recipes-in-furnace-like-ti.patch} | 0 ...ence-violations-like-they-should-be.patch} | 4 +- ...uplicate-animate-packet-for-records.patch} | 0 ...xpired-keys-from-impacting-new-join.patch} | 4 +- ...ts-being-fired-from-unloaded-chunks.patch} | 4 +- ...0891-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 ... 0894-Add-Mob-Experience-reward-API.patch} | 0 ...redstone-on-top-of-trap-doors-early.patch} | 0 ...-Fix-DamageCause-for-Falling-Blocks.patch} | 2 +- ...Lazy-Initialization-for-Enum-Fields.patch} | 0 ...98-More-accurate-isInOpenWater-impl.patch} | 0 ...ccess-to-lookups-field-in-RegistryO.patch} | 0 ... => 0900-Expand-PlayerItemMendEvent.patch} | 4 +- ...sh-ProjectileSource-for-projectiles.patch} | 4 +- ... => 0902-Add-transient-modifier-API.patch} | 0 ...patch => 0903-Fix-block-place-logic.patch} | 6 +- ...nd-playing-for-BlockItem-ItemStacks.patch} | 2 +- ...l-BlockGrowEvent-for-missing-blocks.patch} | 0 ...nhasbukkit-default-if-alias-block-e.patch} | 2 +- ...pLike-spam-for-missing-key-selector.patch} | 0 ...-Fix-sniffer-removeExploredLocation.patch} | 0 ...to-remove-all-active-potion-effects.patch} | 0 ...yerChunkLoaderData-in-order-to-prep.patch} | 0 ...rafting-result-amount-for-fireworks.patch} | 0 ...> 0912-Properly-cancel-usable-items.patch} | 8 +-- ...3-Add-event-for-player-editing-sign.patch} | 2 +- ...recalcBlockCounts-for-empty-sections.patch | 37 ----------- ...k-item-frames-if-players-can-see-it.patch} | 0 ...ermission-levels-for-command-blocks.patch} | 4 +- ...Add-option-to-disable-block-updates.patch} | 14 ++-- ...917-Call-missing-BlockDispenseEvent.patch} | 2 +- ...-chunks-for-supporting-block-checks.patch} | 4 +- ...Optimize-player-lookups-for-beacons.patch} | 0 ...920-Add-Sign-getInteractableSideFor.patch} | 0 ...21-Array-backed-synched-entity-data.patch} | 2 +- ...2-fix-item-meta-for-tadpole-buckets.patch} | 0 ...t-API.patch => 0923-Fix-BanList-API.patch} | 0 ...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} | 2 +- ...t-throw-both-Spread-and-Grow-Events.patch} | 0 ....patch => 0929-Add-whitelist-events.patch} | 0 ... 0930-Implement-PlayerFailMoveEvent.patch} | 64 +++++++++--------- ...olia-scheduler-and-owned-region-API.patch} | 16 ++--- ...se-allay-memory-on-non-item-targets.patch} | 0 ...API-for-updating-recipes-on-clients.patch} | 4 +- ...tion-when-spawning-display-entities.patch} | 0 ...935-Only-capture-actual-tree-growth.patch} | 10 +-- ...rce-for-mushroom-block-spread-event.patch} | 0 ...Data-on-more-entities-when-spawning.patch} | 0 ...-Use-correct-seed-on-api-world-load.patch} | 2 +- ...ta-neighbour-ticks-outside-of-range.patch} | 0 ...> 0940-Cache-map-ids-on-item-frames.patch} | 0 ...-custom-statistic-criteria-creation.patch} | 0 ...atch => 0942-Bandaid-fix-for-Effect.patch} | 2 +- ...tch => 0943-SculkCatalyst-bloom-API.patch} | 0 ...API-for-an-entity-s-scoreboard-name.patch} | 4 +- ...g-PreCreatureSpawnEvent-with-per-pl.patch} | 4 +- ...lace-methods-with-old-StructureType.patch} | 2 +- ...e-namespaced-commands-if-send-names.patch} | 4 +- ...-handle-BlockBreakEvent-isDropItems.patch} | 4 +- ...entity-death-event-for-ender-dragon.patch} | 0 ...tity-tracking-range-by-Y-coordinate.patch} | 2 +- ... => 0951-Add-Listing-API-for-Player.patch} | 2 +- ...figurable-Region-Compression-Format.patch} | 13 ++-- ...3-Add-BlockFace-to-BlockDamageEvent.patch} | 4 +- ...h => 0954-Fix-NPE-on-Boat-getStatus.patch} | 0 ...e-API.patch => 0955-Expand-Pose-API.patch} | 4 +- ...patch => 0956-More-DragonBattle-API.patch} | 0 ... 0957-Deep-clone-unhandled-nbt-tags.patch} | 0 ...tch => 0958-Add-PlayerPickItemEvent.patch} | 4 +- ...=> 0959-Allow-trident-custom-damage.patch} | 0 ...0-Expose-hand-in-BlockCanBuildEvent.patch} | 0 ...-nearest-structure-border-iteration.patch} | 2 +- ...Implement-OfflinePlayer-isConnected.patch} | 0 ....patch => 0963-Fix-inventory-desync.patch} | 0 ...titleOverride-to-InventoryOpenEvent.patch} | 2 +- ...65-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} | 4 +- ...ll-BlockRedstoneEvents-for-lecterns.patch} | 0 ...roper-checking-of-empty-item-stacks.patch} | 0 ...ix-silent-equipment-change-for-mobs.patch} | 2 +- ...h => 0972-Fix-spigot-s-Forced-Stats.patch} | 0 ...ing-InventoryHolders-to-inventories.patch} | 0 ...entities-in-chunks-that-are-positio.patch} | 6 +- ...sing-logs-for-log-ips-config-option.patch} | 0 ...Remove-Spigot-Bug-Fix-for-MC-109346.patch} | 0 ...atch => 0977-Fix-SuspiciousStewMeta.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} | 4 +- ...a-when-attaching-firework-to-entity.patch} | 0 ...ble-for-initializing-CraftLootTable.patch} | 0 ...method-of-Fireballs-change-the-trav.patch} | 0 ...85-Fix-UnsafeValues-loadAdvancement.patch} | 0 ...> 0986-Add-player-idle-duration-API.patch} | 0 ...-if-we-can-see-non-visible-entities.patch} | 4 +- ...NPE-in-SculkBloomEvent-world-access.patch} | 0 ...tack-for-Player-sendEquipmentChange.patch} | 0 ...Ints.patch => 0990-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} | 2 +- ... => 0994-Expand-LingeringPotion-API.patch} | 0 ....patch => 0995-Add-MaterialTagsTest.patch} | 0 ...ngEffect-powers-lightning-rods-and-.patch} | 2 +- ...h-event-for-all-player-interactions.patch} | 0 ...everal-issues-with-EntityBreedEvent.patch} | 0 ...999-Add-UUID-attribute-modifier-API.patch} | 0 ...-event-call-for-entity-teleport-API.patch} | 2 +- ...y-create-LootContext-for-criterions.patch} | 0 ...-t-fire-sync-events-during-worldgen.patch} | 10 +-- ...-getAttributeModifier-duplication-c.patch} | 0 ...store-vanilla-entity-drops-behavior.patch} | 18 ++--- ...tch => 1005-Add-Structure-check-API.patch} | 2 +- ...-Dont-resend-blocks-on-interactions.patch} | 4 +- ...evious-behavior-for-setResourcePack.patch} | 0 ...-read-and-store-sus-effect-duration.patch} | 0 ...e-correct-max-stack-size-in-crafter.patch} | 0 ...tch => 1010-add-more-scoreboard-API.patch} | 0 ...stry.patch => 1011-Improve-Registry.patch} | 0 ...on-null-loc-for-EntityTeleportEvent.patch} | 4 +- ...h => 1013-Add-experience-points-API.patch} | 2 +- ...h => 1014-Add-missing-InventoryType.patch} | 0 ...h => 1015-Add-drops-to-shear-events.patch} | 2 +- ...> 1016-Add-PlayerShieldDisableEvent.patch} | 4 +- ... => 1017-Add-HiddenPotionEffect-API.patch} | 0 ...f-bucket-dispenses-will-succeed-for.patch} | 0 ...x-ItemMeta-removing-CustomModelData.patch} | 0 ...ate-ResourceLocation-in-NBT-reading.patch} | 4 +- ...-experience-dropping-on-block-break.patch} | 10 +-- ...> 1022-Fixup-NamespacedKey-handling.patch} | 0 ...location-of-Vec3D-by-entity-tracker.patch} | 4 +- ...ch => 1024-Write-SavedData-IO-async.patch} | 10 +-- ...> 1025-Execute-chunk-tasks-mid-tick.patch} | 26 ++++---- ... 1026-Optimise-random-block-ticking.patch} | 65 +++++++++---------- ...ulate-regionfile-header-if-it-is-co.patch} | 14 ++-- ...city-compression-and-cipher-natives.patch} | 16 ++--- ...-more-information-in-watchdog-dumps.patch} | 20 +++--- ...tch => 1030-Collision-optimisations.patch} | 55 ++++++++-------- ...n-checking-in-player-move-packet-ha.patch} | 41 +++++------- ...32-Fix-tripwire-state-inconsistency.patch} | 12 ++-- ...-type-tags-suggestions-in-selectors.patch} | 28 ++++---- ...ate-Current-redstone-implementation.patch} | 13 ++-- ...35-optimize-dirt-and-snow-spreading.patch} | 0 ...ch => 1036-Properly-resend-entities.patch} | 16 ++--- ...pers.patch => 1037-Optimize-Hoppers.patch} | 8 +-- ...-Improve-performance-of-mass-crafts.patch} | 0 ...> 1039-Actually-optimise-explosions.patch} | 0 ... 1040-Optimise-chunk-tick-iteration.patch} | 12 ++-- ...atch => 1041-Lag-compensation-ticks.patch} | 18 ++--- ...42-Optimise-nearby-player-retrieval.patch} | 2 +- scripts/moveback.py | 44 +++++++++++++ 377 files changed, 545 insertions(+), 570 deletions(-) rename patches/server/{0669-Oprimise-map-impl-for-tracked-players.patch => 0668-Oprimise-map-impl-for-tracked-players.patch} (92%) rename patches/server/{0670-Optimise-BlockSoil-nearby-water-lookup.patch => 0669-Optimise-BlockSoil-nearby-water-lookup.patch} (100%) rename patches/server/{0675-Distance-manager-tick-timings.patch => 0670-Distance-manager-tick-timings.patch} (91%) rename patches/server/{0676-Fix-merchant-inventory-not-closing-on-entity-removal.patch => 0671-Fix-merchant-inventory-not-closing-on-entity-removal.patch} (90%) rename patches/server/{0677-Check-requirement-before-suggesting-root-nodes.patch => 0672-Check-requirement-before-suggesting-root-nodes.patch} (100%) rename patches/server/{0678-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch => 0673-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch} (92%) rename patches/server/{0679-Add-packet-limiter-config.patch => 0674-Add-packet-limiter-config.patch} (98%) rename patches/server/{0680-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch => 0675-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch} (100%) rename patches/server/{0681-Ensure-valid-vehicle-status.patch => 0676-Ensure-valid-vehicle-status.patch} (91%) rename patches/server/{0682-Prevent-softlocked-end-exit-portal-generation.patch => 0677-Prevent-softlocked-end-exit-portal-generation.patch} (100%) rename patches/server/{0683-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch => 0678-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch} (100%) rename patches/server/{0684-Don-t-log-debug-logging-being-disabled.patch => 0679-Don-t-log-debug-logging-being-disabled.patch} (100%) rename patches/server/{0685-fix-various-menus-with-empty-level-accesses.patch => 0680-fix-various-menus-with-empty-level-accesses.patch} (100%) rename patches/server/{0686-Preserve-overstacked-loot.patch => 0681-Preserve-overstacked-loot.patch} (100%) rename patches/server/{0687-Update-head-rotation-in-missing-places.patch => 0682-Update-head-rotation-in-missing-places.patch} (84%) rename patches/server/{0688-prevent-unintended-light-block-manipulation.patch => 0683-prevent-unintended-light-block-manipulation.patch} (100%) rename patches/server/{0689-Fix-CraftCriteria-defaults-map.patch => 0684-Fix-CraftCriteria-defaults-map.patch} (100%) rename patches/server/{0690-Fix-upstreams-block-state-factories.patch => 0685-Fix-upstreams-block-state-factories.patch} (100%) rename patches/server/{0691-Configurable-feature-seeds.patch => 0686-Configurable-feature-seeds.patch} (96%) rename patches/server/{0692-Add-root-admin-user-detection.patch => 0687-Add-root-admin-user-detection.patch} (100%) rename patches/server/{0693-Always-allow-item-changing-in-Fireball.patch => 0688-Always-allow-item-changing-in-Fireball.patch} (100%) rename patches/server/{0694-don-t-attempt-to-teleport-dead-entities.patch => 0689-don-t-attempt-to-teleport-dead-entities.patch} (91%) rename patches/server/{0695-Prevent-excessive-velocity-through-repeated-crits.patch => 0690-Prevent-excessive-velocity-through-repeated-crits.patch} (94%) rename patches/server/{0696-Remove-client-side-code-using-deprecated-for-removal.patch => 0691-Remove-client-side-code-using-deprecated-for-removal.patch} (100%) rename patches/server/{0697-Fix-removing-recipes-from-RecipeIterator.patch => 0692-Fix-removing-recipes-from-RecipeIterator.patch} (100%) rename patches/server/{0698-Prevent-sending-oversized-item-data-in-equipment-and.patch => 0693-Prevent-sending-oversized-item-data-in-equipment-and.patch} (98%) rename patches/server/{0699-Hide-unnecessary-itemmeta-from-clients.patch => 0694-Hide-unnecessary-itemmeta-from-clients.patch} (97%) rename patches/server/{0700-Fix-Spigot-growth-modifiers.patch => 0695-Fix-Spigot-growth-modifiers.patch} (100%) rename patches/server/{0701-Prevent-ContainerOpenersCounter-openCount-from-going.patch => 0696-Prevent-ContainerOpenersCounter-openCount-from-going.patch} (100%) rename patches/server/{0702-Add-PlayerItemFrameChangeEvent.patch => 0697-Add-PlayerItemFrameChangeEvent.patch} (100%) rename patches/server/{0703-Optimize-HashMapPalette.patch => 0698-Optimize-HashMapPalette.patch} (100%) rename patches/server/{0704-Allow-delegation-to-vanilla-chunk-gen.patch => 0699-Allow-delegation-to-vanilla-chunk-gen.patch} (98%) rename patches/server/{0707-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch => 0700-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch} (100%) rename patches/server/{0708-Add-more-Campfire-API.patch => 0701-Add-more-Campfire-API.patch} (100%) rename patches/server/{0709-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch => 0702-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch} (88%) rename patches/server/{0711-Forward-CraftEntity-in-teleport-command.patch => 0703-Forward-CraftEntity-in-teleport-command.patch} (89%) rename patches/server/{0712-Improve-scoreboard-entries.patch => 0704-Improve-scoreboard-entries.patch} (100%) rename patches/server/{0713-Entity-powdered-snow-API.patch => 0705-Entity-powdered-snow-API.patch} (100%) rename patches/server/{0714-Add-API-for-item-entity-health.patch => 0706-Add-API-for-item-entity-health.patch} (100%) rename patches/server/{0716-Configurable-max-block-light-for-monster-spawning.patch => 0707-Configurable-max-block-light-for-monster-spawning.patch} (100%) rename patches/server/{0717-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch => 0708-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch} (100%) rename patches/server/{0718-Load-effect-amplifiers-greater-than-127-correctly.patch => 0709-Load-effect-amplifiers-greater-than-127-correctly.patch} (100%) rename patches/server/{0719-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch => 0710-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch} (100%) rename patches/server/{0720-Fix-bees-aging-inside-hives.patch => 0711-Fix-bees-aging-inside-hives.patch} (100%) rename patches/server/{0721-Bucketable-API.patch => 0712-Bucketable-API.patch} (100%) rename patches/server/{0722-Validate-usernames.patch => 0713-Validate-usernames.patch} (93%) rename patches/server/{0723-Make-water-animal-spawn-height-configurable.patch => 0714-Make-water-animal-spawn-height-configurable.patch} (100%) rename patches/server/{0724-Expose-vanilla-BiomeProvider-from-WorldInfo.patch => 0715-Expose-vanilla-BiomeProvider-from-WorldInfo.patch} (96%) rename patches/server/{0725-Add-config-option-for-worlds-affected-by-time-cmd.patch => 0716-Add-config-option-for-worlds-affected-by-time-cmd.patch} (100%) rename patches/server/{0726-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch => 0717-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch} (100%) rename patches/server/{0727-Multiple-Entries-with-Scoreboards.patch => 0718-Multiple-Entries-with-Scoreboards.patch} (100%) rename patches/server/{0728-Reset-placed-block-on-exception.patch => 0719-Reset-placed-block-on-exception.patch} (100%) rename patches/server/{0729-Add-configurable-height-for-slime-spawn.patch => 0720-Add-configurable-height-for-slime-spawn.patch} (100%) rename patches/server/{0730-Fix-xp-reward-for-baby-zombies.patch => 0721-Fix-xp-reward-for-baby-zombies.patch} (100%) rename patches/server/{0731-Multi-Block-Change-API-Implementation.patch => 0722-Multi-Block-Change-API-Implementation.patch} (100%) rename patches/server/{0732-Fix-NotePlayEvent.patch => 0723-Fix-NotePlayEvent.patch} (100%) rename patches/server/{0733-Freeze-Tick-Lock-API.patch => 0724-Freeze-Tick-Lock-API.patch} (92%) rename patches/server/{0734-More-PotionEffectType-API.patch => 0725-More-PotionEffectType-API.patch} (100%) rename patches/server/{0735-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch => 0726-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch} (100%) rename patches/server/{0736-API-for-creating-command-sender-which-forwards-feedb.patch => 0727-API-for-creating-command-sender-which-forwards-feedb.patch} (98%) rename patches/server/{0737-Add-missing-structure-set-seed-configs.patch => 0728-Add-missing-structure-set-seed-configs.patch} (99%) rename patches/server/{0738-Implement-regenerateChunk.patch => 0729-Implement-regenerateChunk.patch} (98%) rename patches/server/{0739-Fix-cancelled-powdered-snow-bucket-placement.patch => 0730-Fix-cancelled-powdered-snow-bucket-placement.patch} (100%) rename patches/server/{0740-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch => 0731-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch} (92%) rename patches/server/{0741-Add-GameEvent-tags.patch => 0732-Add-GameEvent-tags.patch} (97%) rename patches/server/{0742-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch => 0733-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch} (83%) rename patches/server/{0743-Furnace-RecipesUsed-API.patch => 0734-Furnace-RecipesUsed-API.patch} (100%) rename patches/server/{0744-Configurable-sculk-sensor-listener-range.patch => 0735-Configurable-sculk-sensor-listener-range.patch} (100%) rename patches/server/{0745-Add-missing-block-data-mins-and-maxes.patch => 0736-Add-missing-block-data-mins-and-maxes.patch} (100%) rename patches/server/{0746-Option-to-have-default-CustomSpawners-in-custom-worl.patch => 0737-Option-to-have-default-CustomSpawners-in-custom-worl.patch} (96%) rename patches/server/{0747-Put-world-into-worldlist-before-initing-the-world.patch => 0738-Put-world-into-worldlist-before-initing-the-world.patch} (92%) rename patches/server/{0748-Fix-Entity-Position-Desync.patch => 0739-Fix-Entity-Position-Desync.patch} (100%) rename patches/server/{0749-Custom-Potion-Mixes.patch => 0740-Custom-Potion-Mixes.patch} (97%) rename patches/server/{0750-Force-close-world-loading-screen.patch => 0741-Force-close-world-loading-screen.patch} (95%) rename patches/server/{0751-Fix-falling-block-spawn-methods.patch => 0742-Fix-falling-block-spawn-methods.patch} (97%) rename patches/server/{0752-Expose-furnace-minecart-push-values.patch => 0743-Expose-furnace-minecart-push-values.patch} (100%) rename patches/server/{0753-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch => 0744-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch} (100%) rename patches/server/{0754-More-Projectile-API.patch => 0745-More-Projectile-API.patch} (99%) rename patches/server/{0755-Fix-swamp-hut-cat-generation-deadlock.patch => 0746-Fix-swamp-hut-cat-generation-deadlock.patch} (100%) rename patches/server/{0756-Don-t-allow-vehicle-movement-from-players-while-tele.patch => 0747-Don-t-allow-vehicle-movement-from-players-while-tele.patch} (94%) rename patches/server/{0757-Implement-getComputedBiome-API.patch => 0748-Implement-getComputedBiome-API.patch} (100%) rename patches/server/{0758-Make-some-itemstacks-nonnull.patch => 0749-Make-some-itemstacks-nonnull.patch} (100%) rename patches/server/{0759-Implement-enchantWithLevels-API.patch => 0750-Implement-enchantWithLevels-API.patch} (100%) rename patches/server/{0760-Fix-saving-in-unloadWorld.patch => 0751-Fix-saving-in-unloadWorld.patch} (90%) rename patches/server/{0761-Buffer-OOB-setBlock-calls.patch => 0752-Buffer-OOB-setBlock-calls.patch} (100%) rename patches/server/{0762-Add-TameableDeathMessageEvent.patch => 0753-Add-TameableDeathMessageEvent.patch} (100%) rename patches/server/{0763-Fix-new-block-data-for-EntityChangeBlockEvent.patch => 0754-Fix-new-block-data-for-EntityChangeBlockEvent.patch} (98%) rename patches/server/{0764-fix-player-loottables-running-when-mob-loot-gamerule.patch => 0755-fix-player-loottables-running-when-mob-loot-gamerule.patch} (93%) rename patches/server/{0765-Ensure-entity-passenger-world-matches-ridden-entity.patch => 0756-Ensure-entity-passenger-world-matches-ridden-entity.patch} (85%) rename patches/server/{0766-cache-resource-keys.patch => 0757-cache-resource-keys.patch} (100%) rename patches/server/{0767-Allow-changing-the-EnderDragon-podium.patch => 0758-Allow-changing-the-EnderDragon-podium.patch} (100%) rename patches/server/{0768-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch => 0759-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch} (100%) rename patches/server/{0769-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch => 0760-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch} (100%) rename patches/server/{0770-Prevent-tile-entity-copies-loading-chunks.patch => 0761-Prevent-tile-entity-copies-loading-chunks.patch} (90%) rename patches/server/{0771-Use-username-instead-of-display-name-in-PlayerList-g.patch => 0762-Use-username-instead-of-display-name-in-PlayerList-g.patch} (92%) rename patches/server/{0772-Pass-ServerLevel-for-gamerule-callbacks.patch => 0763-Pass-ServerLevel-for-gamerule-callbacks.patch} (98%) rename patches/server/{0773-Expand-PlayerItemDamageEvent.patch => 0764-Expand-PlayerItemDamageEvent.patch} (100%) rename patches/server/{0774-WorldCreator-keepSpawnLoaded.patch => 0765-WorldCreator-keepSpawnLoaded.patch} (94%) rename patches/server/{0775-Fix-CME-in-CraftPersistentDataTypeRegistry.patch => 0766-Fix-CME-in-CraftPersistentDataTypeRegistry.patch} (100%) rename patches/server/{0776-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch => 0767-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch} (97%) rename patches/server/{0777-Add-EntityDyeEvent-and-CollarColorable-interface.patch => 0768-Add-EntityDyeEvent-and-CollarColorable-interface.patch} (100%) rename patches/server/{0778-Fire-CauldronLevelChange-on-initial-fill.patch => 0769-Fire-CauldronLevelChange-on-initial-fill.patch} (100%) rename patches/server/{0779-fix-powder-snow-cauldrons-not-turning-to-water.patch => 0770-fix-powder-snow-cauldrons-not-turning-to-water.patch} (100%) rename patches/server/{0780-Add-PlayerStopUsingItemEvent.patch => 0771-Add-PlayerStopUsingItemEvent.patch} (91%) rename patches/server/{0781-Don-t-tick-markers.patch => 0772-Don-t-tick-markers.patch} (95%) rename patches/server/{0782-Expand-FallingBlock-API.patch => 0773-Expand-FallingBlock-API.patch} (98%) rename patches/server/{0783-Do-not-accept-invalid-client-settings.patch => 0774-Do-not-accept-invalid-client-settings.patch} (90%) rename patches/server/{0784-Add-support-for-Proxy-Protocol.patch => 0775-Add-support-for-Proxy-Protocol.patch} (74%) rename patches/server/{0785-Fix-OfflinePlayer-getBedSpawnLocation.patch => 0776-Fix-OfflinePlayer-getBedSpawnLocation.patch} (100%) rename patches/server/{0786-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch => 0777-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch} (100%) rename patches/server/{0787-Sanitize-sent-BlockEntity-NBT.patch => 0778-Sanitize-sent-BlockEntity-NBT.patch} (100%) rename patches/server/{0788-Disable-component-selector-resolving-in-books-by-def.patch => 0779-Disable-component-selector-resolving-in-books-by-def.patch} (100%) rename patches/server/{0789-Prevent-entity-loading-causing-async-lookups.patch => 0780-Prevent-entity-loading-causing-async-lookups.patch} (97%) rename patches/server/{0790-Throw-exception-on-world-create-while-being-ticked.patch => 0781-Throw-exception-on-world-create-while-being-ticked.patch} (91%) rename patches/server/{0792-Dont-resent-entity-on-art-update.patch => 0782-Dont-resent-entity-on-art-update.patch} (100%) rename patches/server/{0793-Add-WardenAngerChangeEvent.patch => 0783-Add-WardenAngerChangeEvent.patch} (100%) rename patches/server/{0794-Add-option-for-strict-advancement-dimension-checks.patch => 0784-Add-option-for-strict-advancement-dimension-checks.patch} (96%) rename patches/server/{0795-Add-missing-important-BlockStateListPopulator-method.patch => 0785-Add-missing-important-BlockStateListPopulator-method.patch} (100%) rename patches/server/{0796-Nameable-Banner-API.patch => 0786-Nameable-Banner-API.patch} (100%) rename patches/server/{0797-Don-t-broadcast-messages-to-command-blocks.patch => 0787-Don-t-broadcast-messages-to-command-blocks.patch} (95%) rename patches/server/{0798-Prevent-empty-items-from-being-added-to-world.patch => 0788-Prevent-empty-items-from-being-added-to-world.patch} (89%) rename patches/server/{0799-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch => 0789-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch} (100%) rename patches/server/{0800-Add-Player-getFishHook.patch => 0790-Add-Player-getFishHook.patch} (100%) rename patches/server/{0801-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch => 0791-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch} (100%) rename patches/server/{0802-Add-various-missing-EntityDropItemEvent-calls.patch => 0792-Add-various-missing-EntityDropItemEvent-calls.patch} (96%) rename patches/server/{0803-Fix-Bee-flower-NPE.patch => 0793-Fix-Bee-flower-NPE.patch} (100%) rename patches/server/{0804-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch => 0794-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch} (87%) rename patches/server/{0805-More-Teleport-API.patch => 0795-More-Teleport-API.patch} (98%) rename patches/server/{0806-Add-EntityPortalReadyEvent.patch => 0796-Add-EntityPortalReadyEvent.patch} (88%) rename patches/server/{0807-Don-t-use-level-random-in-entity-constructors.patch => 0797-Don-t-use-level-random-in-entity-constructors.patch} (96%) rename patches/server/{0808-Send-block-entities-after-destroy-prediction.patch => 0798-Send-block-entities-after-destroy-prediction.patch} (95%) rename patches/server/{0809-Warn-on-plugins-accessing-faraway-chunks.patch => 0799-Warn-on-plugins-accessing-faraway-chunks.patch} (95%) rename patches/server/{0810-Custom-Chat-Completion-Suggestions-API.patch => 0800-Custom-Chat-Completion-Suggestions-API.patch} (100%) rename patches/server/{0811-Add-and-fix-missing-BlockFadeEvents.patch => 0801-Add-and-fix-missing-BlockFadeEvents.patch} (100%) rename patches/server/{0812-Collision-API.patch => 0802-Collision-API.patch} (100%) rename patches/server/{0813-Fix-suggest-command-message-for-brigadier-syntax-exc.patch => 0803-Fix-suggest-command-message-for-brigadier-syntax-exc.patch} (92%) rename patches/server/{0814-Block-Ticking-API.patch => 0804-Block-Ticking-API.patch} (100%) rename patches/server/{0815-Add-Velocity-IP-Forwarding-Support.patch => 0805-Add-Velocity-IP-Forwarding-Support.patch} (97%) rename patches/server/{0816-Add-NamespacedKey-biome-methods.patch => 0806-Add-NamespacedKey-biome-methods.patch} (100%) rename patches/server/{0817-Fix-plugin-loggers-on-server-shutdown.patch => 0807-Fix-plugin-loggers-on-server-shutdown.patch} (96%) rename patches/server/{0818-Stop-large-look-changes-from-crashing-the-server.patch => 0808-Stop-large-look-changes-from-crashing-the-server.patch} (93%) rename patches/server/{0819-Fire-EntityChangeBlockEvent-in-more-places.patch => 0809-Fire-EntityChangeBlockEvent-in-more-places.patch} (100%) rename patches/server/{0820-Missing-eating-regain-reason.patch => 0810-Missing-eating-regain-reason.patch} (100%) rename patches/server/{0821-Missing-effect-cause.patch => 0811-Missing-effect-cause.patch} (100%) rename patches/server/{0822-Added-byte-array-serialization-deserialization-for-P.patch => 0812-Added-byte-array-serialization-deserialization-for-P.patch} (100%) rename patches/server/{0823-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch => 0813-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch} (100%) rename patches/server/{0824-Call-BlockPhysicsEvent-more-often.patch => 0814-Call-BlockPhysicsEvent-more-often.patch} (100%) rename patches/server/{0825-Configurable-chat-thread-limit.patch => 0815-Configurable-chat-thread-limit.patch} (100%) rename patches/server/{0826-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch => 0816-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch} (100%) rename patches/server/{0827-fix-Jigsaw-block-kicking-user.patch => 0817-fix-Jigsaw-block-kicking-user.patch} (100%) rename patches/server/{0828-use-BlockFormEvent-for-mud-converting-into-clay.patch => 0818-use-BlockFormEvent-for-mud-converting-into-clay.patch} (100%) rename patches/server/{0829-Add-getDrops-to-BlockState.patch => 0819-Add-getDrops-to-BlockState.patch} (100%) rename patches/server/{0830-Fix-a-bunch-of-vanilla-bugs.patch => 0820-Fix-a-bunch-of-vanilla-bugs.patch} (96%) rename patches/server/{0831-Remove-unnecessary-onTrackingStart-during-navigation.patch => 0821-Remove-unnecessary-onTrackingStart-during-navigation.patch} (88%) rename patches/server/{0832-Fix-custom-piglin-loved-items.patch => 0822-Fix-custom-piglin-loved-items.patch} (100%) rename patches/server/{0833-EntityPickupItemEvent-fixes.patch => 0823-EntityPickupItemEvent-fixes.patch} (100%) rename patches/server/{0834-Correctly-handle-interactions-with-items-on-cooldown.patch => 0824-Correctly-handle-interactions-with-items-on-cooldown.patch} (95%) rename patches/server/{0835-Add-PlayerInventorySlotChangeEvent.patch => 0825-Add-PlayerInventorySlotChangeEvent.patch} (97%) rename patches/server/{0836-Elder-Guardian-appearance-API.patch => 0826-Elder-Guardian-appearance-API.patch} (100%) rename patches/server/{0837-Allow-changing-bed-s-occupied-property.patch => 0827-Allow-changing-bed-s-occupied-property.patch} (100%) rename patches/server/{0838-Add-entity-knockback-API.patch => 0828-Add-entity-knockback-API.patch} (100%) rename patches/server/{0839-Detect-headless-JREs.patch => 0829-Detect-headless-JREs.patch} (100%) rename patches/server/{0840-fix-entity-vehicle-collision-event-not-called.patch => 0830-fix-entity-vehicle-collision-event-not-called.patch} (100%) rename patches/server/{0842-Add-EntityToggleSitEvent.patch => 0831-Add-EntityToggleSitEvent.patch} (100%) rename patches/server/{0843-Add-fire-tick-delay-option.patch => 0832-Add-fire-tick-delay-option.patch} (100%) rename patches/server/{0844-Add-Moving-Piston-API.patch => 0833-Add-Moving-Piston-API.patch} (100%) rename patches/server/{0845-Ignore-impossible-spawn-tick.patch => 0834-Ignore-impossible-spawn-tick.patch} (90%) rename patches/server/{0846-Track-projectile-source-for-fireworks-from-dispenser.patch => 0835-Track-projectile-source-for-fireworks-from-dispenser.patch} (100%) rename patches/server/{0847-Fix-EntityArgument-suggestion-permissions-to-align-w.patch => 0836-Fix-EntityArgument-suggestion-permissions-to-align-w.patch} (84%) rename patches/server/{0848-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch => 0837-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch} (92%) rename patches/server/{0849-Add-PrePlayerAttackEntityEvent.patch => 0838-Add-PrePlayerAttackEntityEvent.patch} (93%) rename patches/server/{0850-ensure-reset-EnderDragon-boss-event-name.patch => 0839-ensure-reset-EnderDragon-boss-event-name.patch} (100%) rename patches/server/{0851-fix-MC-252817-green-map-markers-do-not-disappear.patch => 0840-fix-MC-252817-green-map-markers-do-not-disappear.patch} (100%) rename patches/server/{0852-Add-Player-Warden-Warning-API.patch => 0841-Add-Player-Warden-Warning-API.patch} (100%) rename patches/server/{0853-More-vanilla-friendly-methods-to-update-trades.patch => 0842-More-vanilla-friendly-methods-to-update-trades.patch} (97%) rename patches/server/{0854-Add-paper-dumplisteners-command.patch => 0843-Add-paper-dumplisteners-command.patch} (100%) rename patches/server/{0855-check-global-player-list-where-appropriate.patch => 0844-check-global-player-list-where-appropriate.patch} (92%) rename patches/server/{0856-Fix-async-entity-add-due-to-fungus-trees.patch => 0845-Fix-async-entity-add-due-to-fungus-trees.patch} (100%) rename patches/server/{0857-ItemStack-damage-API.patch => 0846-ItemStack-damage-API.patch} (100%) rename patches/server/{0858-Friction-API.patch => 0847-Friction-API.patch} (100%) rename patches/server/{0859-Ability-to-control-player-s-insomnia-and-phantoms.patch => 0848-Ability-to-control-player-s-insomnia-and-phantoms.patch} (100%) rename patches/server/{0860-Fix-player-kick-on-shutdown.patch => 0849-Fix-player-kick-on-shutdown.patch} (81%) rename patches/server/{0861-Sync-offhand-slot-in-menus.patch => 0850-Sync-offhand-slot-in-menus.patch} (97%) rename patches/server/{0862-Player-Entity-Tracking-Events.patch => 0851-Player-Entity-Tracking-Events.patch} (90%) rename patches/server/{0863-Limit-pet-look-distance.patch => 0852-Limit-pet-look-distance.patch} (100%) rename patches/server/{0865-Fixes-and-additions-to-the-SpawnReason-API.patch => 0853-Fixes-and-additions-to-the-SpawnReason-API.patch} (97%) rename patches/server/{0866-fix-Instruments.patch => 0854-fix-Instruments.patch} (100%) rename patches/server/{0867-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch => 0855-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch} (91%) rename patches/server/{0868-Fix-inconsistencies-in-dispense-events-regarding-sta.patch => 0856-Fix-inconsistencies-in-dispense-events-regarding-sta.patch} (100%) rename patches/server/{0869-Add-BlockLockCheckEvent.patch => 0857-Add-BlockLockCheckEvent.patch} (100%) rename patches/server/{0870-Add-Sneaking-API-for-Entities.patch => 0858-Add-Sneaking-API-for-Entities.patch} (91%) rename patches/server/{0871-Improve-logging-and-errors.patch => 0859-Improve-logging-and-errors.patch} (97%) rename patches/server/{0872-Improve-PortalEvents.patch => 0860-Improve-PortalEvents.patch} (89%) rename patches/server/{0873-Add-config-option-for-spider-worldborder-climbing.patch => 0861-Add-config-option-for-spider-worldborder-climbing.patch} (100%) rename patches/server/{0874-Add-missing-SpigotConfig-logCommands-check.patch => 0862-Add-missing-SpigotConfig-logCommands-check.patch} (88%) rename patches/server/{0875-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch => 0863-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch} (100%) rename patches/server/{0876-Flying-Fall-Damage.patch => 0864-Flying-Fall-Damage.patch} (96%) rename patches/server/{0877-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch => 0865-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch} (99%) rename patches/server/{0878-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch => 0866-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch} (86%) rename patches/server/{0879-config-for-disabling-entity-tag-tags.patch => 0867-config-for-disabling-entity-tag-tags.patch} (94%) rename patches/server/{0880-Use-single-player-info-update-packet-on-join.patch => 0868-Use-single-player-info-update-packet-on-join.patch} (92%) rename patches/server/{0881-Correctly-shrink-items-during-EntityResurrectEvent.patch => 0869-Correctly-shrink-items-during-EntityResurrectEvent.patch} (95%) rename patches/server/{0882-Win-Screen-API.patch => 0870-Win-Screen-API.patch} (100%) rename patches/server/{0883-Remove-CraftItemStack-setAmount-null-assignment.patch => 0871-Remove-CraftItemStack-setAmount-null-assignment.patch} (100%) rename patches/server/{0884-Fix-force-opening-enchantment-tables.patch => 0872-Fix-force-opening-enchantment-tables.patch} (100%) rename patches/server/{0885-Add-Entity-Body-Yaw-API.patch => 0873-Add-Entity-Body-Yaw-API.patch} (93%) rename patches/server/{0886-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch => 0874-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch} (100%) rename patches/server/{0887-Update-the-flag-when-a-captured-block-state-is-outda.patch => 0875-Update-the-flag-when-a-captured-block-state-is-outda.patch} (83%) rename patches/server/{0888-Add-EntityFertilizeEggEvent.patch => 0876-Add-EntityFertilizeEggEvent.patch} (97%) rename patches/server/{0889-Fix-HumanEntity-drop-not-updating-the-client-inv.patch => 0877-Fix-HumanEntity-drop-not-updating-the-client-inv.patch} (100%) rename patches/server/{0890-Add-CompostItemEvent-and-EntityCompostItemEvent.patch => 0878-Add-CompostItemEvent-and-EntityCompostItemEvent.patch} (100%) rename patches/server/{0891-Correctly-handle-ArmorStand-invisibility.patch => 0879-Correctly-handle-ArmorStand-invisibility.patch} (100%) rename patches/server/{0892-Fix-advancement-triggers-for-entity-damage.patch => 0880-Fix-advancement-triggers-for-entity-damage.patch} (97%) rename patches/server/{0893-Fix-text-display-error-on-spawn.patch => 0881-Fix-text-display-error-on-spawn.patch} (100%) rename patches/server/{0894-Fix-inventories-returning-null-Locations.patch => 0882-Fix-inventories-returning-null-Locations.patch} (100%) rename patches/server/{0895-Add-Shearable-API.patch => 0883-Add-Shearable-API.patch} (100%) rename patches/server/{0896-Fix-SpawnEggMeta-get-setSpawnedType.patch => 0884-Fix-SpawnEggMeta-get-setSpawnedType.patch} (100%) rename patches/server/{0898-Fix-beehives-generating-from-using-bonemeal.patch => 0885-Fix-beehives-generating-from-using-bonemeal.patch} (96%) rename patches/server/{0899-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch => 0886-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch} (100%) rename patches/server/{0900-Treat-sequence-violations-like-they-should-be.patch => 0887-Treat-sequence-violations-like-they-should-be.patch} (86%) rename patches/server/{0901-remove-duplicate-animate-packet-for-records.patch => 0888-remove-duplicate-animate-packet-for-records.patch} (100%) rename patches/server/{0902-Prevent-causing-expired-keys-from-impacting-new-join.patch => 0889-Prevent-causing-expired-keys-from-impacting-new-join.patch} (95%) rename patches/server/{0903-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch => 0890-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch} (86%) rename patches/server/{0904-Use-array-for-gamerule-storage.patch => 0891-Use-array-for-gamerule-storage.patch} (100%) rename patches/server/{0905-Fix-a-couple-of-upstream-bed-issues.patch => 0892-Fix-a-couple-of-upstream-bed-issues.patch} (100%) rename patches/server/{0906-Fix-demo-flag-not-enabling-demo-mode.patch => 0893-Fix-demo-flag-not-enabling-demo-mode.patch} (100%) rename patches/server/{0907-Add-Mob-Experience-reward-API.patch => 0894-Add-Mob-Experience-reward-API.patch} (100%) rename patches/server/{0908-Break-redstone-on-top-of-trap-doors-early.patch => 0895-Break-redstone-on-top-of-trap-doors-early.patch} (100%) rename patches/server/{0909-Fix-DamageCause-for-Falling-Blocks.patch => 0896-Fix-DamageCause-for-Falling-Blocks.patch} (92%) rename patches/server/{0910-Avoid-Lazy-Initialization-for-Enum-Fields.patch => 0897-Avoid-Lazy-Initialization-for-Enum-Fields.patch} (100%) rename patches/server/{0911-More-accurate-isInOpenWater-impl.patch => 0898-More-accurate-isInOpenWater-impl.patch} (100%) rename patches/server/{0912-Fix-concurrenct-access-to-lookups-field-in-RegistryO.patch => 0899-Fix-concurrenct-access-to-lookups-field-in-RegistryO.patch} (100%) rename patches/server/{0914-Expand-PlayerItemMendEvent.patch => 0900-Expand-PlayerItemMendEvent.patch} (96%) rename patches/server/{0915-Refresh-ProjectileSource-for-projectiles.patch => 0901-Refresh-ProjectileSource-for-projectiles.patch} (95%) rename patches/server/{0916-Add-transient-modifier-API.patch => 0902-Add-transient-modifier-API.patch} (100%) rename patches/server/{0917-Fix-block-place-logic.patch => 0903-Fix-block-place-logic.patch} (94%) rename patches/server/{0918-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch => 0904-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch} (94%) rename patches/server/{0919-Call-BlockGrowEvent-for-missing-blocks.patch => 0905-Call-BlockGrowEvent-for-missing-blocks.patch} (100%) rename patches/server/{0920-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch => 0906-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch} (94%) rename patches/server/{0921-fix-MapLike-spam-for-missing-key-selector.patch => 0907-fix-MapLike-spam-for-missing-key-selector.patch} (100%) rename patches/server/{0922-Fix-sniffer-removeExploredLocation.patch => 0908-Fix-sniffer-removeExploredLocation.patch} (100%) rename patches/server/{0923-Add-method-to-remove-all-active-potion-effects.patch => 0909-Add-method-to-remove-all-active-potion-effects.patch} (100%) rename patches/server/{0924-Temp-Pre-init-PlayerChunkLoaderData-in-order-to-prep.patch => 0910-Temp-Pre-init-PlayerChunkLoaderData-in-order-to-prep.patch} (100%) rename patches/server/{0925-Fix-incorrect-crafting-result-amount-for-fireworks.patch => 0911-Fix-incorrect-crafting-result-amount-for-fireworks.patch} (100%) rename patches/server/{0926-Properly-cancel-usable-items.patch => 0912-Properly-cancel-usable-items.patch} (91%) rename patches/server/{0927-Add-event-for-player-editing-sign.patch => 0913-Add-event-for-player-editing-sign.patch} (98%) delete mode 100644 patches/server/0913-Optimise-recalcBlockCounts-for-empty-sections.patch rename patches/server/{0928-Only-tick-item-frames-if-players-can-see-it.patch => 0914-Only-tick-item-frames-if-players-can-see-it.patch} (100%) rename patches/server/{0929-Fix-cmd-permission-levels-for-command-blocks.patch => 0915-Fix-cmd-permission-levels-for-command-blocks.patch} (97%) rename patches/server/{0930-Add-option-to-disable-block-updates.patch => 0916-Add-option-to-disable-block-updates.patch} (96%) rename patches/server/{0931-Call-missing-BlockDispenseEvent.patch => 0917-Call-missing-BlockDispenseEvent.patch} (98%) rename patches/server/{0932-Don-t-load-chunks-for-supporting-block-checks.patch => 0918-Don-t-load-chunks-for-supporting-block-checks.patch} (84%) rename patches/server/{0933-Optimize-player-lookups-for-beacons.patch => 0919-Optimize-player-lookups-for-beacons.patch} (100%) rename patches/server/{0934-Add-Sign-getInteractableSideFor.patch => 0920-Add-Sign-getInteractableSideFor.patch} (100%) rename patches/server/{0935-Array-backed-synched-entity-data.patch => 0921-Array-backed-synched-entity-data.patch} (96%) rename patches/server/{0936-fix-item-meta-for-tadpole-buckets.patch => 0922-fix-item-meta-for-tadpole-buckets.patch} (100%) rename patches/server/{0937-Fix-BanList-API.patch => 0923-Fix-BanList-API.patch} (100%) rename patches/server/{0938-Determine-lava-and-water-fluid-explosion-resistance-.patch => 0924-Determine-lava-and-water-fluid-explosion-resistance-.patch} (100%) rename patches/server/{0939-Fix-possible-NPE-on-painting-creation.patch => 0925-Fix-possible-NPE-on-painting-creation.patch} (100%) rename patches/server/{0940-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch => 0926-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch} (100%) rename patches/server/{0941-ExperienceOrb-should-call-EntitySpawnEvent.patch => 0927-ExperienceOrb-should-call-EntitySpawnEvent.patch} (93%) rename patches/server/{0942-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch => 0928-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch} (100%) rename patches/server/{0943-Add-whitelist-events.patch => 0929-Add-whitelist-events.patch} (100%) rename patches/server/{0944-Implement-PlayerFailMoveEvent.patch => 0930-Implement-PlayerFailMoveEvent.patch} (72%) rename patches/server/{0945-Folia-scheduler-and-owned-region-API.patch => 0931-Folia-scheduler-and-owned-region-API.patch} (98%) rename patches/server/{0946-Only-erase-allay-memory-on-non-item-targets.patch => 0932-Only-erase-allay-memory-on-non-item-targets.patch} (100%) rename patches/server/{0947-API-for-updating-recipes-on-clients.patch => 0933-API-for-updating-recipes-on-clients.patch} (95%) rename patches/server/{0948-Fix-rotation-when-spawning-display-entities.patch => 0934-Fix-rotation-when-spawning-display-entities.patch} (100%) rename patches/server/{0949-Only-capture-actual-tree-growth.patch => 0935-Only-capture-actual-tree-growth.patch} (92%) rename patches/server/{0950-Use-correct-source-for-mushroom-block-spread-event.patch => 0936-Use-correct-source-for-mushroom-block-spread-event.patch} (100%) rename patches/server/{0951-Respect-randomizeData-on-more-entities-when-spawning.patch => 0937-Respect-randomizeData-on-more-entities-when-spawning.patch} (100%) rename patches/server/{0952-Use-correct-seed-on-api-world-load.patch => 0938-Use-correct-seed-on-api-world-load.patch} (91%) rename patches/server/{0953-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch => 0939-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch} (100%) rename patches/server/{0954-Cache-map-ids-on-item-frames.patch => 0940-Cache-map-ids-on-item-frames.patch} (100%) rename patches/server/{0955-Fix-custom-statistic-criteria-creation.patch => 0941-Fix-custom-statistic-criteria-creation.patch} (100%) rename patches/server/{0956-Bandaid-fix-for-Effect.patch => 0942-Bandaid-fix-for-Effect.patch} (98%) rename patches/server/{0957-SculkCatalyst-bloom-API.patch => 0943-SculkCatalyst-bloom-API.patch} (100%) rename patches/server/{0958-API-for-an-entity-s-scoreboard-name.patch => 0944-API-for-an-entity-s-scoreboard-name.patch} (86%) rename patches/server/{0959-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch => 0945-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch} (96%) rename patches/server/{0960-Deprecate-and-replace-methods-with-old-StructureType.patch => 0946-Deprecate-and-replace-methods-with-old-StructureType.patch} (96%) rename patches/server/{0961-Don-t-tab-complete-namespaced-commands-if-send-names.patch => 0947-Don-t-tab-complete-namespaced-commands-if-send-names.patch} (92%) rename patches/server/{0962-Properly-handle-BlockBreakEvent-isDropItems.patch => 0948-Properly-handle-BlockBreakEvent-isDropItems.patch} (98%) rename patches/server/{0963-Fire-entity-death-event-for-ender-dragon.patch => 0949-Fire-entity-death-event-for-ender-dragon.patch} (100%) rename patches/server/{0964-Configurable-entity-tracking-range-by-Y-coordinate.patch => 0950-Configurable-entity-tracking-range-by-Y-coordinate.patch} (94%) rename patches/server/{0965-Add-Listing-API-for-Player.patch => 0951-Add-Listing-API-for-Player.patch} (99%) rename patches/server/{0966-Configurable-Region-Compression-Format.patch => 0952-Configurable-Region-Compression-Format.patch} (73%) rename patches/server/{0967-Add-BlockFace-to-BlockDamageEvent.patch => 0953-Add-BlockFace-to-BlockDamageEvent.patch} (92%) rename patches/server/{0968-Fix-NPE-on-Boat-getStatus.patch => 0954-Fix-NPE-on-Boat-getStatus.patch} (100%) rename patches/server/{0969-Expand-Pose-API.patch => 0955-Expand-Pose-API.patch} (91%) rename patches/server/{0970-More-DragonBattle-API.patch => 0956-More-DragonBattle-API.patch} (100%) rename patches/server/{0971-Deep-clone-unhandled-nbt-tags.patch => 0957-Deep-clone-unhandled-nbt-tags.patch} (100%) rename patches/server/{0972-Add-PlayerPickItemEvent.patch => 0958-Add-PlayerPickItemEvent.patch} (94%) rename patches/server/{0974-Allow-trident-custom-damage.patch => 0959-Allow-trident-custom-damage.patch} (100%) rename patches/server/{0975-Expose-hand-in-BlockCanBuildEvent.patch => 0960-Expose-hand-in-BlockCanBuildEvent.patch} (100%) rename patches/server/{0976-Optimize-nearest-structure-border-iteration.patch => 0961-Optimize-nearest-structure-border-iteration.patch} (95%) rename patches/server/{0977-Implement-OfflinePlayer-isConnected.patch => 0962-Implement-OfflinePlayer-isConnected.patch} (100%) rename patches/server/{0978-Fix-inventory-desync.patch => 0963-Fix-inventory-desync.patch} (100%) rename patches/server/{0979-Add-titleOverride-to-InventoryOpenEvent.patch => 0964-Add-titleOverride-to-InventoryOpenEvent.patch} (98%) rename patches/server/{0980-Configure-sniffer-egg-hatch-time.patch => 0965-Configure-sniffer-egg-hatch-time.patch} (100%) rename patches/server/{0981-Do-crystal-portal-proximity-check-before-entity-look.patch => 0966-Do-crystal-portal-proximity-check-before-entity-look.patch} (100%) rename patches/server/{0982-Skip-POI-finding-if-stuck-in-vehicle.patch => 0967-Skip-POI-finding-if-stuck-in-vehicle.patch} (100%) rename patches/server/{0983-Add-slot-sanity-checks-in-container-clicks.patch => 0968-Add-slot-sanity-checks-in-container-clicks.patch} (94%) rename patches/server/{0984-Call-BlockRedstoneEvents-for-lecterns.patch => 0969-Call-BlockRedstoneEvents-for-lecterns.patch} (100%) rename patches/server/{0985-Allow-proper-checking-of-empty-item-stacks.patch => 0970-Allow-proper-checking-of-empty-item-stacks.patch} (100%) rename patches/server/{0986-Fix-silent-equipment-change-for-mobs.patch => 0971-Fix-silent-equipment-change-for-mobs.patch} (98%) rename patches/server/{0987-Fix-spigot-s-Forced-Stats.patch => 0972-Fix-spigot-s-Forced-Stats.patch} (100%) rename patches/server/{0988-Add-missing-InventoryHolders-to-inventories.patch => 0973-Add-missing-InventoryHolders-to-inventories.patch} (100%) rename patches/server/{0989-Do-not-read-tile-entities-in-chunks-that-are-positio.patch => 0974-Do-not-read-tile-entities-in-chunks-that-are-positio.patch} (93%) rename patches/server/{0991-Add-missing-logs-for-log-ips-config-option.patch => 0975-Add-missing-logs-for-log-ips-config-option.patch} (100%) rename patches/server/{0992-Remove-Spigot-Bug-Fix-for-MC-109346.patch => 0976-Remove-Spigot-Bug-Fix-for-MC-109346.patch} (100%) rename patches/server/{0993-Fix-SuspiciousStewMeta.patch => 0977-Fix-SuspiciousStewMeta.patch} (100%) rename patches/server/{0996-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch => 0978-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch} (100%) rename patches/server/{0997-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch => 0979-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch} (100%) rename patches/server/{0998-Fix-team-sidebar-objectives-not-being-cleared.patch => 0980-Fix-team-sidebar-objectives-not-being-cleared.patch} (100%) rename patches/server/{1000-Fix-missing-map-initialize-event-call.patch => 0981-Fix-missing-map-initialize-event-call.patch} (93%) rename patches/server/{1001-Update-entity-data-when-attaching-firework-to-entity.patch => 0982-Update-entity-data-when-attaching-firework-to-entity.patch} (100%) rename patches/server/{1002-Use-correct-variable-for-initializing-CraftLootTable.patch => 0983-Use-correct-variable-for-initializing-CraftLootTable.patch} (100%) rename patches/server/{1003-Make-setVelocity-method-of-Fireballs-change-the-trav.patch => 0984-Make-setVelocity-method-of-Fireballs-change-the-trav.patch} (100%) rename patches/server/{1004-Fix-UnsafeValues-loadAdvancement.patch => 0985-Fix-UnsafeValues-loadAdvancement.patch} (100%) rename patches/server/{1005-Add-player-idle-duration-API.patch => 0986-Add-player-idle-duration-API.patch} (100%) rename patches/server/{1006-Don-t-check-if-we-can-see-non-visible-entities.patch => 0987-Don-t-check-if-we-can-see-non-visible-entities.patch} (85%) rename patches/server/{1007-Fix-NPE-in-SculkBloomEvent-world-access.patch => 0988-Fix-NPE-in-SculkBloomEvent-world-access.patch} (100%) rename patches/server/{1008-Allow-null-itemstack-for-Player-sendEquipmentChange.patch => 0989-Allow-null-itemstack-for-Player-sendEquipmentChange.patch} (100%) rename patches/server/{1009-Optimize-VarInts.patch => 0990-Optimize-VarInts.patch} (100%) rename patches/server/{1010-Add-API-to-get-the-collision-shape-of-a-block-before.patch => 0991-Add-API-to-get-the-collision-shape-of-a-block-before.patch} (100%) rename patches/server/{1011-Add-predicate-for-blocks-when-raytracing.patch => 0992-Add-predicate-for-blocks-when-raytracing.patch} (100%) rename patches/server/{1012-Broadcast-take-item-packets-with-collector-as-source.patch => 0993-Broadcast-take-item-packets-with-collector-as-source.patch} (92%) rename patches/server/{1013-Expand-LingeringPotion-API.patch => 0994-Expand-LingeringPotion-API.patch} (100%) rename patches/server/{1014-Add-MaterialTagsTest.patch => 0995-Add-MaterialTagsTest.patch} (100%) rename patches/server/{1015-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch => 0996-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch} (97%) rename patches/server/{1016-Add-hand-to-fish-event-for-all-player-interactions.patch => 0997-Add-hand-to-fish-event-for-all-player-interactions.patch} (100%) rename patches/server/{1017-Fix-several-issues-with-EntityBreedEvent.patch => 0998-Fix-several-issues-with-EntityBreedEvent.patch} (100%) rename patches/server/{1018-Add-UUID-attribute-modifier-API.patch => 0999-Add-UUID-attribute-modifier-API.patch} (100%) rename patches/server/{1019-Fix-missing-event-call-for-entity-teleport-API.patch => 1000-Fix-missing-event-call-for-entity-teleport-API.patch} (93%) rename patches/server/{1020-Lazily-create-LootContext-for-criterions.patch => 1001-Lazily-create-LootContext-for-criterions.patch} (100%) rename patches/server/{1021-Don-t-fire-sync-events-during-worldgen.patch => 1002-Don-t-fire-sync-events-during-worldgen.patch} (96%) rename patches/server/{1022-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch => 1003-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch} (100%) rename patches/server/{1023-Restore-vanilla-entity-drops-behavior.patch => 1004-Restore-vanilla-entity-drops-behavior.patch} (95%) rename patches/server/{1024-Add-Structure-check-API.patch => 1005-Add-Structure-check-API.patch} (91%) rename patches/server/{1025-Dont-resend-blocks-on-interactions.patch => 1006-Dont-resend-blocks-on-interactions.patch} (98%) rename patches/server/{1026-Keep-previous-behavior-for-setResourcePack.patch => 1007-Keep-previous-behavior-for-setResourcePack.patch} (100%) rename patches/server/{1027-properly-read-and-store-sus-effect-duration.patch => 1008-properly-read-and-store-sus-effect-duration.patch} (100%) rename patches/server/{1028-Use-correct-max-stack-size-in-crafter.patch => 1009-Use-correct-max-stack-size-in-crafter.patch} (100%) rename patches/server/{1029-add-more-scoreboard-API.patch => 1010-add-more-scoreboard-API.patch} (100%) rename patches/server/{1030-Improve-Registry.patch => 1011-Improve-Registry.patch} (100%) rename patches/server/{1031-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch => 1012-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch} (96%) rename patches/server/{1032-Add-experience-points-API.patch => 1013-Add-experience-points-API.patch} (97%) rename patches/server/{1033-Add-missing-InventoryType.patch => 1014-Add-missing-InventoryType.patch} (100%) rename patches/server/{1034-Add-drops-to-shear-events.patch => 1015-Add-drops-to-shear-events.patch} (99%) rename patches/server/{1035-Add-PlayerShieldDisableEvent.patch => 1016-Add-PlayerShieldDisableEvent.patch} (95%) rename patches/server/{1036-Add-HiddenPotionEffect-API.patch => 1017-Add-HiddenPotionEffect-API.patch} (100%) rename patches/server/{1037-Correctly-check-if-bucket-dispenses-will-succeed-for.patch => 1018-Correctly-check-if-bucket-dispenses-will-succeed-for.patch} (100%) rename patches/server/{1038-fix-ItemMeta-removing-CustomModelData.patch => 1019-fix-ItemMeta-removing-CustomModelData.patch} (100%) rename patches/server/{1039-Validate-ResourceLocation-in-NBT-reading.patch => 1020-Validate-ResourceLocation-in-NBT-reading.patch} (96%) rename patches/server/{1040-Properly-handle-experience-dropping-on-block-break.patch => 1021-Properly-handle-experience-dropping-on-block-break.patch} (93%) rename patches/server/{1041-Fixup-NamespacedKey-handling.patch => 1022-Fixup-NamespacedKey-handling.patch} (100%) rename patches/server/{1042-Reduce-allocation-of-Vec3D-by-entity-tracker.patch => 1023-Reduce-allocation-of-Vec3D-by-entity-tracker.patch} (95%) rename patches/server/{1043-Write-SavedData-IO-async.patch => 1024-Write-SavedData-IO-async.patch} (96%) rename patches/server/{0668-Execute-chunk-tasks-mid-tick.patch => 1025-Execute-chunk-tasks-mid-tick.patch} (88%) rename patches/server/{0671-Optimise-random-block-ticking.patch => 1026-Optimise-random-block-ticking.patch} (92%) rename patches/server/{0672-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch => 1027-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch} (98%) rename patches/server/{0673-Use-Velocity-compression-and-cipher-natives.patch => 1028-Use-Velocity-compression-and-cipher-natives.patch} (96%) rename patches/server/{0674-Detail-more-information-in-watchdog-dumps.patch => 1029-Detail-more-information-in-watchdog-dumps.patch} (94%) rename patches/server/{0705-Collision-optimisations.patch => 1030-Collision-optimisations.patch} (99%) rename patches/server/{0706-Optimise-collision-checking-in-player-move-packet-ha.patch => 1031-Optimise-collision-checking-in-player-move-packet-ha.patch} (79%) rename patches/server/{0710-Fix-tripwire-state-inconsistency.patch => 1032-Fix-tripwire-state-inconsistency.patch} (89%) rename patches/server/{0715-Fix-entity-type-tags-suggestions-in-selectors.patch => 1033-Fix-entity-type-tags-suggestions-in-selectors.patch} (90%) rename patches/server/{0791-Add-Alternate-Current-redstone-implementation.patch => 1034-Add-Alternate-Current-redstone-implementation.patch} (99%) rename patches/server/{0841-optimize-dirt-and-snow-spreading.patch => 1035-optimize-dirt-and-snow-spreading.patch} (100%) rename patches/server/{0864-Properly-resend-entities.patch => 1036-Properly-resend-entities.patch} (93%) rename patches/server/{0897-Optimize-Hoppers.patch => 1037-Optimize-Hoppers.patch} (99%) rename patches/server/{0973-Improve-performance-of-mass-crafts.patch => 1038-Improve-performance-of-mass-crafts.patch} (100%) rename patches/server/{0990-Actually-optimise-explosions.patch => 1039-Actually-optimise-explosions.patch} (100%) rename patches/server/{0994-Optimise-chunk-tick-iteration.patch => 1040-Optimise-chunk-tick-iteration.patch} (98%) rename patches/server/{0995-Lag-compensation-ticks.patch => 1041-Lag-compensation-ticks.patch} (91%) rename patches/server/{0999-Optimise-nearby-player-retrieval.patch => 1042-Optimise-nearby-player-retrieval.patch} (99%) create mode 100644 scripts/moveback.py diff --git a/patches/server/0669-Oprimise-map-impl-for-tracked-players.patch b/patches/server/0668-Oprimise-map-impl-for-tracked-players.patch similarity index 92% rename from patches/server/0669-Oprimise-map-impl-for-tracked-players.patch rename to patches/server/0668-Oprimise-map-impl-for-tracked-players.patch index e1755f403..a3103e4ff 100644 --- a/patches/server/0669-Oprimise-map-impl-for-tracked-players.patch +++ b/patches/server/0668-Oprimise-map-impl-for-tracked-players.patch @@ -7,7 +7,7 @@ Reference2BooleanOpenHashMap is going to have better lookups than HashMap. diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index bdda124f6cc89b8a7ed198fdf095aee5f3f24ce3..f761d600bb5d995a25ffbbe5469625508de1f8bc 100644 +index 03eb13021c3aa6d7b7254660ebc40908460a4cb6..dd16f13ca44cda3051a38085f6de117a475ce797 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -1297,7 +1297,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider diff --git a/patches/server/0670-Optimise-BlockSoil-nearby-water-lookup.patch b/patches/server/0669-Optimise-BlockSoil-nearby-water-lookup.patch similarity index 100% rename from patches/server/0670-Optimise-BlockSoil-nearby-water-lookup.patch rename to patches/server/0669-Optimise-BlockSoil-nearby-water-lookup.patch diff --git a/patches/server/0675-Distance-manager-tick-timings.patch b/patches/server/0670-Distance-manager-tick-timings.patch similarity index 91% rename from patches/server/0675-Distance-manager-tick-timings.patch rename to patches/server/0670-Distance-manager-tick-timings.patch index f946d9259..451525be1 100644 --- a/patches/server/0675-Distance-manager-tick-timings.patch +++ b/patches/server/0670-Distance-manager-tick-timings.patch @@ -7,7 +7,7 @@ Recently this has been taking up more time, so add a timings to really figure out how much. diff --git a/src/main/java/co/aikar/timings/MinecraftTimings.java b/src/main/java/co/aikar/timings/MinecraftTimings.java -index 46449728f69ee7d4f78470f8da23c055acd53a3b..4b467f1af93452d13829f756d55dee18b8889d40 100644 +index 6b3cde6d4d1e63bec01f502f2027ee9fddac08aa..7a4234abf620b8394307fa01913bc00215a64e23 100644 --- a/src/main/java/co/aikar/timings/MinecraftTimings.java +++ b/src/main/java/co/aikar/timings/MinecraftTimings.java @@ -47,6 +47,7 @@ public final class MinecraftTimings { @@ -16,7 +16,7 @@ index 46449728f69ee7d4f78470f8da23c055acd53a3b..4b467f1af93452d13829f756d55dee18 public static final Timing scoreboardScoreSearch = Timings.ofSafe("Scoreboard score search"); // Paper - add timings for scoreboard search + public static final Timing distanceManagerTick = Timings.ofSafe("Distance Manager Tick"); // Paper - add timings for distance manager - public static final Timing midTickChunkTasks = Timings.ofSafe("Mid Tick Chunk Tasks"); + private static final Map, String> taskNameCache = new MapMaker().weakKeys().makeMap(); diff --git a/src/main/java/io/papermc/paper/chunk/system/scheduling/ChunkHolderManager.java b/src/main/java/io/papermc/paper/chunk/system/scheduling/ChunkHolderManager.java index 5b446e6ac151f99f64f0c442d0b40b5e251bc4c4..6bc7c6f16a1649fc9e24e7cf90fca401e5bd4875 100644 diff --git a/patches/server/0676-Fix-merchant-inventory-not-closing-on-entity-removal.patch b/patches/server/0671-Fix-merchant-inventory-not-closing-on-entity-removal.patch similarity index 90% rename from patches/server/0676-Fix-merchant-inventory-not-closing-on-entity-removal.patch rename to patches/server/0671-Fix-merchant-inventory-not-closing-on-entity-removal.patch index 0ae49a07a..b7f14756c 100644 --- a/patches/server/0676-Fix-merchant-inventory-not-closing-on-entity-removal.patch +++ b/patches/server/0671-Fix-merchant-inventory-not-closing-on-entity-removal.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix merchant inventory not closing on entity removal diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 0c60fa914310c7b6706e72cd3a61630873005102..4b0d854ed9fc16ecbdfabca4192969aa1beeaa19 100644 +index 109143fca98c6952ca6129f261a9ff8b43f00e52..6540c4e1d9d347ce41fb0f504ee275ee3a1c0a4f 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -2676,6 +2676,11 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -2629,6 +2629,11 @@ public class ServerLevel extends Level implements WorldGenLevel { // Spigot end // Spigot Start if (entity.getBukkitEntity() instanceof org.bukkit.inventory.InventoryHolder && (!(entity instanceof ServerPlayer) || entity.getRemovalReason() != Entity.RemovalReason.KILLED)) { // SPIGOT-6876: closeInventory clears death message diff --git a/patches/server/0677-Check-requirement-before-suggesting-root-nodes.patch b/patches/server/0672-Check-requirement-before-suggesting-root-nodes.patch similarity index 100% rename from patches/server/0677-Check-requirement-before-suggesting-root-nodes.patch rename to patches/server/0672-Check-requirement-before-suggesting-root-nodes.patch diff --git a/patches/server/0678-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch b/patches/server/0673-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch similarity index 92% rename from patches/server/0678-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch rename to patches/server/0673-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch index 8695ea1b7..f3b2d0191 100644 --- a/patches/server/0678-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch +++ b/patches/server/0673-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Don't respond to ServerboundCommandSuggestionPacket when diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 4f318c5e8a8cd2113d7b404aa97cdf03f7a87fd4..ff60a7951818341d5b279b51cdf3d0dd4d89bc26 100644 +index 27bcfe893db83bb369186ccf1d48f28e9d2cae82..0280c215f4e502cd0471523b040d8b54c50f7ab8 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -733,6 +733,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0679-Add-packet-limiter-config.patch b/patches/server/0674-Add-packet-limiter-config.patch similarity index 98% rename from patches/server/0679-Add-packet-limiter-config.patch rename to patches/server/0674-Add-packet-limiter-config.patch index 7ed138c36..0771f0d55 100644 --- a/patches/server/0679-Add-packet-limiter-config.patch +++ b/patches/server/0674-Add-packet-limiter-config.patch @@ -24,7 +24,7 @@ and an action can be defined: DROP or KICK If interval or rate are less-than 0, the limit is ignored diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java -index 5d73043dc9847ae195cef804fa0b0f4bf6db06f2..e18406b4172499b0cb116a45cd5a968ae3e3fdce 100644 +index 6e75a5e7eb51a5bbb7b73436bbd37df1519cb0fc..a0434b92615c10a319eb4528808a83d01df2c516 100644 --- a/src/main/java/net/minecraft/network/Connection.java +++ b/src/main/java/net/minecraft/network/Connection.java @@ -132,6 +132,22 @@ public class Connection extends SimpleChannelInboundHandler> { diff --git a/patches/server/0680-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch b/patches/server/0675-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch similarity index 100% rename from patches/server/0680-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch rename to patches/server/0675-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch diff --git a/patches/server/0681-Ensure-valid-vehicle-status.patch b/patches/server/0676-Ensure-valid-vehicle-status.patch similarity index 91% rename from patches/server/0681-Ensure-valid-vehicle-status.patch rename to patches/server/0676-Ensure-valid-vehicle-status.patch index f98873e29..c5d3159b8 100644 --- a/patches/server/0681-Ensure-valid-vehicle-status.patch +++ b/patches/server/0676-Ensure-valid-vehicle-status.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Ensure valid vehicle status diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 8d657cdb516b6b439b29100c48cccd5b27178fe9..5d30d67745ce3988f42457137f43b15b75a96a0c 100644 +index 9cd64d14d4b6df92bb30d0ad610f8af85791962a..c1dd624e03c85eaba8733769dc650d33142af714 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -576,7 +576,7 @@ public class ServerPlayer extends Player { diff --git a/patches/server/0682-Prevent-softlocked-end-exit-portal-generation.patch b/patches/server/0677-Prevent-softlocked-end-exit-portal-generation.patch similarity index 100% rename from patches/server/0682-Prevent-softlocked-end-exit-portal-generation.patch rename to patches/server/0677-Prevent-softlocked-end-exit-portal-generation.patch diff --git a/patches/server/0683-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch b/patches/server/0678-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch similarity index 100% rename from patches/server/0683-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch rename to patches/server/0678-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch diff --git a/patches/server/0684-Don-t-log-debug-logging-being-disabled.patch b/patches/server/0679-Don-t-log-debug-logging-being-disabled.patch similarity index 100% rename from patches/server/0684-Don-t-log-debug-logging-being-disabled.patch rename to patches/server/0679-Don-t-log-debug-logging-being-disabled.patch diff --git a/patches/server/0685-fix-various-menus-with-empty-level-accesses.patch b/patches/server/0680-fix-various-menus-with-empty-level-accesses.patch similarity index 100% rename from patches/server/0685-fix-various-menus-with-empty-level-accesses.patch rename to patches/server/0680-fix-various-menus-with-empty-level-accesses.patch diff --git a/patches/server/0686-Preserve-overstacked-loot.patch b/patches/server/0681-Preserve-overstacked-loot.patch similarity index 100% rename from patches/server/0686-Preserve-overstacked-loot.patch rename to patches/server/0681-Preserve-overstacked-loot.patch diff --git a/patches/server/0687-Update-head-rotation-in-missing-places.patch b/patches/server/0682-Update-head-rotation-in-missing-places.patch similarity index 84% rename from patches/server/0687-Update-head-rotation-in-missing-places.patch rename to patches/server/0682-Update-head-rotation-in-missing-places.patch index 75018caea..a55311ded 100644 --- a/patches/server/0687-Update-head-rotation-in-missing-places.patch +++ b/patches/server/0682-Update-head-rotation-in-missing-places.patch @@ -8,10 +8,10 @@ This is because bukkit uses a separate head rotation field for yaw. This issue only applies to players. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index d548a262515548808ffe075606ee2f2dba38740f..fe0f57dd69cb5477b64317ef940e3f748037d0e0 100644 +index 51791692213866adaff2eea48f14f818aaaa276c..b90caa5e25837bfb866bbac884468bd730b1f6d5 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1917,6 +1917,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1875,6 +1875,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S this.setXRot(Mth.clamp(pitch, -90.0F, 90.0F) % 360.0F); this.yRotO = this.getYRot(); this.xRotO = this.getXRot(); @@ -19,7 +19,7 @@ index d548a262515548808ffe075606ee2f2dba38740f..fe0f57dd69cb5477b64317ef940e3f74 } public void absMoveTo(double x, double y, double z) { -@@ -1955,6 +1956,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1913,6 +1914,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S this.setXRot(pitch); this.setOldPosAndRot(); this.reapplyPosition(); diff --git a/patches/server/0688-prevent-unintended-light-block-manipulation.patch b/patches/server/0683-prevent-unintended-light-block-manipulation.patch similarity index 100% rename from patches/server/0688-prevent-unintended-light-block-manipulation.patch rename to patches/server/0683-prevent-unintended-light-block-manipulation.patch diff --git a/patches/server/0689-Fix-CraftCriteria-defaults-map.patch b/patches/server/0684-Fix-CraftCriteria-defaults-map.patch similarity index 100% rename from patches/server/0689-Fix-CraftCriteria-defaults-map.patch rename to patches/server/0684-Fix-CraftCriteria-defaults-map.patch diff --git a/patches/server/0690-Fix-upstreams-block-state-factories.patch b/patches/server/0685-Fix-upstreams-block-state-factories.patch similarity index 100% rename from patches/server/0690-Fix-upstreams-block-state-factories.patch rename to patches/server/0685-Fix-upstreams-block-state-factories.patch diff --git a/patches/server/0691-Configurable-feature-seeds.patch b/patches/server/0686-Configurable-feature-seeds.patch similarity index 96% rename from patches/server/0691-Configurable-feature-seeds.patch rename to patches/server/0686-Configurable-feature-seeds.patch index dfeea66b8..c376ba226 100644 --- a/patches/server/0691-Configurable-feature-seeds.patch +++ b/patches/server/0686-Configurable-feature-seeds.patch @@ -19,7 +19,7 @@ index 1080e1f67afe5574baca0df50cdb1d029a7a586a..a2f71a6d1a9e98133dff6cd0f625da94 } final Object val = config.get(key); diff --git a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java -index 0a21632a3e02690a8edcc17ac25d2551a8964bbe..10b4458f3081dea06c1ff39d4134ab8e99adcc99 100644 +index 180f8ae443d1ea44a748c7f3ebb82a0bab8d31f1..f8306b4d0d1c0a4e7336bd5f99222f59920ab796 100644 --- a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java +++ b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java @@ -431,7 +431,14 @@ public abstract class ChunkGenerator { diff --git a/patches/server/0692-Add-root-admin-user-detection.patch b/patches/server/0687-Add-root-admin-user-detection.patch similarity index 100% rename from patches/server/0692-Add-root-admin-user-detection.patch rename to patches/server/0687-Add-root-admin-user-detection.patch diff --git a/patches/server/0693-Always-allow-item-changing-in-Fireball.patch b/patches/server/0688-Always-allow-item-changing-in-Fireball.patch similarity index 100% rename from patches/server/0693-Always-allow-item-changing-in-Fireball.patch rename to patches/server/0688-Always-allow-item-changing-in-Fireball.patch diff --git a/patches/server/0694-don-t-attempt-to-teleport-dead-entities.patch b/patches/server/0689-don-t-attempt-to-teleport-dead-entities.patch similarity index 91% rename from patches/server/0694-don-t-attempt-to-teleport-dead-entities.patch rename to patches/server/0689-don-t-attempt-to-teleport-dead-entities.patch index 9ad128707..6410a0cf6 100644 --- a/patches/server/0694-don-t-attempt-to-teleport-dead-entities.patch +++ b/patches/server/0689-don-t-attempt-to-teleport-dead-entities.patch @@ -5,7 +5,7 @@ Subject: [PATCH] don't attempt to teleport dead entities diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index fe0f57dd69cb5477b64317ef940e3f748037d0e0..22d25fea0c995bf1509bb78d5f10e2b63eb484cb 100644 +index b90caa5e25837bfb866bbac884468bd730b1f6d5..6c2c9c2e0599fbe03f6a1622c64e071f92b66f34 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -793,7 +793,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/0695-Prevent-excessive-velocity-through-repeated-crits.patch b/patches/server/0690-Prevent-excessive-velocity-through-repeated-crits.patch similarity index 94% rename from patches/server/0695-Prevent-excessive-velocity-through-repeated-crits.patch rename to patches/server/0690-Prevent-excessive-velocity-through-repeated-crits.patch index 0f925cea8..7bef82bf1 100644 --- a/patches/server/0695-Prevent-excessive-velocity-through-repeated-crits.patch +++ b/patches/server/0690-Prevent-excessive-velocity-through-repeated-crits.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Prevent excessive velocity through repeated crits diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index dfc62f5cfad3e0e0f5f25c614055426bbfcd5327..3fca4aad128195325d9d00433fae09f193f8f868 100644 +index 09425940b041755fd640a94362fffcd69636bcf1..9bd611292cf6e686c9e737d332bb0ae6d2fbaa98 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -2677,13 +2677,26 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0696-Remove-client-side-code-using-deprecated-for-removal.patch b/patches/server/0691-Remove-client-side-code-using-deprecated-for-removal.patch similarity index 100% rename from patches/server/0696-Remove-client-side-code-using-deprecated-for-removal.patch rename to patches/server/0691-Remove-client-side-code-using-deprecated-for-removal.patch diff --git a/patches/server/0697-Fix-removing-recipes-from-RecipeIterator.patch b/patches/server/0692-Fix-removing-recipes-from-RecipeIterator.patch similarity index 100% rename from patches/server/0697-Fix-removing-recipes-from-RecipeIterator.patch rename to patches/server/0692-Fix-removing-recipes-from-RecipeIterator.patch diff --git a/patches/server/0698-Prevent-sending-oversized-item-data-in-equipment-and.patch b/patches/server/0693-Prevent-sending-oversized-item-data-in-equipment-and.patch similarity index 98% rename from patches/server/0698-Prevent-sending-oversized-item-data-in-equipment-and.patch rename to patches/server/0693-Prevent-sending-oversized-item-data-in-equipment-and.patch index 5985cfea0..93eb21653 100644 --- a/patches/server/0698-Prevent-sending-oversized-item-data-in-equipment-and.patch +++ b/patches/server/0693-Prevent-sending-oversized-item-data-in-equipment-and.patch @@ -34,7 +34,7 @@ index e0802f1cb73a80b08482832c2b269ac8485d5c1a..945a0317e9e49a159a1f42882a0a267a } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 3fca4aad128195325d9d00433fae09f193f8f868..c8592032106e1e355fa51428cde03ec3c4184953 100644 +index 9bd611292cf6e686c9e737d332bb0ae6d2fbaa98..afed1b1287668250974bea61a7bc1b6720d19701 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3188,7 +3188,10 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0699-Hide-unnecessary-itemmeta-from-clients.patch b/patches/server/0694-Hide-unnecessary-itemmeta-from-clients.patch similarity index 97% rename from patches/server/0699-Hide-unnecessary-itemmeta-from-clients.patch rename to patches/server/0694-Hide-unnecessary-itemmeta-from-clients.patch index b97231a3b..b59fc0acc 100644 --- a/patches/server/0699-Hide-unnecessary-itemmeta-from-clients.patch +++ b/patches/server/0694-Hide-unnecessary-itemmeta-from-clients.patch @@ -18,7 +18,7 @@ index 945a0317e9e49a159a1f42882a0a267a2141e86d..e9fd9590e90e58fd4c31985a704a4511 } } diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index c84a8e6fc5f136b12bc542ec64a6686386bfe0cf..2c4da4f18a217269f17e281cf99a573e759a5d52 100644 +index 0280c215f4e502cd0471523b040d8b54c50f7ab8..5aa9f337e1e251485310436f87786b02d181bcbb 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -2561,8 +2561,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -33,7 +33,7 @@ index c84a8e6fc5f136b12bc542ec64a6686386bfe0cf..2c4da4f18a217269f17e281cf99a573e } } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index c8592032106e1e355fa51428cde03ec3c4184953..51e8cfeb21206793245b54379c5a14266d3e67bd 100644 +index afed1b1287668250974bea61a7bc1b6720d19701..fc965b9d51cc0c8fd5c0ea6440e4eae3eb50ed73 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3190,7 +3190,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0700-Fix-Spigot-growth-modifiers.patch b/patches/server/0695-Fix-Spigot-growth-modifiers.patch similarity index 100% rename from patches/server/0700-Fix-Spigot-growth-modifiers.patch rename to patches/server/0695-Fix-Spigot-growth-modifiers.patch diff --git a/patches/server/0701-Prevent-ContainerOpenersCounter-openCount-from-going.patch b/patches/server/0696-Prevent-ContainerOpenersCounter-openCount-from-going.patch similarity index 100% rename from patches/server/0701-Prevent-ContainerOpenersCounter-openCount-from-going.patch rename to patches/server/0696-Prevent-ContainerOpenersCounter-openCount-from-going.patch diff --git a/patches/server/0702-Add-PlayerItemFrameChangeEvent.patch b/patches/server/0697-Add-PlayerItemFrameChangeEvent.patch similarity index 100% rename from patches/server/0702-Add-PlayerItemFrameChangeEvent.patch rename to patches/server/0697-Add-PlayerItemFrameChangeEvent.patch diff --git a/patches/server/0703-Optimize-HashMapPalette.patch b/patches/server/0698-Optimize-HashMapPalette.patch similarity index 100% rename from patches/server/0703-Optimize-HashMapPalette.patch rename to patches/server/0698-Optimize-HashMapPalette.patch diff --git a/patches/server/0704-Allow-delegation-to-vanilla-chunk-gen.patch b/patches/server/0699-Allow-delegation-to-vanilla-chunk-gen.patch similarity index 98% rename from patches/server/0704-Allow-delegation-to-vanilla-chunk-gen.patch rename to patches/server/0699-Allow-delegation-to-vanilla-chunk-gen.patch index 56b54104c..caa2d8631 100644 --- a/patches/server/0704-Allow-delegation-to-vanilla-chunk-gen.patch +++ b/patches/server/0699-Allow-delegation-to-vanilla-chunk-gen.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Allow delegation to vanilla chunk gen diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index b603541d56c7cee7aff8d3448d18c76cd72b63cb..4dc80d0cbd414cde8137d7030d7fe90d1fac424a 100644 +index b9e6d28d8eb982a404981ac4df71238bf30d0989..468756c24c9439fd6afe4f73f82e0094e41ade25 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2459,6 +2459,88 @@ public final class CraftServer implements Server { diff --git a/patches/server/0707-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch b/patches/server/0700-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch similarity index 100% rename from patches/server/0707-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch rename to patches/server/0700-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch diff --git a/patches/server/0708-Add-more-Campfire-API.patch b/patches/server/0701-Add-more-Campfire-API.patch similarity index 100% rename from patches/server/0708-Add-more-Campfire-API.patch rename to patches/server/0701-Add-more-Campfire-API.patch diff --git a/patches/server/0709-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch b/patches/server/0702-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch similarity index 88% rename from patches/server/0709-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch rename to patches/server/0702-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch index f83ede080..f8ec0881d 100644 --- a/patches/server/0709-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch +++ b/patches/server/0702-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch @@ -8,10 +8,10 @@ This ensures at least a valid version of the chunk exists on disk, even if outdated diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java -index 1f8fa4a054ed1c76688d1a919ea170587fb4806f..50de979a447171ab98de59bf25b6c82871d03543 100644 +index 0ae3d1ea6f00efcdea5da5bf1a0f984f4473f5a2..6ca572500a3bb36acf481e54262e811295d64136 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java -@@ -1003,6 +1003,9 @@ public class RegionFile implements AutoCloseable { +@@ -529,6 +529,9 @@ public class RegionFile implements AutoCloseable { } } @@ -21,7 +21,7 @@ index 1f8fa4a054ed1c76688d1a919ea170587fb4806f..50de979a447171ab98de59bf25b6c828 // Paper end private class ChunkBuffer extends ByteArrayOutputStream { -@@ -1018,6 +1021,24 @@ public class RegionFile implements AutoCloseable { +@@ -544,6 +547,24 @@ public class RegionFile implements AutoCloseable { this.pos = chunkcoordintpair; } @@ -47,10 +47,10 @@ index 1f8fa4a054ed1c76688d1a919ea170587fb4806f..50de979a447171ab98de59bf25b6c828 ByteBuffer bytebuffer = ByteBuffer.wrap(this.buf, 0, this.count); diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java -index 156cecae8ea7ffbc38974829942a1c92e828eca9..a25e7183da64f726773aa279707ae67941246b46 100644 +index 9e30b47ece5549c30f487e5542ae65d5faaa8c39..99f2e104b2214dbbc0b6e43d9011744ff4b0b843 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java -@@ -314,10 +314,17 @@ public class RegionFileStorage implements AutoCloseable { +@@ -286,10 +286,17 @@ public class RegionFileStorage implements AutoCloseable { NbtIo.write(nbt, (DataOutput) dataoutputstream); regionfile.setStatus(pos.x, pos.z, ChunkSerializer.getStatus(nbt)); // Paper - Cache chunk status regionfile.setOversized(pos.x, pos.z, false); // Paper - We don't do this anymore, mojang stores differently, but clear old meta flag if it exists to get rid of our own meta file once last oversized is gone @@ -69,7 +69,7 @@ index 156cecae8ea7ffbc38974829942a1c92e828eca9..a25e7183da64f726773aa279707ae679 } catch (Throwable throwable1) { throwable.addSuppressed(throwable1); } -@@ -325,10 +332,7 @@ public class RegionFileStorage implements AutoCloseable { +@@ -297,10 +304,7 @@ public class RegionFileStorage implements AutoCloseable { throw throwable; } @@ -81,7 +81,7 @@ index 156cecae8ea7ffbc38974829942a1c92e828eca9..a25e7183da64f726773aa279707ae679 } // Paper start return; -@@ -374,4 +378,13 @@ public class RegionFileStorage implements AutoCloseable { +@@ -346,4 +350,13 @@ public class RegionFileStorage implements AutoCloseable { } } diff --git a/patches/server/0711-Forward-CraftEntity-in-teleport-command.patch b/patches/server/0703-Forward-CraftEntity-in-teleport-command.patch similarity index 89% rename from patches/server/0711-Forward-CraftEntity-in-teleport-command.patch rename to patches/server/0703-Forward-CraftEntity-in-teleport-command.patch index d63ed2b34..68f601893 100644 --- a/patches/server/0711-Forward-CraftEntity-in-teleport-command.patch +++ b/patches/server/0703-Forward-CraftEntity-in-teleport-command.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Forward CraftEntity in teleport command diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 696497771e607cd07bd8414deeffdd0f211a5ef6..85c48c92987bd87ee5e8c0ffb8847447e7ba4b78 100644 +index 6c2c9c2e0599fbe03f6a1622c64e071f92b66f34..3e8fe380f676fc93538a75650aa23e9034409614 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3530,6 +3530,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -3344,6 +3344,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } public void restoreFrom(Entity original) { @@ -22,7 +22,7 @@ index 696497771e607cd07bd8414deeffdd0f211a5ef6..85c48c92987bd87ee5e8c0ffb8847447 CompoundTag nbttagcompound = original.saveWithoutId(new CompoundTag()); nbttagcompound.remove("Dimension"); -@@ -3620,10 +3627,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -3434,10 +3441,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } } // CraftBukkit end diff --git a/patches/server/0712-Improve-scoreboard-entries.patch b/patches/server/0704-Improve-scoreboard-entries.patch similarity index 100% rename from patches/server/0712-Improve-scoreboard-entries.patch rename to patches/server/0704-Improve-scoreboard-entries.patch diff --git a/patches/server/0713-Entity-powdered-snow-API.patch b/patches/server/0705-Entity-powdered-snow-API.patch similarity index 100% rename from patches/server/0713-Entity-powdered-snow-API.patch rename to patches/server/0705-Entity-powdered-snow-API.patch diff --git a/patches/server/0714-Add-API-for-item-entity-health.patch b/patches/server/0706-Add-API-for-item-entity-health.patch similarity index 100% rename from patches/server/0714-Add-API-for-item-entity-health.patch rename to patches/server/0706-Add-API-for-item-entity-health.patch diff --git a/patches/server/0716-Configurable-max-block-light-for-monster-spawning.patch b/patches/server/0707-Configurable-max-block-light-for-monster-spawning.patch similarity index 100% rename from patches/server/0716-Configurable-max-block-light-for-monster-spawning.patch rename to patches/server/0707-Configurable-max-block-light-for-monster-spawning.patch diff --git a/patches/server/0717-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch b/patches/server/0708-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch similarity index 100% rename from patches/server/0717-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch rename to patches/server/0708-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch diff --git a/patches/server/0718-Load-effect-amplifiers-greater-than-127-correctly.patch b/patches/server/0709-Load-effect-amplifiers-greater-than-127-correctly.patch similarity index 100% rename from patches/server/0718-Load-effect-amplifiers-greater-than-127-correctly.patch rename to patches/server/0709-Load-effect-amplifiers-greater-than-127-correctly.patch diff --git a/patches/server/0719-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch b/patches/server/0710-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch similarity index 100% rename from patches/server/0719-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch rename to patches/server/0710-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch diff --git a/patches/server/0720-Fix-bees-aging-inside-hives.patch b/patches/server/0711-Fix-bees-aging-inside-hives.patch similarity index 100% rename from patches/server/0720-Fix-bees-aging-inside-hives.patch rename to patches/server/0711-Fix-bees-aging-inside-hives.patch diff --git a/patches/server/0721-Bucketable-API.patch b/patches/server/0712-Bucketable-API.patch similarity index 100% rename from patches/server/0721-Bucketable-API.patch rename to patches/server/0712-Bucketable-API.patch diff --git a/patches/server/0722-Validate-usernames.patch b/patches/server/0713-Validate-usernames.patch similarity index 93% rename from patches/server/0722-Validate-usernames.patch rename to patches/server/0713-Validate-usernames.patch index 2c5507f00..230d95c9d 100644 --- a/patches/server/0722-Validate-usernames.patch +++ b/patches/server/0713-Validate-usernames.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Validate usernames diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index 67c1cf5eb198079bd146a4a8ca0492b94cca788c..c03329267a2a97af32a0c2c9d7e94fa00596e1cf 100644 +index d4658328eeecb1c9e3e25eec14dea07e9e2a8b74..ebda34825bbd10145a81d54c345e31c2a4fb5de4 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java @@ -63,6 +63,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, @@ -26,7 +26,7 @@ index 67c1cf5eb198079bd146a4a8ca0492b94cca788c..c03329267a2a97af32a0c2c9d7e94fa0 GameProfile gameprofile = this.server.getSingleplayerProfile(); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 00f65551b82935a6b7b88cba4650404b9311f8f2..801b1f9b9b7dcdf4fe758e3a7a5800bf4b07d93b 100644 +index 385a2abff1660ed892a498e1d3283eb3b9fc4310..89e745736e6b53223cbab9dd63456ace43757f75 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -679,7 +679,7 @@ public abstract class PlayerList { @@ -39,7 +39,7 @@ index 00f65551b82935a6b7b88cba4650404b9311f8f2..801b1f9b9b7dcdf4fe758e3a7a5800bf } } diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index 80caada014bae0571a5aa6aa67d9bb87f89db17f..61516fbc3cbfb3aa85895b4458b5319752149f73 100644 +index e33278611e4f52ff01cf628c570bd3378ff5c071..dbecf65fdd4e094b9b8b8f9267618934642db40f 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -2340,9 +2340,23 @@ public abstract class Player extends LivingEntity { diff --git a/patches/server/0723-Make-water-animal-spawn-height-configurable.patch b/patches/server/0714-Make-water-animal-spawn-height-configurable.patch similarity index 100% rename from patches/server/0723-Make-water-animal-spawn-height-configurable.patch rename to patches/server/0714-Make-water-animal-spawn-height-configurable.patch diff --git a/patches/server/0724-Expose-vanilla-BiomeProvider-from-WorldInfo.patch b/patches/server/0715-Expose-vanilla-BiomeProvider-from-WorldInfo.patch similarity index 96% rename from patches/server/0724-Expose-vanilla-BiomeProvider-from-WorldInfo.patch rename to patches/server/0715-Expose-vanilla-BiomeProvider-from-WorldInfo.patch index 9a8d9831b..2c7897ae7 100644 --- a/patches/server/0724-Expose-vanilla-BiomeProvider-from-WorldInfo.patch +++ b/patches/server/0715-Expose-vanilla-BiomeProvider-from-WorldInfo.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Expose vanilla BiomeProvider from WorldInfo diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index ec48aea4e352e8ee3ad8cda8ce8ec33daf49dae8..5329f98cd455e863a1eae9dc12d26146e492e730 100644 +index 6f2fcf39835d8a8b7408a39a511a2a9ee1e31248..497cc9729faceccaa43ac0a39ec75674507b1567 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -596,7 +596,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop diff --git a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java -index 10b4458f3081dea06c1ff39d4134ab8e99adcc99..6b743d4c7b304c21e2e89300e69df8eff672e8a6 100644 +index f8306b4d0d1c0a4e7336bd5f99222f59920ab796..aa2a014f5451e780219415fffcb64a6e7cdf9b87 100644 --- a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java +++ b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java @@ -568,7 +568,7 @@ public abstract class ChunkGenerator { diff --git a/patches/server/0738-Implement-regenerateChunk.patch b/patches/server/0729-Implement-regenerateChunk.patch similarity index 98% rename from patches/server/0738-Implement-regenerateChunk.patch rename to patches/server/0729-Implement-regenerateChunk.patch index 24b04eadc..53ba1bb4f 100644 --- a/patches/server/0738-Implement-regenerateChunk.patch +++ b/patches/server/0729-Implement-regenerateChunk.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Implement regenerateChunk Co-authored-by: Jason Penilla <11360596+jpenilla@users.noreply.github.com> diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 94f722229432d5b88fc1ced115b0fbeb0eca5f57..ba71ea08e1e2fa178366fdce1aa752fa12030ee6 100644 +index 921cbadba393616a7169e708a60846eea20b3438..f59555c21014cf5ff0b0e1c2c5fd0f73ba689803 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -144,6 +144,7 @@ import org.jetbrains.annotations.NotNull; diff --git a/patches/server/0739-Fix-cancelled-powdered-snow-bucket-placement.patch b/patches/server/0730-Fix-cancelled-powdered-snow-bucket-placement.patch similarity index 100% rename from patches/server/0739-Fix-cancelled-powdered-snow-bucket-placement.patch rename to patches/server/0730-Fix-cancelled-powdered-snow-bucket-placement.patch diff --git a/patches/server/0740-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch b/patches/server/0731-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch similarity index 92% rename from patches/server/0740-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch rename to patches/server/0731-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch index 10fb87ad3..10ebcc771 100644 --- a/patches/server/0740-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch +++ b/patches/server/0731-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Add missing Validate calls to CraftServer#getSpawnLimit Copies appropriate checks from CraftWorld#getSpawnLimit diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 3bf600de4eb99bd33bc4cd20529e38002f22f1d3..8257b94fc234b6d10c9120a8ba4de526c45e66b1 100644 +index 4e239b061db4b3d05804dd4fc44bb23bd803597a..c569ddd5ae932d172aa791efab5c92c1394caf02 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2287,6 +2287,8 @@ public final class CraftServer implements Server { diff --git a/patches/server/0741-Add-GameEvent-tags.patch b/patches/server/0732-Add-GameEvent-tags.patch similarity index 97% rename from patches/server/0741-Add-GameEvent-tags.patch rename to patches/server/0732-Add-GameEvent-tags.patch index 58b00003d..55aaa582d 100644 --- a/patches/server/0741-Add-GameEvent-tags.patch +++ b/patches/server/0732-Add-GameEvent-tags.patch @@ -46,7 +46,7 @@ index 0000000000000000000000000000000000000000..e7d9fd2702a1ce96596580fff8f5ee4f + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 8257b94fc234b6d10c9120a8ba4de526c45e66b1..1f70bd8267772a6f477caee4958a1cb271b30ee2 100644 +index c569ddd5ae932d172aa791efab5c92c1394caf02..8dc49151791b847aeec4f3f0341de0c6013ed757 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -2708,6 +2708,15 @@ public final class CraftServer implements Server { diff --git a/patches/server/0742-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch b/patches/server/0733-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch similarity index 83% rename from patches/server/0742-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch rename to patches/server/0733-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch index c99353017..ec13c5948 100644 --- a/patches/server/0742-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch +++ b/patches/server/0733-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch @@ -9,18 +9,18 @@ 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 5329f98cd455e863a1eae9dc12d26146e492e730..2d41aaa651dfefff9968ccbfee693c4410ba0f4e 100644 +index 497cc9729faceccaa43ac0a39ec75674507b1567..02f2c0185324ffd0f6f0a832f75efec28f691915 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1416,6 +1416,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop(Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/level/block/state/BlockState;)V diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index ba71ea08e1e2fa178366fdce1aa752fa12030ee6..a39f439716678611bc7daf943d29b4c330ab5acc 100644 +index f59555c21014cf5ff0b0e1c2c5fd0f73ba689803..c0e7680bff3f65269a7031c08c06f38fdbaa4979 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -1453,7 +1453,12 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/server/0752-Expose-furnace-minecart-push-values.patch b/patches/server/0743-Expose-furnace-minecart-push-values.patch similarity index 100% rename from patches/server/0752-Expose-furnace-minecart-push-values.patch rename to patches/server/0743-Expose-furnace-minecart-push-values.patch diff --git a/patches/server/0753-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch b/patches/server/0744-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch similarity index 100% rename from patches/server/0753-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch rename to patches/server/0744-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch diff --git a/patches/server/0754-More-Projectile-API.patch b/patches/server/0745-More-Projectile-API.patch similarity index 99% rename from patches/server/0754-More-Projectile-API.patch rename to patches/server/0745-More-Projectile-API.patch index 0a909b85a..fa5579c35 100644 --- a/patches/server/0754-More-Projectile-API.patch +++ b/patches/server/0745-More-Projectile-API.patch @@ -509,7 +509,7 @@ index 20f9735c7cb76024e15dbdca7684f5c560876175..8a6af0db8e0aa0cffbf19584be747076 // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 6423af82fbae4267d06229fde2390bfb5569137a..01fac95fde3c9b9d58e6a7ef7b35b48fe1c992ed 100644 +index 25133298b26523bd36300ab03e216200c915386b..af7e3acde2eb521ac809b4c5980ff6adb30c7135 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -831,19 +831,19 @@ public class CraftEventFactory { diff --git a/patches/server/0755-Fix-swamp-hut-cat-generation-deadlock.patch b/patches/server/0746-Fix-swamp-hut-cat-generation-deadlock.patch similarity index 100% rename from patches/server/0755-Fix-swamp-hut-cat-generation-deadlock.patch rename to patches/server/0746-Fix-swamp-hut-cat-generation-deadlock.patch diff --git a/patches/server/0756-Don-t-allow-vehicle-movement-from-players-while-tele.patch b/patches/server/0747-Don-t-allow-vehicle-movement-from-players-while-tele.patch similarity index 94% rename from patches/server/0756-Don-t-allow-vehicle-movement-from-players-while-tele.patch rename to patches/server/0747-Don-t-allow-vehicle-movement-from-players-while-tele.patch index b6efa41b2..3d23d4c0b 100644 --- a/patches/server/0756-Don-t-allow-vehicle-movement-from-players-while-tele.patch +++ b/patches/server/0747-Don-t-allow-vehicle-movement-from-players-while-tele.patch @@ -7,7 +7,7 @@ Bring the vehicle move packet behavior in line with the regular player move packet. diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index e6e9a2688a3d2f789831a9e095e555f784bd9c4a..6842ccf68ab5ae2b2c093ea8ac34eeabc0f95770 100644 +index 5aa9f337e1e251485310436f87786b02d181bcbb..22d93d04d614ad68d12cddd2b7607a8988da0d3c 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -465,6 +465,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0757-Implement-getComputedBiome-API.patch b/patches/server/0748-Implement-getComputedBiome-API.patch similarity index 100% rename from patches/server/0757-Implement-getComputedBiome-API.patch rename to patches/server/0748-Implement-getComputedBiome-API.patch diff --git a/patches/server/0758-Make-some-itemstacks-nonnull.patch b/patches/server/0749-Make-some-itemstacks-nonnull.patch similarity index 100% rename from patches/server/0758-Make-some-itemstacks-nonnull.patch rename to patches/server/0749-Make-some-itemstacks-nonnull.patch diff --git a/patches/server/0759-Implement-enchantWithLevels-API.patch b/patches/server/0750-Implement-enchantWithLevels-API.patch similarity index 100% rename from patches/server/0759-Implement-enchantWithLevels-API.patch rename to patches/server/0750-Implement-enchantWithLevels-API.patch diff --git a/patches/server/0760-Fix-saving-in-unloadWorld.patch b/patches/server/0751-Fix-saving-in-unloadWorld.patch similarity index 90% rename from patches/server/0760-Fix-saving-in-unloadWorld.patch rename to patches/server/0751-Fix-saving-in-unloadWorld.patch index 8de450b8c..04a743911 100644 --- a/patches/server/0760-Fix-saving-in-unloadWorld.patch +++ b/patches/server/0751-Fix-saving-in-unloadWorld.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Fix saving in unloadWorld Change savingDisabled to false to ensure ServerLevel's saving logic gets called when unloadWorld is called with save = true diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 6cbf54f50538082a9027ec04de3337fe20bda452..f4faa98285ab8cd675e84a5f5a02afb0c5cec599 100644 +index 884d3ba1be2d89da076b4cb63da6dd43c1c3ed95..e94c4a5419806e35aaabb88624afe672f93ffa57 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1336,7 +1336,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0761-Buffer-OOB-setBlock-calls.patch b/patches/server/0752-Buffer-OOB-setBlock-calls.patch similarity index 100% rename from patches/server/0761-Buffer-OOB-setBlock-calls.patch rename to patches/server/0752-Buffer-OOB-setBlock-calls.patch diff --git a/patches/server/0762-Add-TameableDeathMessageEvent.patch b/patches/server/0753-Add-TameableDeathMessageEvent.patch similarity index 100% rename from patches/server/0762-Add-TameableDeathMessageEvent.patch rename to patches/server/0753-Add-TameableDeathMessageEvent.patch diff --git a/patches/server/0763-Fix-new-block-data-for-EntityChangeBlockEvent.patch b/patches/server/0754-Fix-new-block-data-for-EntityChangeBlockEvent.patch similarity index 98% rename from patches/server/0763-Fix-new-block-data-for-EntityChangeBlockEvent.patch rename to patches/server/0754-Fix-new-block-data-for-EntityChangeBlockEvent.patch index a82a8f472..6f15c61aa 100644 --- a/patches/server/0763-Fix-new-block-data-for-EntityChangeBlockEvent.patch +++ b/patches/server/0754-Fix-new-block-data-for-EntityChangeBlockEvent.patch @@ -91,7 +91,7 @@ index 0a2c2b847dc516abf31870116056dbdbb22f31d9..45906d273e6d6ec20cf44b4d07efdac6 } // CraftBukkit end diff --git a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java -index 2a8ed27101ff78542db120ff183ff33276fb832a..fed8a2519f6b20466f1986702baec2c0f7078dfe 100644 +index c360135b923aa8d1ed2c7caf97ede981cb605cf2..f33c03e81b7ff643741f56eea055e6af260de618 100644 --- a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java +++ b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java @@ -580,7 +580,7 @@ public class EnderMan extends Monster implements NeutralMob { @@ -196,7 +196,7 @@ index 61abbcfe97e3d3e3da5ee658672549d14594ad17..05e14322e519d1399e87beb532e1cc4a } // CraftBukkit end diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 01fac95fde3c9b9d58e6a7ef7b35b48fe1c992ed..269a3837becfe8eb56997276e840c7055e10e6eb 100644 +index af7e3acde2eb521ac809b4c5980ff6adb30c7135..52a4a2b90f5b4684ffb94bf1db6020490e14942d 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1410,11 +1410,11 @@ public class CraftEventFactory { diff --git a/patches/server/0764-fix-player-loottables-running-when-mob-loot-gamerule.patch b/patches/server/0755-fix-player-loottables-running-when-mob-loot-gamerule.patch similarity index 93% rename from patches/server/0764-fix-player-loottables-running-when-mob-loot-gamerule.patch rename to patches/server/0755-fix-player-loottables-running-when-mob-loot-gamerule.patch index 84358c61a..5345851a6 100644 --- a/patches/server/0764-fix-player-loottables-running-when-mob-loot-gamerule.patch +++ b/patches/server/0755-fix-player-loottables-running-when-mob-loot-gamerule.patch @@ -5,7 +5,7 @@ Subject: [PATCH] fix player loottables running when mob loot gamerule is false diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index c76358e108a72297baf92b234d43145dde09e99f..aba972c49d6044f5b72c98a2c4f99f6e3d531a91 100644 +index c1dd624e03c85eaba8733769dc650d33142af714..8332af6921e37d7dbf2a57a40f8413443a1706f8 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -924,12 +924,14 @@ public class ServerPlayer extends Player { diff --git a/patches/server/0765-Ensure-entity-passenger-world-matches-ridden-entity.patch b/patches/server/0756-Ensure-entity-passenger-world-matches-ridden-entity.patch similarity index 85% rename from patches/server/0765-Ensure-entity-passenger-world-matches-ridden-entity.patch rename to patches/server/0756-Ensure-entity-passenger-world-matches-ridden-entity.patch index 3a8db84ff..8a0081b8a 100644 --- a/patches/server/0765-Ensure-entity-passenger-world-matches-ridden-entity.patch +++ b/patches/server/0756-Ensure-entity-passenger-world-matches-ridden-entity.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Ensure entity passenger world matches ridden entity Bad plugins doing this would cause some obvious problems... diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 6c995ac8a40e61a29d685b5527807efa73375147..cef8f5473baab959471e108b81e418f6a668e8ac 100644 +index 6f1bd75c5bd38ac198290e05ceb2d9cf7fc0fbf1..1c72365643ea807c56f5f0b7484c06252acb1b6e 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2846,7 +2846,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -2660,7 +2660,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } public boolean startRiding(Entity entity, boolean force) { diff --git a/patches/server/0766-cache-resource-keys.patch b/patches/server/0757-cache-resource-keys.patch similarity index 100% rename from patches/server/0766-cache-resource-keys.patch rename to patches/server/0757-cache-resource-keys.patch diff --git a/patches/server/0767-Allow-changing-the-EnderDragon-podium.patch b/patches/server/0758-Allow-changing-the-EnderDragon-podium.patch similarity index 100% rename from patches/server/0767-Allow-changing-the-EnderDragon-podium.patch rename to patches/server/0758-Allow-changing-the-EnderDragon-podium.patch diff --git a/patches/server/0768-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch b/patches/server/0759-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch similarity index 100% rename from patches/server/0768-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch rename to patches/server/0759-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch diff --git a/patches/server/0769-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch b/patches/server/0760-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch similarity index 100% rename from patches/server/0769-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch rename to patches/server/0760-Fix-StructureGrowEvent-species-for-RED_MUSHROOM.patch diff --git a/patches/server/0770-Prevent-tile-entity-copies-loading-chunks.patch b/patches/server/0761-Prevent-tile-entity-copies-loading-chunks.patch similarity index 90% rename from patches/server/0770-Prevent-tile-entity-copies-loading-chunks.patch rename to patches/server/0761-Prevent-tile-entity-copies-loading-chunks.patch index 7e4fc6073..44efe882c 100644 --- a/patches/server/0770-Prevent-tile-entity-copies-loading-chunks.patch +++ b/patches/server/0761-Prevent-tile-entity-copies-loading-chunks.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Prevent tile entity copies loading chunks diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 6842ccf68ab5ae2b2c093ea8ac34eeabc0f95770..985fdb70d4bc9fd6c08de83889108824facfd049 100644 +index 22d93d04d614ad68d12cddd2b7607a8988da0d3c..a5f4bc0160b073c0551107b382889031fed24d52 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -3192,7 +3192,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3118,7 +3118,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl BlockPos blockposition = BlockEntity.getPosFromTag(nbttagcompound); if (this.player.level().isLoaded(blockposition)) { diff --git a/patches/server/0771-Use-username-instead-of-display-name-in-PlayerList-g.patch b/patches/server/0762-Use-username-instead-of-display-name-in-PlayerList-g.patch similarity index 92% rename from patches/server/0771-Use-username-instead-of-display-name-in-PlayerList-g.patch rename to patches/server/0762-Use-username-instead-of-display-name-in-PlayerList-g.patch index f6ec1a295..ebddad6ea 100644 --- a/patches/server/0771-Use-username-instead-of-display-name-in-PlayerList-g.patch +++ b/patches/server/0762-Use-username-instead-of-display-name-in-PlayerList-g.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Use username instead of display name in diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 506d91df4dbcced7554db14b6efdf8697ea6805a..f22ca56e6acd56d894bd26d46133e835c7901b72 100644 +index ec0c53a86c9e76f8c5bbd0eed8f7c7fa1d31a804..c0ffcca75509b1ccee155c799ad8fbdfa657db26 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1449,7 +1449,7 @@ public abstract class PlayerList { diff --git a/patches/server/0772-Pass-ServerLevel-for-gamerule-callbacks.patch b/patches/server/0763-Pass-ServerLevel-for-gamerule-callbacks.patch similarity index 98% rename from patches/server/0772-Pass-ServerLevel-for-gamerule-callbacks.patch rename to patches/server/0763-Pass-ServerLevel-for-gamerule-callbacks.patch index e384656b1..8e0d1d576 100644 --- a/patches/server/0772-Pass-ServerLevel-for-gamerule-callbacks.patch +++ b/patches/server/0763-Pass-ServerLevel-for-gamerule-callbacks.patch @@ -18,10 +18,10 @@ index bb3acbe0ad049703245c51a92539376811365eb2..30b9685963ffc620846c220d1fff3fda if (dedicatedserverproperties.enableQuery) { diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 985fdb70d4bc9fd6c08de83889108824facfd049..79f791dbe8dced29b311ad50237da9bfec0fbb2f 100644 +index a5f4bc0160b073c0551107b382889031fed24d52..a08cf32d56b6f5491d2f2e8e9486a5d65ec9a825 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2756,7 +2756,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2682,7 +2682,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.player = this.server.getPlayerList().respawn(this.player, false, RespawnReason.DEATH); if (this.server.isHardcore()) { this.player.setGameMode(GameType.SPECTATOR, org.bukkit.event.player.PlayerGameModeChangeEvent.Cause.HARDCORE_DEATH, null); // Paper - Expand PlayerGameModeChangeEvent @@ -167,7 +167,7 @@ index f3cdf1fa7731eb7bb1cb89aa6a37204d81257cb0..0112ef51815c4fab38b95d5e917d335e this.onChanged(server); } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index a39f439716678611bc7daf943d29b4c330ab5acc..499452383527844354b39b43fb2ea0853ba5478e 100644 +index c0e7680bff3f65269a7031c08c06f38fdbaa4979..f22048c66f28a0c2cb6edb6afda4d3cf1469d913 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -2038,7 +2038,7 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/server/0773-Expand-PlayerItemDamageEvent.patch b/patches/server/0764-Expand-PlayerItemDamageEvent.patch similarity index 100% rename from patches/server/0773-Expand-PlayerItemDamageEvent.patch rename to patches/server/0764-Expand-PlayerItemDamageEvent.patch diff --git a/patches/server/0774-WorldCreator-keepSpawnLoaded.patch b/patches/server/0765-WorldCreator-keepSpawnLoaded.patch similarity index 94% rename from patches/server/0774-WorldCreator-keepSpawnLoaded.patch rename to patches/server/0765-WorldCreator-keepSpawnLoaded.patch index fa5c412bf..fb14f7b79 100644 --- a/patches/server/0774-WorldCreator-keepSpawnLoaded.patch +++ b/patches/server/0765-WorldCreator-keepSpawnLoaded.patch @@ -5,7 +5,7 @@ Subject: [PATCH] WorldCreator#keepSpawnLoaded diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index f4faa98285ab8cd675e84a5f5a02afb0c5cec599..eff4f3100b018bc6475a9307bfe9853cd69abd2f 100644 +index e94c4a5419806e35aaabb88624afe672f93ffa57..583e3cfcd223561d1733c503f84b99edbb4b365e 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1283,7 +1283,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0775-Fix-CME-in-CraftPersistentDataTypeRegistry.patch b/patches/server/0766-Fix-CME-in-CraftPersistentDataTypeRegistry.patch similarity index 100% rename from patches/server/0775-Fix-CME-in-CraftPersistentDataTypeRegistry.patch rename to patches/server/0766-Fix-CME-in-CraftPersistentDataTypeRegistry.patch diff --git a/patches/server/0776-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch b/patches/server/0767-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch similarity index 97% rename from patches/server/0776-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch rename to patches/server/0767-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch index bb631548b..b23922a4d 100644 --- a/patches/server/0776-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch +++ b/patches/server/0767-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Trigger bee_nest_destroyed trigger in the correct place diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index 066e7e420b8eaa9733532a893855bcab14c22d0e..cfd09698025262f262489c4d024dc8b0013b542d 100644 +index 03b337ce5ccb1db61dc395b91b061a2aecf8fbf6..c783e0cbc2f124eeacebc7c7cabb9c38f720a328 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java @@ -423,12 +423,16 @@ public class ServerPlayerGameMode { diff --git a/patches/server/0777-Add-EntityDyeEvent-and-CollarColorable-interface.patch b/patches/server/0768-Add-EntityDyeEvent-and-CollarColorable-interface.patch similarity index 100% rename from patches/server/0777-Add-EntityDyeEvent-and-CollarColorable-interface.patch rename to patches/server/0768-Add-EntityDyeEvent-and-CollarColorable-interface.patch diff --git a/patches/server/0778-Fire-CauldronLevelChange-on-initial-fill.patch b/patches/server/0769-Fire-CauldronLevelChange-on-initial-fill.patch similarity index 100% rename from patches/server/0778-Fire-CauldronLevelChange-on-initial-fill.patch rename to patches/server/0769-Fire-CauldronLevelChange-on-initial-fill.patch diff --git a/patches/server/0779-fix-powder-snow-cauldrons-not-turning-to-water.patch b/patches/server/0770-fix-powder-snow-cauldrons-not-turning-to-water.patch similarity index 100% rename from patches/server/0779-fix-powder-snow-cauldrons-not-turning-to-water.patch rename to patches/server/0770-fix-powder-snow-cauldrons-not-turning-to-water.patch diff --git a/patches/server/0780-Add-PlayerStopUsingItemEvent.patch b/patches/server/0771-Add-PlayerStopUsingItemEvent.patch similarity index 91% rename from patches/server/0780-Add-PlayerStopUsingItemEvent.patch rename to patches/server/0771-Add-PlayerStopUsingItemEvent.patch index 68ae540fe..a13ae5457 100644 --- a/patches/server/0780-Add-PlayerStopUsingItemEvent.patch +++ b/patches/server/0771-Add-PlayerStopUsingItemEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add PlayerStopUsingItemEvent diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index c41153ad6025fe276326132f6cbfd3986f9c5c51..35ea0d337684f8ff41142c1defc05121f1348ef7 100644 +index 69afdbf5eac010f04b1a7f0c0b99bc7e0035fda1..6b561cb21497f214b82d8d91affb79ce1f63fbad 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -4025,6 +4025,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0781-Don-t-tick-markers.patch b/patches/server/0772-Don-t-tick-markers.patch similarity index 95% rename from patches/server/0781-Don-t-tick-markers.patch rename to patches/server/0772-Don-t-tick-markers.patch index 32bb643d7..af2d0b352 100644 --- a/patches/server/0781-Don-t-tick-markers.patch +++ b/patches/server/0772-Don-t-tick-markers.patch @@ -23,10 +23,10 @@ index ff99336e0b8131ae161cfa5c4fc83c6905e3dbc8..5e5a018433414af76eaa1e781f61612d } }); diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 4b0d854ed9fc16ecbdfabca4192969aa1beeaa19..0d5cdef130fb138c1b373ced129ccca245be4ec0 100644 +index 6540c4e1d9d347ce41fb0f504ee275ee3a1c0a4f..6f271c36f2dc47678f7e0b66872ae2c90baebafc 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -2585,6 +2585,7 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -2538,6 +2538,7 @@ public class ServerLevel extends Level implements WorldGenLevel { } public void onTickingStart(Entity entity) { diff --git a/patches/server/0782-Expand-FallingBlock-API.patch b/patches/server/0773-Expand-FallingBlock-API.patch similarity index 98% rename from patches/server/0782-Expand-FallingBlock-API.patch rename to patches/server/0773-Expand-FallingBlock-API.patch index 4e95766e5..0f7c1bbd7 100644 --- a/patches/server/0782-Expand-FallingBlock-API.patch +++ b/patches/server/0773-Expand-FallingBlock-API.patch @@ -13,7 +13,7 @@ public net.minecraft.world.entity.item.FallingBlockEntity blockState Co-authored-by: Lukas Planz diff --git a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java -index fc33d05cf1a3cceb220dab1ee1da33ffe37834db..21a4669b01e9c57100224e20500bc23f8e101434 100644 +index bfd8304f4fc2aded1681c7a59cf9d81192e5a3b2..a75e48f27cd8fbf6165c96c5df09671494eb9dd8 100644 --- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java +++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java @@ -66,6 +66,7 @@ public class FallingBlockEntity extends Entity { diff --git a/patches/server/0783-Do-not-accept-invalid-client-settings.patch b/patches/server/0774-Do-not-accept-invalid-client-settings.patch similarity index 90% rename from patches/server/0783-Do-not-accept-invalid-client-settings.patch rename to patches/server/0774-Do-not-accept-invalid-client-settings.patch index 18f009fc3..c00092c57 100644 --- a/patches/server/0783-Do-not-accept-invalid-client-settings.patch +++ b/patches/server/0774-Do-not-accept-invalid-client-settings.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Do not accept invalid client settings diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 79f791dbe8dced29b311ad50237da9bfec0fbb2f..f98e289c90425864576dead48eacb21c00970dcc 100644 +index a08cf32d56b6f5491d2f2e8e9486a5d65ec9a825..9810c476ba7cdee6a2ed17c48f8f101426596aea 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -3316,6 +3316,13 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3242,6 +3242,13 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @Override public void handleClientInformation(ServerboundClientInformationPacket packet) { PacketUtils.ensureRunningOnSameThread(packet, this, this.player.serverLevel()); diff --git a/patches/server/0784-Add-support-for-Proxy-Protocol.patch b/patches/server/0775-Add-support-for-Proxy-Protocol.patch similarity index 74% rename from patches/server/0784-Add-support-for-Proxy-Protocol.patch rename to patches/server/0775-Add-support-for-Proxy-Protocol.patch index 306ded183..ef9bc5a74 100644 --- a/patches/server/0784-Add-support-for-Proxy-Protocol.patch +++ b/patches/server/0775-Add-support-for-Proxy-Protocol.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add support for Proxy Protocol diff --git a/build.gradle.kts b/build.gradle.kts -index ff1636d3e047e124c73496f4942e991abe01c150..376e8983fdfdbb6c3e5fd8ad0f6a05e655b622bf 100644 +index c6241f858209ed662d8720217d143340916024e9..7c563ef33d12b227856e65392905bffa5289285a 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -30,6 +30,7 @@ dependencies { @@ -17,23 +17,10 @@ index ff1636d3e047e124c73496f4942e991abe01c150..376e8983fdfdbb6c3e5fd8ad0f6a05e6 implementation("org.apache.logging.log4j:log4j-iostreams:2.19.0") // Paper - remove exclusion implementation("org.ow2.asm:asm-commons:9.5") diff --git a/src/main/java/net/minecraft/server/network/ServerConnectionListener.java b/src/main/java/net/minecraft/server/network/ServerConnectionListener.java -index 7383c367eba6e157b020655c858fef80bcf91822..0057f3f7669b03c36c3dd2e7629e4551e3cde700 100644 +index 13fc9b88c06b0436d23039ef4686f3a88589447e..a4a29a7ea0035ecf4c61ee8547a9eb24acb667d0 100644 --- a/src/main/java/net/minecraft/server/network/ServerConnectionListener.java +++ b/src/main/java/net/minecraft/server/network/ServerConnectionListener.java -@@ -111,6 +111,12 @@ public class ServerConnectionListener { - ServerConnectionListener.LOGGER.info("Paper: Using " + com.velocitypowered.natives.util.Natives.cipher.getLoadedVariant() + " cipher from Velocity."); - // Paper end - Use Velocity cipher - -+ // Paper start - Add support for proxy protocol -+ if (io.papermc.paper.configuration.GlobalConfiguration.get().proxies.proxyProtocol) { -+ ServerConnectionListener.LOGGER.info("Paper: Using Proxy Protocol"); -+ } -+ // Paper end - Add support for proxy protocol -+ - this.channels.add(((ServerBootstrap) ((ServerBootstrap) (new ServerBootstrap()).channel(oclass)).childHandler(new ChannelInitializer() { - protected void initChannel(Channel channel) { - Connection.setInitialProtocolAttributes(channel); -@@ -129,6 +135,29 @@ public class ServerConnectionListener { +@@ -124,6 +124,29 @@ public class ServerConnectionListener { Connection object = j > 0 ? new RateKickingConnection(j) : new Connection(PacketFlow.SERVERBOUND); // CraftBukkit - decompile error //ServerConnectionListener.this.connections.add(object); // Paper diff --git a/patches/server/0785-Fix-OfflinePlayer-getBedSpawnLocation.patch b/patches/server/0776-Fix-OfflinePlayer-getBedSpawnLocation.patch similarity index 100% rename from patches/server/0785-Fix-OfflinePlayer-getBedSpawnLocation.patch rename to patches/server/0776-Fix-OfflinePlayer-getBedSpawnLocation.patch diff --git a/patches/server/0786-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch b/patches/server/0777-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch similarity index 100% rename from patches/server/0786-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch rename to patches/server/0777-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch diff --git a/patches/server/0787-Sanitize-sent-BlockEntity-NBT.patch b/patches/server/0778-Sanitize-sent-BlockEntity-NBT.patch similarity index 100% rename from patches/server/0787-Sanitize-sent-BlockEntity-NBT.patch rename to patches/server/0778-Sanitize-sent-BlockEntity-NBT.patch diff --git a/patches/server/0788-Disable-component-selector-resolving-in-books-by-def.patch b/patches/server/0779-Disable-component-selector-resolving-in-books-by-def.patch similarity index 100% rename from patches/server/0788-Disable-component-selector-resolving-in-books-by-def.patch rename to patches/server/0779-Disable-component-selector-resolving-in-books-by-def.patch diff --git a/patches/server/0789-Prevent-entity-loading-causing-async-lookups.patch b/patches/server/0780-Prevent-entity-loading-causing-async-lookups.patch similarity index 97% rename from patches/server/0789-Prevent-entity-loading-causing-async-lookups.patch rename to patches/server/0780-Prevent-entity-loading-causing-async-lookups.patch index 1d69022c7..8742952c5 100644 --- a/patches/server/0789-Prevent-entity-loading-causing-async-lookups.patch +++ b/patches/server/0780-Prevent-entity-loading-causing-async-lookups.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Prevent entity loading causing async lookups diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index cef8f5473baab959471e108b81e418f6a668e8ac..2490da0e881e3514466bd44ba4f9336be67d603d 100644 +index 1c72365643ea807c56f5f0b7484c06252acb1b6e..3b23d1e1c1fb76e8931952846aa9f9d34584cd67 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -802,6 +802,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S diff --git a/patches/server/0790-Throw-exception-on-world-create-while-being-ticked.patch b/patches/server/0781-Throw-exception-on-world-create-while-being-ticked.patch similarity index 91% rename from patches/server/0790-Throw-exception-on-world-create-while-being-ticked.patch rename to patches/server/0781-Throw-exception-on-world-create-while-being-ticked.patch index 8491aaff8..be42f8546 100644 --- a/patches/server/0790-Throw-exception-on-world-create-while-being-ticked.patch +++ b/patches/server/0781-Throw-exception-on-world-create-while-being-ticked.patch @@ -7,7 +7,7 @@ There are no plans to support creating worlds while worlds are being ticked themselvess. diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index ffd0e4326c0c4ddd18b0f09f9f3037b1eefd546f..c3ce869eb8c53ba01f41840d050502ce94771253 100644 +index f5c551a0d6a63c4a28169052cb7c8c6d0b688dda..d42d9b38a9334e1e2b83fde671757ec191898c4b 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(); -@@ -1633,7 +1634,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0; // Paper -@@ -1703,6 +1706,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop= i) { // CraftBukkit this.level().getProfiler().push("portal"); this.portalTime = i; @@ -22,7 +22,7 @@ index 0d7d96af96eeb882e53938244ca57e0c439eb130..4ac42a1cac859853f64fa5de3e709e78 this.setPortalCooldown(); // CraftBukkit start if (this instanceof ServerPlayer) { -@@ -3105,6 +3112,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -2919,6 +2926,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } else { this.changeDimension(worldserver1); } diff --git a/patches/server/0807-Don-t-use-level-random-in-entity-constructors.patch b/patches/server/0797-Don-t-use-level-random-in-entity-constructors.patch similarity index 96% rename from patches/server/0807-Don-t-use-level-random-in-entity-constructors.patch rename to patches/server/0797-Don-t-use-level-random-in-entity-constructors.patch index c45ff812f..bc78c6a47 100644 --- a/patches/server/0807-Don-t-use-level-random-in-entity-constructors.patch +++ b/patches/server/0797-Don-t-use-level-random-in-entity-constructors.patch @@ -9,7 +9,7 @@ should be supported. Some entities (for whatever reason) use the level's random in some places. 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 c865456d58cf7c2077ac452b6a1e3db2b84047ef..13efea97d1836a48ef4c0e077a61571d9c171a0e 100644 +index 459f793a6603d4f98c84df4e549f069298c54985..8aaca29b115a55bf48306e71432c4c20d2bd21dc 100644 --- a/src/main/java/net/minecraft/world/entity/item/ItemEntity.java +++ b/src/main/java/net/minecraft/world/entity/item/ItemEntity.java @@ -66,7 +66,12 @@ public class ItemEntity extends Entity implements TraceableEntity { diff --git a/patches/server/0808-Send-block-entities-after-destroy-prediction.patch b/patches/server/0798-Send-block-entities-after-destroy-prediction.patch similarity index 95% rename from patches/server/0808-Send-block-entities-after-destroy-prediction.patch rename to patches/server/0798-Send-block-entities-after-destroy-prediction.patch index 04def1f82..4d84d9c44 100644 --- a/patches/server/0808-Send-block-entities-after-destroy-prediction.patch +++ b/patches/server/0798-Send-block-entities-after-destroy-prediction.patch @@ -7,7 +7,7 @@ Minecraft's prediction system does not handle block entities, so if we are manua block breaking we need to set it after the prediction is finished. This fixes block entities not showing when cancelling the BlockBreakEvent. diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index cfd09698025262f262489c4d024dc8b0013b542d..fc19c68c19d443be654a5600f633d3a77f7069c1 100644 +index c783e0cbc2f124eeacebc7c7cabb9c38f720a328..c24701ed78824dc5377f8517dedf6a5aeff0614d 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java @@ -62,6 +62,8 @@ public class ServerPlayerGameMode { @@ -57,10 +57,10 @@ index cfd09698025262f262489c4d024dc8b0013b542d..fc19c68c19d443be654a5600f633d3a7 } } diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 7a90ad5c707a01ae63662f94507fab312d415b85..dd1a969c6ac8ee08c9898703953dda88c7b4f97e 100644 +index 15a2d3fb2db4abfe66392a22d9a33159a816f285..e868c434be0bf223728b439df9a0db6afeaee46e 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1778,8 +1778,28 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1704,8 +1704,28 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl return; } // Paper end - Don't allow digging into unloaded chunks diff --git a/patches/server/0809-Warn-on-plugins-accessing-faraway-chunks.patch b/patches/server/0799-Warn-on-plugins-accessing-faraway-chunks.patch similarity index 95% rename from patches/server/0809-Warn-on-plugins-accessing-faraway-chunks.patch rename to patches/server/0799-Warn-on-plugins-accessing-faraway-chunks.patch index be3a5623d..a68f5b7ce 100644 --- a/patches/server/0809-Warn-on-plugins-accessing-faraway-chunks.patch +++ b/patches/server/0799-Warn-on-plugins-accessing-faraway-chunks.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Warn on plugins accessing faraway chunks diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 17f8dc044619bfa055f67f12cd9a296504ac76ee..b5815acea75cd70f65d9eb2b554b435c91be9994 100644 +index 6309ab0373e7f64c7f63a55d43ff4e54d4542332..d21667480e585c7a124e9c53b4a22fa1a8115082 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -812,7 +812,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -444,7 +444,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { } private static boolean isInWorldBoundsHorizontal(BlockPos pos) { @@ -18,7 +18,7 @@ index 17f8dc044619bfa055f67f12cd9a296504ac76ee..b5815acea75cd70f65d9eb2b554b435c private static boolean isOutsideSpawnableHeight(int y) { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 499452383527844354b39b43fb2ea0853ba5478e..d4fae4420b96520b2e1f6db40141e5392559c6fe 100644 +index f22048c66f28a0c2cb6edb6afda4d3cf1469d913..7899e9c905dd420821f1c422c6c07e63ac4d3121 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -312,9 +312,24 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/server/0810-Custom-Chat-Completion-Suggestions-API.patch b/patches/server/0800-Custom-Chat-Completion-Suggestions-API.patch similarity index 100% rename from patches/server/0810-Custom-Chat-Completion-Suggestions-API.patch rename to patches/server/0800-Custom-Chat-Completion-Suggestions-API.patch diff --git a/patches/server/0811-Add-and-fix-missing-BlockFadeEvents.patch b/patches/server/0801-Add-and-fix-missing-BlockFadeEvents.patch similarity index 100% rename from patches/server/0811-Add-and-fix-missing-BlockFadeEvents.patch rename to patches/server/0801-Add-and-fix-missing-BlockFadeEvents.patch diff --git a/patches/server/0812-Collision-API.patch b/patches/server/0802-Collision-API.patch similarity index 100% rename from patches/server/0812-Collision-API.patch rename to patches/server/0802-Collision-API.patch diff --git a/patches/server/0813-Fix-suggest-command-message-for-brigadier-syntax-exc.patch b/patches/server/0803-Fix-suggest-command-message-for-brigadier-syntax-exc.patch similarity index 92% rename from patches/server/0813-Fix-suggest-command-message-for-brigadier-syntax-exc.patch rename to patches/server/0803-Fix-suggest-command-message-for-brigadier-syntax-exc.patch index c042d5812..8645146d6 100644 --- a/patches/server/0813-Fix-suggest-command-message-for-brigadier-syntax-exc.patch +++ b/patches/server/0803-Fix-suggest-command-message-for-brigadier-syntax-exc.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Fix suggest command message for brigadier syntax exceptions This is a bug accidentally introduced in upstream CB diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java -index 4cec7e5b1086064650af50cc9b89da274c74bfd0..c1a80e0aa6692205f14d01b3c8c069e452101525 100644 +index 8be58d29f2a4753a241e68bd305b3e30186ca0e9..dd7c1ac97505ce7a846aa8ee91bb654d060acc1a 100644 --- a/src/main/java/net/minecraft/commands/Commands.java +++ b/src/main/java/net/minecraft/commands/Commands.java @@ -392,7 +392,7 @@ public class Commands { diff --git a/patches/server/0814-Block-Ticking-API.patch b/patches/server/0804-Block-Ticking-API.patch similarity index 100% rename from patches/server/0814-Block-Ticking-API.patch rename to patches/server/0804-Block-Ticking-API.patch diff --git a/patches/server/0815-Add-Velocity-IP-Forwarding-Support.patch b/patches/server/0805-Add-Velocity-IP-Forwarding-Support.patch similarity index 97% rename from patches/server/0815-Add-Velocity-IP-Forwarding-Support.patch rename to patches/server/0805-Add-Velocity-IP-Forwarding-Support.patch index 9db3935d7..cd339cb4f 100644 --- a/patches/server/0815-Add-Velocity-IP-Forwarding-Support.patch +++ b/patches/server/0805-Add-Velocity-IP-Forwarding-Support.patch @@ -134,7 +134,7 @@ index 30b9685963ffc620846c220d1fff3fda834f1ffa..6de6dad36203479677a29ad61e21bc36 DedicatedServer.LOGGER.warn("While this makes the game possible to play without internet access, it also opens up the ability for hackers to connect with any username they choose."); } diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index c03329267a2a97af32a0c2c9d7e94fa00596e1cf..399786839bb9dbf96d2ecd654f999cb944cf2822 100644 +index ebda34825bbd10145a81d54c345e31c2a4fb5de4..42ae62bdbe11fdfbacebf621d64e7c4985bbd1c7 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java @@ -64,6 +64,7 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, @@ -162,7 +162,7 @@ index c03329267a2a97af32a0c2c9d7e94fa00596e1cf..399786839bb9dbf96d2ecd654f999cb9 // CraftBukkit start // Paper start - Cache authenticator threads authenticatorPool.execute(new Runnable() { -@@ -291,6 +302,12 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -289,6 +300,12 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, // CraftBukkit start private GameProfile callPlayerPreLoginEvents(GameProfile gameprofile) throws Exception { // Paper - Add more fields to AsyncPlayerPreLoginEvent @@ -175,7 +175,7 @@ index c03329267a2a97af32a0c2c9d7e94fa00596e1cf..399786839bb9dbf96d2ecd654f999cb9 String playerName = gameprofile.getName(); java.net.InetAddress address = ((java.net.InetSocketAddress) this.connection.getRemoteAddress()).getAddress(); java.util.UUID uniqueId = gameprofile.getId(); -@@ -336,6 +353,51 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -334,6 +351,51 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, @Override public void handleCustomQueryPacket(ServerboundCustomQueryAnswerPacket packet) { @@ -228,7 +228,7 @@ index c03329267a2a97af32a0c2c9d7e94fa00596e1cf..399786839bb9dbf96d2ecd654f999cb9 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 874387cce637c0adc3ded0f45f169c2c3b213d0d..1b4837ddb216d66164a893f5a34c0505c6f1aab2 100644 +index 0d1fbb78394e60666d17fb7be67d5716d02a3099..fd31a716ec66235970af4854dd7d83c1f88e229d 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -803,7 +803,7 @@ public final class CraftServer implements Server { diff --git a/patches/server/0816-Add-NamespacedKey-biome-methods.patch b/patches/server/0806-Add-NamespacedKey-biome-methods.patch similarity index 100% rename from patches/server/0816-Add-NamespacedKey-biome-methods.patch rename to patches/server/0806-Add-NamespacedKey-biome-methods.patch diff --git a/patches/server/0817-Fix-plugin-loggers-on-server-shutdown.patch b/patches/server/0807-Fix-plugin-loggers-on-server-shutdown.patch similarity index 96% rename from patches/server/0817-Fix-plugin-loggers-on-server-shutdown.patch rename to patches/server/0807-Fix-plugin-loggers-on-server-shutdown.patch index df7630d2f..a85156624 100644 --- a/patches/server/0817-Fix-plugin-loggers-on-server-shutdown.patch +++ b/patches/server/0807-Fix-plugin-loggers-on-server-shutdown.patch @@ -37,7 +37,7 @@ index 0000000000000000000000000000000000000000..c1d3bac79bb8b4796c013ff4472f75dc + } +} diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index c3ce869eb8c53ba01f41840d050502ce94771253..ed9839ff23d0810912a6961979690c3fe9fc0e16 100644 +index d42d9b38a9334e1e2b83fde671757ec191898c4b..8d39cce9f938260817f00f42326771be8ff0fbaf 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1026,6 +1026,7 @@ 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 35ea0d337684f8ff41142c1defc05121f1348ef7..fd0af0cbcef59ff1c23e65a1e214fb9939a56a6e 100644 +index 6b561cb21497f214b82d8d91affb79ce1f63fbad..fca8970baaf7dea9397024f8c1aa2a044f7b721c 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3056,37 +3056,15 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -54,7 +54,7 @@ index 35ea0d337684f8ff41142c1defc05121f1348ef7..fd0af0cbcef59ff1c23e65a1e214fb99 this.level().getProfiler().pop(); this.animStep += f2; diff --git a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java -index cd9ef09e2d975ab16a3b96b8662477b687d58a4f..d01570d7c3c8c4bd40cafc32d02774b789355460 100644 +index 20842ed5b730dda88efd0cda9292a37f879a4017..0a207f3f2e4c0790e784fb4b0c3c2dfa49c39724 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java +++ b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java @@ -259,13 +259,7 @@ public abstract class Projectile extends Entity implements TraceableEntity { diff --git a/patches/server/0819-Fire-EntityChangeBlockEvent-in-more-places.patch b/patches/server/0809-Fire-EntityChangeBlockEvent-in-more-places.patch similarity index 100% rename from patches/server/0819-Fire-EntityChangeBlockEvent-in-more-places.patch rename to patches/server/0809-Fire-EntityChangeBlockEvent-in-more-places.patch diff --git a/patches/server/0820-Missing-eating-regain-reason.patch b/patches/server/0810-Missing-eating-regain-reason.patch similarity index 100% rename from patches/server/0820-Missing-eating-regain-reason.patch rename to patches/server/0810-Missing-eating-regain-reason.patch diff --git a/patches/server/0821-Missing-effect-cause.patch b/patches/server/0811-Missing-effect-cause.patch similarity index 100% rename from patches/server/0821-Missing-effect-cause.patch rename to patches/server/0811-Missing-effect-cause.patch diff --git a/patches/server/0822-Added-byte-array-serialization-deserialization-for-P.patch b/patches/server/0812-Added-byte-array-serialization-deserialization-for-P.patch similarity index 100% rename from patches/server/0822-Added-byte-array-serialization-deserialization-for-P.patch rename to patches/server/0812-Added-byte-array-serialization-deserialization-for-P.patch diff --git a/patches/server/0823-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch b/patches/server/0813-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch similarity index 100% rename from patches/server/0823-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch rename to patches/server/0813-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch diff --git a/patches/server/0824-Call-BlockPhysicsEvent-more-often.patch b/patches/server/0814-Call-BlockPhysicsEvent-more-often.patch similarity index 100% rename from patches/server/0824-Call-BlockPhysicsEvent-more-often.patch rename to patches/server/0814-Call-BlockPhysicsEvent-more-often.patch diff --git a/patches/server/0825-Configurable-chat-thread-limit.patch b/patches/server/0815-Configurable-chat-thread-limit.patch similarity index 100% rename from patches/server/0825-Configurable-chat-thread-limit.patch rename to patches/server/0815-Configurable-chat-thread-limit.patch diff --git a/patches/server/0826-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch b/patches/server/0816-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch similarity index 100% rename from patches/server/0826-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch rename to patches/server/0816-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch diff --git a/patches/server/0827-fix-Jigsaw-block-kicking-user.patch b/patches/server/0817-fix-Jigsaw-block-kicking-user.patch similarity index 100% rename from patches/server/0827-fix-Jigsaw-block-kicking-user.patch rename to patches/server/0817-fix-Jigsaw-block-kicking-user.patch diff --git a/patches/server/0828-use-BlockFormEvent-for-mud-converting-into-clay.patch b/patches/server/0818-use-BlockFormEvent-for-mud-converting-into-clay.patch similarity index 100% rename from patches/server/0828-use-BlockFormEvent-for-mud-converting-into-clay.patch rename to patches/server/0818-use-BlockFormEvent-for-mud-converting-into-clay.patch diff --git a/patches/server/0829-Add-getDrops-to-BlockState.patch b/patches/server/0819-Add-getDrops-to-BlockState.patch similarity index 100% rename from patches/server/0829-Add-getDrops-to-BlockState.patch rename to patches/server/0819-Add-getDrops-to-BlockState.patch diff --git a/patches/server/0830-Fix-a-bunch-of-vanilla-bugs.patch b/patches/server/0820-Fix-a-bunch-of-vanilla-bugs.patch similarity index 96% rename from patches/server/0830-Fix-a-bunch-of-vanilla-bugs.patch rename to patches/server/0820-Fix-a-bunch-of-vanilla-bugs.patch index c8051b90c..152d11762 100644 --- a/patches/server/0830-Fix-a-bunch-of-vanilla-bugs.patch +++ b/patches/server/0820-Fix-a-bunch-of-vanilla-bugs.patch @@ -113,7 +113,7 @@ index 6cd6d69a20e95e344fc18ab67dc300824537a59b..2e2a7c2cf3081187da817479a9da3eb1 } } diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index f761d600bb5d995a25ffbbe5469625508de1f8bc..7fa3066575fd8e762dcf5de59a333e15044226e8 100644 +index dd16f13ca44cda3051a38085f6de117a475ce797..879a07656954fa2492db19a5fa158571de538a4f 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -894,7 +894,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -126,10 +126,10 @@ index f761d600bb5d995a25ffbbe5469625508de1f8bc..7fa3066575fd8e762dcf5de59a333e15 return this.anyPlayerCloseEnoughForSpawning(pos, false); } diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 3d5e055e9ad5dff1ccc0836bd88bbacf09c02173..4f121bf2e36d9d76bb4e7b3c379969105c12065e 100644 +index b15b3c1216baa84f696881deeae2de9d81201e27..f3884f7169835d3d65b8935ee41038f80306a61b 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -1027,7 +1027,7 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -1006,7 +1006,7 @@ public class ServerLevel extends Level implements WorldGenLevel { } else { AABB axisalignedbb = AABB.encapsulatingFullBlocks(blockposition1, new BlockPos(blockposition1.atY(this.getMaxBuildHeight()))).inflate(3.0D); List list = this.getEntitiesOfClass(LivingEntity.class, axisalignedbb, (entityliving) -> { @@ -139,7 +139,7 @@ index 3d5e055e9ad5dff1ccc0836bd88bbacf09c02173..4f121bf2e36d9d76bb4e7b3c37996910 if (!list.isEmpty()) { diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 4cad73c9d53198dff598ae2cbc4ff0ea8fc9e828..5bfeb1d214817b425f89265375281395e326c101 100644 +index 1b9459aeb7a676cb3ac1fbee3561f21923d9b20d..b43baee9a03f17801712e8a1af3317e1297248ab 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -468,14 +468,14 @@ public class ServerPlayer extends Player { @@ -148,7 +148,7 @@ index 4cad73c9d53198dff598ae2cbc4ff0ea8fc9e828..5bfeb1d214817b425f89265375281395 if (blockposition1 != null) { - this.moveTo(blockposition1, 0.0F, 0.0F); + this.moveTo(blockposition1, world.getSharedSpawnAngle(), 0.0F); // Paper - MC-200092 - fix first spawn pos yaw being ignored - if (world.noCollision(this, this.getBoundingBox(), true)) { // Paper - make sure this loads chunks, we default to NOT loading now + if (world.noCollision((Entity) this)) { break; } } @@ -157,10 +157,10 @@ index 4cad73c9d53198dff598ae2cbc4ff0ea8fc9e828..5bfeb1d214817b425f89265375281395 - this.moveTo(blockposition, 0.0F, 0.0F); + this.moveTo(blockposition, world.getSharedSpawnAngle(), 0.0F); // Paper - MC-200092 - fix first spawn pos yaw being ignored - while (!world.noCollision(this, this.getBoundingBox(), true) && this.getY() < (double) (world.getMaxBuildHeight() - 1)) { // Paper - make sure this loads chunks, we default to NOT loading now + while (!world.noCollision((Entity) this) && this.getY() < (double) (world.getMaxBuildHeight() - 1)) { this.setPos(this.getX(), this.getY() + 1.0D, this.getZ()); diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index fc19c68c19d443be654a5600f633d3a77f7069c1..9503511b28888e98ed65befdb95d03685ae9e5e1 100644 +index c24701ed78824dc5377f8517dedf6a5aeff0614d..a38cda0029af022eccb12c12f1652fa8053b2aa6 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java @@ -92,7 +92,7 @@ public class ServerPlayerGameMode { @@ -173,7 +173,7 @@ index fc19c68c19d443be654a5600f633d3a77f7069c1..9503511b28888e98ed65befdb95d0368 this.player.server.getPlayerList().broadcastAll(new ClientboundPlayerInfoUpdatePacket(ClientboundPlayerInfoUpdatePacket.Action.UPDATE_GAME_MODE, this.player), this.player); // CraftBukkit this.level.updateSleepingPlayerList(); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index f22ca56e6acd56d894bd26d46133e835c7901b72..d2d21ccc45381787698c84870537ba11ebb75127 100644 +index c0ffcca75509b1ccee155c799ad8fbdfa657db26..56242bc33ed435e3ab06d7c7bebc05c255538633 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -711,8 +711,10 @@ public abstract class PlayerList { diff --git a/patches/server/0831-Remove-unnecessary-onTrackingStart-during-navigation.patch b/patches/server/0821-Remove-unnecessary-onTrackingStart-during-navigation.patch similarity index 88% rename from patches/server/0831-Remove-unnecessary-onTrackingStart-during-navigation.patch rename to patches/server/0821-Remove-unnecessary-onTrackingStart-during-navigation.patch index 0b9ee9c5b..e70e8070c 100644 --- a/patches/server/0831-Remove-unnecessary-onTrackingStart-during-navigation.patch +++ b/patches/server/0821-Remove-unnecessary-onTrackingStart-during-navigation.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Remove unnecessary onTrackingStart during navigation warning diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 4f121bf2e36d9d76bb4e7b3c379969105c12065e..f1f0056157d209ba5d987b6e09ce1fc020920fd9 100644 +index f3884f7169835d3d65b8935ee41038f80306a61b..528901e658cf553de0580bcff21e42740b5d0cd4 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -2621,7 +2621,7 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -2566,7 +2566,7 @@ public class ServerLevel extends Level implements WorldGenLevel { if (entity instanceof Mob) { Mob entityinsentient = (Mob) entity; @@ -17,7 +17,7 @@ index 4f121bf2e36d9d76bb4e7b3c379969105c12065e..f1f0056157d209ba5d987b6e09ce1fc0 String s = "onTrackingStart called during navigation iteration"; Util.logAndPauseIfInIde("onTrackingStart called during navigation iteration", new IllegalStateException("onTrackingStart called during navigation iteration")); -@@ -2707,7 +2707,7 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -2652,7 +2652,7 @@ public class ServerLevel extends Level implements WorldGenLevel { if (entity instanceof Mob) { Mob entityinsentient = (Mob) entity; diff --git a/patches/server/0832-Fix-custom-piglin-loved-items.patch b/patches/server/0822-Fix-custom-piglin-loved-items.patch similarity index 100% rename from patches/server/0832-Fix-custom-piglin-loved-items.patch rename to patches/server/0822-Fix-custom-piglin-loved-items.patch diff --git a/patches/server/0833-EntityPickupItemEvent-fixes.patch b/patches/server/0823-EntityPickupItemEvent-fixes.patch similarity index 100% rename from patches/server/0833-EntityPickupItemEvent-fixes.patch rename to patches/server/0823-EntityPickupItemEvent-fixes.patch diff --git a/patches/server/0834-Correctly-handle-interactions-with-items-on-cooldown.patch b/patches/server/0824-Correctly-handle-interactions-with-items-on-cooldown.patch similarity index 95% rename from patches/server/0834-Correctly-handle-interactions-with-items-on-cooldown.patch rename to patches/server/0824-Correctly-handle-interactions-with-items-on-cooldown.patch index ce6388407..88286e595 100644 --- a/patches/server/0834-Correctly-handle-interactions-with-items-on-cooldown.patch +++ b/patches/server/0824-Correctly-handle-interactions-with-items-on-cooldown.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Correctly handle interactions with items on cooldown diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index 9503511b28888e98ed65befdb95d03685ae9e5e1..870447743db05043f6d3c0f2a699310077529636 100644 +index a38cda0029af022eccb12c12f1652fa8053b2aa6..521fc5fd6b66c7095c729dd4aaf49bbc443f0200 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java @@ -516,6 +516,7 @@ public class ServerPlayerGameMode { @@ -30,7 +30,7 @@ index 9503511b28888e98ed65befdb95d03685ae9e5e1..870447743db05043f6d3c0f2a6993100 this.interactResult = event.useItemInHand() == Event.Result.DENY; this.interactPosition = blockposition.immutable(); diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 269a3837becfe8eb56997276e840c7055e10e6eb..fe855fd532e80a2d6b10053670dfb1b8fc009ac2 100644 +index 52a4a2b90f5b4684ffb94bf1db6020490e14942d..944bb12b14d50cdd7064ae7300c71465e15cb217 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -543,7 +543,13 @@ public class CraftEventFactory { diff --git a/patches/server/0835-Add-PlayerInventorySlotChangeEvent.patch b/patches/server/0825-Add-PlayerInventorySlotChangeEvent.patch similarity index 97% rename from patches/server/0835-Add-PlayerInventorySlotChangeEvent.patch rename to patches/server/0825-Add-PlayerInventorySlotChangeEvent.patch index fc01c1ca3..9fcf5ded6 100644 --- a/patches/server/0835-Add-PlayerInventorySlotChangeEvent.patch +++ b/patches/server/0825-Add-PlayerInventorySlotChangeEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add PlayerInventorySlotChangeEvent diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 5bfeb1d214817b425f89265375281395e326c101..cdd5c2fa44d114058391b78434e1cb268c40dc6e 100644 +index b43baee9a03f17801712e8a1af3317e1297248ab..de80b618efcf9f0ceae40ed0b53d3436afca27b8 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -379,6 +379,25 @@ public class ServerPlayer extends Player { diff --git a/patches/server/0836-Elder-Guardian-appearance-API.patch b/patches/server/0826-Elder-Guardian-appearance-API.patch similarity index 100% rename from patches/server/0836-Elder-Guardian-appearance-API.patch rename to patches/server/0826-Elder-Guardian-appearance-API.patch diff --git a/patches/server/0837-Allow-changing-bed-s-occupied-property.patch b/patches/server/0827-Allow-changing-bed-s-occupied-property.patch similarity index 100% rename from patches/server/0837-Allow-changing-bed-s-occupied-property.patch rename to patches/server/0827-Allow-changing-bed-s-occupied-property.patch diff --git a/patches/server/0838-Add-entity-knockback-API.patch b/patches/server/0828-Add-entity-knockback-API.patch similarity index 100% rename from patches/server/0838-Add-entity-knockback-API.patch rename to patches/server/0828-Add-entity-knockback-API.patch diff --git a/patches/server/0839-Detect-headless-JREs.patch b/patches/server/0829-Detect-headless-JREs.patch similarity index 100% rename from patches/server/0839-Detect-headless-JREs.patch rename to patches/server/0829-Detect-headless-JREs.patch diff --git a/patches/server/0840-fix-entity-vehicle-collision-event-not-called.patch b/patches/server/0830-fix-entity-vehicle-collision-event-not-called.patch similarity index 100% rename from patches/server/0840-fix-entity-vehicle-collision-event-not-called.patch rename to patches/server/0830-fix-entity-vehicle-collision-event-not-called.patch diff --git a/patches/server/0842-Add-EntityToggleSitEvent.patch b/patches/server/0831-Add-EntityToggleSitEvent.patch similarity index 100% rename from patches/server/0842-Add-EntityToggleSitEvent.patch rename to patches/server/0831-Add-EntityToggleSitEvent.patch diff --git a/patches/server/0843-Add-fire-tick-delay-option.patch b/patches/server/0832-Add-fire-tick-delay-option.patch similarity index 100% rename from patches/server/0843-Add-fire-tick-delay-option.patch rename to patches/server/0832-Add-fire-tick-delay-option.patch diff --git a/patches/server/0844-Add-Moving-Piston-API.patch b/patches/server/0833-Add-Moving-Piston-API.patch similarity index 100% rename from patches/server/0844-Add-Moving-Piston-API.patch rename to patches/server/0833-Add-Moving-Piston-API.patch diff --git a/patches/server/0845-Ignore-impossible-spawn-tick.patch b/patches/server/0834-Ignore-impossible-spawn-tick.patch similarity index 90% rename from patches/server/0845-Ignore-impossible-spawn-tick.patch rename to patches/server/0834-Ignore-impossible-spawn-tick.patch index 9c98b5193..fc336b2c2 100644 --- a/patches/server/0845-Ignore-impossible-spawn-tick.patch +++ b/patches/server/0834-Ignore-impossible-spawn-tick.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Ignore impossible spawn tick diff --git a/src/main/java/net/minecraft/world/level/BaseSpawner.java b/src/main/java/net/minecraft/world/level/BaseSpawner.java -index b90c1e4e03f85dbfa7134bffd8da59330cea1e28..21b5765a12c5e4998870601e9665bd066a4ea471 100644 +index a9c74ef33182505b6982fea273a760e937ddbf51..7d08099b82dc47cf4b1ce49c721a4aca90b489af 100644 --- a/src/main/java/net/minecraft/world/level/BaseSpawner.java +++ b/src/main/java/net/minecraft/world/level/BaseSpawner.java @@ -82,6 +82,7 @@ public abstract class BaseSpawner { diff --git a/patches/server/0846-Track-projectile-source-for-fireworks-from-dispenser.patch b/patches/server/0835-Track-projectile-source-for-fireworks-from-dispenser.patch similarity index 100% rename from patches/server/0846-Track-projectile-source-for-fireworks-from-dispenser.patch rename to patches/server/0835-Track-projectile-source-for-fireworks-from-dispenser.patch diff --git a/patches/server/0847-Fix-EntityArgument-suggestion-permissions-to-align-w.patch b/patches/server/0836-Fix-EntityArgument-suggestion-permissions-to-align-w.patch similarity index 84% rename from patches/server/0847-Fix-EntityArgument-suggestion-permissions-to-align-w.patch rename to patches/server/0836-Fix-EntityArgument-suggestion-permissions-to-align-w.patch index e8c896203..8a2c14c67 100644 --- a/patches/server/0847-Fix-EntityArgument-suggestion-permissions-to-align-w.patch +++ b/patches/server/0836-Fix-EntityArgument-suggestion-permissions-to-align-w.patch @@ -9,19 +9,19 @@ suggestions, which especially matters when we force suggestions to the server for this type diff --git a/src/main/java/net/minecraft/commands/arguments/EntityArgument.java b/src/main/java/net/minecraft/commands/arguments/EntityArgument.java -index d93698fd814683d451a3c8e8bcbb9cd475c79515..8d79cfa371546996ef65f94232c1d344e7c590ec 100644 +index 850db283bf12345e9e7d7e8e590dbe8135c6dce1..8e008e752c5b11781088e2b4b5ba180bacb59326 100644 --- a/src/main/java/net/minecraft/commands/arguments/EntityArgument.java +++ b/src/main/java/net/minecraft/commands/arguments/EntityArgument.java @@ -128,7 +128,12 @@ public class EntityArgument implements ArgumentType { StringReader stringreader = new StringReader(suggestionsbuilder.getInput()); stringreader.setCursor(suggestionsbuilder.getStart()); -- EntitySelectorParser argumentparserselector = new EntitySelectorParser(stringreader, icompletionprovider.hasPermission(2), true); // Paper - tell clients to ask server for suggestions for EntityArguments +- EntitySelectorParser argumentparserselector = new EntitySelectorParser(stringreader, icompletionprovider.hasPermission(2)); + // Paper start - Fix EntityArgument suggestion permissions + final boolean permission = object instanceof CommandSourceStack stack + ? stack.bypassSelectorPermissions || stack.hasPermission(2, "minecraft.command.selector") + : icompletionprovider.hasPermission(2); -+ EntitySelectorParser argumentparserselector = new EntitySelectorParser(stringreader, permission, true); // Paper - tell clients to ask server for suggestions for EntityArguments ++ EntitySelectorParser argumentparserselector = new EntitySelectorParser(stringreader, permission); + // Paper end - Fix EntityArgument suggestion permissions try { diff --git a/patches/server/0848-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch b/patches/server/0837-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch similarity index 92% rename from patches/server/0848-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch rename to patches/server/0837-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch index 52bbf4436..7b4cc4c7a 100644 --- a/patches/server/0848-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch +++ b/patches/server/0837-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Fix EntityCombustEvent cancellation cant fully prevent diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 4ac42a1cac859853f64fa5de3e709e7826d1f27f..888a8f5920083a24601d13123b6defd12b6b64d7 100644 +index 0ab98129e5d3e09046b76938a7246a89602b95a9..df64101be3440828479ef4afeb70140eb4bdd9da 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3377,6 +3377,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -3191,6 +3191,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S pluginManager.callEvent(entityCombustEvent); if (!entityCombustEvent.isCancelled()) { this.setSecondsOnFire(entityCombustEvent.getDuration(), false); diff --git a/patches/server/0849-Add-PrePlayerAttackEntityEvent.patch b/patches/server/0838-Add-PrePlayerAttackEntityEvent.patch similarity index 93% rename from patches/server/0849-Add-PrePlayerAttackEntityEvent.patch rename to patches/server/0838-Add-PrePlayerAttackEntityEvent.patch index de0539fb9..99884e7e7 100644 --- a/patches/server/0849-Add-PrePlayerAttackEntityEvent.patch +++ b/patches/server/0838-Add-PrePlayerAttackEntityEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add PrePlayerAttackEntityEvent diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index 61516fbc3cbfb3aa85895b4458b5319752149f73..d72ea2f3d9528f79149791e34065ea1f299cd089 100644 +index dbecf65fdd4e094b9b8b8f9267618934642db40f..06aef23895f486efc7eb00c35df356d0a88d58ed 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -1240,8 +1240,17 @@ public abstract class Player extends LivingEntity { diff --git a/patches/server/0850-ensure-reset-EnderDragon-boss-event-name.patch b/patches/server/0839-ensure-reset-EnderDragon-boss-event-name.patch similarity index 100% rename from patches/server/0850-ensure-reset-EnderDragon-boss-event-name.patch rename to patches/server/0839-ensure-reset-EnderDragon-boss-event-name.patch diff --git a/patches/server/0851-fix-MC-252817-green-map-markers-do-not-disappear.patch b/patches/server/0840-fix-MC-252817-green-map-markers-do-not-disappear.patch similarity index 100% rename from patches/server/0851-fix-MC-252817-green-map-markers-do-not-disappear.patch rename to patches/server/0840-fix-MC-252817-green-map-markers-do-not-disappear.patch diff --git a/patches/server/0852-Add-Player-Warden-Warning-API.patch b/patches/server/0841-Add-Player-Warden-Warning-API.patch similarity index 100% rename from patches/server/0852-Add-Player-Warden-Warning-API.patch rename to patches/server/0841-Add-Player-Warden-Warning-API.patch diff --git a/patches/server/0853-More-vanilla-friendly-methods-to-update-trades.patch b/patches/server/0842-More-vanilla-friendly-methods-to-update-trades.patch similarity index 97% rename from patches/server/0853-More-vanilla-friendly-methods-to-update-trades.patch rename to patches/server/0842-More-vanilla-friendly-methods-to-update-trades.patch index 0617aa53a..7bb1eafa6 100644 --- a/patches/server/0853-More-vanilla-friendly-methods-to-update-trades.patch +++ b/patches/server/0842-More-vanilla-friendly-methods-to-update-trades.patch @@ -5,7 +5,7 @@ Subject: [PATCH] More vanilla friendly methods to update trades diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java -index b33fa26d6e3cf8999fb24137069d0a4178f82caf..5c2010fb247462433bed6ae58d88a72c4e137ede 100644 +index fb5d4b1a86d00fce9482ed4fd4ae71fdcdb63781..1aae466e3e334d7f4bbb3ea9365a255afcc3dd3a 100644 --- a/src/main/java/net/minecraft/world/entity/npc/Villager.java +++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java @@ -944,6 +944,12 @@ public class Villager extends AbstractVillager implements ReputationEventHandler diff --git a/patches/server/0854-Add-paper-dumplisteners-command.patch b/patches/server/0843-Add-paper-dumplisteners-command.patch similarity index 100% rename from patches/server/0854-Add-paper-dumplisteners-command.patch rename to patches/server/0843-Add-paper-dumplisteners-command.patch diff --git a/patches/server/0855-check-global-player-list-where-appropriate.patch b/patches/server/0844-check-global-player-list-where-appropriate.patch similarity index 92% rename from patches/server/0855-check-global-player-list-where-appropriate.patch rename to patches/server/0844-check-global-player-list-where-appropriate.patch index 8ce81166b..9e3e8c00b 100644 --- a/patches/server/0855-check-global-player-list-where-appropriate.patch +++ b/patches/server/0844-check-global-player-list-where-appropriate.patch @@ -7,10 +7,10 @@ Makes certain entities check all players when searching for a player instead of just checking players in their world. diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index f1f0056157d209ba5d987b6e09ce1fc020920fd9..5b2de5cdac2440a4043c34525a0852067aa9371f 100644 +index 528901e658cf553de0580bcff21e42740b5d0cd4..a15bdf56c32b16c143c3060dc7d5f61544f8dc5f 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -2744,4 +2744,12 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -2689,4 +2689,12 @@ public class ServerLevel extends Level implements WorldGenLevel { entity.updateDynamicGameEventListener(DynamicGameEventListener::move); } } @@ -24,7 +24,7 @@ index f1f0056157d209ba5d987b6e09ce1fc020920fd9..5b2de5cdac2440a4043c34525a085206 + // Paper end - check global player list where appropriate } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index fd0af0cbcef59ff1c23e65a1e214fb9939a56a6e..49fdc6d198cc7af31e6c1d1ba52c8adc0fae433f 100644 +index fca8970baaf7dea9397024f8c1aa2a044f7b721c..39a6823a2fef8c3907a39fc611489e07cdf6d1e1 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3678,7 +3678,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -50,10 +50,10 @@ index d4ac3e566b47cfc8688bcc2ab08385b6de4693f8..7de9d012e7416eaa0189b513a0972c84 if (entityhuman instanceof ServerPlayer) { CriteriaTriggers.CURED_ZOMBIE_VILLAGER.trigger((ServerPlayer) entityhuman, this, entityvillager); diff --git a/src/main/java/net/minecraft/world/level/EntityGetter.java b/src/main/java/net/minecraft/world/level/EntityGetter.java -index 9f892de55ab03367daed4c30cc44c9dd8adc29ed..a3d15f30eaab29d85cb6b3d693df9980a880f686 100644 +index a25497eec004add7408a63b1a0f09e3fa443b324..8c436d16914e160be8e3074badc1293af2ae6b31 100644 --- a/src/main/java/net/minecraft/world/level/EntityGetter.java +++ b/src/main/java/net/minecraft/world/level/EntityGetter.java -@@ -280,4 +280,11 @@ public interface EntityGetter { +@@ -243,4 +243,11 @@ public interface EntityGetter { return null; } diff --git a/patches/server/0856-Fix-async-entity-add-due-to-fungus-trees.patch b/patches/server/0845-Fix-async-entity-add-due-to-fungus-trees.patch similarity index 100% rename from patches/server/0856-Fix-async-entity-add-due-to-fungus-trees.patch rename to patches/server/0845-Fix-async-entity-add-due-to-fungus-trees.patch diff --git a/patches/server/0857-ItemStack-damage-API.patch b/patches/server/0846-ItemStack-damage-API.patch similarity index 100% rename from patches/server/0857-ItemStack-damage-API.patch rename to patches/server/0846-ItemStack-damage-API.patch diff --git a/patches/server/0858-Friction-API.patch b/patches/server/0847-Friction-API.patch similarity index 100% rename from patches/server/0858-Friction-API.patch rename to patches/server/0847-Friction-API.patch diff --git a/patches/server/0859-Ability-to-control-player-s-insomnia-and-phantoms.patch b/patches/server/0848-Ability-to-control-player-s-insomnia-and-phantoms.patch similarity index 100% rename from patches/server/0859-Ability-to-control-player-s-insomnia-and-phantoms.patch rename to patches/server/0848-Ability-to-control-player-s-insomnia-and-phantoms.patch diff --git a/patches/server/0860-Fix-player-kick-on-shutdown.patch b/patches/server/0849-Fix-player-kick-on-shutdown.patch similarity index 81% rename from patches/server/0860-Fix-player-kick-on-shutdown.patch rename to patches/server/0849-Fix-player-kick-on-shutdown.patch index 6c78f5fc9..0c36dc939 100644 --- a/patches/server/0860-Fix-player-kick-on-shutdown.patch +++ b/patches/server/0849-Fix-player-kick-on-shutdown.patch @@ -9,15 +9,15 @@ also check if all packets are ignored during the shutdown process. See net.minecraft.network.Connection#channelRead0(ChannelHandlerContext, Packet) and net.minecraft.util.thread.BlockableEventLoop#executeIfPossible(Runnable) diff --git a/src/main/java/net/minecraft/network/protocol/PacketUtils.java b/src/main/java/net/minecraft/network/protocol/PacketUtils.java -index 7297bca9224c12d7ace0e1967340d99436afafc1..3e2d5dcd62775b6ed7c0ce0ba51a71b635b1d644 100644 +index 7de24c39b460e43d27839b3821e67213508ece81..454d0187ff8370a0d99cca051ee0a8c50b39cfb7 100644 --- a/src/main/java/net/minecraft/network/protocol/PacketUtils.java +++ b/src/main/java/net/minecraft/network/protocol/PacketUtils.java -@@ -44,7 +44,7 @@ public class PacketUtils { +@@ -26,7 +26,7 @@ public class PacketUtils { public static void ensureRunningOnSameThread(Packet packet, T listener, BlockableEventLoop engine) throws RunningOnDifferentThreadException { if (!engine.isSameThread()) { - engine.executeIfPossible(() -> { + engine.execute(() -> { // Paper - Fix preemptive player kick on a server shutdown - packetProcessing.push(listener); // Paper - detailed watchdog information - try { // Paper - detailed watchdog information if (MinecraftServer.getServer().hasStopped() || (listener instanceof ServerCommonPacketListenerImpl && ((ServerCommonPacketListenerImpl) listener).processedDisconnect)) return; // CraftBukkit, MC-142590 + if (listener.shouldHandleMessage(packet)) { + co.aikar.timings.Timing timing = co.aikar.timings.MinecraftTimings.getPacketTiming(packet); // Paper - timings diff --git a/patches/server/0861-Sync-offhand-slot-in-menus.patch b/patches/server/0850-Sync-offhand-slot-in-menus.patch similarity index 97% rename from patches/server/0861-Sync-offhand-slot-in-menus.patch rename to patches/server/0850-Sync-offhand-slot-in-menus.patch index b04cc1689..ac269b60c 100644 --- a/patches/server/0861-Sync-offhand-slot-in-menus.patch +++ b/patches/server/0850-Sync-offhand-slot-in-menus.patch @@ -8,7 +8,7 @@ offhand slot isn't sent. This is not correct because you *can* put stuff into th by pressing the offhand swap item diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index cdd5c2fa44d114058391b78434e1cb268c40dc6e..fb2ac7c4b9d938bc699ddc7475e2c3c3777cd056 100644 +index de80b618efcf9f0ceae40ed0b53d3436afca27b8..46a69ef6794065e144e4948ad165a1ea0f0e2f33 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -348,6 +348,13 @@ public class ServerPlayer extends Player { diff --git a/patches/server/0862-Player-Entity-Tracking-Events.patch b/patches/server/0851-Player-Entity-Tracking-Events.patch similarity index 90% rename from patches/server/0862-Player-Entity-Tracking-Events.patch rename to patches/server/0851-Player-Entity-Tracking-Events.patch index 58c861db2..258f23746 100644 --- a/patches/server/0862-Player-Entity-Tracking-Events.patch +++ b/patches/server/0851-Player-Entity-Tracking-Events.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Player Entity Tracking Events diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 7fa3066575fd8e762dcf5de59a333e15044226e8..6ccd2a5a334c846850a9d064210f2d7f1d311470 100644 +index 879a07656954fa2492db19a5fa158571de538a4f..4a597dd278947c7992d3c09e0813780689cbd9ab 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -1405,7 +1405,11 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -21,10 +21,10 @@ index 7fa3066575fd8e762dcf5de59a333e15044226e8..6ccd2a5a334c846850a9d064210f2d7f } else if (this.seenBy.remove(player.connection)) { this.serverEntity.removePairing(player); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 888a8f5920083a24601d13123b6defd12b6b64d7..c15c3e4da36c8804934c2c0b046aabd457be6855 100644 +index df64101be3440828479ef4afeb70140eb4bdd9da..c6cddb7099cf713e41b8a2478b562285e2aae3f0 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4104,7 +4104,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -3918,7 +3918,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S public void startSeenByPlayer(ServerPlayer player) {} diff --git a/patches/server/0863-Limit-pet-look-distance.patch b/patches/server/0852-Limit-pet-look-distance.patch similarity index 100% rename from patches/server/0863-Limit-pet-look-distance.patch rename to patches/server/0852-Limit-pet-look-distance.patch diff --git a/patches/server/0865-Fixes-and-additions-to-the-SpawnReason-API.patch b/patches/server/0853-Fixes-and-additions-to-the-SpawnReason-API.patch similarity index 97% rename from patches/server/0865-Fixes-and-additions-to-the-SpawnReason-API.patch rename to patches/server/0853-Fixes-and-additions-to-the-SpawnReason-API.patch index 4398db1d1..3a7ad38e7 100644 --- a/patches/server/0865-Fixes-and-additions-to-the-SpawnReason-API.patch +++ b/patches/server/0853-Fixes-and-additions-to-the-SpawnReason-API.patch @@ -8,7 +8,7 @@ Fixes some wrong reasons, and adds missing spawn reasons for entities. Co-authored-by: Doc diff --git a/src/main/java/net/minecraft/world/entity/EntityType.java b/src/main/java/net/minecraft/world/entity/EntityType.java -index 2fa2e5cada590c0f44a4735bcf20de51892f428b..3c4a57bc6159eac53fe37e817e765018d4b2bec9 100644 +index 3ddb1cc0edddcf77c1b5d6157247498cb90c57a7..847b2637434561e50e3f4f1a3e58cea50caab9f2 100644 --- a/src/main/java/net/minecraft/world/entity/EntityType.java +++ b/src/main/java/net/minecraft/world/entity/EntityType.java @@ -353,7 +353,7 @@ public class EntityType implements FeatureElement, EntityTypeT diff --git a/patches/server/0866-fix-Instruments.patch b/patches/server/0854-fix-Instruments.patch similarity index 100% rename from patches/server/0866-fix-Instruments.patch rename to patches/server/0854-fix-Instruments.patch diff --git a/patches/server/0867-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch b/patches/server/0855-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch similarity index 91% rename from patches/server/0867-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch rename to patches/server/0855-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch index 638f7e665..187a68ae3 100644 --- a/patches/server/0867-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch +++ b/patches/server/0855-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Improve inlining for some hot BlockBehavior and FluidState diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java -index 100c2629f2746fc00435f60998dba70135637ef7..7fa2b2bc9d6e7eea8b18fd649c9220945d71a4ff 100644 +index d1d00b9a078ee1f5a6c5dd51c2f0409d12c85c26..42a086dcebcdba6ce19a8d0e77ba88ba91d63669 100644 --- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java +++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java -@@ -1078,15 +1078,15 @@ public abstract class BlockBehaviour implements FeatureElement { +@@ -995,15 +995,15 @@ public abstract class BlockBehaviour implements FeatureElement { return this.shapeExceedsCube; // Paper - moved into shape cache init } @@ -28,7 +28,7 @@ index 100c2629f2746fc00435f60998dba70135637ef7..7fa2b2bc9d6e7eea8b18fd649c922094 return this.isAir; } -@@ -1170,7 +1170,7 @@ public abstract class BlockBehaviour implements FeatureElement { +@@ -1087,7 +1087,7 @@ public abstract class BlockBehaviour implements FeatureElement { } } @@ -37,7 +37,7 @@ index 100c2629f2746fc00435f60998dba70135637ef7..7fa2b2bc9d6e7eea8b18fd649c922094 return this.canOcclude; } -@@ -1378,11 +1378,11 @@ public abstract class BlockBehaviour implements FeatureElement { +@@ -1295,11 +1295,11 @@ public abstract class BlockBehaviour implements FeatureElement { return this.getBlock().builtInRegistryHolder().is(key); } diff --git a/patches/server/0868-Fix-inconsistencies-in-dispense-events-regarding-sta.patch b/patches/server/0856-Fix-inconsistencies-in-dispense-events-regarding-sta.patch similarity index 100% rename from patches/server/0868-Fix-inconsistencies-in-dispense-events-regarding-sta.patch rename to patches/server/0856-Fix-inconsistencies-in-dispense-events-regarding-sta.patch diff --git a/patches/server/0869-Add-BlockLockCheckEvent.patch b/patches/server/0857-Add-BlockLockCheckEvent.patch similarity index 100% rename from patches/server/0869-Add-BlockLockCheckEvent.patch rename to patches/server/0857-Add-BlockLockCheckEvent.patch diff --git a/patches/server/0870-Add-Sneaking-API-for-Entities.patch b/patches/server/0858-Add-Sneaking-API-for-Entities.patch similarity index 91% rename from patches/server/0870-Add-Sneaking-API-for-Entities.patch rename to patches/server/0858-Add-Sneaking-API-for-Entities.patch index 116708204..0a0f88cbe 100644 --- a/patches/server/0870-Add-Sneaking-API-for-Entities.patch +++ b/patches/server/0858-Add-Sneaking-API-for-Entities.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add Sneaking API for Entities diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 49e5a9fa95ebf4568eb875953f3032b8a7142080..35b6aa33b7715032686acdfd8e5b07d63729593b 100644 +index dab7108644aefe69448b5e361099d97354c8db1a..243726b6f503acc7d8ced18fbc4e697982a3fc4f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -871,6 +871,18 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { diff --git a/patches/server/0871-Improve-logging-and-errors.patch b/patches/server/0859-Improve-logging-and-errors.patch similarity index 97% rename from patches/server/0871-Improve-logging-and-errors.patch rename to patches/server/0859-Improve-logging-and-errors.patch index f10cdbe3e..852cf6ed5 100644 --- a/patches/server/0871-Improve-logging-and-errors.patch +++ b/patches/server/0859-Improve-logging-and-errors.patch @@ -40,10 +40,10 @@ index 536f0c496ce36ca3248fc6eeac9bbd77214a36f9..31718823250a1490b783f426fff65bf5 while (iterator.hasNext()) { diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 0fe7770fd4506980667e154c83d7024112cac26d..9b7da229e8dc8249b36e7ccf1e77997a146efb88 100644 +index e868c434be0bf223728b439df9a0db6afeaee46e..058ee906665d64b3631be5a6b9de39bd65bcf6be 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -3390,7 +3390,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3316,7 +3316,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.resetPlayerChatState(remotechatsession_a.validate(this.player.getGameProfile(), signaturevalidator)); } catch (ProfilePublicKey.ValidationException profilepublickey_b) { diff --git a/patches/server/0872-Improve-PortalEvents.patch b/patches/server/0860-Improve-PortalEvents.patch similarity index 89% rename from patches/server/0872-Improve-PortalEvents.patch rename to patches/server/0860-Improve-PortalEvents.patch index c3be19478..663ad158f 100644 --- a/patches/server/0872-Improve-PortalEvents.patch +++ b/patches/server/0860-Improve-PortalEvents.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Improve PortalEvents diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index c15c3e4da36c8804934c2c0b046aabd457be6855..2777f71abf23be6748b0a80fe4dd64a89d38ffdb 100644 +index c6cddb7099cf713e41b8a2478b562285e2aae3f0..3c9e58f033932bc6c2fad33cd54107952c19b1f2 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3762,7 +3762,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -3576,7 +3576,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S Location enter = bukkitEntity.getLocation(); Location exit = CraftLocation.toBukkit(exitPosition, exitWorldServer.getWorld()); diff --git a/patches/server/0873-Add-config-option-for-spider-worldborder-climbing.patch b/patches/server/0861-Add-config-option-for-spider-worldborder-climbing.patch similarity index 100% rename from patches/server/0873-Add-config-option-for-spider-worldborder-climbing.patch rename to patches/server/0861-Add-config-option-for-spider-worldborder-climbing.patch diff --git a/patches/server/0874-Add-missing-SpigotConfig-logCommands-check.patch b/patches/server/0862-Add-missing-SpigotConfig-logCommands-check.patch similarity index 88% rename from patches/server/0874-Add-missing-SpigotConfig-logCommands-check.patch rename to patches/server/0862-Add-missing-SpigotConfig-logCommands-check.patch index f694ecb04..32d796a32 100644 --- a/patches/server/0874-Add-missing-SpigotConfig-logCommands-check.patch +++ b/patches/server/0862-Add-missing-SpigotConfig-logCommands-check.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add missing SpigotConfig logCommands check diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 9b7da229e8dc8249b36e7ccf1e77997a146efb88..813f42c2f3925bd50f08b0a4f422bbff91e003e5 100644 +index 058ee906665d64b3631be5a6b9de39bd65bcf6be..07850cf4117f05bfbd96a4f02fd57db1566f90af 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2134,7 +2134,9 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2060,7 +2060,9 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl private void performChatCommand(ServerboundChatCommandPacket packet, LastSeenMessages lastSeenMessages) { // CraftBukkit start String command = "/" + packet.command(); diff --git a/patches/server/0875-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch b/patches/server/0863-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch similarity index 100% rename from patches/server/0875-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch rename to patches/server/0863-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch diff --git a/patches/server/0876-Flying-Fall-Damage.patch b/patches/server/0864-Flying-Fall-Damage.patch similarity index 96% rename from patches/server/0876-Flying-Fall-Damage.patch rename to patches/server/0864-Flying-Fall-Damage.patch index de70f746b..4a0d52fb1 100644 --- a/patches/server/0876-Flying-Fall-Damage.patch +++ b/patches/server/0864-Flying-Fall-Damage.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Flying Fall Damage diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index d72ea2f3d9528f79149791e34065ea1f299cd089..7562b8a0f0bc8e43b3c0b64c6d66786c2c93b5cd 100644 +index 06aef23895f486efc7eb00c35df356d0a88d58ed..a629755f07415997e6dbdd96f9b447b90e20b1d5 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -181,6 +181,7 @@ public abstract class Player extends LivingEntity { diff --git a/patches/server/0877-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch b/patches/server/0865-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch similarity index 99% rename from patches/server/0877-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch rename to patches/server/0865-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch index 3d4a817ca..b5625b776 100644 --- a/patches/server/0877-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch +++ b/patches/server/0865-Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch @@ -130,7 +130,7 @@ index f81c0d07a5efc92942d8ab5c50a8260db033307d..8afc396c162d928902a9d9beb9f039b0 // See BlockStateFactory#createBlockState(World, BlockPosition, IBlockData, TileEntity) private static CraftBlockState getBlockState(World world, BlockPos blockPosition, net.minecraft.world.level.block.state.BlockState blockData, BlockEntity tileEntity) { diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index fe855fd532e80a2d6b10053670dfb1b8fc009ac2..019c333a477e6e5f90447110f39ba0e9591a56f3 100644 +index 944bb12b14d50cdd7064ae7300c71465e15cb217..d55c52e6a89ddd469fdd648fbe5d0f44a60b0892 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1045,7 +1045,7 @@ public class CraftEventFactory { diff --git a/patches/server/0878-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch b/patches/server/0866-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch similarity index 86% rename from patches/server/0878-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch rename to patches/server/0866-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch index 18f693331..8bef62036 100644 --- a/patches/server/0878-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch +++ b/patches/server/0866-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Expose pre-collision moving velocity to diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 2777f71abf23be6748b0a80fe4dd64a89d38ffdb..511d4e3581ce3e525b6d8c1a7d3b2d10ceaca770 100644 +index 3c9e58f033932bc6c2fad33cd54107952c19b1f2..128c21c6fada9de2569e97f3a03decf2d36649c8 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1161,7 +1161,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1126,7 +1126,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } if (!bl.getType().isAir()) { diff --git a/patches/server/0879-config-for-disabling-entity-tag-tags.patch b/patches/server/0867-config-for-disabling-entity-tag-tags.patch similarity index 94% rename from patches/server/0879-config-for-disabling-entity-tag-tags.patch rename to patches/server/0867-config-for-disabling-entity-tag-tags.patch index d9fd98973..345d6b598 100644 --- a/patches/server/0879-config-for-disabling-entity-tag-tags.patch +++ b/patches/server/0867-config-for-disabling-entity-tag-tags.patch @@ -5,7 +5,7 @@ Subject: [PATCH] config for disabling entity tag tags diff --git a/src/main/java/net/minecraft/world/entity/EntityType.java b/src/main/java/net/minecraft/world/entity/EntityType.java -index 3c4a57bc6159eac53fe37e817e765018d4b2bec9..dd4cf9011bf48623e95d5d0f3ff27ee962c88200 100644 +index 847b2637434561e50e3f4f1a3e58cea50caab9f2..a6e20b5ee4fe1841dfc2350264b5935b968fe3f3 100644 --- a/src/main/java/net/minecraft/world/entity/EntityType.java +++ b/src/main/java/net/minecraft/world/entity/EntityType.java @@ -497,6 +497,13 @@ public class EntityType implements FeatureElement, EntityTypeT diff --git a/patches/server/0880-Use-single-player-info-update-packet-on-join.patch b/patches/server/0868-Use-single-player-info-update-packet-on-join.patch similarity index 92% rename from patches/server/0880-Use-single-player-info-update-packet-on-join.patch rename to patches/server/0868-Use-single-player-info-update-packet-on-join.patch index 32a22c880..a16546c0e 100644 --- a/patches/server/0880-Use-single-player-info-update-packet-on-join.patch +++ b/patches/server/0868-Use-single-player-info-update-packet-on-join.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Use single player info update packet on join diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 813f42c2f3925bd50f08b0a4f422bbff91e003e5..7fea36c86d5f11604aa910c84a26898519b61422 100644 +index 07850cf4117f05bfbd96a4f02fd57db1566f90af..50f2c11d98dc4e8aa2e6f577fc802279e33e3e6b 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -3420,7 +3420,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3346,7 +3346,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.signedMessageDecoder = session.createMessageDecoder(this.player.getUUID()); this.chatMessageChain.append(() -> { this.player.setChatSession(session); @@ -18,7 +18,7 @@ index 813f42c2f3925bd50f08b0a4f422bbff91e003e5..7fea36c86d5f11604aa910c84a268985 } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index a625091f59aadccae7fc40c94b620248bca125de..f13bb3e384b45f8dd34b61de372c1068437a0f90 100644 +index 56242bc33ed435e3ab06d7c7bebc05c255538633..571354de840bce6fe86f45a1ba38ef923228f27a 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -358,6 +358,7 @@ public abstract class PlayerList { diff --git a/patches/server/0881-Correctly-shrink-items-during-EntityResurrectEvent.patch b/patches/server/0869-Correctly-shrink-items-during-EntityResurrectEvent.patch similarity index 95% rename from patches/server/0881-Correctly-shrink-items-during-EntityResurrectEvent.patch rename to patches/server/0869-Correctly-shrink-items-during-EntityResurrectEvent.patch index 00d0733f6..049130cd1 100644 --- a/patches/server/0881-Correctly-shrink-items-during-EntityResurrectEvent.patch +++ b/patches/server/0869-Correctly-shrink-items-during-EntityResurrectEvent.patch @@ -22,7 +22,7 @@ This patch corrects this behaviour by only shrinking the item if a totem of undying was found and the event was called uncancelled. diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index c13a7ae57c046832f65af11dc5efbc7b197b6f74..a0b7ab6a740992ff7b498effe16dc0c09a3b3f84 100644 +index 89b2977e848afb6ff577382d69616be40fd28a75..32f147ff4c5c889d8ce3c11d5b0c5274f2774248 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1611,7 +1611,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0882-Win-Screen-API.patch b/patches/server/0870-Win-Screen-API.patch similarity index 100% rename from patches/server/0882-Win-Screen-API.patch rename to patches/server/0870-Win-Screen-API.patch diff --git a/patches/server/0883-Remove-CraftItemStack-setAmount-null-assignment.patch b/patches/server/0871-Remove-CraftItemStack-setAmount-null-assignment.patch similarity index 100% rename from patches/server/0883-Remove-CraftItemStack-setAmount-null-assignment.patch rename to patches/server/0871-Remove-CraftItemStack-setAmount-null-assignment.patch diff --git a/patches/server/0884-Fix-force-opening-enchantment-tables.patch b/patches/server/0872-Fix-force-opening-enchantment-tables.patch similarity index 100% rename from patches/server/0884-Fix-force-opening-enchantment-tables.patch rename to patches/server/0872-Fix-force-opening-enchantment-tables.patch diff --git a/patches/server/0885-Add-Entity-Body-Yaw-API.patch b/patches/server/0873-Add-Entity-Body-Yaw-API.patch similarity index 93% rename from patches/server/0885-Add-Entity-Body-Yaw-API.patch rename to patches/server/0873-Add-Entity-Body-Yaw-API.patch index 782143031..f7b3bebaf 100644 --- a/patches/server/0885-Add-Entity-Body-Yaw-API.patch +++ b/patches/server/0873-Add-Entity-Body-Yaw-API.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add Entity Body Yaw API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 35b6aa33b7715032686acdfd8e5b07d63729593b..e1a3d047743befa9fbc26e7491cb982df19b2f0c 100644 +index 243726b6f503acc7d8ced18fbc4e697982a3fc4f..8692e54ee6defecf391884488121fef84731eac6 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -@@ -1139,6 +1139,31 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { +@@ -1135,6 +1135,31 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { public boolean isInPowderedSnow() { return getHandle().isInPowderSnow || getHandle().wasInPowderSnow; // depending on the location in the entity "tick" either could be needed. } diff --git a/patches/server/0886-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch b/patches/server/0874-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch similarity index 100% rename from patches/server/0886-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch rename to patches/server/0874-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch diff --git a/patches/server/0887-Update-the-flag-when-a-captured-block-state-is-outda.patch b/patches/server/0875-Update-the-flag-when-a-captured-block-state-is-outda.patch similarity index 83% rename from patches/server/0887-Update-the-flag-when-a-captured-block-state-is-outda.patch rename to patches/server/0875-Update-the-flag-when-a-captured-block-state-is-outda.patch index 6d30351d9..91148395b 100644 --- a/patches/server/0887-Update-the-flag-when-a-captured-block-state-is-outda.patch +++ b/patches/server/0875-Update-the-flag-when-a-captured-block-state-is-outda.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Update the flag when a captured block state is outdated diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index b5815acea75cd70f65d9eb2b554b435c91be9994..460b1c589d335e1c74cffc8d39fa1e4a1abd45c7 100644 +index d21667480e585c7a124e9c53b4a22fa1a8115082..9464d79b8adb5099c4ba4400e5fa8ae6ce7be500 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -922,6 +922,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -554,6 +554,7 @@ public abstract class Level implements LevelAccessor, AutoCloseable { blockstate = CapturedBlockState.getTreeBlockState(this, pos, flags); this.capturedBlockStates.put(pos.immutable(), blockstate); } diff --git a/patches/server/0888-Add-EntityFertilizeEggEvent.patch b/patches/server/0876-Add-EntityFertilizeEggEvent.patch similarity index 97% rename from patches/server/0888-Add-EntityFertilizeEggEvent.patch rename to patches/server/0876-Add-EntityFertilizeEggEvent.patch index 3558b6dd4..6191dc164 100644 --- a/patches/server/0888-Add-EntityFertilizeEggEvent.patch +++ b/patches/server/0876-Add-EntityFertilizeEggEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add EntityFertilizeEggEvent diff --git a/src/main/java/net/minecraft/world/entity/animal/Turtle.java b/src/main/java/net/minecraft/world/entity/animal/Turtle.java -index 2a3f1d14a4b24a3219d191b4f2e97ed7b061e006..f97bdfbd07db000845d3b791de64056c3c23f7ba 100644 +index 6bbcdd34fb89ea5774e825de8f9a588552716fc2..1a2a4dcb3cfa2690f2aa936a6c176319d807bd74 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Turtle.java +++ b/src/main/java/net/minecraft/world/entity/animal/Turtle.java @@ -445,6 +445,10 @@ public class Turtle extends Animal { @@ -69,7 +69,7 @@ index 0e85e3ab58d848b119212fa7d2eb4f92d3efe29b..0a5b953bd8c0c7f181da4090b950e9e6 this.playSound(SoundEvents.SNIFFER_EGG_PLOP, 1.0F, (this.random.nextFloat() - this.random.nextFloat()) * 0.2F + 0.5F); } // Paper - Call EntityDropItemEvent diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 019c333a477e6e5f90447110f39ba0e9591a56f3..0d407f06866571f3d87891e1a22d7aef625b39db 100644 +index d55c52e6a89ddd469fdd648fbe5d0f44a60b0892..8925e85ebbdbca9b9c8527c5494e190b989d1291 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -2092,4 +2092,29 @@ public class CraftEventFactory { diff --git a/patches/server/0889-Fix-HumanEntity-drop-not-updating-the-client-inv.patch b/patches/server/0877-Fix-HumanEntity-drop-not-updating-the-client-inv.patch similarity index 100% rename from patches/server/0889-Fix-HumanEntity-drop-not-updating-the-client-inv.patch rename to patches/server/0877-Fix-HumanEntity-drop-not-updating-the-client-inv.patch diff --git a/patches/server/0890-Add-CompostItemEvent-and-EntityCompostItemEvent.patch b/patches/server/0878-Add-CompostItemEvent-and-EntityCompostItemEvent.patch similarity index 100% rename from patches/server/0890-Add-CompostItemEvent-and-EntityCompostItemEvent.patch rename to patches/server/0878-Add-CompostItemEvent-and-EntityCompostItemEvent.patch diff --git a/patches/server/0891-Correctly-handle-ArmorStand-invisibility.patch b/patches/server/0879-Correctly-handle-ArmorStand-invisibility.patch similarity index 100% rename from patches/server/0891-Correctly-handle-ArmorStand-invisibility.patch rename to patches/server/0879-Correctly-handle-ArmorStand-invisibility.patch diff --git a/patches/server/0892-Fix-advancement-triggers-for-entity-damage.patch b/patches/server/0880-Fix-advancement-triggers-for-entity-damage.patch similarity index 97% rename from patches/server/0892-Fix-advancement-triggers-for-entity-damage.patch rename to patches/server/0880-Fix-advancement-triggers-for-entity-damage.patch index a1bff3ea4..712823f2d 100644 --- a/patches/server/0892-Fix-advancement-triggers-for-entity-damage.patch +++ b/patches/server/0880-Fix-advancement-triggers-for-entity-damage.patch @@ -23,7 +23,7 @@ index f054d67a637b204de604fadc0d321f5c9816d808..fc5f1e1b445f0a55a35a31d58a90920a return !this.getResponse(); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index a0b7ab6a740992ff7b498effe16dc0c09a3b3f84..169590748b65c3160361ae41d124e7651871c7f0 100644 +index 32f147ff4c5c889d8ce3c11d5b0c5274f2774248..722273f0307a920365d3b2ca2879e5fc8cc5a398 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -2302,7 +2302,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0893-Fix-text-display-error-on-spawn.patch b/patches/server/0881-Fix-text-display-error-on-spawn.patch similarity index 100% rename from patches/server/0893-Fix-text-display-error-on-spawn.patch rename to patches/server/0881-Fix-text-display-error-on-spawn.patch diff --git a/patches/server/0894-Fix-inventories-returning-null-Locations.patch b/patches/server/0882-Fix-inventories-returning-null-Locations.patch similarity index 100% rename from patches/server/0894-Fix-inventories-returning-null-Locations.patch rename to patches/server/0882-Fix-inventories-returning-null-Locations.patch diff --git a/patches/server/0895-Add-Shearable-API.patch b/patches/server/0883-Add-Shearable-API.patch similarity index 100% rename from patches/server/0895-Add-Shearable-API.patch rename to patches/server/0883-Add-Shearable-API.patch diff --git a/patches/server/0896-Fix-SpawnEggMeta-get-setSpawnedType.patch b/patches/server/0884-Fix-SpawnEggMeta-get-setSpawnedType.patch similarity index 100% rename from patches/server/0896-Fix-SpawnEggMeta-get-setSpawnedType.patch rename to patches/server/0884-Fix-SpawnEggMeta-get-setSpawnedType.patch diff --git a/patches/server/0898-Fix-beehives-generating-from-using-bonemeal.patch b/patches/server/0885-Fix-beehives-generating-from-using-bonemeal.patch similarity index 96% rename from patches/server/0898-Fix-beehives-generating-from-using-bonemeal.patch rename to patches/server/0885-Fix-beehives-generating-from-using-bonemeal.patch index d8bf63c06..51f5e5014 100644 --- a/patches/server/0898-Fix-beehives-generating-from-using-bonemeal.patch +++ b/patches/server/0885-Fix-beehives-generating-from-using-bonemeal.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix beehives generating from using bonemeal diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 6d1986d4dfa4dd4f5988c6afa023f9bd518e1d4e..71d93daa527ae34b83138394fa79289c403a33d8 100644 +index 23fec59b51c99c1f0ac19ffd6c84ffa8fc3caaac..0e9d515381a673e683b63a12c1a9e79a5eedd80b 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -422,6 +422,7 @@ public final class ItemStack { diff --git a/patches/server/0899-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch b/patches/server/0886-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch similarity index 100% rename from patches/server/0899-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch rename to patches/server/0886-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch diff --git a/patches/server/0900-Treat-sequence-violations-like-they-should-be.patch b/patches/server/0887-Treat-sequence-violations-like-they-should-be.patch similarity index 86% rename from patches/server/0900-Treat-sequence-violations-like-they-should-be.patch rename to patches/server/0887-Treat-sequence-violations-like-they-should-be.patch index 3470210a4..32175ef98 100644 --- a/patches/server/0900-Treat-sequence-violations-like-they-should-be.patch +++ b/patches/server/0887-Treat-sequence-violations-like-they-should-be.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Treat sequence violations like they should be diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 7fea36c86d5f11604aa910c84a26898519b61422..ac126672d5fa58be8110c573abce5628f0532967 100644 +index 50f2c11d98dc4e8aa2e6f577fc802279e33e3e6b..522cb67c335ae831d560c8d452b263871782c3fd 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2038,6 +2038,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1964,6 +1964,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl public void ackBlockChangesUpTo(int sequence) { if (sequence < 0) { diff --git a/patches/server/0901-remove-duplicate-animate-packet-for-records.patch b/patches/server/0888-remove-duplicate-animate-packet-for-records.patch similarity index 100% rename from patches/server/0901-remove-duplicate-animate-packet-for-records.patch rename to patches/server/0888-remove-duplicate-animate-packet-for-records.patch diff --git a/patches/server/0902-Prevent-causing-expired-keys-from-impacting-new-join.patch b/patches/server/0889-Prevent-causing-expired-keys-from-impacting-new-join.patch similarity index 95% rename from patches/server/0902-Prevent-causing-expired-keys-from-impacting-new-join.patch rename to patches/server/0889-Prevent-causing-expired-keys-from-impacting-new-join.patch index 937e6c80c..68ab96c59 100644 --- a/patches/server/0902-Prevent-causing-expired-keys-from-impacting-new-join.patch +++ b/patches/server/0889-Prevent-causing-expired-keys-from-impacting-new-join.patch @@ -24,7 +24,7 @@ index 0e54e8faa48751a651b953bec72543a94edf74bc..d43106eb89b14667e85cd6e8fa047d64 UPDATE_GAME_MODE((serialized, buf) -> { serialized.gameMode = GameType.byId(buf.readVarInt()); diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index ac126672d5fa58be8110c573abce5628f0532967..91dbd137575c9191fcb48d561880f0b7a309334b 100644 +index 522cb67c335ae831d560c8d452b263871782c3fd..d2916743981c6632957ab8bed5ae7a2334c5646b 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -287,6 +287,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -49,7 +49,7 @@ index ac126672d5fa58be8110c573abce5628f0532967..91dbd137575c9191fcb48d561880f0b7 } public void resetPosition() { -@@ -3418,6 +3426,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3344,6 +3352,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl private void resetPlayerChatState(RemoteChatSession session) { this.chatSession = session; diff --git a/patches/server/0903-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch b/patches/server/0890-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch similarity index 86% rename from patches/server/0903-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch rename to patches/server/0890-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch index 1f17b1f7b..130ee87db 100644 --- a/patches/server/0903-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch +++ b/patches/server/0890-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Prevent GameEvents being fired from unloaded chunks diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 5b2de5cdac2440a4043c34525a0852067aa9371f..ab472d2e81c0756020ffb727db4b71aeb8d9d020 100644 +index a15bdf56c32b16c143c3060dc7d5f61544f8dc5f..d803b2c246f7e1935d2a466fe509df7fe80b2498 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -1704,6 +1704,11 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -1656,6 +1656,11 @@ public class ServerLevel extends Level implements WorldGenLevel { @Override public void gameEvent(GameEvent event, Vec3 emitterPos, GameEvent.Context emitter) { diff --git a/patches/server/0904-Use-array-for-gamerule-storage.patch b/patches/server/0891-Use-array-for-gamerule-storage.patch similarity index 100% rename from patches/server/0904-Use-array-for-gamerule-storage.patch rename to patches/server/0891-Use-array-for-gamerule-storage.patch diff --git a/patches/server/0905-Fix-a-couple-of-upstream-bed-issues.patch b/patches/server/0892-Fix-a-couple-of-upstream-bed-issues.patch similarity index 100% rename from patches/server/0905-Fix-a-couple-of-upstream-bed-issues.patch rename to patches/server/0892-Fix-a-couple-of-upstream-bed-issues.patch diff --git a/patches/server/0906-Fix-demo-flag-not-enabling-demo-mode.patch b/patches/server/0893-Fix-demo-flag-not-enabling-demo-mode.patch similarity index 100% rename from patches/server/0906-Fix-demo-flag-not-enabling-demo-mode.patch rename to patches/server/0893-Fix-demo-flag-not-enabling-demo-mode.patch diff --git a/patches/server/0907-Add-Mob-Experience-reward-API.patch b/patches/server/0894-Add-Mob-Experience-reward-API.patch similarity index 100% rename from patches/server/0907-Add-Mob-Experience-reward-API.patch rename to patches/server/0894-Add-Mob-Experience-reward-API.patch diff --git a/patches/server/0908-Break-redstone-on-top-of-trap-doors-early.patch b/patches/server/0895-Break-redstone-on-top-of-trap-doors-early.patch similarity index 100% rename from patches/server/0908-Break-redstone-on-top-of-trap-doors-early.patch rename to patches/server/0895-Break-redstone-on-top-of-trap-doors-early.patch diff --git a/patches/server/0909-Fix-DamageCause-for-Falling-Blocks.patch b/patches/server/0896-Fix-DamageCause-for-Falling-Blocks.patch similarity index 92% rename from patches/server/0909-Fix-DamageCause-for-Falling-Blocks.patch rename to patches/server/0896-Fix-DamageCause-for-Falling-Blocks.patch index 82f43537b..bb215c5ed 100644 --- a/patches/server/0909-Fix-DamageCause-for-Falling-Blocks.patch +++ b/patches/server/0896-Fix-DamageCause-for-Falling-Blocks.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix DamageCause for Falling Blocks diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 0d407f06866571f3d87891e1a22d7aef625b39db..03ac6ae291945a31552956fc107a3854227e1151 100644 +index 8925e85ebbdbca9b9c8527c5494e190b989d1291..16ac933192a8d1c805e1b7d38fc1966d7de691a3 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1085,6 +1085,11 @@ public class CraftEventFactory { diff --git a/patches/server/0910-Avoid-Lazy-Initialization-for-Enum-Fields.patch b/patches/server/0897-Avoid-Lazy-Initialization-for-Enum-Fields.patch similarity index 100% rename from patches/server/0910-Avoid-Lazy-Initialization-for-Enum-Fields.patch rename to patches/server/0897-Avoid-Lazy-Initialization-for-Enum-Fields.patch diff --git a/patches/server/0911-More-accurate-isInOpenWater-impl.patch b/patches/server/0898-More-accurate-isInOpenWater-impl.patch similarity index 100% rename from patches/server/0911-More-accurate-isInOpenWater-impl.patch rename to patches/server/0898-More-accurate-isInOpenWater-impl.patch diff --git a/patches/server/0912-Fix-concurrenct-access-to-lookups-field-in-RegistryO.patch b/patches/server/0899-Fix-concurrenct-access-to-lookups-field-in-RegistryO.patch similarity index 100% rename from patches/server/0912-Fix-concurrenct-access-to-lookups-field-in-RegistryO.patch rename to patches/server/0899-Fix-concurrenct-access-to-lookups-field-in-RegistryO.patch diff --git a/patches/server/0914-Expand-PlayerItemMendEvent.patch b/patches/server/0900-Expand-PlayerItemMendEvent.patch similarity index 96% rename from patches/server/0914-Expand-PlayerItemMendEvent.patch rename to patches/server/0900-Expand-PlayerItemMendEvent.patch index 48868e0e0..ee6e1d3c4 100644 --- a/patches/server/0914-Expand-PlayerItemMendEvent.patch +++ b/patches/server/0900-Expand-PlayerItemMendEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Expand PlayerItemMendEvent diff --git a/src/main/java/net/minecraft/world/entity/ExperienceOrb.java b/src/main/java/net/minecraft/world/entity/ExperienceOrb.java -index 5685951b71a8b81c7a71fd93b099b276d535b401..b37e13c5de1a0a22a3713d04b203afc6c03ccbac 100644 +index 36d5d1736bf826f3abc756277de431c94cabb744..e814b2ef2577f032d6760de2f798d4fe18c67d0c 100644 --- a/src/main/java/net/minecraft/world/entity/ExperienceOrb.java +++ b/src/main/java/net/minecraft/world/entity/ExperienceOrb.java @@ -337,7 +337,7 @@ public class ExperienceOrb extends Entity { @@ -51,7 +51,7 @@ index 65bcc0b4a864c26a3167273230f642e0603c0702..c49d3448866caae8a2ceb51a45c3a056 } } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 03ac6ae291945a31552956fc107a3854227e1151..b0bcef03da4f4dfe41fb88b47bfec576af76f21b 100644 +index 16ac933192a8d1c805e1b7d38fc1966d7de691a3..8081fe1a1855b6c00bfa3914380ba045ed872292 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1321,10 +1321,10 @@ public class CraftEventFactory { diff --git a/patches/server/0915-Refresh-ProjectileSource-for-projectiles.patch b/patches/server/0901-Refresh-ProjectileSource-for-projectiles.patch similarity index 95% rename from patches/server/0915-Refresh-ProjectileSource-for-projectiles.patch rename to patches/server/0901-Refresh-ProjectileSource-for-projectiles.patch index 2b9a9a63b..685db14db 100644 --- a/patches/server/0915-Refresh-ProjectileSource-for-projectiles.patch +++ b/patches/server/0901-Refresh-ProjectileSource-for-projectiles.patch @@ -14,7 +14,7 @@ clearing the owner. Co-authored-by: Warrior <50800980+Warriorrrr@users.noreply.github.com> diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 511d4e3581ce3e525b6d8c1a7d3b2d10ceaca770..5af4da94c5710fd6d58fecbc60ba432c94319fe3 100644 +index 128c21c6fada9de2569e97f3a03decf2d36649c8..1a6d5af5a9cd91617696c5bc91d9a4d97ec617c4 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -385,6 +385,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -26,7 +26,7 @@ index 511d4e3581ce3e525b6d8c1a7d3b2d10ceaca770..5af4da94c5710fd6d58fecbc60ba432c public boolean lastDamageCancelled; // SPIGOT-5339, SPIGOT-6252, SPIGOT-6777: Keep track if the event was canceled public boolean persistentInvisibility = false; diff --git a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java -index d01570d7c3c8c4bd40cafc32d02774b789355460..d6c0488618cedfa6fe47375daca4c38a8f49ccbc 100644 +index 0a207f3f2e4c0790e784fb4b0c3c2dfa49c39724..156809090f1f83ad68e7e2477a3cfddac5757a8e 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java +++ b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java @@ -50,14 +50,31 @@ public abstract class Projectile extends Entity implements TraceableEntity { diff --git a/patches/server/0916-Add-transient-modifier-API.patch b/patches/server/0902-Add-transient-modifier-API.patch similarity index 100% rename from patches/server/0916-Add-transient-modifier-API.patch rename to patches/server/0902-Add-transient-modifier-API.patch diff --git a/patches/server/0917-Fix-block-place-logic.patch b/patches/server/0903-Fix-block-place-logic.patch similarity index 94% rename from patches/server/0917-Fix-block-place-logic.patch rename to patches/server/0903-Fix-block-place-logic.patch index 750fc73db..c6a2251a6 100644 --- a/patches/server/0917-Fix-block-place-logic.patch +++ b/patches/server/0903-Fix-block-place-logic.patch @@ -22,7 +22,7 @@ index 1ac739c92031e80c35e1af4417e6358346079580..8c54b92b65b3d379e14a11370b09d453 if ((entityhuman == null || !entityhuman.getAbilities().instabuild) && itemstack != ItemStack.EMPTY) { // CraftBukkit itemstack.shrink(1); diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 71d93daa527ae34b83138394fa79289c403a33d8..94cb7625c451df53de60783535ce0d58b37e35bf 100644 +index 0e9d515381a673e683b63a12c1a9e79a5eedd80b..096eb30dcfdd62b1d946891f7480e9d9c4dbb71d 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -493,13 +493,7 @@ public final class ItemStack { @@ -41,10 +41,10 @@ index 71d93daa527ae34b83138394fa79289c403a33d8..94cb7625c451df53de60783535ce0d58 } diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 460b1c589d335e1c74cffc8d39fa1e4a1abd45c7..4ffbf7b738445bed08d9f889c6d9b5cadbb2165c 100644 +index 9464d79b8adb5099c4ba4400e5fa8ae6ce7be500..94c553295538c5c27783b11fc9449fead5fca70b 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -1037,17 +1037,18 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -669,17 +669,18 @@ public abstract class Level implements LevelAccessor, AutoCloseable { // CraftBukkit start iblockdata1.updateIndirectNeighbourShapes(this, blockposition, k, j - 1); // Don't call an event for the old block to limit event spam CraftWorld world = ((ServerLevel) this).getWorld(); diff --git a/patches/server/0918-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch b/patches/server/0904-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch similarity index 94% rename from patches/server/0918-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch rename to patches/server/0904-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch index 9871a477c..3b104d8aa 100644 --- a/patches/server/0918-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch +++ b/patches/server/0904-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix spigot sound playing for BlockItem ItemStacks diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 94cb7625c451df53de60783535ce0d58b37e35bf..5f3512f58124e0664666eeee541a6a22c022f75a 100644 +index 096eb30dcfdd62b1d946891f7480e9d9c4dbb71d..ecea96202f81e4955c0af554da070984e6e416ff 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -544,7 +544,11 @@ public final class ItemStack { diff --git a/patches/server/0919-Call-BlockGrowEvent-for-missing-blocks.patch b/patches/server/0905-Call-BlockGrowEvent-for-missing-blocks.patch similarity index 100% rename from patches/server/0919-Call-BlockGrowEvent-for-missing-blocks.patch rename to patches/server/0905-Call-BlockGrowEvent-for-missing-blocks.patch diff --git a/patches/server/0920-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch b/patches/server/0906-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch similarity index 94% rename from patches/server/0920-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch rename to patches/server/0906-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch index 15631f0f3..9b243f887 100644 --- a/patches/server/0920-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch +++ b/patches/server/0906-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Don't enforce icanhasbukkit default if alias block exists diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 1b4837ddb216d66164a893f5a34c0505c6f1aab2..029b88ab23f9c1faa50fb4a367a56ede77008ea8 100644 +index fd31a716ec66235970af4854dd7d83c1f88e229d..fd1245ae71b05d283d2c56d05bc1959788f77a91 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -352,7 +352,11 @@ public final class CraftServer implements Server { diff --git a/patches/server/0921-fix-MapLike-spam-for-missing-key-selector.patch b/patches/server/0907-fix-MapLike-spam-for-missing-key-selector.patch similarity index 100% rename from patches/server/0921-fix-MapLike-spam-for-missing-key-selector.patch rename to patches/server/0907-fix-MapLike-spam-for-missing-key-selector.patch diff --git a/patches/server/0922-Fix-sniffer-removeExploredLocation.patch b/patches/server/0908-Fix-sniffer-removeExploredLocation.patch similarity index 100% rename from patches/server/0922-Fix-sniffer-removeExploredLocation.patch rename to patches/server/0908-Fix-sniffer-removeExploredLocation.patch diff --git a/patches/server/0923-Add-method-to-remove-all-active-potion-effects.patch b/patches/server/0909-Add-method-to-remove-all-active-potion-effects.patch similarity index 100% rename from patches/server/0923-Add-method-to-remove-all-active-potion-effects.patch rename to patches/server/0909-Add-method-to-remove-all-active-potion-effects.patch diff --git a/patches/server/0924-Temp-Pre-init-PlayerChunkLoaderData-in-order-to-prep.patch b/patches/server/0910-Temp-Pre-init-PlayerChunkLoaderData-in-order-to-prep.patch similarity index 100% rename from patches/server/0924-Temp-Pre-init-PlayerChunkLoaderData-in-order-to-prep.patch rename to patches/server/0910-Temp-Pre-init-PlayerChunkLoaderData-in-order-to-prep.patch diff --git a/patches/server/0925-Fix-incorrect-crafting-result-amount-for-fireworks.patch b/patches/server/0911-Fix-incorrect-crafting-result-amount-for-fireworks.patch similarity index 100% rename from patches/server/0925-Fix-incorrect-crafting-result-amount-for-fireworks.patch rename to patches/server/0911-Fix-incorrect-crafting-result-amount-for-fireworks.patch diff --git a/patches/server/0926-Properly-cancel-usable-items.patch b/patches/server/0912-Properly-cancel-usable-items.patch similarity index 91% rename from patches/server/0926-Properly-cancel-usable-items.patch rename to patches/server/0912-Properly-cancel-usable-items.patch index a97f6e58d..dba24348b 100644 --- a/patches/server/0926-Properly-cancel-usable-items.patch +++ b/patches/server/0912-Properly-cancel-usable-items.patch @@ -10,7 +10,7 @@ The underlying issue of this is that the client modifies their synced data value them in order for the client to reset their using item state. diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index 870447743db05043f6d3c0f2a699310077529636..84cc7d9b42cf8b2925ee433d87cb138d58a40fb3 100644 +index 521fc5fd6b66c7095c729dd4aaf49bbc443f0200..93ae151375608b6bbaa5e68a7384a04dc30a9502 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java @@ -557,6 +557,7 @@ public class ServerPlayerGameMode { @@ -34,10 +34,10 @@ index 870447743db05043f6d3c0f2a699310077529636..84cc7d9b42cf8b2925ee433d87cb138d return enuminteractionresult; // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 91dbd137575c9191fcb48d561880f0b7a309334b..a9a8850b2ddb4b4326542c7efa3f263b1f532b86 100644 +index d2916743981c6632957ab8bed5ae7a2334c5646b..33bdfb66f36cce5e89be1a0de8b5a3346dbfa1e3 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1950,6 +1950,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1876,6 +1876,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } if (cancelled) { @@ -46,7 +46,7 @@ index 91dbd137575c9191fcb48d561880f0b7a309334b..a9a8850b2ddb4b4326542c7efa3f263b return; } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 169590748b65c3160361ae41d124e7651871c7f0..629d38851558207f302e9baa0157218d7c8596d7 100644 +index 722273f0307a920365d3b2ca2879e5fc8cc5a398..93eecdc6322dfc6161fbb80828d338aa4a311640 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3814,6 +3814,11 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0927-Add-event-for-player-editing-sign.patch b/patches/server/0913-Add-event-for-player-editing-sign.patch similarity index 98% rename from patches/server/0927-Add-event-for-player-editing-sign.patch rename to patches/server/0913-Add-event-for-player-editing-sign.patch index 62a97be04..9e38aba9d 100644 --- a/patches/server/0927-Add-event-for-player-editing-sign.patch +++ b/patches/server/0913-Add-event-for-player-editing-sign.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add event for player editing sign diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 5f3512f58124e0664666eeee541a6a22c022f75a..5756ab17e721d5886ed669a0527e18769b8e1b8b 100644 +index ecea96202f81e4955c0af554da070984e6e416ff..e14d928e8bf484c61f2687621623942a27f30db1 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -523,7 +523,7 @@ public final class ItemStack { diff --git a/patches/server/0913-Optimise-recalcBlockCounts-for-empty-sections.patch b/patches/server/0913-Optimise-recalcBlockCounts-for-empty-sections.patch deleted file mode 100644 index 2828d37ee..000000000 --- a/patches/server/0913-Optimise-recalcBlockCounts-for-empty-sections.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Spottedleaf -Date: Mon, 15 May 2023 20:25:26 -0700 -Subject: [PATCH] Optimise recalcBlockCounts() for empty sections - -In 1.18, every chunk section is initialised to a non-null value -and recalcBlockCounts() is invoked for each section. -However, in a standard world, most sections are empty. In such cases, -recalcBlockCounts() would iterate over ever position - even though -the block data would all be air. To avoid this, we skip -searching the section unless the palette indicates there _could_ be -a non-air block state or non-empty fluid state. - -Chunk loading initially showed that recalcBlockCounts() over -sections with a ZeroBitStorage data to to take ~20% of the process, -now it takes <1%. - -diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java -index 6d340a9b64ae900dfe84eeeaf7a39f7e7a139198..1a473187c22c4158959a3aae33a6823229c5b7a7 100644 ---- a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java -+++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java -@@ -144,6 +144,7 @@ public class LevelChunkSection { - this.nonEmptyBlockCount = 0; - this.tickingBlockCount = 0; - this.tickingFluidCount = 0; -+ if (this.maybeHas((BlockState state) -> !state.isAir() || !state.getFluidState().isEmpty())) { // Paper - Perf: do not run forEachLocation on clearly empty sections - this.states.forEachLocation((BlockState iblockdata, int i) -> { - FluidState fluid = iblockdata.getFluidState(); - -@@ -169,6 +170,7 @@ public class LevelChunkSection { - // Paper end - optimise collisions - - }); -+ } // Paper - Perf: do not run forEachLocation on clearly empty sections - // Paper end - } - diff --git a/patches/server/0928-Only-tick-item-frames-if-players-can-see-it.patch b/patches/server/0914-Only-tick-item-frames-if-players-can-see-it.patch similarity index 100% rename from patches/server/0928-Only-tick-item-frames-if-players-can-see-it.patch rename to patches/server/0914-Only-tick-item-frames-if-players-can-see-it.patch diff --git a/patches/server/0929-Fix-cmd-permission-levels-for-command-blocks.patch b/patches/server/0915-Fix-cmd-permission-levels-for-command-blocks.patch similarity index 97% rename from patches/server/0929-Fix-cmd-permission-levels-for-command-blocks.patch rename to patches/server/0915-Fix-cmd-permission-levels-for-command-blocks.patch index 588d49923..8bc99edf2 100644 --- a/patches/server/0929-Fix-cmd-permission-levels-for-command-blocks.patch +++ b/patches/server/0915-Fix-cmd-permission-levels-for-command-blocks.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix cmd permission levels for command blocks diff --git a/src/main/java/net/minecraft/commands/CommandSourceStack.java b/src/main/java/net/minecraft/commands/CommandSourceStack.java -index 21c9b903e26f93b8d4e97f3e0d98e3b2e45857f9..623403c56d79e29421f340e97c05488efaf1893d 100644 +index 907bc9d84dbc98427384cf529bfde4b09d8ce8ca..faa375f2722793a86265248a4be4fa14736d9818 100644 --- a/src/main/java/net/minecraft/commands/CommandSourceStack.java +++ b/src/main/java/net/minecraft/commands/CommandSourceStack.java @@ -204,10 +204,29 @@ public class CommandSourceStack implements ExecutionCommandSource Math.max(f2, Math.pow((double) (org.spigotmc.SpigotConfig.movedTooQuicklyMultiplier * (float) i * speed), 2)) && !this.isSingleplayerOwner()) { // CraftBukkit end @@ -56,45 +56,47 @@ index a9a8850b2ddb4b4326542c7efa3f263b1f532b86..0ea2e00372659174e9fd941428e30d1d } } } -@@ -1457,8 +1470,15 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl - boolean flag2 = false; +@@ -1419,14 +1432,29 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl + + d8 = d2 - this.player.getZ(); + d10 = d6 * d6 + d7 * d7 + d8 * d8; +- boolean flag2 = false; ++ boolean movedWrongly = false; // Paper - Add fail move event; rename if (!this.player.isChangingDimension() && d10 > org.spigotmc.SpigotConfig.movedWronglyThreshold && !this.player.isSleeping() && !this.player.gameMode.isCreative() && this.player.gameMode.getGameModeForPlayer() != GameType.SPECTATOR) { // Spigot +- flag2 = true; + // Paper start - Add fail move event + io.papermc.paper.event.player.PlayerFailMoveEvent event = fireFailMove(io.papermc.paper.event.player.PlayerFailMoveEvent.FailReason.MOVED_WRONGLY, + toX, toY, toZ, toYaw, toPitch, true); + if (!event.isAllowed()) { - flag2 = true; // Paper - diff on change, this should be moved wrongly ++ movedWrongly = true; + if (event.getLogWarning()) ServerGamePacketListenerImpl.LOGGER.warn("{} moved wrongly!", this.player.getName().getString()); + } + } + +- if (!this.player.noPhysics && !this.player.isSleeping() && (flag2 && worldserver.noCollision(this.player, axisalignedbb) || this.isPlayerCollidingWithAnythingNew(worldserver, axisalignedbb, d0, d1, d2))) { ++ boolean teleportBack = !this.player.noPhysics && !this.player.isSleeping() && (movedWrongly && worldserver.noCollision(this.player, axisalignedbb) || this.isPlayerCollidingWithAnythingNew(worldserver, axisalignedbb, d0, d1, d2)); ++ if (teleportBack) { ++ io.papermc.paper.event.player.PlayerFailMoveEvent event = fireFailMove(io.papermc.paper.event.player.PlayerFailMoveEvent.FailReason.CLIPPED_INTO_BLOCK, ++ toX, toY, toZ, toYaw, toPitch, false); ++ if (event.isAllowed()) { ++ teleportBack = false; ++ } ++ } ++ if (teleportBack) { + // Paper end - Add fail move event - } + this.internalTeleport(d3, d4, d5, f, f1, Collections.emptySet()); // CraftBukkit - SPIGOT-1807: Don't call teleport event, when the client thinks the player is falling, because the chunks are not loaded on the client yet. + this.player.doCheckFallDamage(this.player.getX() - d3, this.player.getY() - d4, this.player.getZ() - d5, packet.isOnGround()); + } else { +@@ -3371,4 +3399,17 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl - // Paper start - optimise out extra getCubes -@@ -1471,6 +1491,15 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl - if (didCollide || !axisalignedbb.equals(newBox)) { - // note: only call after setLocation, or else getBoundingBox is wrong - teleportBack = this.hasNewCollision(worldserver, this.player, axisalignedbb, newBox); -+ // Paper start - Add fail move event -+ if (teleportBack) { -+ io.papermc.paper.event.player.PlayerFailMoveEvent event = fireFailMove(io.papermc.paper.event.player.PlayerFailMoveEvent.FailReason.CLIPPED_INTO_BLOCK, -+ toX, toY, toZ, toYaw, toPitch, false); -+ if (event.isAllowed()) { -+ teleportBack = false; -+ } -+ } -+ // Paper end - Add fail move event - } // else: no collision at all detected, why do we care? - } - if (!this.player.noPhysics && !this.player.isSleeping() && teleportBack) { // Paper end - optimise out extra getCubes -@@ -1564,6 +1593,18 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl - } + InteractionResult run(ServerPlayer player, Entity entity, InteractionHand hand); } - ++ + // Paper start - Add fail move event + private io.papermc.paper.event.player.PlayerFailMoveEvent fireFailMove(io.papermc.paper.event.player.PlayerFailMoveEvent.FailReason failReason, -+ double toX, double toY, double toZ, float toYaw, float toPitch, boolean logWarning) { ++ double toX, double toY, double toZ, float toYaw, float toPitch, boolean logWarning) { + Player player = this.getCraftPlayer(); + Location from = new Location(player.getWorld(), this.lastPosX, this.lastPosY, this.lastPosZ, this.lastYaw, this.lastPitch); + Location to = new Location(player.getWorld(), toX, toY, toZ, toYaw, toPitch); @@ -104,6 +106,4 @@ index a9a8850b2ddb4b4326542c7efa3f263b1f532b86..0ea2e00372659174e9fd941428e30d1d + return event; + } + // Paper end - Add fail move event - // Paper start - optimise out extra getCubes - private boolean hasNewCollision(final ServerLevel world, final Entity entity, final AABB oldBox, final AABB newBox) { - final List collisionsBB = new java.util.ArrayList<>(); + } diff --git a/patches/server/0945-Folia-scheduler-and-owned-region-API.patch b/patches/server/0931-Folia-scheduler-and-owned-region-API.patch similarity index 98% rename from patches/server/0945-Folia-scheduler-and-owned-region-API.patch rename to patches/server/0931-Folia-scheduler-and-owned-region-API.patch index 76aeed293..85e5d959c 100644 --- a/patches/server/0945-Folia-scheduler-and-owned-region-API.patch +++ b/patches/server/0931-Folia-scheduler-and-owned-region-API.patch @@ -1148,10 +1148,10 @@ index 0000000000000000000000000000000000000000..d306f911757a4d556c82c0070d4837db + } +} diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index afc23f859188a6cda27a683babd551c250a748ef..174f3dab7c7f02dd09d02dc8b4e69190284c3f48 100644 +index 8d39cce9f938260817f00f42326771be8ff0fbaf..fe9a5820d82e5563b53d949af060e80cc7a259f6 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1629,6 +1629,20 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop parseresults = this.server.getCommands().getDispatcher().parse(stringreader, this.player.createCommandSourceStack()); this.server.getCommands().getDispatcher().getCompletionSuggestions(parseresults).thenAccept((suggestions) -> { diff --git a/patches/server/0962-Properly-handle-BlockBreakEvent-isDropItems.patch b/patches/server/0948-Properly-handle-BlockBreakEvent-isDropItems.patch similarity index 98% rename from patches/server/0962-Properly-handle-BlockBreakEvent-isDropItems.patch rename to patches/server/0948-Properly-handle-BlockBreakEvent-isDropItems.patch index 337ed7f3d..07e3ba592 100644 --- a/patches/server/0962-Properly-handle-BlockBreakEvent-isDropItems.patch +++ b/patches/server/0948-Properly-handle-BlockBreakEvent-isDropItems.patch @@ -9,7 +9,7 @@ food consumption, turtle egg count decreases, ice to water conversions and beehive releases diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index 84cc7d9b42cf8b2925ee433d87cb138d58a40fb3..98ebffb4f0345aa06c1cfbd404f0884ecc523d69 100644 +index 93ae151375608b6bbaa5e68a7384a04dc30a9502..b48663de0d749f2a6b53c7ad6ff7941e9e8072d6 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java @@ -433,8 +433,8 @@ public class ServerPlayerGameMode { @@ -39,7 +39,7 @@ index a0ab721a01faccf216259c46e6d6f638426732c2..2d4a770ec7c0737eee6f06b32958716d BeehiveBlockEntity tileentitybeehive = (BeehiveBlockEntity) blockEntity; diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java -index 6c4fd56956982eee743b4dea4e8b925891dd3b6f..5379c4a8c89cbbe73c3ab741d609cecdc81d928c 100644 +index af62781cc96354c87aa63d4f03f9e25b81959081..6ec04bf5cd1f7f2e74d86daa95209bd2f2124b91 100644 --- a/src/main/java/net/minecraft/world/level/block/Block.java +++ b/src/main/java/net/minecraft/world/level/block/Block.java @@ -423,10 +423,18 @@ public class Block extends BlockBehaviour implements ItemLike { diff --git a/patches/server/0963-Fire-entity-death-event-for-ender-dragon.patch b/patches/server/0949-Fire-entity-death-event-for-ender-dragon.patch similarity index 100% rename from patches/server/0963-Fire-entity-death-event-for-ender-dragon.patch rename to patches/server/0949-Fire-entity-death-event-for-ender-dragon.patch diff --git a/patches/server/0964-Configurable-entity-tracking-range-by-Y-coordinate.patch b/patches/server/0950-Configurable-entity-tracking-range-by-Y-coordinate.patch similarity index 94% rename from patches/server/0964-Configurable-entity-tracking-range-by-Y-coordinate.patch rename to patches/server/0950-Configurable-entity-tracking-range-by-Y-coordinate.patch index 0e3d1aa36..1695f7f67 100644 --- a/patches/server/0964-Configurable-entity-tracking-range-by-Y-coordinate.patch +++ b/patches/server/0950-Configurable-entity-tracking-range-by-Y-coordinate.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Configurable entity tracking range by Y coordinate Options to configure entity tracking by Y coordinate, also for each entity category. diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 28ad811401cd46ec17fbec27b7e1111ead1d45e7..c7d78fb217869204157606db8d6d73af0126a68f 100644 +index ebf69ec2830a3e3121707fd958f31180d361d9d0..815fb04fb2d14d0cea14a2b3509e81b383bbdbda 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -1415,6 +1415,15 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider diff --git a/patches/server/0965-Add-Listing-API-for-Player.patch b/patches/server/0951-Add-Listing-API-for-Player.patch similarity index 99% rename from patches/server/0965-Add-Listing-API-for-Player.patch rename to patches/server/0951-Add-Listing-API-for-Player.patch index f77a0da94..f16c9fe8f 100644 --- a/patches/server/0965-Add-Listing-API-for-Player.patch +++ b/patches/server/0951-Add-Listing-API-for-Player.patch @@ -74,7 +74,7 @@ index d43106eb89b14667e85cd6e8fa047d64f2e8ec87..56eddd28429cf42c02d88b8bf79f8b61 static class EntryBuilder { diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index ab750eb0f3520c4bc5f6d06ea095e0bf67d8bdf4..1c89b95ac40120ee970da0f06fd7fff36eb55e61 100644 +index 86c1bb0d324cb070b1dbab8222913d4b46c4a94a..947cb3b24d6e379b080f3de8cd4ea60e0ca457e4 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -356,14 +356,22 @@ public abstract class PlayerList { diff --git a/patches/server/0966-Configurable-Region-Compression-Format.patch b/patches/server/0952-Configurable-Region-Compression-Format.patch similarity index 73% rename from patches/server/0966-Configurable-Region-Compression-Format.patch rename to patches/server/0952-Configurable-Region-Compression-Format.patch index 9a895f6da..facebba0b 100644 --- a/patches/server/0966-Configurable-Region-Compression-Format.patch +++ b/patches/server/0952-Configurable-Region-Compression-Format.patch @@ -5,25 +5,20 @@ Subject: [PATCH] Configurable Region Compression Format diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java -index 50de979a447171ab98de59bf25b6c82871d03543..0761096829e2afc5f8dd88b9a693874fc2f1bb8b 100644 +index 6ca572500a3bb36acf481e54262e811295d64136..c5dbab099a328b37f5a59824384ee6e4be2f3482 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java -@@ -424,11 +424,11 @@ public class RegionFile implements AutoCloseable { +@@ -75,7 +75,7 @@ public class RegionFile implements AutoCloseable { // Paper end - Cache chunk status public RegionFile(Path file, Path directory, boolean dsync) throws IOException { - this(file, directory, RegionFileVersion.VERSION_DEFLATE, dsync); + this(file, directory, RegionFileVersion.getCompressionFormat(), dsync); // Paper - Configurable region compression format } - // Paper start - add can recalc flag - public RegionFile(Path file, Path directory, boolean dsync, boolean canRecalcHeader) throws IOException { -- this(file, directory, RegionFileVersion.VERSION_DEFLATE, dsync, canRecalcHeader); -+ this(file, directory, RegionFileVersion.getCompressionFormat(), dsync, canRecalcHeader); // Paper - Configurable region compression format - } - // Paper end - add can recalc flag + public RegionFile(Path file, Path directory, RegionFileVersion outputChunkStreamVersion, boolean dsync) throws IOException { diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileVersion.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileVersion.java -index 4411e427d3b6b592f8a18e61b6c59309cf699d3f..6210a202d27788b1304e749b5bc2d9e2b88f5a63 100644 +index 5fa7a842431dd64c7a0dc5d8e940563a2aeef463..374ff77f15e339500714580673ae8077482ba247 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileVersion.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileVersion.java @@ -30,6 +30,17 @@ public class RegionFileVersion { diff --git a/patches/server/0967-Add-BlockFace-to-BlockDamageEvent.patch b/patches/server/0953-Add-BlockFace-to-BlockDamageEvent.patch similarity index 92% rename from patches/server/0967-Add-BlockFace-to-BlockDamageEvent.patch rename to patches/server/0953-Add-BlockFace-to-BlockDamageEvent.patch index 3b4bca411..6a0a891d9 100644 --- a/patches/server/0967-Add-BlockFace-to-BlockDamageEvent.patch +++ b/patches/server/0953-Add-BlockFace-to-BlockDamageEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add BlockFace to BlockDamageEvent diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index 98ebffb4f0345aa06c1cfbd404f0884ecc523d69..52764f0f5b42e3b7fd9624bc342e9927037880d2 100644 +index b48663de0d749f2a6b53c7ad6ff7941e9e8072d6..a8c723c718aeb8e2aec997503a071c4cfedcd8ae 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java @@ -253,7 +253,7 @@ public class ServerPlayerGameMode { @@ -18,7 +18,7 @@ index 98ebffb4f0345aa06c1cfbd404f0884ecc523d69..52764f0f5b42e3b7fd9624bc342e9927 if (blockEvent.isCancelled()) { // Let the client know the block still exists diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 9af251585723ab963a16f0a0405276666e14ce2b..48dcf53304c52a39b60cd5b51e60bca42b7b04d0 100644 +index f64a0628f5d487cb113d86319d7b51237b4a9f6e..51cf0a068d17c0b6eaee38bb1af5b3c470de5875 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -649,13 +649,13 @@ public class CraftEventFactory { diff --git a/patches/server/0968-Fix-NPE-on-Boat-getStatus.patch b/patches/server/0954-Fix-NPE-on-Boat-getStatus.patch similarity index 100% rename from patches/server/0968-Fix-NPE-on-Boat-getStatus.patch rename to patches/server/0954-Fix-NPE-on-Boat-getStatus.patch diff --git a/patches/server/0969-Expand-Pose-API.patch b/patches/server/0955-Expand-Pose-API.patch similarity index 91% rename from patches/server/0969-Expand-Pose-API.patch rename to patches/server/0955-Expand-Pose-API.patch index 8985b6b76..dfd883c86 100644 --- a/patches/server/0969-Expand-Pose-API.patch +++ b/patches/server/0955-Expand-Pose-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Expand Pose API diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 617f96f0def49f9c0331963da01df8245046da66..be36e4307636a02c806ed8eb9d217e84d837fef2 100644 +index 03bc38ef6a31e762a2db9e1993e064eb1656a986..e9df37e802a982d9332a40a7f889206440ac1cc2 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -422,6 +422,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -25,7 +25,7 @@ index 617f96f0def49f9c0331963da01df8245046da66..be36e4307636a02c806ed8eb9d217e84 if (pose == this.getPose()) { return; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 7abc465b815ed645e84fa6fdd8eda7f4ba87b104..03908ccb1bcd88b68fcec48c581677cb0a484508 100644 +index cc14e635a5f2f8afe593afc676c718c431361dfb..395476ab15a04f95710c671c9a896a9a37daa9b4 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -896,6 +896,20 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { diff --git a/patches/server/0970-More-DragonBattle-API.patch b/patches/server/0956-More-DragonBattle-API.patch similarity index 100% rename from patches/server/0970-More-DragonBattle-API.patch rename to patches/server/0956-More-DragonBattle-API.patch diff --git a/patches/server/0971-Deep-clone-unhandled-nbt-tags.patch b/patches/server/0957-Deep-clone-unhandled-nbt-tags.patch similarity index 100% rename from patches/server/0971-Deep-clone-unhandled-nbt-tags.patch rename to patches/server/0957-Deep-clone-unhandled-nbt-tags.patch diff --git a/patches/server/0972-Add-PlayerPickItemEvent.patch b/patches/server/0958-Add-PlayerPickItemEvent.patch similarity index 94% rename from patches/server/0972-Add-PlayerPickItemEvent.patch rename to patches/server/0958-Add-PlayerPickItemEvent.patch index 454a66270..dce304a5c 100644 --- a/patches/server/0972-Add-PlayerPickItemEvent.patch +++ b/patches/server/0958-Add-PlayerPickItemEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add PlayerPickItemEvent diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 3e20918724125e7e60f880026bbc93e7cca06897..4ce8af82944b1d164f3435125c22d1ab3a951c19 100644 +index a48915fb14e0bfba762853924913b7760a8aec2f..70941e46dd15db9d221b505577511cd0295ba603 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -941,8 +941,17 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -907,8 +907,17 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.disconnect("Invalid hotbar selection (Hacking?)", org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_ACTION); // Paper - kick event cause return; } diff --git a/patches/server/0974-Allow-trident-custom-damage.patch b/patches/server/0959-Allow-trident-custom-damage.patch similarity index 100% rename from patches/server/0974-Allow-trident-custom-damage.patch rename to patches/server/0959-Allow-trident-custom-damage.patch diff --git a/patches/server/0975-Expose-hand-in-BlockCanBuildEvent.patch b/patches/server/0960-Expose-hand-in-BlockCanBuildEvent.patch similarity index 100% rename from patches/server/0975-Expose-hand-in-BlockCanBuildEvent.patch rename to patches/server/0960-Expose-hand-in-BlockCanBuildEvent.patch diff --git a/patches/server/0976-Optimize-nearest-structure-border-iteration.patch b/patches/server/0961-Optimize-nearest-structure-border-iteration.patch similarity index 95% rename from patches/server/0976-Optimize-nearest-structure-border-iteration.patch rename to patches/server/0961-Optimize-nearest-structure-border-iteration.patch index ddf78eeb7..2fedf7960 100644 --- a/patches/server/0976-Optimize-nearest-structure-border-iteration.patch +++ b/patches/server/0961-Optimize-nearest-structure-border-iteration.patch @@ -14,7 +14,7 @@ ensure that the returned found structure (which may for example be a buried treasure that will be marked on a treasure map) is the same as in vanilla. diff --git a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java -index 6b743d4c7b304c21e2e89300e69df8eff672e8a6..9cfb0283e568a7d4d554a2fed2417b375485df94 100644 +index aa2a014f5451e780219415fffcb64a6e7cdf9b87..b8b78494449c0cd638f9706a803dc54e184d981f 100644 --- a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java +++ b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java @@ -260,12 +260,15 @@ public abstract class ChunkGenerator { diff --git a/patches/server/0977-Implement-OfflinePlayer-isConnected.patch b/patches/server/0962-Implement-OfflinePlayer-isConnected.patch similarity index 100% rename from patches/server/0977-Implement-OfflinePlayer-isConnected.patch rename to patches/server/0962-Implement-OfflinePlayer-isConnected.patch diff --git a/patches/server/0978-Fix-inventory-desync.patch b/patches/server/0963-Fix-inventory-desync.patch similarity index 100% rename from patches/server/0978-Fix-inventory-desync.patch rename to patches/server/0963-Fix-inventory-desync.patch diff --git a/patches/server/0979-Add-titleOverride-to-InventoryOpenEvent.patch b/patches/server/0964-Add-titleOverride-to-InventoryOpenEvent.patch similarity index 98% rename from patches/server/0979-Add-titleOverride-to-InventoryOpenEvent.patch rename to patches/server/0964-Add-titleOverride-to-InventoryOpenEvent.patch index 0afa17ab3..7e24ee923 100644 --- a/patches/server/0979-Add-titleOverride-to-InventoryOpenEvent.patch +++ b/patches/server/0964-Add-titleOverride-to-InventoryOpenEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add titleOverride to InventoryOpenEvent diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index ea76c2845965ceecce8a1c13f1a8454a088a5354..8afbf0d40af4040b18f68a549710112a0aa5fd00 100644 +index 4520a6dddddb3857245c4dc8a0260664fba2dde6..361541e8c152a9311634411d434cc29ec87c17e2 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -1573,12 +1573,17 @@ public class ServerPlayer extends Player { diff --git a/patches/server/0980-Configure-sniffer-egg-hatch-time.patch b/patches/server/0965-Configure-sniffer-egg-hatch-time.patch similarity index 100% rename from patches/server/0980-Configure-sniffer-egg-hatch-time.patch rename to patches/server/0965-Configure-sniffer-egg-hatch-time.patch diff --git a/patches/server/0981-Do-crystal-portal-proximity-check-before-entity-look.patch b/patches/server/0966-Do-crystal-portal-proximity-check-before-entity-look.patch similarity index 100% rename from patches/server/0981-Do-crystal-portal-proximity-check-before-entity-look.patch rename to patches/server/0966-Do-crystal-portal-proximity-check-before-entity-look.patch diff --git a/patches/server/0982-Skip-POI-finding-if-stuck-in-vehicle.patch b/patches/server/0967-Skip-POI-finding-if-stuck-in-vehicle.patch similarity index 100% rename from patches/server/0982-Skip-POI-finding-if-stuck-in-vehicle.patch rename to patches/server/0967-Skip-POI-finding-if-stuck-in-vehicle.patch diff --git a/patches/server/0983-Add-slot-sanity-checks-in-container-clicks.patch b/patches/server/0968-Add-slot-sanity-checks-in-container-clicks.patch similarity index 94% rename from patches/server/0983-Add-slot-sanity-checks-in-container-clicks.patch rename to patches/server/0968-Add-slot-sanity-checks-in-container-clicks.patch index 0c616ab1a..351246e50 100644 --- a/patches/server/0983-Add-slot-sanity-checks-in-container-clicks.patch +++ b/patches/server/0968-Add-slot-sanity-checks-in-container-clicks.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add slot sanity checks in container clicks diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 4ce8af82944b1d164f3435125c22d1ab3a951c19..5234d3dcb60d84f65621713b57bea034038af2a5 100644 +index 70941e46dd15db9d221b505577511cd0295ba603..9342efcb855dce5cced227b15356df090e9c451a 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2987,6 +2987,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2900,6 +2900,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl break; case SWAP: if ((packet.getButtonNum() >= 0 && packet.getButtonNum() < 9) || packet.getButtonNum() == 40) { diff --git a/patches/server/0984-Call-BlockRedstoneEvents-for-lecterns.patch b/patches/server/0969-Call-BlockRedstoneEvents-for-lecterns.patch similarity index 100% rename from patches/server/0984-Call-BlockRedstoneEvents-for-lecterns.patch rename to patches/server/0969-Call-BlockRedstoneEvents-for-lecterns.patch diff --git a/patches/server/0985-Allow-proper-checking-of-empty-item-stacks.patch b/patches/server/0970-Allow-proper-checking-of-empty-item-stacks.patch similarity index 100% rename from patches/server/0985-Allow-proper-checking-of-empty-item-stacks.patch rename to patches/server/0970-Allow-proper-checking-of-empty-item-stacks.patch diff --git a/patches/server/0986-Fix-silent-equipment-change-for-mobs.patch b/patches/server/0971-Fix-silent-equipment-change-for-mobs.patch similarity index 98% rename from patches/server/0986-Fix-silent-equipment-change-for-mobs.patch rename to patches/server/0971-Fix-silent-equipment-change-for-mobs.patch index 71d648e31..c56a73642 100644 --- a/patches/server/0986-Fix-silent-equipment-change-for-mobs.patch +++ b/patches/server/0971-Fix-silent-equipment-change-for-mobs.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix silent equipment change for mobs diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index 74004b78673e81218b44097eea89a79217e005a6..4050c46df8537da37c3b022d94b064e9d5dd0659 100644 +index 59b776c591af3e890b81f9c2ca67c119ba89695e..c411b692ba71400e4e3d2ed7af4f35c4a4fed4be 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -1059,13 +1059,20 @@ public abstract class Mob extends LivingEntity implements Targeting { diff --git a/patches/server/0987-Fix-spigot-s-Forced-Stats.patch b/patches/server/0972-Fix-spigot-s-Forced-Stats.patch similarity index 100% rename from patches/server/0987-Fix-spigot-s-Forced-Stats.patch rename to patches/server/0972-Fix-spigot-s-Forced-Stats.patch diff --git a/patches/server/0988-Add-missing-InventoryHolders-to-inventories.patch b/patches/server/0973-Add-missing-InventoryHolders-to-inventories.patch similarity index 100% rename from patches/server/0988-Add-missing-InventoryHolders-to-inventories.patch rename to patches/server/0973-Add-missing-InventoryHolders-to-inventories.patch diff --git a/patches/server/0989-Do-not-read-tile-entities-in-chunks-that-are-positio.patch b/patches/server/0974-Do-not-read-tile-entities-in-chunks-that-are-positio.patch similarity index 93% rename from patches/server/0989-Do-not-read-tile-entities-in-chunks-that-are-positio.patch rename to patches/server/0974-Do-not-read-tile-entities-in-chunks-that-are-positio.patch index a9d6af5d2..058652cce 100644 --- a/patches/server/0989-Do-not-read-tile-entities-in-chunks-that-are-positio.patch +++ b/patches/server/0974-Do-not-read-tile-entities-in-chunks-that-are-positio.patch @@ -10,10 +10,10 @@ which would cause a crash on Folia but would appear to function fine on Paper. diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java b/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java -index c09d42c03e1e430dd65218e8297be9e35cdef030..362516b6703dfa037954c55b8628074965240dff 100644 +index 0ef8ecc7932107029d85e961e2e747d7312d816e..bb5da9ddcd3030c8d6148902f3c649227430baab 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java -@@ -381,6 +381,13 @@ public class ChunkSerializer { +@@ -369,6 +369,13 @@ public class ChunkSerializer { for (int k1 = 0; k1 < nbttaglist3.size(); ++k1) { CompoundTag nbttagcompound4 = nbttaglist3.getCompound(k1); @@ -27,7 +27,7 @@ index c09d42c03e1e430dd65218e8297be9e35cdef030..362516b6703dfa037954c55b86280749 ((ChunkAccess) object1).setBlockEntityNbt(nbttagcompound4); } -@@ -679,10 +686,19 @@ public class ChunkSerializer { +@@ -667,10 +674,19 @@ public class ChunkSerializer { CompoundTag nbttagcompound1 = nbttaglist1.getCompound(i); boolean flag = nbttagcompound1.getBoolean("keepPacked"); diff --git a/patches/server/0991-Add-missing-logs-for-log-ips-config-option.patch b/patches/server/0975-Add-missing-logs-for-log-ips-config-option.patch similarity index 100% rename from patches/server/0991-Add-missing-logs-for-log-ips-config-option.patch rename to patches/server/0975-Add-missing-logs-for-log-ips-config-option.patch diff --git a/patches/server/0992-Remove-Spigot-Bug-Fix-for-MC-109346.patch b/patches/server/0976-Remove-Spigot-Bug-Fix-for-MC-109346.patch similarity index 100% rename from patches/server/0992-Remove-Spigot-Bug-Fix-for-MC-109346.patch rename to patches/server/0976-Remove-Spigot-Bug-Fix-for-MC-109346.patch diff --git a/patches/server/0993-Fix-SuspiciousStewMeta.patch b/patches/server/0977-Fix-SuspiciousStewMeta.patch similarity index 100% rename from patches/server/0993-Fix-SuspiciousStewMeta.patch rename to patches/server/0977-Fix-SuspiciousStewMeta.patch diff --git a/patches/server/0996-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch b/patches/server/0978-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch similarity index 100% rename from patches/server/0996-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch rename to patches/server/0978-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch diff --git a/patches/server/0997-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch b/patches/server/0979-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch similarity index 100% rename from patches/server/0997-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch rename to patches/server/0979-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch diff --git a/patches/server/0998-Fix-team-sidebar-objectives-not-being-cleared.patch b/patches/server/0980-Fix-team-sidebar-objectives-not-being-cleared.patch similarity index 100% rename from patches/server/0998-Fix-team-sidebar-objectives-not-being-cleared.patch rename to patches/server/0980-Fix-team-sidebar-objectives-not-being-cleared.patch diff --git a/patches/server/1000-Fix-missing-map-initialize-event-call.patch b/patches/server/0981-Fix-missing-map-initialize-event-call.patch similarity index 93% rename from patches/server/1000-Fix-missing-map-initialize-event-call.patch rename to patches/server/0981-Fix-missing-map-initialize-event-call.patch index db53e677a..cd4415beb 100644 --- a/patches/server/1000-Fix-missing-map-initialize-event-call.patch +++ b/patches/server/0981-Fix-missing-map-initialize-event-call.patch @@ -7,10 +7,10 @@ Subject: [PATCH] Fix missing map initialize event call public net.minecraft.world.level.storage.DimensionDataStorage readSavedData(Ljava/util/function/Function;Lnet/minecraft/util/datafix/DataFixTypes;Ljava/lang/String;)Lnet/minecraft/world/level/saveddata/SavedData; diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index f5254ccffc19cf451cd5e358256b97fa33e51cfc..8680f351795eb50b8eff231cde4a28dd2f8aa509 100644 +index d803b2c246f7e1935d2a466fe509df7fe80b2498..9e8f47ab8b337a43760d781852348e4bddbb46d9 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -2113,13 +2113,25 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -1945,13 +1945,25 @@ public class ServerLevel extends Level implements WorldGenLevel { @Nullable @Override public MapItemSavedData getMapData(String id) { diff --git a/patches/server/1001-Update-entity-data-when-attaching-firework-to-entity.patch b/patches/server/0982-Update-entity-data-when-attaching-firework-to-entity.patch similarity index 100% rename from patches/server/1001-Update-entity-data-when-attaching-firework-to-entity.patch rename to patches/server/0982-Update-entity-data-when-attaching-firework-to-entity.patch diff --git a/patches/server/1002-Use-correct-variable-for-initializing-CraftLootTable.patch b/patches/server/0983-Use-correct-variable-for-initializing-CraftLootTable.patch similarity index 100% rename from patches/server/1002-Use-correct-variable-for-initializing-CraftLootTable.patch rename to patches/server/0983-Use-correct-variable-for-initializing-CraftLootTable.patch diff --git a/patches/server/1003-Make-setVelocity-method-of-Fireballs-change-the-trav.patch b/patches/server/0984-Make-setVelocity-method-of-Fireballs-change-the-trav.patch similarity index 100% rename from patches/server/1003-Make-setVelocity-method-of-Fireballs-change-the-trav.patch rename to patches/server/0984-Make-setVelocity-method-of-Fireballs-change-the-trav.patch diff --git a/patches/server/1004-Fix-UnsafeValues-loadAdvancement.patch b/patches/server/0985-Fix-UnsafeValues-loadAdvancement.patch similarity index 100% rename from patches/server/1004-Fix-UnsafeValues-loadAdvancement.patch rename to patches/server/0985-Fix-UnsafeValues-loadAdvancement.patch diff --git a/patches/server/1005-Add-player-idle-duration-API.patch b/patches/server/0986-Add-player-idle-duration-API.patch similarity index 100% rename from patches/server/1005-Add-player-idle-duration-API.patch rename to patches/server/0986-Add-player-idle-duration-API.patch diff --git a/patches/server/1006-Don-t-check-if-we-can-see-non-visible-entities.patch b/patches/server/0987-Don-t-check-if-we-can-see-non-visible-entities.patch similarity index 85% rename from patches/server/1006-Don-t-check-if-we-can-see-non-visible-entities.patch rename to patches/server/0987-Don-t-check-if-we-can-see-non-visible-entities.patch index b2ef1fef5..3bc977431 100644 --- a/patches/server/1006-Don-t-check-if-we-can-see-non-visible-entities.patch +++ b/patches/server/0987-Don-t-check-if-we-can-see-non-visible-entities.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Don't check if we can see non-visible entities diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 6c28b37056c70fa0076b290b24168bfb79ddd77d..257303162e3550e332cae01d5f6f158558b7ebf8 100644 +index 815fb04fb2d14d0cea14a2b3509e81b383bbdbda..303ab1ea6747bb71adbd3a09e419b2677c9b8c5f 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -1431,7 +1431,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1426,7 +1426,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider // Paper end - Configurable entity tracking range by Y // CraftBukkit start - respect vanish API diff --git a/patches/server/1007-Fix-NPE-in-SculkBloomEvent-world-access.patch b/patches/server/0988-Fix-NPE-in-SculkBloomEvent-world-access.patch similarity index 100% rename from patches/server/1007-Fix-NPE-in-SculkBloomEvent-world-access.patch rename to patches/server/0988-Fix-NPE-in-SculkBloomEvent-world-access.patch diff --git a/patches/server/1008-Allow-null-itemstack-for-Player-sendEquipmentChange.patch b/patches/server/0989-Allow-null-itemstack-for-Player-sendEquipmentChange.patch similarity index 100% rename from patches/server/1008-Allow-null-itemstack-for-Player-sendEquipmentChange.patch rename to patches/server/0989-Allow-null-itemstack-for-Player-sendEquipmentChange.patch diff --git a/patches/server/1009-Optimize-VarInts.patch b/patches/server/0990-Optimize-VarInts.patch similarity index 100% rename from patches/server/1009-Optimize-VarInts.patch rename to patches/server/0990-Optimize-VarInts.patch diff --git a/patches/server/1010-Add-API-to-get-the-collision-shape-of-a-block-before.patch b/patches/server/0991-Add-API-to-get-the-collision-shape-of-a-block-before.patch similarity index 100% rename from patches/server/1010-Add-API-to-get-the-collision-shape-of-a-block-before.patch rename to patches/server/0991-Add-API-to-get-the-collision-shape-of-a-block-before.patch diff --git a/patches/server/1011-Add-predicate-for-blocks-when-raytracing.patch b/patches/server/0992-Add-predicate-for-blocks-when-raytracing.patch similarity index 100% rename from patches/server/1011-Add-predicate-for-blocks-when-raytracing.patch rename to patches/server/0992-Add-predicate-for-blocks-when-raytracing.patch diff --git a/patches/server/1012-Broadcast-take-item-packets-with-collector-as-source.patch b/patches/server/0993-Broadcast-take-item-packets-with-collector-as-source.patch similarity index 92% rename from patches/server/1012-Broadcast-take-item-packets-with-collector-as-source.patch rename to patches/server/0993-Broadcast-take-item-packets-with-collector-as-source.patch index 3b3dea7ae..91ef80895 100644 --- a/patches/server/1012-Broadcast-take-item-packets-with-collector-as-source.patch +++ b/patches/server/0993-Broadcast-take-item-packets-with-collector-as-source.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Broadcast take item packets with collector as source This fixes players (which can't view the collector) seeing item pickups with themselves as the target. diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 91d88337f9147637b0e8fa1ac8bf9193b44751f2..4785c1029f6c68406d6405ed5e950a75230dfdc0 100644 +index 93eecdc6322dfc6161fbb80828d338aa4a311640..3bedc89be56dddb858d40c155a8137665bbf3726 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -3704,7 +3704,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/1013-Expand-LingeringPotion-API.patch b/patches/server/0994-Expand-LingeringPotion-API.patch similarity index 100% rename from patches/server/1013-Expand-LingeringPotion-API.patch rename to patches/server/0994-Expand-LingeringPotion-API.patch diff --git a/patches/server/1014-Add-MaterialTagsTest.patch b/patches/server/0995-Add-MaterialTagsTest.patch similarity index 100% rename from patches/server/1014-Add-MaterialTagsTest.patch rename to patches/server/0995-Add-MaterialTagsTest.patch diff --git a/patches/server/1015-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch b/patches/server/0996-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch similarity index 97% rename from patches/server/1015-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch rename to patches/server/0996-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch index 3ea939060..50459d0a1 100644 --- a/patches/server/1015-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch +++ b/patches/server/0996-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch @@ -45,7 +45,7 @@ index 0db0d67f9ac15372becc1166c37f7f0aede4a4da..a9e70484b01fc082ea25d43d1d428334 BlockState iblockdata = BaseFireBlock.getState(this.level(), blockposition); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 1843ae08cc19cb8f7290403f8622dcd760e9399f..af7ac110a30651ec02fcd57c33eb291c7fc28287 100644 +index 0d66ad3728eb31bb1dbf9f35b4f9193ed3c1f880..4303c4bd263356d9f4ab44226bbc485f4b260413 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -773,7 +773,7 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/server/1016-Add-hand-to-fish-event-for-all-player-interactions.patch b/patches/server/0997-Add-hand-to-fish-event-for-all-player-interactions.patch similarity index 100% rename from patches/server/1016-Add-hand-to-fish-event-for-all-player-interactions.patch rename to patches/server/0997-Add-hand-to-fish-event-for-all-player-interactions.patch diff --git a/patches/server/1017-Fix-several-issues-with-EntityBreedEvent.patch b/patches/server/0998-Fix-several-issues-with-EntityBreedEvent.patch similarity index 100% rename from patches/server/1017-Fix-several-issues-with-EntityBreedEvent.patch rename to patches/server/0998-Fix-several-issues-with-EntityBreedEvent.patch diff --git a/patches/server/1018-Add-UUID-attribute-modifier-API.patch b/patches/server/0999-Add-UUID-attribute-modifier-API.patch similarity index 100% rename from patches/server/1018-Add-UUID-attribute-modifier-API.patch rename to patches/server/0999-Add-UUID-attribute-modifier-API.patch diff --git a/patches/server/1019-Fix-missing-event-call-for-entity-teleport-API.patch b/patches/server/1000-Fix-missing-event-call-for-entity-teleport-API.patch similarity index 93% rename from patches/server/1019-Fix-missing-event-call-for-entity-teleport-API.patch rename to patches/server/1000-Fix-missing-event-call-for-entity-teleport-API.patch index 208b33671..538b1a630 100644 --- a/patches/server/1019-Fix-missing-event-call-for-entity-teleport-API.patch +++ b/patches/server/1000-Fix-missing-event-call-for-entity-teleport-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix missing event call for entity teleport API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index 03908ccb1bcd88b68fcec48c581677cb0a484508..f16ac1d640fc97f348c244d4ea86e3278b30ae19 100644 +index 395476ab15a04f95710c671c9a896a9a37daa9b4..9b8ba3199fa091c7b20a89044ff986d9861f088f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java @@ -255,6 +255,17 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { diff --git a/patches/server/1020-Lazily-create-LootContext-for-criterions.patch b/patches/server/1001-Lazily-create-LootContext-for-criterions.patch similarity index 100% rename from patches/server/1020-Lazily-create-LootContext-for-criterions.patch rename to patches/server/1001-Lazily-create-LootContext-for-criterions.patch diff --git a/patches/server/1021-Don-t-fire-sync-events-during-worldgen.patch b/patches/server/1002-Don-t-fire-sync-events-during-worldgen.patch similarity index 96% rename from patches/server/1021-Don-t-fire-sync-events-during-worldgen.patch rename to patches/server/1002-Don-t-fire-sync-events-during-worldgen.patch index 5c8ab53f3..bf0a1af39 100644 --- a/patches/server/1021-Don-t-fire-sync-events-during-worldgen.patch +++ b/patches/server/1002-Don-t-fire-sync-events-during-worldgen.patch @@ -19,10 +19,10 @@ where generation happened directly to a ServerLevel and the entity still has the flag set. diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 8680f351795eb50b8eff231cde4a28dd2f8aa509..48b0bce01a9ae1ce869203a685be308d49a8c880 100644 +index 9e8f47ab8b337a43760d781852348e4bddbb46d9..0c4c20ce794dd7e12cf1712dccc975bf21b01133 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -1676,6 +1676,7 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -1508,6 +1508,7 @@ public class ServerLevel extends Level implements WorldGenLevel { // CraftBukkit start private boolean addEntity(Entity entity, CreatureSpawnEvent.SpawnReason spawnReason) { org.spigotmc.AsyncCatcher.catchOp("entity add"); // Spigot @@ -31,7 +31,7 @@ index 8680f351795eb50b8eff231cde4a28dd2f8aa509..48b0bce01a9ae1ce869203a685be308d if (entity.valid) { MinecraftServer.LOGGER.error("Attempted Double World add on {}", entity, new Throwable()); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index be36e4307636a02c806ed8eb9d217e84d837fef2..4fdc55b78c4212603bd57a292c72d89c73d28871 100644 +index e9df37e802a982d9332a40a7f889206440ac1cc2..ec5a7f44b379a10c61f152eb57641994d382b017 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -712,7 +712,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @@ -48,7 +48,7 @@ index be36e4307636a02c806ed8eb9d217e84d837fef2..4fdc55b78c4212603bd57a292c72d89c this.entityData.set(Entity.DATA_POSE, pose); } diff --git a/src/main/java/net/minecraft/world/entity/EntityType.java b/src/main/java/net/minecraft/world/entity/EntityType.java -index dd4cf9011bf48623e95d5d0f3ff27ee962c88200..a039217f9293ad3b0cc74c49450472eb44c6a139 100644 +index a6e20b5ee4fe1841dfc2350264b5935b968fe3f3..9da8d56ff3768fb37d1ab89300da4eca19e6218d 100644 --- a/src/main/java/net/minecraft/world/entity/EntityType.java +++ b/src/main/java/net/minecraft/world/entity/EntityType.java @@ -588,9 +588,15 @@ public class EntityType implements FeatureElement, EntityTypeT @@ -68,7 +68,7 @@ index dd4cf9011bf48623e95d5d0f3ff27ee962c88200..a039217f9293ad3b0cc74c49450472eb }, () -> { EntityType.LOGGER.warn("Skipping Entity with id {}", nbt.getString("id")); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 4785c1029f6c68406d6405ed5e950a75230dfdc0..68e1ef67e58ef348d35dfc3b3e890336d4cb2108 100644 +index 3bedc89be56dddb858d40c155a8137665bbf3726..18004cc231804220aa63e41389a8caffcc434d66 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1134,6 +1134,11 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/1022-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch b/patches/server/1003-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch similarity index 100% rename from patches/server/1022-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch rename to patches/server/1003-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch diff --git a/patches/server/1023-Restore-vanilla-entity-drops-behavior.patch b/patches/server/1004-Restore-vanilla-entity-drops-behavior.patch similarity index 95% rename from patches/server/1023-Restore-vanilla-entity-drops-behavior.patch rename to patches/server/1004-Restore-vanilla-entity-drops-behavior.patch index 7ecbf4e96..8d807f67c 100644 --- a/patches/server/1023-Restore-vanilla-entity-drops-behavior.patch +++ b/patches/server/1004-Restore-vanilla-entity-drops-behavior.patch @@ -9,10 +9,10 @@ on dropping the item instead of generalizing it for all dropped items like CB does. diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 575681586667933e7f26bb16f7d2aa7c73188cde..38df47d282713522b3c5784a562ff09e3151fb27 100644 +index 361541e8c152a9311634411d434cc29ec87c17e2..bd1a53e2ce2644681c23f8cf678afa2a99166d9b 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -944,22 +944,20 @@ public class ServerPlayer extends Player { +@@ -941,22 +941,20 @@ public class ServerPlayer extends Player { if (this.isRemoved()) { return; } @@ -38,7 +38,7 @@ index 575681586667933e7f26bb16f7d2aa7c73188cde..38df47d282713522b3c5784a562ff09e this.drops.clear(); // SPIGOT-5188: make sure to clear } // Paper - fix player loottables running when mob loot gamerule is false -@@ -2442,8 +2440,8 @@ public class ServerPlayer extends Player { +@@ -2439,8 +2437,8 @@ public class ServerPlayer extends Player { } @Override @@ -50,10 +50,10 @@ index 575681586667933e7f26bb16f7d2aa7c73188cde..38df47d282713522b3c5784a562ff09e if (entityitem == null) { return null; diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 4fdc55b78c4212603bd57a292c72d89c73d28871..1a19f18b5d4c42ac07e7e4f305e140954dea481b 100644 +index ec5a7f44b379a10c61f152eb57641994d382b017..f2f8bc9f8f55a43174acd9c5e841fb9a7d1b8065 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2702,6 +2702,25 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -2575,6 +2575,25 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S @Nullable public ItemEntity spawnAtLocation(ItemStack stack, float yOffset) { @@ -79,7 +79,7 @@ index 4fdc55b78c4212603bd57a292c72d89c73d28871..1a19f18b5d4c42ac07e7e4f305e14095 if (stack.isEmpty()) { return null; } else if (this.level().isClientSide) { -@@ -2709,14 +2728,21 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -2582,14 +2601,21 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } else { // CraftBukkit start - Capture drops for death event if (this instanceof net.minecraft.world.entity.LivingEntity && !((net.minecraft.world.entity.LivingEntity) this).forceDrops) { @@ -104,7 +104,7 @@ index 4fdc55b78c4212603bd57a292c72d89c73d28871..1a19f18b5d4c42ac07e7e4f305e14095 return this.spawnAtLocation(entityitem); } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 68e1ef67e58ef348d35dfc3b3e890336d4cb2108..5d27e1d3f15839663d89d198babe3be94cfd3f07 100644 +index 18004cc231804220aa63e41389a8caffcc434d66..563b30aca4a1dd04e298db3b9252904740422203 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -254,7 +254,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -134,7 +134,7 @@ index 45906d273e6d6ec20cf44b4d07efdac68752ee9b..ac9eaeaf7df1e84ee588f371628c0a10 } diff --git a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java -index 92b4eecf7b8ce07334256a216d9caf241fa5363b..94a30a0c1266bf919d1dc4ca2b19489edd54a7fa 100644 +index e3412f9dd86dddd241bea8f6dcaeed77a7e67f08..6dfcc296ff7e59ecbebc5446973fabc9eff3cb43 100644 --- a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java +++ b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java @@ -610,7 +610,7 @@ public class ArmorStand extends LivingEntity { @@ -165,7 +165,7 @@ index 92b4eecf7b8ce07334256a216d9caf241fa5363b..94a30a0c1266bf919d1dc4ca2b19489e } } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index b3b1211d20c6d28a14c656159a1e345f8406a093..4f4d76065edff508ff996d507e955f5d270450ac 100644 +index 3865e6c7af0203ff9a366571a276b8af43b97c7c..93f79e5c7244fc155364a35a75a62d42f2d1ee27 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -937,17 +937,21 @@ public class CraftEventFactory { diff --git a/patches/server/1024-Add-Structure-check-API.patch b/patches/server/1005-Add-Structure-check-API.patch similarity index 91% rename from patches/server/1024-Add-Structure-check-API.patch rename to patches/server/1005-Add-Structure-check-API.patch index 47076e059..032a08ac1 100644 --- a/patches/server/1024-Add-Structure-check-API.patch +++ b/patches/server/1005-Add-Structure-check-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add Structure check API diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index af7ac110a30651ec02fcd57c33eb291c7fc28287..7f74f80d11784987a438e6aabfac6fcfb5d9a968 100644 +index 4303c4bd263356d9f4ab44226bbc485f4b260413..835ad8dc64f2342da7fd26e6ef2ea4603c115ae6 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -230,6 +230,12 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/server/1025-Dont-resend-blocks-on-interactions.patch b/patches/server/1006-Dont-resend-blocks-on-interactions.patch similarity index 98% rename from patches/server/1025-Dont-resend-blocks-on-interactions.patch rename to patches/server/1006-Dont-resend-blocks-on-interactions.patch index b6ecf3d30..b9bd69342 100644 --- a/patches/server/1025-Dont-resend-blocks-on-interactions.patch +++ b/patches/server/1006-Dont-resend-blocks-on-interactions.patch @@ -8,7 +8,7 @@ In general, the client now has an acknowledgment system which will prevent block It should be noted that this system does not yet support block entities, so those still need to resynced when needed. diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index fd8a282e0a4316ed3fe51501151f8b49ce8ad0c4..cfd4ac06a9af6bf3fac293110482e1df690e075e 100644 +index a8c723c718aeb8e2aec997503a071c4cfedcd8ae..83e017efd15d0ecaffc327f02d6d5330c8ed6937 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java @@ -199,7 +199,7 @@ public class ServerPlayerGameMode { @@ -149,7 +149,7 @@ index 4b9e726e6ac255e743479d5c2e0cdb98464399a4..6371f326fc86cfc53e39bf8ed13b646f return false; } diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index a33f22f03c54abed5fc24022a8b5f4af007e4597..ed27a963223bfe18310ad5adabf461b5e307ef9c 100644 +index 0fd5decb0790423aba80a7c1e55ce39aff6761b4..2470acc82292bedd930be404a2e1d1f8fad700e1 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -457,10 +457,12 @@ public final class ItemStack { diff --git a/patches/server/1026-Keep-previous-behavior-for-setResourcePack.patch b/patches/server/1007-Keep-previous-behavior-for-setResourcePack.patch similarity index 100% rename from patches/server/1026-Keep-previous-behavior-for-setResourcePack.patch rename to patches/server/1007-Keep-previous-behavior-for-setResourcePack.patch diff --git a/patches/server/1027-properly-read-and-store-sus-effect-duration.patch b/patches/server/1008-properly-read-and-store-sus-effect-duration.patch similarity index 100% rename from patches/server/1027-properly-read-and-store-sus-effect-duration.patch rename to patches/server/1008-properly-read-and-store-sus-effect-duration.patch diff --git a/patches/server/1028-Use-correct-max-stack-size-in-crafter.patch b/patches/server/1009-Use-correct-max-stack-size-in-crafter.patch similarity index 100% rename from patches/server/1028-Use-correct-max-stack-size-in-crafter.patch rename to patches/server/1009-Use-correct-max-stack-size-in-crafter.patch diff --git a/patches/server/1029-add-more-scoreboard-API.patch b/patches/server/1010-add-more-scoreboard-API.patch similarity index 100% rename from patches/server/1029-add-more-scoreboard-API.patch rename to patches/server/1010-add-more-scoreboard-API.patch diff --git a/patches/server/1030-Improve-Registry.patch b/patches/server/1011-Improve-Registry.patch similarity index 100% rename from patches/server/1030-Improve-Registry.patch rename to patches/server/1011-Improve-Registry.patch diff --git a/patches/server/1031-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch b/patches/server/1012-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch similarity index 96% rename from patches/server/1031-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch rename to patches/server/1012-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch index 77d16936c..3a2aaebbf 100644 --- a/patches/server/1031-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch +++ b/patches/server/1012-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch @@ -26,10 +26,10 @@ index 3fec07b250a8f145e30c8c41888e47d2a3c902e1..2ddd033e1c3a2e5c8950b93c83849192 x = to.getX(); y = to.getY(); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 5d27e1d3f15839663d89d198babe3be94cfd3f07..5e2f6a1cdaf83468c0db6a2cc8fefb71e6ec51d8 100644 +index 563b30aca4a1dd04e298db3b9252904740422203..b920f72e659956cc2d2d44743caddb0136d467e4 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -4204,7 +4204,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4186,7 +4186,7 @@ public abstract class LivingEntity extends Entity implements Attackable { if (!(this instanceof ServerPlayer)) { EntityTeleportEvent teleport = new EntityTeleportEvent(this.getBukkitEntity(), new Location(this.level().getWorld(), d3, d4, d5), new Location(this.level().getWorld(), d0, d6, d2)); this.level().getCraftServer().getPluginManager().callEvent(teleport); diff --git a/patches/server/1032-Add-experience-points-API.patch b/patches/server/1013-Add-experience-points-API.patch similarity index 97% rename from patches/server/1032-Add-experience-points-API.patch rename to patches/server/1013-Add-experience-points-API.patch index fe9eb0cc7..f7a36a99c 100644 --- a/patches/server/1032-Add-experience-points-API.patch +++ b/patches/server/1013-Add-experience-points-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add experience points API diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index 276f6e650f6b6a4e14bdf3132533668382fb33b4..a0312dc208acda99b871cbd9e62f350e5899303f 100644 +index a629755f07415997e6dbdd96f9b447b90e20b1d5..4713ed2d407e1425d7f5f18d0b43c6917ef876ec 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -1833,7 +1833,7 @@ public abstract class Player extends LivingEntity { diff --git a/patches/server/1033-Add-missing-InventoryType.patch b/patches/server/1014-Add-missing-InventoryType.patch similarity index 100% rename from patches/server/1033-Add-missing-InventoryType.patch rename to patches/server/1014-Add-missing-InventoryType.patch diff --git a/patches/server/1034-Add-drops-to-shear-events.patch b/patches/server/1015-Add-drops-to-shear-events.patch similarity index 99% rename from patches/server/1034-Add-drops-to-shear-events.patch rename to patches/server/1015-Add-drops-to-shear-events.patch index 5ff56975a..77b35dfe1 100644 --- a/patches/server/1034-Add-drops-to-shear-events.patch +++ b/patches/server/1015-Add-drops-to-shear-events.patch @@ -233,7 +233,7 @@ index 8adcfc8f6772a32b5915e4a07100e8eb735f907a..b5d6857eaf2bed14adcb5f5e80d91b44 } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 4f4d76065edff508ff996d507e955f5d270450ac..bf2323c81ddc5a1e495a694585135249c3fe1c4c 100644 +index 93f79e5c7244fc155364a35a75a62d42f2d1ee27..b9e90f589749dfc9324c4aa2062c505fbd4447bc 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1716,20 +1716,20 @@ public class CraftEventFactory { diff --git a/patches/server/1035-Add-PlayerShieldDisableEvent.patch b/patches/server/1016-Add-PlayerShieldDisableEvent.patch similarity index 95% rename from patches/server/1035-Add-PlayerShieldDisableEvent.patch rename to patches/server/1016-Add-PlayerShieldDisableEvent.patch index b1e67d302..14308e197 100644 --- a/patches/server/1035-Add-PlayerShieldDisableEvent.patch +++ b/patches/server/1016-Add-PlayerShieldDisableEvent.patch @@ -16,7 +16,7 @@ sideeffects, meaning the disable event cannot share a handlerlist with the cooldown event diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index 4050c46df8537da37c3b022d94b064e9d5dd0659..76497f642ff268d4039590902708e0d21ddb6531 100644 +index c411b692ba71400e4e3d2ed7af4f35c4a4fed4be..dc941429b047d33fe39c1e4664371bc0ce8d5245 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -1703,7 +1703,11 @@ public abstract class Mob extends LivingEntity implements Targeting { @@ -33,7 +33,7 @@ index 4050c46df8537da37c3b022d94b064e9d5dd0659..76497f642ff268d4039590902708e0d2 } } diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index 777043d4e4bd253a804353df3efad43078a5c3b3..7e77383368388f6e56159892cd483513b068e402 100644 +index 4713ed2d407e1425d7f5f18d0b43c6917ef876ec..35869e655a7488f7b5868895287b8045b03f2d63 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -979,7 +979,7 @@ public abstract class Player extends LivingEntity { diff --git a/patches/server/1036-Add-HiddenPotionEffect-API.patch b/patches/server/1017-Add-HiddenPotionEffect-API.patch similarity index 100% rename from patches/server/1036-Add-HiddenPotionEffect-API.patch rename to patches/server/1017-Add-HiddenPotionEffect-API.patch diff --git a/patches/server/1037-Correctly-check-if-bucket-dispenses-will-succeed-for.patch b/patches/server/1018-Correctly-check-if-bucket-dispenses-will-succeed-for.patch similarity index 100% rename from patches/server/1037-Correctly-check-if-bucket-dispenses-will-succeed-for.patch rename to patches/server/1018-Correctly-check-if-bucket-dispenses-will-succeed-for.patch diff --git a/patches/server/1038-fix-ItemMeta-removing-CustomModelData.patch b/patches/server/1019-fix-ItemMeta-removing-CustomModelData.patch similarity index 100% rename from patches/server/1038-fix-ItemMeta-removing-CustomModelData.patch rename to patches/server/1019-fix-ItemMeta-removing-CustomModelData.patch diff --git a/patches/server/1039-Validate-ResourceLocation-in-NBT-reading.patch b/patches/server/1020-Validate-ResourceLocation-in-NBT-reading.patch similarity index 96% rename from patches/server/1039-Validate-ResourceLocation-in-NBT-reading.patch rename to patches/server/1020-Validate-ResourceLocation-in-NBT-reading.patch index bc30169ed..6cf68dcdf 100644 --- a/patches/server/1039-Validate-ResourceLocation-in-NBT-reading.patch +++ b/patches/server/1020-Validate-ResourceLocation-in-NBT-reading.patch @@ -40,7 +40,7 @@ index 5f9dcab27a07969c93555ad0892683c62cbebc8c..a4d875df936b6de16f0233482b03af05 this.path = path; } diff --git a/src/main/java/net/minecraft/world/entity/EntityType.java b/src/main/java/net/minecraft/world/entity/EntityType.java -index a039217f9293ad3b0cc74c49450472eb44c6a139..e52f3da3b63cc3dba59d3e874a8420dd312b5e96 100644 +index 9da8d56ff3768fb37d1ab89300da4eca19e6218d..edc723ea5ca3a325106e7af38c60dbf9f0f5fb77 100644 --- a/src/main/java/net/minecraft/world/entity/EntityType.java +++ b/src/main/java/net/minecraft/world/entity/EntityType.java @@ -618,7 +618,7 @@ public class EntityType implements FeatureElement, EntityTypeT @@ -53,7 +53,7 @@ index a039217f9293ad3b0cc74c49450472eb44c6a139..e52f3da3b63cc3dba59d3e874a8420dd @Nullable diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index 76497f642ff268d4039590902708e0d21ddb6531..3ebf777811cba0cc45cfae7587b277f06adeb045 100644 +index dc941429b047d33fe39c1e4664371bc0ce8d5245..22506c5c823c65e65034a962312c1dbd44356e23 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -620,7 +620,7 @@ public abstract class Mob extends LivingEntity implements Targeting { diff --git a/patches/server/1040-Properly-handle-experience-dropping-on-block-break.patch b/patches/server/1021-Properly-handle-experience-dropping-on-block-break.patch similarity index 93% rename from patches/server/1040-Properly-handle-experience-dropping-on-block-break.patch rename to patches/server/1021-Properly-handle-experience-dropping-on-block-break.patch index 96b22c026..e2efaa8c2 100644 --- a/patches/server/1040-Properly-handle-experience-dropping-on-block-break.patch +++ b/patches/server/1021-Properly-handle-experience-dropping-on-block-break.patch @@ -7,10 +7,10 @@ This causes spawnAfterBreak to spawn xp by default, removing the need to manuall For classes that use custom xp amounts, they can drop the resources with disabling diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 1fd66fce58909b2001652f7d1d13028abee5fef7..1feca8c844c74b8f64d1a1034ae06bfd7a9c0ab2 100644 +index 0b2e7e098ad0d8250156a6277491676357e0b1db..e5944ff3c1118e57c9e7a14cbb5181b2d7f7a79a 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -1102,7 +1102,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -734,7 +734,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable { if (drop) { BlockEntity tileentity = iblockdata.hasBlockEntity() ? this.getBlockEntity(pos) : null; @@ -21,7 +21,7 @@ index 1fd66fce58909b2001652f7d1d13028abee5fef7..1feca8c844c74b8f64d1a1034ae06bfd boolean flag1 = this.setBlock(pos, fluid.createLegacyBlock(), 3, maxUpdateDepth); diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java -index 5379c4a8c89cbbe73c3ab741d609cecdc81d928c..73d6f881a7d4d8ff96040d34ac502e5b0937d577 100644 +index 6ec04bf5cd1f7f2e74d86daa95209bd2f2124b91..68b94b4ebd710f3ab18f397d9dfa0ef5b8f182e0 100644 --- a/src/main/java/net/minecraft/world/level/block/Block.java +++ b/src/main/java/net/minecraft/world/level/block/Block.java @@ -333,23 +333,31 @@ public class Block extends BlockBehaviour implements ItemLike { @@ -68,10 +68,10 @@ index 5379c4a8c89cbbe73c3ab741d609cecdc81d928c..73d6f881a7d4d8ff96040d34ac502e5b } diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java -index 7fa2b2bc9d6e7eea8b18fd649c9220945d71a4ff..97a9fbbe6d8435e88e5fe716770e4034ab0db7a7 100644 +index 42a086dcebcdba6ce19a8d0e77ba88ba91d63669..7ba5d00516dc310355d08dda955c934fe26786ee 100644 --- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java +++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java -@@ -1286,6 +1286,7 @@ public abstract class BlockBehaviour implements FeatureElement { +@@ -1203,6 +1203,7 @@ public abstract class BlockBehaviour implements FeatureElement { public void spawnAfterBreak(ServerLevel world, BlockPos pos, ItemStack tool, boolean dropExperience) { this.getBlock().spawnAfterBreak(this.asState(), world, pos, tool, dropExperience); diff --git a/patches/server/1041-Fixup-NamespacedKey-handling.patch b/patches/server/1022-Fixup-NamespacedKey-handling.patch similarity index 100% rename from patches/server/1041-Fixup-NamespacedKey-handling.patch rename to patches/server/1022-Fixup-NamespacedKey-handling.patch diff --git a/patches/server/1042-Reduce-allocation-of-Vec3D-by-entity-tracker.patch b/patches/server/1023-Reduce-allocation-of-Vec3D-by-entity-tracker.patch similarity index 95% rename from patches/server/1042-Reduce-allocation-of-Vec3D-by-entity-tracker.patch rename to patches/server/1023-Reduce-allocation-of-Vec3D-by-entity-tracker.patch index 0551bc647..82f9b1f9d 100644 --- a/patches/server/1042-Reduce-allocation-of-Vec3D-by-entity-tracker.patch +++ b/patches/server/1023-Reduce-allocation-of-Vec3D-by-entity-tracker.patch @@ -18,10 +18,10 @@ index 3c4ac79c094dc2fff7de94150a34b7bf814ac0de..38b56923a642afc1cb411480ba03cc78 @VisibleForTesting static long encode(double value) { diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 257303162e3550e332cae01d5f6f158558b7ebf8..639c46a7d2b35f13d2310d9ded8a92a4703f6ebb 100644 +index 303ab1ea6747bb71adbd3a09e419b2677c9b8c5f..90393101fddd54f60b0b173beffd8650ad23349e 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java -@@ -1414,10 +1414,14 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider +@@ -1409,10 +1409,14 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider public void updatePlayer(ServerPlayer player) { org.spigotmc.AsyncCatcher.catchOp("player tracker update"); // Spigot if (player != this.entity) { diff --git a/patches/server/1043-Write-SavedData-IO-async.patch b/patches/server/1024-Write-SavedData-IO-async.patch similarity index 96% rename from patches/server/1043-Write-SavedData-IO-async.patch rename to patches/server/1024-Write-SavedData-IO-async.patch index 22cbb3848..014bb081f 100644 --- a/patches/server/1043-Write-SavedData-IO-async.patch +++ b/patches/server/1024-Write-SavedData-IO-async.patch @@ -26,7 +26,7 @@ index 513833c2ea23df5b079d157bc5cb89d5c9754c0b..9017907c0ec67a37a506f09b7e4499ce this.threadPool.shutdown(); diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java -index 65a20974428ae1c0be2022d997234a16dc281292..77a2458b8acb21c64676934cd8d6b05ef6351c10 100644 +index 15139198a02e366c0bbfcd5495a21c48e05b3a23..3b0fd733e8fd9639362f251876bea814a2515618 100644 --- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java +++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java @@ -467,6 +467,13 @@ public class ServerChunkCache extends ChunkSource { @@ -44,10 +44,10 @@ index 65a20974428ae1c0be2022d997234a16dc281292..77a2458b8acb21c64676934cd8d6b05e // CraftBukkit start - modelled on below diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 48b0bce01a9ae1ce869203a685be308d49a8c880..7a327afc8c08dfb94e66595b015887c6d0018c37 100644 +index 0c4c20ce794dd7e12cf1712dccc975bf21b01133..4edae565873fdafdd83a0b4509676d4c62b3bbbe 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -1486,7 +1486,7 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -1318,7 +1318,7 @@ public class ServerLevel extends Level implements WorldGenLevel { try (co.aikar.timings.Timing ignored = this.timings.worldSave.startTiming()) { if (doFull) { @@ -56,7 +56,7 @@ index 48b0bce01a9ae1ce869203a685be308d49a8c880..7a327afc8c08dfb94e66595b015887c6 } this.timings.worldSaveChunks.startTiming(); // Paper -@@ -1522,7 +1522,7 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -1354,7 +1354,7 @@ public class ServerLevel extends Level implements WorldGenLevel { progressListener.progressStartNoAbort(Component.translatable("menu.savingLevel")); } @@ -65,7 +65,7 @@ index 48b0bce01a9ae1ce869203a685be308d49a8c880..7a327afc8c08dfb94e66595b015887c6 if (progressListener != null) { progressListener.progressStage(Component.translatable("menu.savingChunks")); } -@@ -1545,12 +1545,12 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -1377,12 +1377,12 @@ public class ServerLevel extends Level implements WorldGenLevel { // CraftBukkit end } diff --git a/patches/server/0668-Execute-chunk-tasks-mid-tick.patch b/patches/server/1025-Execute-chunk-tasks-mid-tick.patch similarity index 88% rename from patches/server/0668-Execute-chunk-tasks-mid-tick.patch rename to patches/server/1025-Execute-chunk-tasks-mid-tick.patch index ee918bed7..1cb6d89d1 100644 --- a/patches/server/0668-Execute-chunk-tasks-mid-tick.patch +++ b/patches/server/1025-Execute-chunk-tasks-mid-tick.patch @@ -6,12 +6,12 @@ Subject: [PATCH] Execute chunk tasks mid-tick This will help the server load chunks if tick times are high. diff --git a/src/main/java/co/aikar/timings/MinecraftTimings.java b/src/main/java/co/aikar/timings/MinecraftTimings.java -index 6b3cde6d4d1e63bec01f502f2027ee9fddac08aa..46449728f69ee7d4f78470f8da23c055acd53a3b 100644 +index 7a4234abf620b8394307fa01913bc00215a64e23..4b467f1af93452d13829f756d55dee18b8889d40 100644 --- a/src/main/java/co/aikar/timings/MinecraftTimings.java +++ b/src/main/java/co/aikar/timings/MinecraftTimings.java -@@ -48,6 +48,8 @@ public final class MinecraftTimings { - public static final Timing antiXrayObfuscateTimer = Timings.ofSafe("anti-xray - obfuscate"); +@@ -49,6 +49,8 @@ public final class MinecraftTimings { public static final Timing scoreboardScoreSearch = Timings.ofSafe("Scoreboard score search"); // Paper - add timings for scoreboard search + public static final Timing distanceManagerTick = Timings.ofSafe("Distance Manager Tick"); // Paper - add timings for distance manager + public static final Timing midTickChunkTasks = Timings.ofSafe("Mid Tick Chunk Tasks"); + @@ -19,10 +19,10 @@ index 6b3cde6d4d1e63bec01f502f2027ee9fddac08aa..46449728f69ee7d4f78470f8da23c055 private MinecraftTimings() {} diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 6f2fcf39835d8a8b7408a39a511a2a9ee1e31248..fd23c278d38b1b8ed3c894f55e8907e259654558 100644 +index fe9a5820d82e5563b53d949af060e80cc7a259f6..9f4fc17622dd78b7c455de0bc2d8b772cc030024 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1341,8 +1341,79 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop void guardEntityTick(Consumer tickConsumer, T entity) { try { tickConsumer.accept(entity); diff --git a/patches/server/0671-Optimise-random-block-ticking.patch b/patches/server/1026-Optimise-random-block-ticking.patch similarity index 92% rename from patches/server/0671-Optimise-random-block-ticking.patch rename to patches/server/1026-Optimise-random-block-ticking.patch index d94de95ef..638b1e692 100644 --- a/patches/server/0671-Optimise-random-block-ticking.patch +++ b/patches/server/1026-Optimise-random-block-ticking.patch @@ -90,7 +90,7 @@ index 0000000000000000000000000000000000000000..7d93652c1abbb6aee6eb7c26cf35d4d0 + } +} diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index ec64866f695dbc62dfedf6c1de5abb130edd9cfa..15b11c48e78318d382e88c3dba322ede537ec005 100644 +index 30b9a46ec74978adeb80222eea67a6a43b3203e2..88f8821aba04adb23b11531a93f395381a0e4ce7 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -855,6 +855,10 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -311,7 +311,7 @@ index f0f764f36fb92c64ab2dc8a0a50c3f48321c3c9a..311625277a26c9c187025a1036978229 public void getAll(IntConsumer action) { for(int i = 0; i < this.size; ++i) { diff --git a/src/main/java/net/minecraft/world/entity/animal/Turtle.java b/src/main/java/net/minecraft/world/entity/animal/Turtle.java -index 6bbcdd34fb89ea5774e825de8f9a588552716fc2..2a3f1d14a4b24a3219d191b4f2e97ed7b061e006 100644 +index 1a2a4dcb3cfa2690f2aa936a6c176319d807bd74..f97bdfbd07db000845d3b791de64056c3c23f7ba 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Turtle.java +++ b/src/main/java/net/minecraft/world/entity/animal/Turtle.java @@ -87,7 +87,7 @@ public class Turtle extends Animal { @@ -324,10 +324,10 @@ index 6bbcdd34fb89ea5774e825de8f9a588552716fc2..2a3f1d14a4b24a3219d191b4f2e97ed7 public BlockPos getHomePos() { diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 34156fb87cfcd453b11a13a466239a7d56383000..4e51db012b4afc606734ab93c7ebc5101cabe6c6 100644 +index 267de93f036541a8a31971bcbd0f79678ab35d7b..c003f9b8109bd3e688d5b160150d229be4ae4d8a 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -1397,10 +1397,18 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -1400,10 +1400,18 @@ public abstract class Level implements LevelAccessor, AutoCloseable { public abstract RecipeManager getRecipeManager(); public BlockPos getBlockRandomPos(int x, int y, int z, int l) { @@ -348,7 +348,7 @@ index 34156fb87cfcd453b11a13a466239a7d56383000..4e51db012b4afc606734ab93c7ebc510 public boolean noSave() { diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java -index 3efd0a462306fbd02a506a3f952d609645b1f874..4a781375a4a18011259edcb4e24550748a05dfa0 100644 +index 3efd0a462306fbd02a506a3f952d609645b1f874..52377adb01df3db297eaf2ece54efde63f9c2cfe 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java @@ -25,6 +25,7 @@ public class LevelChunkSection { @@ -379,7 +379,7 @@ index 3efd0a462306fbd02a506a3f952d609645b1f874..4a781375a4a18011259edcb4e2455074 } } -@@ -115,40 +122,31 @@ public class LevelChunkSection { +@@ -115,40 +122,34 @@ public class LevelChunkSection { } public void recalcBlockCounts() { @@ -392,50 +392,45 @@ index 3efd0a462306fbd02a506a3f952d609645b1f874..4a781375a4a18011259edcb4e2455074 - a() {} - - public void accept(BlockState iblockdata, int i) { -- FluidState fluid = iblockdata.getFluidState(); -- -- if (!iblockdata.isAir()) { -- this.nonEmptyBlockCount += i; -- if (iblockdata.isRandomlyTicking()) { -- this.tickingBlockCount += i; -- } + // Paper start - unfuck this + this.tickingList.clear(); + this.nonEmptyBlockCount = 0; + this.tickingBlockCount = 0; + this.tickingFluidCount = 0; -+ this.states.forEachLocation((BlockState iblockdata, int i) -> { -+ FluidState fluid = iblockdata.getFluidState(); -+ -+ if (!iblockdata.isAir()) { -+ this.nonEmptyBlockCount = (short) (this.nonEmptyBlockCount + 1); -+ if (iblockdata.isRandomlyTicking()) { -+ this.tickingBlockCount = (short)(this.tickingBlockCount + 1); -+ this.tickingList.add(i, iblockdata); - } -+ } ++ // Don't run this on clearly empty sections ++ if (this.maybeHas((BlockState state) -> !state.isAir() || !state.getFluidState().isEmpty())) { ++ this.states.forEachLocation((BlockState iblockdata, int i) -> { + FluidState fluid = iblockdata.getFluidState(); -- if (!fluid.isEmpty()) { + if (!iblockdata.isAir()) { - this.nonEmptyBlockCount += i; -- if (fluid.isRandomlyTicking()) { -- this.tickingFluidCount += i; -- } -+ if (!fluid.isEmpty()) { -+ this.nonEmptyBlockCount = (short) (this.nonEmptyBlockCount + 1); -+ if (fluid.isRandomlyTicking()) { -+ this.tickingFluidCount = (short) (this.tickingFluidCount + 1); ++ this.nonEmptyBlockCount = (short) (this.nonEmptyBlockCount + 1); + if (iblockdata.isRandomlyTicking()) { +- this.tickingBlockCount += i; ++ this.tickingBlockCount = (short)(this.tickingBlockCount + 1); ++ this.tickingList.add(i, iblockdata); + } } -- - } -- } + if (!fluid.isEmpty()) { +- this.nonEmptyBlockCount += i; ++ this.nonEmptyBlockCount = (short) (this.nonEmptyBlockCount + 1); + if (fluid.isRandomlyTicking()) { +- this.tickingFluidCount += i; ++ this.tickingFluidCount = (short) (this.tickingFluidCount + 1); + } + } + +- } ++ }); + } +- - a a0 = new a(); - - this.states.count(a0); - this.nonEmptyBlockCount = (short) a0.nonEmptyBlockCount; - this.tickingBlockCount = (short) a0.tickingBlockCount; - this.tickingFluidCount = (short) a0.tickingFluidCount; -+ }); + // Paper end } diff --git a/patches/server/0672-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch b/patches/server/1027-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch similarity index 98% rename from patches/server/0672-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch rename to patches/server/1027-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch index 563a31ce2..3bf394920 100644 --- a/patches/server/0672-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch +++ b/patches/server/1027-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch @@ -10,7 +10,7 @@ hoping that at least then we don't swap chunks, and maybe recover them all. diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java b/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java -index 0ef8ecc7932107029d85e961e2e747d7312d816e..c09d42c03e1e430dd65218e8297be9e35cdef030 100644 +index bb5da9ddcd3030c8d6148902f3c649227430baab..362516b6703dfa037954c55b8628074965240dff 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/ChunkSerializer.java @@ -70,6 +70,18 @@ import net.minecraft.world.ticks.ProtoChunkTicks; @@ -32,7 +32,7 @@ index 0ef8ecc7932107029d85e961e2e747d7312d816e..c09d42c03e1e430dd65218e8297be9e3 public static final Codec> BLOCK_STATE_CODEC = PalettedContainer.codecRW(Block.BLOCK_STATE_REGISTRY, BlockState.CODEC, PalettedContainer.Strategy.SECTION_STATES, Blocks.AIR.defaultBlockState(), null); // Paper - Anti-Xray - Add preset block states private static final Logger LOGGER = LogUtils.getLogger(); -@@ -450,7 +462,7 @@ public class ChunkSerializer { +@@ -457,7 +469,7 @@ public class ChunkSerializer { nbttagcompound.putInt("xPos", chunkcoordintpair.x); nbttagcompound.putInt("yPos", chunk.getMinSection()); nbttagcompound.putInt("zPos", chunkcoordintpair.z); @@ -87,7 +87,7 @@ index c8298a597818227de33a4afce4698ec0666cf758..6762b0f71ea9e369bb77103b7f193898 this.used.set(start, start + size); } diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java -index 0ae3d1ea6f00efcdea5da5bf1a0f984f4473f5a2..1f8fa4a054ed1c76688d1a919ea170587fb4806f 100644 +index c5dbab099a328b37f5a59824384ee6e4be2f3482..4373ae3b454ad3fb8550e83b868e98cc04893c1b 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFile.java @@ -50,6 +50,355 @@ public class RegionFile implements AutoCloseable { @@ -448,11 +448,11 @@ index 0ae3d1ea6f00efcdea5da5bf1a0f984f4473f5a2..1f8fa4a054ed1c76688d1a919ea17058 @@ -77,8 +426,19 @@ public class RegionFile implements AutoCloseable { public RegionFile(Path file, Path directory, boolean dsync) throws IOException { - this(file, directory, RegionFileVersion.VERSION_DEFLATE, dsync); + this(file, directory, RegionFileVersion.getCompressionFormat(), dsync); // Paper - Configurable region compression format } + // Paper start - add can recalc flag + public RegionFile(Path file, Path directory, boolean dsync, boolean canRecalcHeader) throws IOException { -+ this(file, directory, RegionFileVersion.VERSION_DEFLATE, dsync, canRecalcHeader); ++ this(file, directory, RegionFileVersion.getCompressionFormat(), dsync, canRecalcHeader); + } + // Paper end - add can recalc flag @@ -685,7 +685,7 @@ index 0ae3d1ea6f00efcdea5da5bf1a0f984f4473f5a2..1f8fa4a054ed1c76688d1a919ea17058 return bytebuffer; } diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java -index 9e30b47ece5549c30f487e5542ae65d5faaa8c39..156cecae8ea7ffbc38974829942a1c92e828eca9 100644 +index 99f2e104b2214dbbc0b6e43d9011744ff4b0b843..a25e7183da64f726773aa279707ae67941246b46 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileStorage.java @@ -24,6 +24,7 @@ public class RegionFileStorage implements AutoCloseable { @@ -763,7 +763,7 @@ index 9e30b47ece5549c30f487e5542ae65d5faaa8c39..156cecae8ea7ffbc38974829942a1c92 } diff --git a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileVersion.java b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileVersion.java -index 5fa7a842431dd64c7a0dc5d8e940563a2aeef463..4411e427d3b6b592f8a18e61b6c59309cf699d3f 100644 +index 374ff77f15e339500714580673ae8077482ba247..6210a202d27788b1304e749b5bc2d9e2b88f5a63 100644 --- a/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileVersion.java +++ b/src/main/java/net/minecraft/world/level/chunk/storage/RegionFileVersion.java @@ -14,7 +14,7 @@ import javax.annotation.Nullable; diff --git a/patches/server/0673-Use-Velocity-compression-and-cipher-natives.patch b/patches/server/1028-Use-Velocity-compression-and-cipher-natives.patch similarity index 96% rename from patches/server/0673-Use-Velocity-compression-and-cipher-natives.patch rename to patches/server/1028-Use-Velocity-compression-and-cipher-natives.patch index 032492558..8f8f34ad2 100644 --- a/patches/server/0673-Use-Velocity-compression-and-cipher-natives.patch +++ b/patches/server/1028-Use-Velocity-compression-and-cipher-natives.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Use Velocity compression and cipher natives diff --git a/build.gradle.kts b/build.gradle.kts -index c6241f858209ed662d8720217d143340916024e9..ff1636d3e047e124c73496f4942e991abe01c150 100644 +index 7c563ef33d12b227856e65392905bffa5289285a..376e8983fdfdbb6c3e5fd8ad0f6a05e655b622bf 100644 --- a/build.gradle.kts +++ b/build.gradle.kts -@@ -39,6 +39,11 @@ dependencies { +@@ -40,6 +40,11 @@ dependencies { runtimeOnly("org.xerial:sqlite-jdbc:3.42.0.1") runtimeOnly("com.mysql:mysql-connector-j:8.2.0") runtimeOnly("com.lmax:disruptor:3.4.4") // Paper @@ -264,10 +264,10 @@ index 859af8c845bae9781a62fa4acae56c6e2d449e10..f67f59f287d9a5cdd685b6b56ed1daf3 return this.threshold; } diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java -index 18228713d61cbc4b6fad881ace991e5e6c64e57d..28adc086f7bc1b6f403e65c5db51b267c90f2f37 100644 +index a0434b92615c10a319eb4528808a83d01df2c516..3a4d03a936bbbbb54cb3d63b57ad9c3490f98c83 100644 --- a/src/main/java/net/minecraft/network/Connection.java +++ b/src/main/java/net/minecraft/network/Connection.java -@@ -669,11 +669,28 @@ public class Connection extends SimpleChannelInboundHandler> { +@@ -734,11 +734,28 @@ public class Connection extends SimpleChannelInboundHandler> { return networkmanager; } @@ -300,7 +300,7 @@ index 18228713d61cbc4b6fad881ace991e5e6c64e57d..28adc086f7bc1b6f403e65c5db51b267 public boolean isEncrypted() { return this.encrypted; -@@ -706,16 +723,17 @@ public class Connection extends SimpleChannelInboundHandler> { +@@ -771,16 +788,17 @@ public class Connection extends SimpleChannelInboundHandler> { public void setupCompression(int compressionThreshold, boolean rejectsBadPackets) { if (compressionThreshold >= 0) { @@ -321,7 +321,7 @@ index 18228713d61cbc4b6fad881ace991e5e6c64e57d..28adc086f7bc1b6f403e65c5db51b267 this.channel.pipeline().fireUserEventTriggered(io.papermc.paper.network.ConnectionEvent.COMPRESSION_THRESHOLD_SET); // Paper - Add Channel initialization listeners } else { diff --git a/src/main/java/net/minecraft/server/network/ServerConnectionListener.java b/src/main/java/net/minecraft/server/network/ServerConnectionListener.java -index c0ae3ccf4ddf14a4967c86548ec7305cfcc0b48a..7288a942397d223d97d7afd11b9c9e5dc6a96901 100644 +index a4a29a7ea0035ecf4c61ee8547a9eb24acb667d0..586521a2cbb1d4dcfb912029f65e4363ec7674a7 100644 --- a/src/main/java/net/minecraft/server/network/ServerConnectionListener.java +++ b/src/main/java/net/minecraft/server/network/ServerConnectionListener.java @@ -106,6 +106,11 @@ public class ServerConnectionListener { @@ -337,10 +337,10 @@ index c0ae3ccf4ddf14a4967c86548ec7305cfcc0b48a..7288a942397d223d97d7afd11b9c9e5d protected void initChannel(Channel channel) { Connection.setInitialProtocolAttributes(channel); diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index e2c7fa3fd05ebb3b76388410d26b6493baf4f877..67c1cf5eb198079bd146a4a8ca0492b94cca788c 100644 +index 42ae62bdbe11fdfbacebf621d64e7c4985bbd1c7..f92d240e2984b0b49d09662ff33f5c524605ed47 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -@@ -223,12 +223,14 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, +@@ -235,12 +235,14 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, } SecretKey secretkey = packet.getSecretKey(privatekey); diff --git a/patches/server/0674-Detail-more-information-in-watchdog-dumps.patch b/patches/server/1029-Detail-more-information-in-watchdog-dumps.patch similarity index 94% rename from patches/server/0674-Detail-more-information-in-watchdog-dumps.patch rename to patches/server/1029-Detail-more-information-in-watchdog-dumps.patch index 521520be6..46a806a47 100644 --- a/patches/server/0674-Detail-more-information-in-watchdog-dumps.patch +++ b/patches/server/1029-Detail-more-information-in-watchdog-dumps.patch @@ -7,10 +7,10 @@ Subject: [PATCH] Detail more information in watchdog dumps - Dump player name, player uuid, position, and world for packet handling diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java -index 28adc086f7bc1b6f403e65c5db51b267c90f2f37..5d73043dc9847ae195cef804fa0b0f4bf6db06f2 100644 +index 3a4d03a936bbbbb54cb3d63b57ad9c3490f98c83..b189aeb8646b5385c7cca0c4babfcb071a642220 100644 --- a/src/main/java/net/minecraft/network/Connection.java +++ b/src/main/java/net/minecraft/network/Connection.java -@@ -521,7 +521,13 @@ public class Connection extends SimpleChannelInboundHandler> { +@@ -586,7 +586,13 @@ public class Connection extends SimpleChannelInboundHandler> { if (!(this.packetListener instanceof net.minecraft.server.network.ServerLoginPacketListenerImpl loginPacketListener) || loginPacketListener.state != net.minecraft.server.network.ServerLoginPacketListenerImpl.State.VERIFYING || Connection.joinAttemptsThisTick++ < MAX_PER_TICK) { @@ -25,7 +25,7 @@ index 28adc086f7bc1b6f403e65c5db51b267c90f2f37..5d73043dc9847ae195cef804fa0b0f4b // Paper end - Buffer joins to world } diff --git a/src/main/java/net/minecraft/network/protocol/PacketUtils.java b/src/main/java/net/minecraft/network/protocol/PacketUtils.java -index 7de24c39b460e43d27839b3821e67213508ece81..7297bca9224c12d7ace0e1967340d99436afafc1 100644 +index 454d0187ff8370a0d99cca051ee0a8c50b39cfb7..3e2d5dcd62775b6ed7c0ce0ba51a71b635b1d644 100644 --- a/src/main/java/net/minecraft/network/protocol/PacketUtils.java +++ b/src/main/java/net/minecraft/network/protocol/PacketUtils.java @@ -18,6 +18,24 @@ public class PacketUtils { @@ -56,7 +56,7 @@ index 7de24c39b460e43d27839b3821e67213508ece81..7297bca9224c12d7ace0e1967340d994 @@ -27,6 +45,8 @@ public class PacketUtils { public static void ensureRunningOnSameThread(Packet packet, T listener, BlockableEventLoop engine) throws RunningOnDifferentThreadException { if (!engine.isSameThread()) { - engine.executeIfPossible(() -> { + engine.execute(() -> { // Paper - Fix preemptive player kick on a server shutdown + packetProcessing.push(listener); // Paper - detailed watchdog information + try { // Paper - detailed watchdog information if (MinecraftServer.getServer().hasStopped() || (listener instanceof ServerCommonPacketListenerImpl && ((ServerCommonPacketListenerImpl) listener).processedDisconnect)) return; // CraftBukkit, MC-142590 @@ -76,7 +76,7 @@ index 7de24c39b460e43d27839b3821e67213508ece81..7297bca9224c12d7ace0e1967340d994 }); throw RunningOnDifferentThreadException.RUNNING_ON_DIFFERENT_THREAD; diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 15b11c48e78318d382e88c3dba322ede537ec005..0c60fa914310c7b6706e72cd3a61630873005102 100644 +index 88f8821aba04adb23b11531a93f395381a0e4ce7..2d4830b4b7df1516c75de1fefd6f8176d8ef16a2 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -1239,7 +1239,26 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -122,10 +122,10 @@ index 15b11c48e78318d382e88c3dba322ede537ec005..0c60fa914310c7b6706e72cd3a616308 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 66df50658958c7ad799fbe9d2cdb676a90d8bb4e..d548a262515548808ffe075606ee2f2dba38740f 100644 +index f2f8bc9f8f55a43174acd9c5e841fb9a7d1b8065..ab8cbf4a3fabeaeab71f5323068dd700d6e6666a 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1030,7 +1030,42 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1051,7 +1051,42 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S return this.onGround; } @@ -168,7 +168,7 @@ index 66df50658958c7ad799fbe9d2cdb676a90d8bb4e..d548a262515548808ffe075606ee2f2d if (this.noPhysics) { this.setPos(this.getX() + movement.x, this.getY() + movement.y, this.getZ() + movement.z); } else { -@@ -1200,6 +1235,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1221,6 +1256,13 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S this.level().getProfiler().pop(); } } @@ -182,7 +182,7 @@ index 66df50658958c7ad799fbe9d2cdb676a90d8bb4e..d548a262515548808ffe075606ee2f2d } private boolean isStateClimbable(BlockState state) { -@@ -4269,7 +4311,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4365,7 +4407,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } public void setDeltaMovement(Vec3 velocity) { @@ -192,7 +192,7 @@ index 66df50658958c7ad799fbe9d2cdb676a90d8bb4e..d548a262515548808ffe075606ee2f2d } public void addDeltaMovement(Vec3 velocity) { -@@ -4372,7 +4416,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -4468,7 +4512,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } // Paper end - Fix MC-4 if (this.position.x != x || this.position.y != y || this.position.z != z) { diff --git a/patches/server/0705-Collision-optimisations.patch b/patches/server/1030-Collision-optimisations.patch similarity index 99% rename from patches/server/0705-Collision-optimisations.patch rename to patches/server/1030-Collision-optimisations.patch index 0fdbaa5dd..374f174e4 100644 --- a/patches/server/0705-Collision-optimisations.patch +++ b/patches/server/1030-Collision-optimisations.patch @@ -2179,21 +2179,21 @@ index 073c717bb676b9e99aada00c349fb7eee91df1e7..2a9fc1f1dfc0c5894c1e74dad5a79ae9 private Direction(int id, int idOpposite, int idHorizontal, String name, Direction.AxisDirection direction, Direction.Axis axis, Vec3i vector) { this.data3d = id; diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 5d30d67745ce3988f42457137f43b15b75a96a0c..c76358e108a72297baf92b234d43145dde09e99f 100644 +index bd1a53e2ce2644681c23f8cf678afa2a99166d9b..4ef7cc68bdcad9eaa157325a195aa74e62b478e5 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -469,7 +469,7 @@ public class ServerPlayer extends Player { +@@ -496,7 +496,7 @@ public class ServerPlayer extends Player { if (blockposition1 != null) { - this.moveTo(blockposition1, 0.0F, 0.0F); + this.moveTo(blockposition1, world.getSharedSpawnAngle(), 0.0F); // Paper - MC-200092 - fix first spawn pos yaw being ignored - if (world.noCollision((Entity) this)) { + if (world.noCollision(this, this.getBoundingBox(), true)) { // Paper - make sure this loads chunks, we default to NOT loading now break; } } -@@ -477,7 +477,7 @@ public class ServerPlayer extends Player { +@@ -504,7 +504,7 @@ public class ServerPlayer extends Player { } else { - this.moveTo(blockposition, 0.0F, 0.0F); + this.moveTo(blockposition, world.getSharedSpawnAngle(), 0.0F); // Paper - MC-200092 - fix first spawn pos yaw being ignored - while (!world.noCollision((Entity) this) && this.getY() < (double) (world.getMaxBuildHeight() - 1)) { + while (!world.noCollision(this, this.getBoundingBox(), true) && this.getY() < (double) (world.getMaxBuildHeight() - 1)) { // Paper - make sure this loads chunks, we default to NOT loading now @@ -2201,10 +2201,10 @@ index 5d30d67745ce3988f42457137f43b15b75a96a0c..c76358e108a72297baf92b234d43145d } } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index 6e56b55329e31682d3052949110762e8f9fc96da..00f65551b82935a6b7b88cba4650404b9311f8f2 100644 +index 947cb3b24d6e379b080f3de8cd4ea60e0ca457e4..5a932f329f67fd01a263b9536cbfb1c9a011f746 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -909,7 +909,7 @@ public abstract class PlayerList { +@@ -936,7 +936,7 @@ public abstract class PlayerList { entityplayer1.forceSetPositionRotation(location.getX(), location.getY(), location.getZ(), location.getYaw(), location.getPitch()); worldserver1.getChunkSource().addRegionTicket(net.minecraft.server.level.TicketType.POST_TELEPORT, new net.minecraft.world.level.ChunkPos(location.getBlockX() >> 4, location.getBlockZ() >> 4), 1, entityplayer.getId()); // Paper @@ -2214,10 +2214,10 @@ index 6e56b55329e31682d3052949110762e8f9fc96da..00f65551b82935a6b7b88cba4650404b entityplayer1.setPos(entityplayer1.getX(), entityplayer1.getY() + 1.0D, entityplayer1.getZ()); } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 22d25fea0c995bf1509bb78d5f10e2b63eb484cb..696497771e607cd07bd8414deeffdd0f211a5ef6 100644 +index ab8cbf4a3fabeaeab71f5323068dd700d6e6666a..554fc0d4e791a98a46216714f0fb07e178ddabe4 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1216,9 +1216,44 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1237,9 +1237,44 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S float f = this.getBlockSpeedFactor(); this.setDeltaMovement(this.getDeltaMovement().multiply((double) f, 1.0D, (double) f)); @@ -2265,7 +2265,7 @@ index 22d25fea0c995bf1509bb78d5f10e2b63eb484cb..696497771e607cd07bd8414deeffdd0f if (this.remainingFireTicks <= 0) { this.setRemainingFireTicks(-this.getFireImmuneTicks()); } -@@ -1398,32 +1433,82 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -1419,32 +1454,82 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S } private Vec3 collide(Vec3 movement) { @@ -2364,7 +2364,7 @@ index 22d25fea0c995bf1509bb78d5f10e2b63eb484cb..696497771e607cd07bd8414deeffdd0f } public static Vec3 collideBoundingBox(@Nullable Entity entity, Vec3 movement, AABB entityBoundingBox, Level world, List collisions) { -@@ -2628,11 +2713,70 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S +@@ -2689,11 +2774,70 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource, S float f = this.dimensions.width * 0.8F; AABB axisalignedbb = AABB.ofSize(this.getEyePosition(), (double) f, 1.0E-6D, (double) f); @@ -2440,7 +2440,7 @@ index 22d25fea0c995bf1509bb78d5f10e2b63eb484cb..696497771e607cd07bd8414deeffdd0f } diff --git a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java -index e3412f9dd86dddd241bea8f6dcaeed77a7e67f08..92b4eecf7b8ce07334256a216d9caf241fa5363b 100644 +index 6dfcc296ff7e59ecbebc5446973fabc9eff3cb43..94a30a0c1266bf919d1dc4ca2b19489edd54a7fa 100644 --- a/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java +++ b/src/main/java/net/minecraft/world/entity/decoration/ArmorStand.java @@ -353,7 +353,7 @@ public class ArmorStand extends LivingEntity { @@ -2498,7 +2498,7 @@ index c476e37df8a75d77f5093b2a449e04f25ef2c2dd..5d66aadae51db1ae760812849bfc8740 return this.noCollision((Entity)null, box); } diff --git a/src/main/java/net/minecraft/world/level/EntityGetter.java b/src/main/java/net/minecraft/world/level/EntityGetter.java -index a25497eec004add7408a63b1a0f09e3fa443b324..9f892de55ab03367daed4c30cc44c9dd8adc29ed 100644 +index 8c436d16914e160be8e3074badc1293af2ae6b31..a3d15f30eaab29d85cb6b3d693df9980a880f686 100644 --- a/src/main/java/net/minecraft/world/level/EntityGetter.java +++ b/src/main/java/net/minecraft/world/level/EntityGetter.java @@ -45,17 +45,36 @@ public interface EntityGetter { @@ -2600,7 +2600,7 @@ index a25497eec004add7408a63b1a0f09e3fa443b324..9f892de55ab03367daed4c30cc44c9dd // Paper start diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 4e51db012b4afc606734ab93c7ebc5101cabe6c6..205323c8e643c77b7aefe588d5ee2f8b2b29ede4 100644 +index c003f9b8109bd3e688d5b160150d229be4ae4d8a..4d91ff3dda92bdd503dd16d4f9e56aa18458592b 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java @@ -299,6 +299,10 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @@ -2985,7 +2985,7 @@ index 4e51db012b4afc606734ab93c7ebc5101cabe6c6..205323c8e643c77b7aefe588d5ee2f8b @Override public boolean isClientSide() { return this.isClientSide; -@@ -960,7 +1328,17 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -963,7 +1331,17 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @Override public boolean noCollision(@Nullable Entity entity, AABB box) { if (entity instanceof net.minecraft.world.entity.decoration.ArmorStand && !entity.level().paperConfig().entities.armorStands.doCollisionEntityLookups) return false; @@ -3005,7 +3005,7 @@ index 4e51db012b4afc606734ab93c7ebc5101cabe6c6..205323c8e643c77b7aefe588d5ee2f8b // Paper end - Option to prevent armor stands from doing entity lookups diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java -index af62781cc96354c87aa63d4f03f9e25b81959081..6c4fd56956982eee743b4dea4e8b925891dd3b6f 100644 +index 68b94b4ebd710f3ab18f397d9dfa0ef5b8f182e0..73d6f881a7d4d8ff96040d34ac502e5b0937d577 100644 --- a/src/main/java/net/minecraft/world/level/block/Block.java +++ b/src/main/java/net/minecraft/world/level/block/Block.java @@ -284,7 +284,7 @@ public class Block extends BlockBehaviour implements ItemLike { @@ -3018,7 +3018,7 @@ index af62781cc96354c87aa63d4f03f9e25b81959081..6c4fd56956982eee743b4dea4e8b9258 public boolean propagatesSkylightDown(BlockState state, BlockGetter world, BlockPos pos) { diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java -index d1d00b9a078ee1f5a6c5dd51c2f0409d12c85c26..100c2629f2746fc00435f60998dba70135637ef7 100644 +index 7ba5d00516dc310355d08dda955c934fe26786ee..97a9fbbe6d8435e88e5fe716770e4034ab0db7a7 100644 --- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java +++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java @@ -882,6 +882,10 @@ public abstract class BlockBehaviour implements FeatureElement { @@ -3126,7 +3126,7 @@ index d1d00b9a078ee1f5a6c5dd51c2f0409d12c85c26..100c2629f2746fc00435f60998dba701 public Block getBlock() { diff --git a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java -index 4a781375a4a18011259edcb4e24550748a05dfa0..6d340a9b64ae900dfe84eeeaf7a39f7e7a139198 100644 +index 52377adb01df3db297eaf2ece54efde63f9c2cfe..b10c652f53edfbf29f28b047d3b3c8edca21bc56 100644 --- a/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java +++ b/src/main/java/net/minecraft/world/level/chunk/LevelChunkSection.java @@ -26,6 +26,22 @@ public class LevelChunkSection { @@ -3171,19 +3171,18 @@ index 4a781375a4a18011259edcb4e24550748a05dfa0..6d340a9b64ae900dfe84eeeaf7a39f7e return iblockdata1; } -@@ -145,6 +162,12 @@ public class LevelChunkSection { +@@ -147,6 +164,11 @@ public class LevelChunkSection { + } } - } -+ // Paper start - optimise collisions -+ if (io.papermc.paper.util.CollisionUtil.isSpecialCollidingBlock(iblockdata)) { -+ ++this.specialCollidingBlocks; -+ } -+ // Paper end - optimise collisions -+ - }); ++ // Paper start - optimise collisions ++ if (io.papermc.paper.util.CollisionUtil.isSpecialCollidingBlock(iblockdata)) { ++ ++this.specialCollidingBlocks; ++ } ++ // Paper end - optimise collisions + }); + } // Paper end - } diff --git a/src/main/java/net/minecraft/world/level/material/FlowingFluid.java b/src/main/java/net/minecraft/world/level/material/FlowingFluid.java index a98ab20814cc29a25e9d29adfbb7e70d46768df2..6d8ff6c06af5545634f255ed17dc1e489ece2548 100644 --- a/src/main/java/net/minecraft/world/level/material/FlowingFluid.java diff --git a/patches/server/0706-Optimise-collision-checking-in-player-move-packet-ha.patch b/patches/server/1031-Optimise-collision-checking-in-player-move-packet-ha.patch similarity index 79% rename from patches/server/0706-Optimise-collision-checking-in-player-move-packet-ha.patch rename to patches/server/1031-Optimise-collision-checking-in-player-move-packet-ha.patch index a3ff14cfd..28eb8d3c0 100644 --- a/patches/server/0706-Optimise-collision-checking-in-player-move-packet-ha.patch +++ b/patches/server/1031-Optimise-collision-checking-in-player-move-packet-ha.patch @@ -8,10 +8,10 @@ Move collision logic to just the hasNewCollision call instead of getCubes + hasN CHECK ME diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 2c4da4f18a217269f17e281cf99a573e759a5d52..e6e9a2688a3d2f789831a9e095e555f784bd9c4a 100644 +index 9342efcb855dce5cced227b15356df090e9c451a..721b6c47c7141871fba0d306da42147bff082b0a 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -540,7 +540,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -553,7 +553,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl return; } @@ -20,7 +20,7 @@ index 2c4da4f18a217269f17e281cf99a573e759a5d52..e6e9a2688a3d2f789831a9e095e555f7 d6 = d3 - this.vehicleLastGoodX; // Paper - diff on change, used for checking large move vectors above d7 = d4 - this.vehicleLastGoodY - 1.0E-6D; // Paper - diff on change, used for checking large move vectors above -@@ -556,6 +556,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -569,6 +569,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } entity.move(MoverType.PLAYER, new Vec3(d6, d7, d8)); @@ -28,7 +28,7 @@ index 2c4da4f18a217269f17e281cf99a573e759a5d52..e6e9a2688a3d2f789831a9e095e555f7 double d11 = d7; d6 = d3 - entity.getX(); -@@ -569,15 +570,23 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -582,15 +583,23 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl boolean flag2 = false; if (d10 > org.spigotmc.SpigotConfig.movedWronglyThreshold) { // Spigot @@ -55,7 +55,7 @@ index 2c4da4f18a217269f17e281cf99a573e759a5d52..e6e9a2688a3d2f789831a9e095e555f7 entity.absMoveTo(d0, d1, d2, f, f1); this.player.absMoveTo(d0, d1, d2, this.player.getYRot(), this.player.getXRot()); // CraftBukkit this.send(new ClientboundMoveVehiclePacket(entity)); -@@ -656,7 +665,32 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -669,7 +678,32 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } private boolean noBlocksAround(Entity entity) { @@ -89,7 +89,7 @@ index 2c4da4f18a217269f17e281cf99a573e759a5d52..e6e9a2688a3d2f789831a9e095e555f7 } @Override -@@ -1255,7 +1289,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1282,7 +1316,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } if (this.awaitingPositionFromClient != null) { @@ -98,7 +98,7 @@ index 2c4da4f18a217269f17e281cf99a573e759a5d52..e6e9a2688a3d2f789831a9e095e555f7 this.awaitingTeleportTime = this.tickCount; this.teleport(this.awaitingPositionFromClient.x, this.awaitingPositionFromClient.y, this.awaitingPositionFromClient.z, this.player.getYRot(), this.player.getXRot()); } -@@ -1349,7 +1383,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1389,7 +1423,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } } @@ -107,7 +107,7 @@ index 2c4da4f18a217269f17e281cf99a573e759a5d52..e6e9a2688a3d2f789831a9e095e555f7 d6 = d0 - this.lastGoodX; // Paper - diff on change, used for checking large move vectors above d7 = d1 - this.lastGoodY; // Paper - diff on change, used for checking large move vectors above -@@ -1391,6 +1425,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1431,6 +1465,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.player.move(MoverType.PLAYER, new Vec3(d6, d7, d8)); this.player.onGround = packet.isOnGround(); // CraftBukkit - SPIGOT-5810, SPIGOT-5835, SPIGOT-6828: reset by this.player.move @@ -115,21 +115,14 @@ index 2c4da4f18a217269f17e281cf99a573e759a5d52..e6e9a2688a3d2f789831a9e095e555f7 // Paper start - prevent position desync if (this.awaitingPositionFromClient != null) { return; // ... thanks Mojang for letting move calls teleport across dimensions. -@@ -1409,11 +1444,23 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl - boolean flag2 = false; - - if (!this.player.isChangingDimension() && d10 > org.spigotmc.SpigotConfig.movedWronglyThreshold && !this.player.isSleeping() && !this.player.gameMode.isCreative() && this.player.gameMode.getGameModeForPlayer() != GameType.SPECTATOR) { // Spigot -- flag2 = true; -+ flag2 = true; // Paper - diff on change, this should be moved wrongly - ServerGamePacketListenerImpl.LOGGER.warn("{} moved wrongly!", this.player.getName().getString()); +@@ -1459,7 +1494,17 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl + } } -- if (!this.player.noPhysics && !this.player.isSleeping() && (flag2 && worldserver.noCollision(this.player, axisalignedbb) || this.isPlayerCollidingWithAnythingNew(worldserver, axisalignedbb, d0, d1, d2))) { +- boolean teleportBack = !this.player.noPhysics && !this.player.isSleeping() && (movedWrongly && worldserver.noCollision(this.player, axisalignedbb) || this.isPlayerCollidingWithAnythingNew(worldserver, axisalignedbb, d0, d1, d2)); + // Paper start - optimise out extra getCubes ++ boolean teleportBack = !this.player.noPhysics && !this.player.isSleeping() && movedWrongly; + this.player.absMoveTo(d0, d1, d2, f, f1); // prevent desync by tping to the set position, dropped for unknown reasons by mojang -+ // Original for reference: -+ // boolean teleportBack = flag2 && worldserver.getCubes(this.player, axisalignedbb) || (didCollide && this.a((IWorldReader) worldserver, axisalignedbb)); -+ boolean teleportBack = flag2; // violating this is always a fail + if (!this.player.noPhysics && !this.player.isSleeping() && !teleportBack) { + AABB newBox = this.player.getBoundingBox(); + if (didCollide || !axisalignedbb.equals(newBox)) { @@ -137,11 +130,11 @@ index 2c4da4f18a217269f17e281cf99a573e759a5d52..e6e9a2688a3d2f789831a9e095e555f7 + teleportBack = this.hasNewCollision(worldserver, this.player, axisalignedbb, newBox); + } // else: no collision at all detected, why do we care? + } -+ if (!this.player.noPhysics && !this.player.isSleeping() && teleportBack) { // Paper end - optimise out extra getCubes - this.internalTeleport(d3, d4, d5, f, f1, Collections.emptySet()); // CraftBukkit - SPIGOT-1807: Don't call teleport event, when the client thinks the player is falling, because the chunks are not loaded on the client yet. - this.player.doCheckFallDamage(this.player.getX() - d3, this.player.getY() - d4, this.player.getZ() - d5, packet.isOnGround()); - } else { -@@ -1504,6 +1551,33 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl ++ // Paper end - optimise out extra getCubes + if (teleportBack) { + io.papermc.paper.event.player.PlayerFailMoveEvent event = fireFailMove(io.papermc.paper.event.player.PlayerFailMoveEvent.FailReason.CLIPPED_INTO_BLOCK, + toX, toY, toZ, toYaw, toPitch, false); +@@ -1559,6 +1604,33 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } } diff --git a/patches/server/0710-Fix-tripwire-state-inconsistency.patch b/patches/server/1032-Fix-tripwire-state-inconsistency.patch similarity index 89% rename from patches/server/0710-Fix-tripwire-state-inconsistency.patch rename to patches/server/1032-Fix-tripwire-state-inconsistency.patch index 6f9de7cee..bce767ae7 100644 --- a/patches/server/0710-Fix-tripwire-state-inconsistency.patch +++ b/patches/server/1032-Fix-tripwire-state-inconsistency.patch @@ -6,22 +6,22 @@ Subject: [PATCH] Fix tripwire state inconsistency This patch prevents updating and re-setting the tripwire when being removed in certain conditions diff --git a/src/main/java/net/minecraft/world/level/block/TripWireBlock.java b/src/main/java/net/minecraft/world/level/block/TripWireBlock.java -index 003fd247b12323cca5fd82a6cdf31bd897afd682..a93a085b2e9564a2ff950fff505d856be7904863 100644 +index bdb99b799d1a97f1340c3d388d2901f7cb1c3527..3cb1db27dba902678a5848a1fb5e2c6ec6241e60 100644 --- a/src/main/java/net/minecraft/world/level/block/TripWireBlock.java +++ b/src/main/java/net/minecraft/world/level/block/TripWireBlock.java -@@ -87,7 +87,7 @@ public class TripWireBlock extends Block { - @Override +@@ -91,7 +91,7 @@ public class TripWireBlock extends Block { public void onRemove(BlockState state, Level world, BlockPos pos, BlockState newState, boolean moved) { + if (io.papermc.paper.configuration.GlobalConfiguration.get().blockUpdates.disableTripwireUpdates) return; // Paper - prevent adjacent tripwires from updating if (!moved && !state.is(newState.getBlock())) { - this.updateSource(world, pos, (BlockState) state.setValue(TripWireBlock.POWERED, true)); + this.updateSource(world, pos, (BlockState) state.setValue(TripWireBlock.POWERED, true), true); // Paper - fix tripwire state inconsistency } } -@@ -102,6 +102,12 @@ public class TripWireBlock extends Block { - } +@@ -108,6 +108,12 @@ public class TripWireBlock extends Block { private void updateSource(Level world, BlockPos pos, BlockState state) { + if (io.papermc.paper.configuration.GlobalConfiguration.get().blockUpdates.disableTripwireUpdates) return; // Paper - prevent adjacent tripwires from updating + // Paper start - fix tripwire state inconsistency + this.updateSource(world, pos, state, false); + } @@ -31,7 +31,7 @@ index 003fd247b12323cca5fd82a6cdf31bd897afd682..a93a085b2e9564a2ff950fff505d856b Direction[] aenumdirection = new Direction[]{Direction.SOUTH, Direction.WEST}; int i = aenumdirection.length; int j = 0; -@@ -117,7 +123,7 @@ public class TripWireBlock extends Block { +@@ -123,7 +129,7 @@ public class TripWireBlock extends Block { if (iblockdata1.is(this.hook)) { if (iblockdata1.getValue(TripWireHookBlock.FACING) == enumdirection.getOpposite()) { diff --git a/patches/server/0715-Fix-entity-type-tags-suggestions-in-selectors.patch b/patches/server/1033-Fix-entity-type-tags-suggestions-in-selectors.patch similarity index 90% rename from patches/server/0715-Fix-entity-type-tags-suggestions-in-selectors.patch rename to patches/server/1033-Fix-entity-type-tags-suggestions-in-selectors.patch index d6c957489..83872a369 100644 --- a/patches/server/0715-Fix-entity-type-tags-suggestions-in-selectors.patch +++ b/patches/server/1033-Fix-entity-type-tags-suggestions-in-selectors.patch @@ -10,10 +10,10 @@ when if this was fixed on the client, that wouldn't be needed. Mojira Issue: https://bugs.mojang.com/browse/MC-235045 diff --git a/src/main/java/net/minecraft/commands/CommandSourceStack.java b/src/main/java/net/minecraft/commands/CommandSourceStack.java -index 907bc9d84dbc98427384cf529bfde4b09d8ce8ca..c47944b18a35929509ae3add455385e80f09763b 100644 +index faa375f2722793a86265248a4be4fa14736d9818..f341813e9713e39bfe142ca34b751de3d8efd25b 100644 --- a/src/main/java/net/minecraft/commands/CommandSourceStack.java +++ b/src/main/java/net/minecraft/commands/CommandSourceStack.java -@@ -447,4 +447,20 @@ public class CommandSourceStack implements ExecutionCommandSource tree, CommandNode result, CommandSourceStack source, Map, CommandNode> resultNodes) { Iterator iterator = tree.getChildren().iterator(); @@ -46,7 +46,7 @@ index 8be58d29f2a4753a241e68bd305b3e30186ca0e9..39a47750d7feec04b2759929527d8776 while (iterator.hasNext()) { CommandNode commandnode2 = (CommandNode) iterator.next(); // Paper start - Brigadier API -@@ -557,6 +558,12 @@ public class Commands { +@@ -548,6 +549,12 @@ public class Commands { if (requiredargumentbuilder.getSuggestionsProvider() != null) { requiredargumentbuilder.suggests(SuggestionProviders.safelySwap(requiredargumentbuilder.getSuggestionsProvider())); @@ -60,19 +60,19 @@ index 8be58d29f2a4753a241e68bd305b3e30186ca0e9..39a47750d7feec04b2759929527d8776 } diff --git a/src/main/java/net/minecraft/commands/arguments/EntityArgument.java b/src/main/java/net/minecraft/commands/arguments/EntityArgument.java -index 850db283bf12345e9e7d7e8e590dbe8135c6dce1..d93698fd814683d451a3c8e8bcbb9cd475c79515 100644 +index 8e008e752c5b11781088e2b4b5ba180bacb59326..8d79cfa371546996ef65f94232c1d344e7c590ec 100644 --- a/src/main/java/net/minecraft/commands/arguments/EntityArgument.java +++ b/src/main/java/net/minecraft/commands/arguments/EntityArgument.java -@@ -128,7 +128,7 @@ public class EntityArgument implements ArgumentType { - StringReader stringreader = new StringReader(suggestionsbuilder.getInput()); - - stringreader.setCursor(suggestionsbuilder.getStart()); -- EntitySelectorParser argumentparserselector = new EntitySelectorParser(stringreader, icompletionprovider.hasPermission(2)); -+ EntitySelectorParser argumentparserselector = new EntitySelectorParser(stringreader, icompletionprovider.hasPermission(2), true); // Paper - tell clients to ask server for suggestions for EntityArguments +@@ -132,7 +132,7 @@ public class EntityArgument implements ArgumentType { + final boolean permission = object instanceof CommandSourceStack stack + ? stack.bypassSelectorPermissions || stack.hasPermission(2, "minecraft.command.selector") + : icompletionprovider.hasPermission(2); +- EntitySelectorParser argumentparserselector = new EntitySelectorParser(stringreader, permission); ++ EntitySelectorParser argumentparserselector = new EntitySelectorParser(stringreader, permission, true); // Paper - tell clients to ask server for suggestions for EntityArguments + // Paper end - Fix EntityArgument suggestion permissions try { - argumentparserselector.parse(); -@@ -137,7 +137,19 @@ public class EntityArgument implements ArgumentType { +@@ -142,7 +142,19 @@ public class EntityArgument implements ArgumentType { } return argumentparserselector.fillSuggestions(suggestionsbuilder, (suggestionsbuilder1) -> { diff --git a/patches/server/0791-Add-Alternate-Current-redstone-implementation.patch b/patches/server/1034-Add-Alternate-Current-redstone-implementation.patch similarity index 99% rename from patches/server/0791-Add-Alternate-Current-redstone-implementation.patch rename to patches/server/1034-Add-Alternate-Current-redstone-implementation.patch index e7485866a..445a356f2 100644 --- a/patches/server/0791-Add-Alternate-Current-redstone-implementation.patch +++ b/patches/server/1034-Add-Alternate-Current-redstone-implementation.patch @@ -2008,7 +2008,7 @@ index 0000000000000000000000000000000000000000..33cd90c30c22200a4e1ae64f40a0bf78 + } +} diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 0d5cdef130fb138c1b373ced129ccca245be4ec0..88151659d6552d1678c202b8414476683807eafb 100644 +index 2d4830b4b7df1516c75de1fefd6f8176d8ef16a2..1f0e9689acc1470a65a3c51505d5a386da7abc8e 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -223,6 +223,7 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -2019,7 +2019,7 @@ index 0d5cdef130fb138c1b373ced129ccca245be4ec0..88151659d6552d1678c202b841447668 @Override public LevelChunk getChunkIfLoaded(int x, int z) { // Paper - this was added in world too but keeping here for NMS ABI return this.chunkSource.getChunkAtIfLoadedImmediately(x, z); // Paper - Use getChunkIfLoadedImmediately -@@ -2574,6 +2575,13 @@ public class ServerLevel extends Level implements WorldGenLevel { +@@ -2593,6 +2594,13 @@ public class ServerLevel extends Level implements WorldGenLevel { return crashreportsystemdetails; } @@ -2034,14 +2034,13 @@ index 0d5cdef130fb138c1b373ced129ccca245be4ec0..88151659d6552d1678c202b841447668 EntityCallbacks() {} diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 205323c8e643c77b7aefe588d5ee2f8b2b29ede4..17f8dc044619bfa055f67f12cd9a296504ac76ee 100644 +index 4d91ff3dda92bdd503dd16d4f9e56aa18458592b..ae42d5b3dea423a144056c64337af213609923d4 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -1884,4 +1884,15 @@ public abstract class Level implements LevelAccessor, AutoCloseable { - return range <= 0 ? 64.0 * 64.0 : range * range; // 64 is taken from default in ServerLevel#levelEvent +@@ -1897,4 +1897,14 @@ public abstract class Level implements LevelAccessor, AutoCloseable { + } } - // Paper end - respect global sound events gamerule -+ + // Paper end - notify observers even if grow failed + // Paper start - optimize redstone (Alternate Current) + public alternate.current.wire.WireHandler getWireHandler() { + // This method is overridden in ServerLevel. diff --git a/patches/server/0841-optimize-dirt-and-snow-spreading.patch b/patches/server/1035-optimize-dirt-and-snow-spreading.patch similarity index 100% rename from patches/server/0841-optimize-dirt-and-snow-spreading.patch rename to patches/server/1035-optimize-dirt-and-snow-spreading.patch diff --git a/patches/server/0864-Properly-resend-entities.patch b/patches/server/1036-Properly-resend-entities.patch similarity index 93% rename from patches/server/0864-Properly-resend-entities.patch rename to patches/server/1036-Properly-resend-entities.patch index c4448fc5b..2144df7aa 100644 --- a/patches/server/0864-Properly-resend-entities.patch +++ b/patches/server/1036-Properly-resend-entities.patch @@ -16,10 +16,10 @@ See: https://github.com/PaperMC/Paper/pull/1896 public net.minecraft.server.level.ChunkMap$TrackedEntity serverEntity diff --git a/src/main/java/net/minecraft/network/syncher/SynchedEntityData.java b/src/main/java/net/minecraft/network/syncher/SynchedEntityData.java -index d088479d160dbd2fc90b48a30553be141db8eef2..ccb7d92b6c36b6225a2e640f8cea6c0da37464c8 100644 +index 07a362f9e485d0d507f16f1dda1ac84ade07ab27..58b602e550258c1062ee940bc46538dac95d8979 100644 --- a/src/main/java/net/minecraft/network/syncher/SynchedEntityData.java +++ b/src/main/java/net/minecraft/network/syncher/SynchedEntityData.java -@@ -253,14 +253,63 @@ public class SynchedEntityData { +@@ -275,14 +275,63 @@ public class SynchedEntityData { // CraftBukkit start public void refresh(ServerPlayer to) { if (!this.isEmpty()) { @@ -85,10 +85,10 @@ index d088479d160dbd2fc90b48a30553be141db8eef2..ccb7d92b6c36b6225a2e640f8cea6c0d public static class DataItem { diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index dd1a969c6ac8ee08c9898703953dda88c7b4f97e..0fe7770fd4506980667e154c83d7024112cac26d 100644 +index 721b6c47c7141871fba0d306da42147bff082b0a..42b433d9461d0912b39542263684323369469ac0 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2653,7 +2653,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2705,7 +2705,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl // Entity in bucket - SPIGOT-4048 and SPIGOT-6859a if ((entity instanceof Bucketable && entity instanceof LivingEntity && origItem != null && origItem.asItem() == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelected() == null || ServerGamePacketListenerImpl.this.player.getInventory().getSelected().getItem() != origItem)) { @@ -98,10 +98,10 @@ index dd1a969c6ac8ee08c9898703953dda88c7b4f97e..0fe7770fd4506980667e154c83d70241 } diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index d2d21ccc45381787698c84870537ba11ebb75127..a625091f59aadccae7fc40c94b620248bca125de 100644 +index 5a932f329f67fd01a263b9536cbfb1c9a011f746..2544495835f8f67eab07907ee8eb572b99ea0fcd 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java -@@ -376,7 +376,7 @@ public abstract class PlayerList { +@@ -390,7 +390,7 @@ public abstract class PlayerList { ((ServerLevel)player.level()).getChunkSource().chunkMap.addEntity(player); // Paper - Fire PlayerJoinEvent when Player is actually ready; track entity now // CraftBukkit end @@ -125,10 +125,10 @@ index 37596c7b65f280be00e8e59ae18bd1aceae21080..eca18540aeb0b0d4098477d73b14c78a } entity.playSound(((Bucketable) entity).getPickupSound(), 1.0F, 1.0F); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -index dab7108644aefe69448b5e361099d97354c8db1a..49e5a9fa95ebf4568eb875953f3032b8a7142080 100644 +index 9b8ba3199fa091c7b20a89044ff986d9861f088f..f16ac1d640fc97f348c244d4ea86e3278b30ae19 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java -@@ -947,7 +947,11 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { +@@ -999,7 +999,11 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity { return; } diff --git a/patches/server/0897-Optimize-Hoppers.patch b/patches/server/1037-Optimize-Hoppers.patch similarity index 99% rename from patches/server/0897-Optimize-Hoppers.patch rename to patches/server/1037-Optimize-Hoppers.patch index 17aa94ac7..f6f81b43e 100644 --- a/patches/server/0897-Optimize-Hoppers.patch +++ b/patches/server/1037-Optimize-Hoppers.patch @@ -50,10 +50,10 @@ index 0000000000000000000000000000000000000000..5c42823726e70ce6c9d0121d07431548 + } +} diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index ed9839ff23d0810912a6961979690c3fe9fc0e16..afc23f859188a6cda27a683babd551c250a748ef 100644 +index 9f4fc17622dd78b7c455de0bc2d8b772cc030024..093d9fa59fce871ba1d592482f7fc6616fd9b1ac 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java -@@ -1672,6 +1672,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0; // Paper @@ -62,10 +62,10 @@ index ed9839ff23d0810912a6961979690c3fe9fc0e16..afc23f859188a6cda27a683babd551c2 this.profiler.push(() -> { diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 23fec59b51c99c1f0ac19ffd6c84ffa8fc3caaac..6d1986d4dfa4dd4f5988c6afa023f9bd518e1d4e 100644 +index 2470acc82292bedd930be404a2e1d1f8fad700e1..ed27a963223bfe18310ad5adabf461b5e307ef9c 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -749,10 +749,16 @@ public final class ItemStack { +@@ -751,10 +751,16 @@ public final class ItemStack { } public ItemStack copy() { diff --git a/patches/server/0973-Improve-performance-of-mass-crafts.patch b/patches/server/1038-Improve-performance-of-mass-crafts.patch similarity index 100% rename from patches/server/0973-Improve-performance-of-mass-crafts.patch rename to patches/server/1038-Improve-performance-of-mass-crafts.patch diff --git a/patches/server/0990-Actually-optimise-explosions.patch b/patches/server/1039-Actually-optimise-explosions.patch similarity index 100% rename from patches/server/0990-Actually-optimise-explosions.patch rename to patches/server/1039-Actually-optimise-explosions.patch diff --git a/patches/server/0994-Optimise-chunk-tick-iteration.patch b/patches/server/1040-Optimise-chunk-tick-iteration.patch similarity index 98% rename from patches/server/0994-Optimise-chunk-tick-iteration.patch rename to patches/server/1040-Optimise-chunk-tick-iteration.patch index a15bf7045..9597d6ba3 100644 --- a/patches/server/0994-Optimise-chunk-tick-iteration.patch +++ b/patches/server/1040-Optimise-chunk-tick-iteration.patch @@ -108,7 +108,7 @@ index 2b998bdbe49bf8211b755e0eb7c1bf13ac280eab..627a88ec8c3b215b19b55a6d461c8754 List list; diff --git a/src/main/java/net/minecraft/server/level/ChunkMap.java b/src/main/java/net/minecraft/server/level/ChunkMap.java -index 815fb04fb2d14d0cea14a2b3509e81b383bbdbda..ccf0308855d6549d70cf010fc57b76abfbe93f26 100644 +index 90393101fddd54f60b0b173beffd8650ad23349e..424de333bf4fc5632410c689d9b17b2eab3371c4 100644 --- a/src/main/java/net/minecraft/server/level/ChunkMap.java +++ b/src/main/java/net/minecraft/server/level/ChunkMap.java @@ -191,6 +191,7 @@ public class ChunkMap extends ChunkStorage implements ChunkHolder.PlayerProvider @@ -187,10 +187,10 @@ index c80a625f7289e3bb33c6851d2072957e153ca1fb..7c425ac50c83757b66a2178bc19d4c92 public String getDebugStatus() { diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java -index e3618e76f9ce4d585287d0754193c2793ba1e492..65a20974428ae1c0be2022d997234a16dc281292 100644 +index c2973fcfde402b5432db37468e4a40a1a119cca1..77a2458b8acb21c64676934cd8d6b05ef6351c10 100644 --- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java +++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java -@@ -516,18 +516,10 @@ public class ServerChunkCache extends ChunkSource { +@@ -523,18 +523,10 @@ public class ServerChunkCache extends ChunkSource { gameprofilerfiller.push("pollingChunks"); gameprofilerfiller.push("filteringLoadedChunks"); @@ -211,7 +211,7 @@ index e3618e76f9ce4d585287d0754193c2793ba1e492..65a20974428ae1c0be2022d997234a16 if (this.level.getServer().tickRateManager().runsNormally()) { gameprofilerfiller.popPush("naturalSpawnCount"); -@@ -562,38 +554,109 @@ public class ServerChunkCache extends ChunkSource { +@@ -569,38 +561,109 @@ public class ServerChunkCache extends ChunkSource { gameprofilerfiller.popPush("spawnAndTick"); boolean flag = this.level.getGameRules().getBoolean(GameRules.RULE_DOMOBSPAWNING) && !this.level.players().isEmpty(); // CraftBukkit @@ -337,7 +337,7 @@ index e3618e76f9ce4d585287d0754193c2793ba1e492..65a20974428ae1c0be2022d997234a16 this.level.timings.chunkTicks.stopTiming(); // Paper gameprofilerfiller.popPush("customSpawners"); -@@ -605,11 +668,23 @@ public class ServerChunkCache extends ChunkSource { +@@ -612,11 +675,23 @@ public class ServerChunkCache extends ChunkSource { } gameprofilerfiller.popPush("broadcast"); @@ -365,7 +365,7 @@ index e3618e76f9ce4d585287d0754193c2793ba1e492..65a20974428ae1c0be2022d997234a16 gameprofilerfiller.pop(); } diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index a78ee295d14e0f4543b5bbdb7b72c6383a4fb23a..40632eabeb297f2cb2206d18cba7476bfb9f7ae8 100644 +index 4ef7cc68bdcad9eaa157325a195aa74e62b478e5..4a0df97430cf025d1e830f681ef791ecec985102 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java @@ -325,6 +325,9 @@ public class ServerPlayer extends Player { diff --git a/patches/server/0995-Lag-compensation-ticks.patch b/patches/server/1041-Lag-compensation-ticks.patch similarity index 91% rename from patches/server/0995-Lag-compensation-ticks.patch rename to patches/server/1041-Lag-compensation-ticks.patch index 536c00fbb..b874637e1 100644 --- a/patches/server/0995-Lag-compensation-ticks.patch +++ b/patches/server/1041-Lag-compensation-ticks.patch @@ -8,7 +8,7 @@ Areas affected by lag comepnsation: - Eating food items diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 174f3dab7c7f02dd09d02dc8b4e69190284c3f48..ec1197e498d0fa8d58466b8dffe46fb0683b530c 100644 +index 093d9fa59fce871ba1d592482f7fc6616fd9b1ac..49ab2773658a2c6fababa316707762a8e2b19c58 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -311,6 +311,9 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0; // Paper - Add EntityMoveEvent diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index ab472d2e81c0756020ffb727db4b71aeb8d9d020..ae6919fb2ed273d5527a6e4e7731c074d201393f 100644 +index 1f0e9689acc1470a65a3c51505d5a386da7abc8e..ffe910da16c33ebbce77fef441d9d5c2d097ce61 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -565,6 +565,17 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -52,7 +52,7 @@ index ab472d2e81c0756020ffb727db4b71aeb8d9d020..ae6919fb2ed273d5527a6e4e7731c074 // Add env and gen to constructor, IWorldDataServer -> WorldDataServer public ServerLevel(MinecraftServer minecraftserver, Executor executor, LevelStorageSource.LevelStorageAccess convertable_conversionsession, PrimaryLevelData iworlddataserver, ResourceKey resourcekey, LevelStem worlddimension, ChunkProgressListener worldloadlistener, boolean flag, long i, List list, boolean flag1, @Nullable RandomSequences randomsequences, org.bukkit.World.Environment env, org.bukkit.generator.ChunkGenerator gen, org.bukkit.generator.BiomeProvider biomeProvider) { diff --git a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java -index 52764f0f5b42e3b7fd9624bc342e9927037880d2..6abc5061888d965161de979465bb625c173c59c6 100644 +index 83e017efd15d0ecaffc327f02d6d5330c8ed6937..cfd4ac06a9af6bf3fac293110482e1df690e075e 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayerGameMode.java @@ -124,7 +124,7 @@ public class ServerPlayerGameMode { @@ -65,10 +65,10 @@ index 52764f0f5b42e3b7fd9624bc342e9927037880d2..6abc5061888d965161de979465bb625c if (this.hasDelayedDestroy) { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 629d38851558207f302e9baa0157218d7c8596d7..91d88337f9147637b0e8fa1ac8bf9193b44751f2 100644 +index b920f72e659956cc2d2d44743caddb0136d467e4..ca1900d29a86b9b39078da39b071950128c08c23 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3819,6 +3819,10 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3827,6 +3827,10 @@ public abstract class LivingEntity extends Entity implements Attackable { this.getEntityData().resendPossiblyDesyncedDataValues(java.util.List.of(DATA_LIVING_ENTITY_FLAGS), serverPlayer); } // Paper end - Properly cancel usable items @@ -79,7 +79,7 @@ index 629d38851558207f302e9baa0157218d7c8596d7..91d88337f9147637b0e8fa1ac8bf9193 private void updatingUsingItem() { if (this.isUsingItem()) { if (ItemStack.isSameItem(this.getItemInHand(this.getUsedItemHand()), this.useItem)) { -@@ -3837,7 +3841,12 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3845,7 +3849,12 @@ public abstract class LivingEntity extends Entity implements Attackable { this.triggerItemUseEffects(stack, 5); } @@ -93,7 +93,7 @@ index 629d38851558207f302e9baa0157218d7c8596d7..91d88337f9147637b0e8fa1ac8bf9193 this.completeUsingItem(); } -@@ -3885,7 +3894,10 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3893,7 +3902,10 @@ public abstract class LivingEntity extends Entity implements Attackable { if (!itemstack.isEmpty() && !this.isUsingItem() || forceUpdate) { // Paper - Prevent consuming the wrong itemstack this.useItem = itemstack; @@ -105,7 +105,7 @@ index 629d38851558207f302e9baa0157218d7c8596d7..91d88337f9147637b0e8fa1ac8bf9193 if (!this.level().isClientSide) { this.setLivingEntityFlag(1, true); this.setLivingEntityFlag(2, hand == InteractionHand.OFF_HAND); -@@ -3910,7 +3922,10 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3918,7 +3930,10 @@ public abstract class LivingEntity extends Entity implements Attackable { } } else if (!this.isUsingItem() && !this.useItem.isEmpty()) { this.useItem = ItemStack.EMPTY; @@ -117,7 +117,7 @@ index 629d38851558207f302e9baa0157218d7c8596d7..91d88337f9147637b0e8fa1ac8bf9193 } } -@@ -4045,7 +4060,10 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4053,7 +4068,10 @@ public abstract class LivingEntity extends Entity implements Attackable { } this.useItem = ItemStack.EMPTY; diff --git a/patches/server/0999-Optimise-nearby-player-retrieval.patch b/patches/server/1042-Optimise-nearby-player-retrieval.patch similarity index 99% rename from patches/server/0999-Optimise-nearby-player-retrieval.patch rename to patches/server/1042-Optimise-nearby-player-retrieval.patch index e2bed5bf4..c41f2cf27 100644 --- a/patches/server/0999-Optimise-nearby-player-retrieval.patch +++ b/patches/server/1042-Optimise-nearby-player-retrieval.patch @@ -8,7 +8,7 @@ we can instead use the nearby player tracking system to reduce the number of tests per search. diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index ae6919fb2ed273d5527a6e4e7731c074d201393f..f5254ccffc19cf451cd5e358256b97fa33e51cfc 100644 +index ffe910da16c33ebbce77fef441d9d5c2d097ce61..fa203e66887f5db1083728166e2f81ea4f656bd7 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -576,6 +576,115 @@ public class ServerLevel extends Level implements WorldGenLevel { diff --git a/scripts/moveback.py b/scripts/moveback.py new file mode 100644 index 000000000..744f101a1 --- /dev/null +++ b/scripts/moveback.py @@ -0,0 +1,44 @@ +import os +import sys + +# Use inside of server patch dir +# py ../../scripts/moveback.py '' +patch_target = 1038 # TODO: Update this + + +def increment_number(filename): + current_number = int(filename[:4]) + new_number = current_number + 1 + return f"{new_number:04d}-{filename[5:]}" + + +if len(sys.argv) != 2: + print("python moveback.py ''") + sys.exit(1) + +input_string = sys.argv[1].replace(' ', '-').lower() +if len(input_string) < 5: + print("Commit title is too short") + sys.exit(1) + +matching_files = [file for file in os.listdir() if input_string in file.lower()] + +if len(matching_files) == 0: + print("No file found matching the given string") + sys.exit(1) + +matching_file = matching_files[0] +print(f"Found: {matching_file}") + +# Move all files after the target one up +for file in os.listdir(): + num = int(file[:4]) + if num >= patch_target: + new_filename = increment_number(file) + os.rename(file, new_filename) + print(f"Renamed {file} to {new_filename}") + +# Rename the file to the target +new_filename = f"{patch_target:04d}-{matching_file[5:]}" +os.rename(matching_file, new_filename) +print(f"Renamed {matching_file} to {new_filename}")