From 6e71f415369e35558450f015cfcc2d2db1c0e064 Mon Sep 17 00:00:00 2001 From: Nassim Jahnke Date: Sat, 24 Aug 2024 11:07:12 +0200 Subject: [PATCH] Updated Upstream (CraftBukkit/Spigot) Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing CraftBukkit Changes: 65247583f SPIGOT-7857: Improve ItemMeta block data deserialization 05d80500d SPIGOT-7857: Fix spurious internal NBT tag when deserializing BlockStateMeta cebb58e9a SPIGOT-7804: Fix written book serialization efcdd5d38 SPIGOT-7794: Cancelling InventoryItemMoveEvent destroys items b568ba572 SPIGOT-7789: Fix NPE in CraftMetaFirework applyToItem f057cf449 Remove outdated build delay Spigot Changes: f6a48054 SPIGOT-7835: Fix issue with custom hopper settings bb63b137 Rebuild patches e1142b4d Rebuild patches --- .../api/0388-Add-BlockLockCheckEvent.patch | 13 +- .../server/0003-Build-system-changes.patch | 8 +- patches/server/0010-Adventure.patch | 29 ++-- ...oleAppender-for-console-improvements.patch | 4 +- .../0027-Support-components-in-ItemMeta.patch | 10 +- ...e-before-converting-and-renaming-pla.patch | 4 +- ...072-Handle-Item-Meta-Inconsistencies.patch | 10 +- patches/server/0273-Book-Size-Limits.patch | 58 ++++--- .../0282-Limit-Client-Sign-length-more.patch | 4 +- ...58-Prevent-teleporting-dead-entities.patch | 4 +- ...t-position-desync-causing-tp-exploit.patch | 4 +- .../0376-Add-PlayerRecipeBookClickEvent.patch | 4 +- ...ld-Difficulty-Remembering-Difficulty.patch | 6 +- ...4-Add-BlockStateMeta-clearBlockState.patch | 4 +- ...nvert-legacy-attributes-in-Item-Meta.patch | 4 +- ...o-not-accept-invalid-client-settings.patch | 4 +- ...ortation-and-cancel-velocity-if-tele.patch | 6 +- ...r-large-move-vectors-crashing-server.patch | 6 +- .../server/0451-Limit-recipe-packets.patch | 4 +- ...act-event-not-being-called-sometimes.patch | 6 +- ...-using-signs-inside-spawn-protection.patch | 4 +- ...ignore-result-of-PlayerEditBookEvent.patch | 4 +- ...fix-PlayerItemHeldEvent-firing-twice.patch | 4 +- ...pawnEvent-fix-passed-parameter-issue.patch | 4 +- ...542-Expand-PlayerGameModeChangeEvent.patch | 6 +- ...ove-range-check-for-block-placing-up.patch | 4 +- .../0548-Add-Unix-domain-socket-support.patch | 6 +- .../0554-Add-PlayerKickEvent-causes.patch | 49 +++--- ...nect-for-book-edit-is-called-on-main.patch | 19 --- ...of-Block-applyBoneMeal-always-being.patch} | 0 ...tChunkIfLoadedImmediately-in-places.patch} | 0 ...rom-signs-not-firing-command-events.patch} | 0 ...tch => 0573-Add-PlayerArmSwingEvent.patch} | 4 +- ...-event-leave-message-not-being-sent.patch} | 8 +- ...-t-apply-cramming-damage-to-players.patch} | 0 ...d-timings-for-sensors-and-behaviors.patch} | 0 ... 0577-Add-missing-forceDrop-toggles.patch} | 0 ...inger-API.patch => 0578-Stinger-API.patch} | 0 ... => 0579-Add-System.out-err-catcher.patch} | 0 ...AFK-kick-while-watching-end-credits.patch} | 2 +- ...iting-of-comments-to-server.propert.patch} | 0 ...tch => 0582-Add-PlayerSetSpawnEvent.patch} | 2 +- ...rs-respect-inventory-max-stack-size.patch} | 4 +- ...ize-entity-tracker-passenger-checks.patch} | 0 ...-option-for-Piglins-guarding-chests.patch} | 0 ...h => 0586-Add-EntityDamageItemEvent.patch} | 2 +- ...timize-indirect-passenger-iteration.patch} | 2 +- ...em-frame-map-cursor-update-interval.patch} | 0 ...589-Clear-bucket-NBT-after-dispense.patch} | 0 ...arget-without-changing-other-things.patch} | 0 ...ch => 0591-Add-BlockBreakBlockEvent.patch} | 0 ...-data-components-copy-in-smithing-r.patch} | 0 ...patch => 0593-More-CommandBlock-API.patch} | 0 ...-missing-team-sidebar-display-slots.patch} | 0 ...0595-Add-back-EntityPortalExitEvent.patch} | 2 +- ...-find-targets-for-lightning-strikes.patch} | 0 ... 0597-Get-entity-default-attributes.patch} | 0 ...d-API.patch => 0598-Left-handed-API.patch} | 0 ...ch => 0599-Add-more-advancement-API.patch} | 0 ...600-Add-ItemFactory-getSpawnEgg-API.patch} | 0 ...tch => 0601-Add-critical-damage-API.patch} | 2 +- ...0602-Fix-issues-with-mob-conversion.patch} | 0 ...Collision-methods-to-various-places.patch} | 0 ...-ram-API.patch => 0604-Goat-ram-API.patch} | 0 ...dd-API-for-resetting-a-single-score.patch} | 0 ...6-Add-Raw-Byte-Entity-Serialization.patch} | 0 ...07-Vanilla-command-permission-fixes.patch} | 2 +- ...logic-for-inventories-on-chunk-unlo.patch} | 2 +- ...09-Fix-GameProfileCache-concurrency.patch} | 0 ...610-Improve-and-expand-AsyncCatcher.patch} | 4 +- ...per-mobcaps-and-paper-playermobcaps.patch} | 2 +- ...tize-ResourceLocation-error-logging.patch} | 0 ...lly-inline-methods-in-BlockPosition.patch} | 0 ...ler-threads-according-to-the-plugin.patch} | 0 ...-getChunkAt-has-inlined-logic-for-l.patch} | 0 ...our-chunk-data-off-disk-when-conver.patch} | 0 ...d-state-when-raytracing-skip-air-bl.patch} | 0 ...atch => 0618-Time-scoreboard-search.patch} | 0 ...rimise-map-impl-for-tracked-players.patch} | 0 ...h => 0620-Add-missing-InventoryType.patch} | 0 ...imise-BlockSoil-nearby-water-lookup.patch} | 0 ...ntory-not-closing-on-entity-removal.patch} | 0 ...rement-before-suggesting-root-nodes.patch} | 0 ...ServerboundCommandSuggestionPacket-.patch} | 2 +- ...h => 0625-Add-packet-limiter-config.patch} | 0 ...nColor-on-tropical-fish-bucket-meta.patch} | 0 ...=> 0627-Ensure-valid-vehicle-status.patch} | 0 ...ftlocked-end-exit-portal-generation.patch} | 0 ...r-causing-a-crash-when-trying-to-ge.patch} | 0 ...-t-log-debug-logging-being-disabled.patch} | 0 ...ous-menus-with-empty-level-accesses.patch} | 0 ...h => 0632-Preserve-overstacked-loot.patch} | 0 ...ate-head-rotation-in-missing-places.patch} | 2 +- ...unintended-light-block-manipulation.patch} | 0 ...0635-Fix-CraftCriteria-defaults-map.patch} | 0 ...Fix-upstreams-block-state-factories.patch} | 2 +- ... => 0637-Configurable-feature-seeds.patch} | 0 ... 0638-Add-root-admin-user-detection.patch} | 2 +- ...t-attempt-to-teleport-dead-entities.patch} | 2 +- ...ive-velocity-through-repeated-crits.patch} | 0 ...e-code-using-deprecated-for-removal.patch} | 0 ...=> 0642-Fix-Spigot-growth-modifiers.patch} | 2 +- ...OpenersCounter-openCount-from-going.patch} | 0 ...0644-Add-PlayerItemFrameChangeEvent.patch} | 0 ...tch => 0645-Optimize-HashMapPalette.patch} | 0 ...low-delegation-to-vanilla-chunk-gen.patch} | 0 ...-isSectionEmpty-int-and-optimize-Pa.patch} | 0 ...patch => 0648-Add-more-Campfire-API.patch} | 0 ...data-to-disk-if-it-serializes-witho.patch} | 0 ...ard-CraftEntity-in-teleport-command.patch} | 2 +- ... => 0651-Improve-scoreboard-entries.patch} | 0 ...ch => 0652-Entity-powdered-snow-API.patch} | 0 ...0653-Add-API-for-item-entity-health.patch} | 0 ...ax-block-light-for-monster-spawning.patch} | 0 ...pistons-and-BlockPistonRetractEvent.patch} | 0 ...-canSmelt-methods-to-FurnaceInvento.patch} | 0 ...le-API.patch => 0657-Bucketable-API.patch} | 0 ...es.patch => 0658-Validate-usernames.patch} | 0 ...er-animal-spawn-height-configurable.patch} | 0 ...anilla-BiomeProvider-from-WorldInfo.patch} | 0 ...ion-for-worlds-affected-by-time-cmd.patch} | 0 ...heck-for-PersistentDataContainer-ha.patch} | 0 ...3-Multiple-Entries-with-Scoreboards.patch} | 0 ...664-Reset-placed-block-on-exception.patch} | 0 ...configurable-height-for-slime-spawn.patch} | 0 ...0666-Fix-xp-reward-for-baby-zombies.patch} | 0 ...lti-Block-Change-API-Implementation.patch} | 2 +- ...ent.patch => 0668-Fix-NotePlayEvent.patch} | 0 ....patch => 0669-Freeze-Tick-Lock-API.patch} | 0 ...h => 0670-More-PotionEffectType-API.patch} | 0 ...for-StructureTemplate.Pallete-cache.patch} | 0 ...command-sender-which-forwards-feedb.patch} | 0 ...-missing-structure-set-seed-configs.patch} | 2 +- ...h => 0674-Implement-regenerateChunk.patch} | 2 +- ...lled-powdered-snow-bucket-placement.patch} | 2 +- ...ate-calls-to-CraftServer-getSpawnLi.patch} | 0 ...gs.patch => 0677-Add-GameEvent-tags.patch} | 0 ...ks-fairly-for-worlds-while-waiting-.patch} | 2 +- ...tch => 0679-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} | 0 ... => 0684-Fix-Entity-Position-Desync.patch} | 0 ...s.patch => 0685-Custom-Potion-Mixes.patch} | 0 ...86-Force-close-world-loading-screen.patch} | 0 ...687-Fix-falling-block-spawn-methods.patch} | 0 ...Expose-furnace-minecart-push-values.patch} | 0 ...ojectileHitEvent-for-piercing-arrow.patch} | 2 +- ...I.patch => 0690-More-Projectile-API.patch} | 0 ...x-swamp-hut-cat-generation-deadlock.patch} | 0 ...le-movement-from-players-while-tele.patch} | 2 +- ...0693-Implement-getComputedBiome-API.patch} | 2 +- ...> 0694-Make-some-itemstacks-nonnull.patch} | 0 ...695-Implement-enchantWithLevels-API.patch} | 0 ...h => 0696-Fix-saving-in-unloadWorld.patch} | 0 ...h => 0697-Buffer-OOB-setBlock-calls.patch} | 0 ... 0698-Add-TameableDeathMessageEvent.patch} | 0 ...ock-data-for-EntityChangeBlockEvent.patch} | 2 +- ...bles-running-when-mob-loot-gamerule.patch} | 0 ...ssenger-world-matches-ridden-entity.patch} | 2 +- ...s.patch => 0702-cache-resource-keys.patch} | 0 ...low-changing-the-EnderDragon-podium.patch} | 0 ...erriding-a-block-entity-during-worl.patch} | 0 ...t-tile-entity-copies-loading-chunks.patch} | 4 +- ...ead-of-display-name-in-PlayerList-g.patch} | 0 ...> 0707-Expand-PlayerItemDamageEvent.patch} | 2 +- ...> 0708-WorldCreator-keepSpawnLoaded.patch} | 0 ...-in-CraftPersistentDataTypeRegistry.patch} | 0 ...destroyed-trigger-in-the-correct-pl.patch} | 0 ...Event-and-CollarColorable-interface.patch} | 0 ...CauldronLevelChange-on-initial-fill.patch} | 0 ...snow-cauldrons-not-turning-to-water.patch} | 0 ...> 0714-Add-PlayerStopUsingItemEvent.patch} | 0 ...rs.patch => 0715-Don-t-tick-markers.patch} | 2 +- ...tch => 0716-Expand-FallingBlock-API.patch} | 0 ...0717-Add-support-for-Proxy-Protocol.patch} | 0 ...x-OfflinePlayer-getBedSpawnLocation.patch} | 0 ...tory-for-smokers-and-blast-furnaces.patch} | 0 ... 0720-Sanitize-sent-BlockEntity-NBT.patch} | 2 +- ...-selector-resolving-in-books-by-def.patch} | 0 ...ntity-loading-causing-async-lookups.patch} | 2 +- ...-on-world-create-while-being-ticked.patch} | 0 ...24-Dont-resent-entity-on-art-update.patch} | 0 ... => 0725-Add-WardenAngerChangeEvent.patch} | 0 ...strict-advancement-dimension-checks.patch} | 0 ...tant-BlockStateListPopulator-method.patch} | 0 ...I.patch => 0728-Nameable-Banner-API.patch} | 0 ...roadcast-messages-to-command-blocks.patch} | 0 ...pty-items-from-being-added-to-world.patch} | 0 ...hPotion-and-LingeringPotion-spawnin.patch} | 0 ...atch => 0732-Add-Player-getFishHook.patch} | 0 ...chunk-for-dynamic-game-event-listen.patch} | 0 ...s-missing-EntityDropItemEvent-calls.patch} | 2 +- ...PE.patch => 0735-Fix-Bee-flower-NPE.patch} | 0 ...-not-using-commands.spam-exclusions.patch} | 4 +- ...API.patch => 0737-More-Teleport-API.patch} | 6 +- ... => 0738-Add-EntityPortalReadyEvent.patch} | 2 +- ...level-random-in-entity-constructors.patch} | 0 ...k-entities-after-destroy-prediction.patch} | 4 +- ...on-plugins-accessing-faraway-chunks.patch} | 0 ...tom-Chat-Completion-Suggestions-API.patch} | 2 +- ...Add-and-fix-missing-BlockFadeEvents.patch} | 0 ...ion-API.patch => 0744-Collision-API.patch} | 0 ...nd-message-for-brigadier-syntax-exc.patch} | 2 +- ...API.patch => 0746-Block-Ticking-API.patch} | 0 ...-Add-Velocity-IP-Forwarding-Support.patch} | 2 +- ...748-Add-NamespacedKey-biome-methods.patch} | 0 ...x-plugin-loggers-on-server-shutdown.patch} | 4 +- ...ok-changes-from-crashing-the-server.patch} | 0 ...tityChangeBlockEvent-in-more-places.patch} | 0 ...> 0752-Missing-eating-regain-reason.patch} | 0 ....patch => 0753-Missing-effect-cause.patch} | 0 ...serialization-deserialization-for-P.patch} | 0 ...rameter-to-ProjectileSource-launchP.patch} | 0 ...6-Call-BlockPhysicsEvent-more-often.patch} | 0 ...0757-Configurable-chat-thread-limit.patch} | 0 ...of-WorldCreator-keepSpawnLoaded-ret.patch} | 0 ... 0759-fix-Jigsaw-block-kicking-user.patch} | 0 ...mEvent-for-mud-converting-into-clay.patch} | 0 ... => 0761-Add-getDrops-to-BlockState.patch} | 0 ...=> 0762-Fix-a-bunch-of-vanilla-bugs.patch} | 0 ...y-onTrackingStart-during-navigation.patch} | 0 ... 0764-Fix-custom-piglin-loved-items.patch} | 0 ...=> 0765-EntityPickupItemEvent-fixes.patch} | 0 ...interactions-with-items-on-cooldown.patch} | 2 +- ...-Add-PlayerInventorySlotChangeEvent.patch} | 0 ... 0768-Elder-Guardian-appearance-API.patch} | 0 ...ow-changing-bed-s-occupied-property.patch} | 0 ...ch => 0770-Add-entity-knockback-API.patch} | 0 ....patch => 0771-Detect-headless-JREs.patch} | 0 ...-vehicle-collision-event-not-called.patch} | 0 ...ch => 0773-Add-EntityToggleSitEvent.patch} | 0 ... => 0774-Add-fire-tick-delay-option.patch} | 0 ...patch => 0775-Add-Moving-Piston-API.patch} | 0 ...> 0776-Ignore-impossible-spawn-tick.patch} | 0 ...t-suggestion-permissions-to-align-w.patch} | 0 ...Event-cancellation-cant-fully-preve.patch} | 2 +- ...0779-Add-PrePlayerAttackEntityEvent.patch} | 2 +- ...e-reset-EnderDragon-boss-event-name.patch} | 0 ...-green-map-markers-do-not-disappear.patch} | 0 ... 0782-Add-Player-Warden-Warning-API.patch} | 0 ...a-friendly-methods-to-update-trades.patch} | 0 ...784-Add-paper-dumplisteners-command.patch} | 2 +- ...lobal-player-list-where-appropriate.patch} | 0 ...sync-entity-add-due-to-fungus-trees.patch} | 0 ....patch => 0787-ItemStack-damage-API.patch} | 2 +- ...tion-API.patch => 0788-Friction-API.patch} | 2 +- ...trol-player-s-insomnia-and-phantoms.patch} | 0 ...-premature-player-kicks-on-shutdown.patch} | 2 +- ... => 0791-Sync-offhand-slot-in-menus.patch} | 0 ... 0792-Player-Entity-Tracking-Events.patch} | 2 +- ...tch => 0793-Limit-pet-look-distance.patch} | 0 ...nd-additions-to-the-SpawnReason-API.patch} | 0 ...ments.patch => 0795-fix-Instruments.patch} | 2 +- ...for-some-hot-BlockBehavior-and-Flui.patch} | 0 ...es-in-dispense-events-regarding-sta.patch} | 0 ...tch => 0798-Add-BlockLockCheckEvent.patch} | 4 +- ... 0799-Add-Sneaking-API-for-Entities.patch} | 0 ... => 0800-Improve-logging-and-errors.patch} | 8 +- ....patch => 0801-Improve-PortalEvents.patch} | 2 +- ...ion-for-spider-worldborder-climbing.patch} | 0 ...sing-SpigotConfig-logCommands-check.patch} | 6 +- ...Allay-stopDancing-while-not-dancing.patch} | 0 ...ge.patch => 0805-Flying-Fall-Damage.patch} | 4 +- ...ion-moving-velocity-to-VehicleBlock.patch} | 2 +- ...onfig-for-disabling-entity-tag-tags.patch} | 0 ...e-player-info-update-packet-on-join.patch} | 4 +- ...k-items-during-EntityResurrectEvent.patch} | 2 +- ...en-API.patch => 0810-Win-Screen-API.patch} | 2 +- ...ItemStack-setAmount-null-assignment.patch} | 2 +- ...ix-force-opening-enchantment-tables.patch} | 0 ...tch => 0813-Add-Entity-Body-Yaw-API.patch} | 2 +- ...vent-sleeping-villagers-moving-towa.patch} | 0 ...=> 0815-Add-EntityFertilizeEggEvent.patch} | 0 ...ty-drop-not-updating-the-client-inv.patch} | 0 ...temEvent-and-EntityCompostItemEvent.patch} | 0 ...ctly-handle-ArmorStand-invisibility.patch} | 0 ...ancement-triggers-for-entity-damage.patch} | 0 ...820-Fix-text-display-error-on-spawn.patch} | 0 ...nventories-returning-null-Locations.patch} | 0 ...API.patch => 0822-Add-Shearable-API.patch} | 0 ...Fix-SpawnEggMeta-get-setSpawnedType.patch} | 0 ...g-to-bad-recipes-in-furnace-like-ti.patch} | 0 ...ence-violations-like-they-should-be.patch} | 4 +- ...uplicate-animate-packet-for-records.patch} | 0 ...xpired-keys-from-impacting-new-join.patch} | 4 +- ...ts-being-fired-from-unloaded-chunks.patch} | 0 ...0829-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 ... 0832-Add-Mob-Experience-reward-API.patch} | 0 ...redstone-on-top-of-trap-doors-early.patch} | 0 ...Lazy-Initialization-for-Enum-Fields.patch} | 0 ...35-More-accurate-isInOpenWater-impl.patch} | 0 ... => 0836-Expand-PlayerItemMendEvent.patch} | 6 +- ...sh-ProjectileSource-for-projectiles.patch} | 2 +- ... => 0838-Add-transient-modifier-API.patch} | 0 ...patch => 0839-Fix-block-place-logic.patch} | 2 +- ...nd-playing-for-BlockItem-ItemStacks.patch} | 2 +- ...l-BlockGrowEvent-for-missing-blocks.patch} | 0 ...nhasbukkit-default-if-alias-block-e.patch} | 0 ...pLike-spam-for-missing-key-selector.patch} | 0 ...-Fix-sniffer-removeExploredLocation.patch} | 0 ...to-remove-all-active-potion-effects.patch} | 2 +- ...rafting-result-amount-for-fireworks.patch} | 0 ...7-Add-event-for-player-editing-sign.patch} | 2 +- ...k-item-frames-if-players-can-see-it.patch} | 0 ...ermission-levels-for-command-blocks.patch} | 2 +- ...Add-option-to-disable-block-updates.patch} | 0 ...851-Call-missing-BlockDispenseEvent.patch} | 0 ...-chunks-for-supporting-block-checks.patch} | 2 +- ...Optimize-player-lookups-for-beacons.patch} | 0 ...854-Add-Sign-getInteractableSideFor.patch} | 0 ...5-fix-item-meta-for-tadpole-buckets.patch} | 0 ...t-API.patch => 0856-Fix-BanList-API.patch} | 2 +- ...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 => 0862-Add-whitelist-events.patch} | 0 ... 0863-Implement-PlayerFailMoveEvent.patch} | 12 +- ...olia-scheduler-and-owned-region-API.patch} | 0 ...se-allay-memory-on-non-item-targets.patch} | 0 ...API-for-updating-recipes-on-clients.patch} | 0 ...tion-when-spawning-display-entities.patch} | 0 ...868-Only-capture-actual-tree-growth.patch} | 2 +- ...rce-for-mushroom-block-spread-event.patch} | 0 ...Data-on-more-entities-when-spawning.patch} | 0 ...-Use-correct-seed-on-api-world-load.patch} | 0 ...ta-neighbour-ticks-outside-of-range.patch} | 0 ...> 0873-Cache-map-ids-on-item-frames.patch} | 0 ...-custom-statistic-criteria-creation.patch} | 0 ...atch => 0875-Bandaid-fix-for-Effect.patch} | 0 ...tch => 0876-SculkCatalyst-bloom-API.patch} | 0 ...API-for-an-entity-s-scoreboard-name.patch} | 0 ...lace-methods-with-old-StructureType.patch} | 0 ...e-namespaced-commands-if-send-names.patch} | 2 +- ...-handle-BlockBreakEvent-isDropItems.patch} | 0 ...entity-death-event-for-ender-dragon.patch} | 0 ...tity-tracking-range-by-Y-coordinate.patch} | 0 ... => 0883-Add-Listing-API-for-Player.patch} | 2 +- ...figurable-Region-Compression-Format.patch} | 0 ...5-Add-BlockFace-to-BlockDamageEvent.patch} | 2 +- ...h => 0886-Fix-NPE-on-Boat-getStatus.patch} | 0 ...e-API.patch => 0887-Expand-Pose-API.patch} | 2 +- ...patch => 0888-More-DragonBattle-API.patch} | 0 ...tch => 0889-Add-PlayerPickItemEvent.patch} | 2 +- ...=> 0890-Allow-trident-custom-damage.patch} | 0 ...1-Expose-hand-in-BlockCanBuildEvent.patch} | 0 ...-nearest-structure-border-iteration.patch} | 0 ...Implement-OfflinePlayer-isConnected.patch} | 2 +- ....patch => 0894-Fix-inventory-desync.patch} | 2 +- ...titleOverride-to-InventoryOpenEvent.patch} | 2 +- ...96-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} | 2 +- ...ix-silent-equipment-change-for-mobs.patch} | 2 +- ...h => 0903-Fix-spigot-s-Forced-Stats.patch} | 0 ...ing-InventoryHolders-to-inventories.patch} | 0 ...entities-in-chunks-that-are-positio.patch} | 0 ...sing-logs-for-log-ips-config-option.patch} | 0 ...n-on-UpgradeData.BlockFixers-class-.patch} | 0 ...-AdvancementProgress-getDateAwarded.patch} | 0 ...idebar-objectives-not-being-cleared.patch} | 0 ...x-missing-map-initialize-event-call.patch} | 0 ...a-when-attaching-firework-to-entity.patch} | 0 ...12-Fix-UnsafeValues-loadAdvancement.patch} | 0 ...> 0913-Add-player-idle-duration-API.patch} | 0 ...-if-we-can-see-non-visible-entities.patch} | 0 ...NPE-in-SculkBloomEvent-world-access.patch} | 0 ...tack-for-Player-sendEquipmentChange.patch} | 2 +- ...Ints.patch => 0917-Optimize-VarInts.patch} | 0 ...e-collision-shape-of-a-block-before.patch} | 0 ...redicate-for-blocks-when-raytracing.patch} | 0 ...em-packets-with-collector-as-source.patch} | 0 ... => 0921-Expand-LingeringPotion-API.patch} | 0 ...ngEffect-powers-lightning-rods-and-.patch} | 0 ...h-event-for-all-player-interactions.patch} | 0 ...everal-issues-with-EntityBreedEvent.patch} | 0 ...925-Add-UUID-attribute-modifier-API.patch} | 0 ...-event-call-for-entity-teleport-API.patch} | 0 ...y-create-LootContext-for-criterions.patch} | 0 ...-t-fire-sync-events-during-worldgen.patch} | 4 +- ...tch => 0929-Add-Structure-check-API.patch} | 2 +- ...-getAttributeModifier-duplication-c.patch} | 4 +- ...store-vanilla-entity-drops-behavior.patch} | 6 +- ...-Dont-resend-blocks-on-interactions.patch} | 2 +- ...tch => 0933-add-more-scoreboard-API.patch} | 0 ...stry.patch => 0934-Improve-Registry.patch} | 0 ...on-null-loc-for-EntityTeleportEvent.patch} | 0 ...h => 0936-Add-experience-points-API.patch} | 4 +- ...h => 0937-Add-drops-to-shear-events.patch} | 4 +- ...> 0938-Add-PlayerShieldDisableEvent.patch} | 2 +- ...ate-ResourceLocation-in-NBT-reading.patch} | 6 +- ...-experience-dropping-on-block-break.patch} | 0 ...> 0941-Fixup-NamespacedKey-handling.patch} | 0 ...42-Expose-LootTable-of-DecoratedPot.patch} | 0 ...location-of-Vec3D-by-entity-tracker.patch} | 0 ...rTradeEvent-and-PlayerPurchaseEvent.patch} | 0 ...h => 0945-Add-ShulkerDuplicateEvent.patch} | 0 ...dd-api-for-spawn-egg-texture-colors.patch} | 0 ... => 0947-Add-Lifecycle-Event-system.patch} | 0 ...patch => 0948-ItemStack-Tooltip-API.patch} | 0 ...Snapshot-includeLightData-parameter.patch} | 0 ...PI.patch => 0950-Add-FluidState-API.patch} | 2 +- ...patch => 0951-add-number-format-api.patch} | 0 ...patch => 0952-improve-BanList-types.patch} | 0 ...I.patch => 0953-Expanded-Hopper-API.patch} | 0 ...4-Add-BlockBreakProgressUpdateEvent.patch} | 0 ...=> 0955-Deprecate-ItemStack-setType.patch} | 0 ...ch => 0956-Add-CartographyItemEvent.patch} | 4 +- ...aid-API.patch => 0957-More-Raid-API.patch} | 0 ...ng-message-for-initial-server-start.patch} | 4 +- ...-Configurable-max-block-fluid-ticks.patch} | 0 ...=> 0960-Fix-bees-aging-inside-hives.patch} | 0 ...1-Disable-memory-reserve-allocating.patch} | 0 ...ByEntityEvent-for-unowned-wither-sk.patch} | 0 ....patch => 0963-Fix-DamageSource-API.patch} | 4 +- ...nvalid-block-entity-during-world-ge.patch} | 0 ...ackOverflowError-for-some-dispenses.patch} | 0 ...=> 0966-Improve-tag-parser-handling.patch} | 2 +- ...s.patch => 0967-Item-Mutation-Fixes.patch} | 0 ...-Per-world-ticks-per-spawn-settings.patch} | 0 ...e-changed-item-from-dispense-events.patch} | 0 ...> 0970-Rewrite-dataconverter-system.patch} | 2 +- ...=> 0971-Suspicious-Effect-Entry-API.patch} | 0 ...eck-if-itemstack-is-stackable-first.patch} | 0 ...73-disable-forced-empty-world-ticks.patch} | 0 ...5-Starlight.patch => 0974-Starlight.patch} | 4 +- ....patch => 0975-Rewrite-chunk-system.patch} | 0 ...incremental-chunk-and-player-saving.patch} | 4 +- ...dBounds-and-getBlockState-for-inlin.patch} | 0 ...tem-frames-performance-and-bug-fixe.patch} | 2 +- ...ing-for-EntityLiving-hasLineOfSight.patch} | 0 ...Manager-and-add-advanced-packet-sup.patch} | 0 ...81-Allow-Saving-of-Oversized-Chunks.patch} | 0 ...82-Fix-World-isChunkGenerated-calls.patch} | 0 ...983-Flat-bedrock-generator-settings.patch} | 0 ...=> 0984-Entity-Activation-Range-2.0.patch} | 6 +- ...0985-Optional-per-player-mob-spawns.patch} | 2 +- ...7-Anti-Xray.patch => 0986-Anti-Xray.patch} | 0 ...g-PreCreatureSpawnEvent-with-per-pl.patch} | 4 +- ...timize-Collision-to-not-load-chunks.patch} | 2 +- ...alSelector-Goal.Flag-Set-operations.patch} | 0 ...90-Entity-load-save-limit-per-chunk.patch} | 0 ...h => 0991-Improved-Watchdog-Support.patch} | 6 +- ...> 0992-Optimize-Voxel-Shape-Merging.patch} | 0 ...nd-End-Portal-Frames-from-being-des.patch} | 2 +- ...ance-map-to-optimise-entity-tracker.patch} | 2 +- ...Optimize-Bit-Operations-by-inlining.patch} | 0 ...> 0996-Remove-streams-from-hot-code.patch} | 0 ...-Eigencraft-redstone-implementation.patch} | 0 ...er-Remove-Streams-Optimized-collect.patch} | 0 ...-Improve-boat-collision-performance.patch} | 0 ...=> 1000-Optimise-general-POI-access.patch} | 0 ...ementation-for-blockstate-state-loo.patch} | 0 ...> 1002-Execute-chunk-tasks-mid-tick.patch} | 4 +- ... 1003-Optimise-random-block-ticking.patch} | 0 ...ulate-regionfile-header-if-it-is-co.patch} | 0 ...city-compression-and-cipher-natives.patch} | 0 ...-more-information-in-watchdog-dumps.patch} | 2 +- ...tch => 1007-Collision-optimisations.patch} | 2 +- ...n-checking-in-player-move-packet-ha.patch} | 12 +- ...e-disarming-not-working-as-intended.patch} | 0 ...-type-tags-suggestions-in-selectors.patch} | 2 +- ...ate-Current-redstone-implementation.patch} | 0 ...12-optimize-dirt-and-snow-spreading.patch} | 0 ...ch => 1013-Properly-resend-entities.patch} | 6 +- ...pers.patch => 1014-Optimize-Hoppers.patch} | 91 ++++++---- ...-Improve-performance-of-mass-crafts.patch} | 2 +- ...> 1016-Actually-optimise-explosions.patch} | 2 +- ... 1017-Optimise-chunk-tick-iteration.patch} | 2 +- ...atch => 1018-Lag-compensation-ticks.patch} | 2 +- ...19-Optimise-nearby-player-retrieval.patch} | 0 ... 1020-Distance-manager-tick-timings.patch} | 0 ...-Oversized-block-entities-in-chunks.patch} | 0 ...packets-for-hard-colliding-entities.patch} | 0 ...> 1023-API-for-checking-sent-chunks.patch} | 0 ...-for-mobs-immune-to-default-effects.patch} | 0 ... => 1025-Deep-clone-nbt-tags-in-PDC.patch} | 4 +- ...026-Support-old-UUID-format-for-NBT.patch} | 0 ...27-Fix-shield-disable-inconsistency.patch} | 0 ...ch => 1028-Write-SavedData-IO-async.patch} | 2 +- ...removed-data-components-in-ItemMeta.patch} | 4 +- ...-experimental-improved-give-command.patch} | 0 ...-Large-Packets-disconnecting-client.patch} | 0 ...emFlags.patch => 1032-Fix-ItemFlags.patch} | 20 +-- ...et-damage-reduction-inconsistencies.patch} | 2 +- ...-handling-of-LivingEntity-actuallyH.patch} | 0 ...e-checking-handled-tags-in-itemmeta.patch} | 14 +- ...atch => 1036-General-ItemMeta-fixes.patch} | 161 +++++++----------- ...37-Expose-hasColor-to-leather-armor.patch} | 0 ...-API-to-get-player-ha-proxy-address.patch} | 2 +- ....patch => 1039-More-Chest-Block-API.patch} | 0 ...ta-component-type-on-encoding-error.patch} | 0 ...r-desync-when-new-players-are-added.patch} | 0 ...=> 1042-Brigadier-based-command-API.patch} | 8 +- ... => 1043-Fix-issues-with-Recipe-API.patch} | 0 ...44-Fix-equipment-slot-and-group-API.patch} | 6 +- ...lugin-to-use-Paper-PluginLoader-API.patch} | 0 ...versized-item-data-in-equipment-and.patch} | 4 +- ...nt-NPE-if-hooked-entity-was-cleared.patch} | 0 ...ng-BlockPlaceEvent-calling-onRemove.patch} | 2 +- ...049-Add-missing-fishing-event-state.patch} | 0 ...ate-InvAction-HOTBAR_MOVE_AND_READD.patch} | 4 +- ...nnect-packet-in-phases-where-it-doe.patch} | 0 ...tch => 1052-Adopt-MaterialRerouting.patch} | 0 ...h => 1053-Fix-Player-setBlockUpdate.patch} | 0 ...emoving-recipes-from-RecipeIterator.patch} | 0 ...mage-tick-when-blocking-with-shield.patch} | 0 work/CraftBukkit | 2 +- work/Spigot | 2 +- 517 files changed, 474 insertions(+), 510 deletions(-) delete mode 100644 patches/server/0570-Ensure-disconnect-for-book-edit-is-called-on-main.patch rename patches/server/{0571-Fix-return-value-of-Block-applyBoneMeal-always-being.patch => 0570-Fix-return-value-of-Block-applyBoneMeal-always-being.patch} (100%) rename patches/server/{0572-Use-getChunkIfLoadedImmediately-in-places.patch => 0571-Use-getChunkIfLoadedImmediately-in-places.patch} (100%) rename patches/server/{0573-Fix-commands-from-signs-not-firing-command-events.patch => 0572-Fix-commands-from-signs-not-firing-command-events.patch} (100%) rename patches/server/{0574-Add-PlayerArmSwingEvent.patch => 0573-Add-PlayerArmSwingEvent.patch} (88%) rename patches/server/{0575-Fix-kick-event-leave-message-not-being-sent.patch => 0574-Fix-kick-event-leave-message-not-being-sent.patch} (96%) rename patches/server/{0576-Don-t-apply-cramming-damage-to-players.patch => 0575-Don-t-apply-cramming-damage-to-players.patch} (100%) rename patches/server/{0577-Rate-options-and-timings-for-sensors-and-behaviors.patch => 0576-Rate-options-and-timings-for-sensors-and-behaviors.patch} (100%) rename patches/server/{0578-Add-missing-forceDrop-toggles.patch => 0577-Add-missing-forceDrop-toggles.patch} (100%) rename patches/server/{0579-Stinger-API.patch => 0578-Stinger-API.patch} (100%) rename patches/server/{0580-Add-System.out-err-catcher.patch => 0579-Add-System.out-err-catcher.patch} (100%) rename patches/server/{0581-Prevent-AFK-kick-while-watching-end-credits.patch => 0580-Prevent-AFK-kick-while-watching-end-credits.patch} (93%) rename patches/server/{0582-Allow-skipping-writing-of-comments-to-server.propert.patch => 0581-Allow-skipping-writing-of-comments-to-server.propert.patch} (100%) rename patches/server/{0583-Add-PlayerSetSpawnEvent.patch => 0582-Add-PlayerSetSpawnEvent.patch} (99%) rename patches/server/{0584-Make-hoppers-respect-inventory-max-stack-size.patch => 0583-Make-hoppers-respect-inventory-max-stack-size.patch} (91%) rename patches/server/{0585-Optimize-entity-tracker-passenger-checks.patch => 0584-Optimize-entity-tracker-passenger-checks.patch} (100%) rename patches/server/{0586-Config-option-for-Piglins-guarding-chests.patch => 0585-Config-option-for-Piglins-guarding-chests.patch} (100%) rename patches/server/{0587-Add-EntityDamageItemEvent.patch => 0586-Add-EntityDamageItemEvent.patch} (97%) rename patches/server/{0588-Optimize-indirect-passenger-iteration.patch => 0587-Optimize-indirect-passenger-iteration.patch} (96%) rename patches/server/{0589-Configurable-item-frame-map-cursor-update-interval.patch => 0588-Configurable-item-frame-map-cursor-update-interval.patch} (100%) rename patches/server/{0590-Clear-bucket-NBT-after-dispense.patch => 0589-Clear-bucket-NBT-after-dispense.patch} (100%) rename patches/server/{0591-Change-EnderEye-target-without-changing-other-things.patch => 0590-Change-EnderEye-target-without-changing-other-things.patch} (100%) rename patches/server/{0592-Add-BlockBreakBlockEvent.patch => 0591-Add-BlockBreakBlockEvent.patch} (100%) rename patches/server/{0593-Option-to-prevent-data-components-copy-in-smithing-r.patch => 0592-Option-to-prevent-data-components-copy-in-smithing-r.patch} (100%) rename patches/server/{0594-More-CommandBlock-API.patch => 0593-More-CommandBlock-API.patch} (100%) rename patches/server/{0595-Add-missing-team-sidebar-display-slots.patch => 0594-Add-missing-team-sidebar-display-slots.patch} (100%) rename patches/server/{0596-Add-back-EntityPortalExitEvent.patch => 0595-Add-back-EntityPortalExitEvent.patch} (97%) rename patches/server/{0597-Add-methods-to-find-targets-for-lightning-strikes.patch => 0596-Add-methods-to-find-targets-for-lightning-strikes.patch} (100%) rename patches/server/{0598-Get-entity-default-attributes.patch => 0597-Get-entity-default-attributes.patch} (100%) rename patches/server/{0599-Left-handed-API.patch => 0598-Left-handed-API.patch} (100%) rename patches/server/{0600-Add-more-advancement-API.patch => 0599-Add-more-advancement-API.patch} (100%) rename patches/server/{0601-Add-ItemFactory-getSpawnEgg-API.patch => 0600-Add-ItemFactory-getSpawnEgg-API.patch} (100%) rename patches/server/{0602-Add-critical-damage-API.patch => 0601-Add-critical-damage-API.patch} (98%) rename patches/server/{0603-Fix-issues-with-mob-conversion.patch => 0602-Fix-issues-with-mob-conversion.patch} (100%) rename patches/server/{0604-Add-hasCollision-methods-to-various-places.patch => 0603-Add-hasCollision-methods-to-various-places.patch} (100%) rename patches/server/{0605-Goat-ram-API.patch => 0604-Goat-ram-API.patch} (100%) rename patches/server/{0606-Add-API-for-resetting-a-single-score.patch => 0605-Add-API-for-resetting-a-single-score.patch} (100%) rename patches/server/{0607-Add-Raw-Byte-Entity-Serialization.patch => 0606-Add-Raw-Byte-Entity-Serialization.patch} (100%) rename patches/server/{0608-Vanilla-command-permission-fixes.patch => 0607-Vanilla-command-permission-fixes.patch} (97%) rename patches/server/{0609-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch => 0608-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch} (97%) rename patches/server/{0610-Fix-GameProfileCache-concurrency.patch => 0609-Fix-GameProfileCache-concurrency.patch} (100%) rename patches/server/{0611-Improve-and-expand-AsyncCatcher.patch => 0610-Improve-and-expand-AsyncCatcher.patch} (98%) rename patches/server/{0612-Add-paper-mobcaps-and-paper-playermobcaps.patch => 0611-Add-paper-mobcaps-and-paper-playermobcaps.patch} (99%) rename patches/server/{0613-Sanitize-ResourceLocation-error-logging.patch => 0612-Sanitize-ResourceLocation-error-logging.patch} (100%) rename patches/server/{0614-Manually-inline-methods-in-BlockPosition.patch => 0613-Manually-inline-methods-in-BlockPosition.patch} (100%) rename patches/server/{0615-Name-craft-scheduler-threads-according-to-the-plugin.patch => 0614-Name-craft-scheduler-threads-according-to-the-plugin.patch} (100%) rename patches/server/{0616-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch => 0615-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch} (100%) rename patches/server/{0617-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch => 0616-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch} (100%) rename patches/server/{0618-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch => 0617-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch} (100%) rename patches/server/{0619-Time-scoreboard-search.patch => 0618-Time-scoreboard-search.patch} (100%) rename patches/server/{0620-Oprimise-map-impl-for-tracked-players.patch => 0619-Oprimise-map-impl-for-tracked-players.patch} (100%) rename patches/server/{0621-Add-missing-InventoryType.patch => 0620-Add-missing-InventoryType.patch} (100%) rename patches/server/{0622-Optimise-BlockSoil-nearby-water-lookup.patch => 0621-Optimise-BlockSoil-nearby-water-lookup.patch} (100%) rename patches/server/{0623-Fix-merchant-inventory-not-closing-on-entity-removal.patch => 0622-Fix-merchant-inventory-not-closing-on-entity-removal.patch} (100%) rename patches/server/{0624-Check-requirement-before-suggesting-root-nodes.patch => 0623-Check-requirement-before-suggesting-root-nodes.patch} (100%) rename patches/server/{0625-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch => 0624-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch} (92%) rename patches/server/{0626-Add-packet-limiter-config.patch => 0625-Add-packet-limiter-config.patch} (100%) rename patches/server/{0627-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch => 0626-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch} (100%) rename patches/server/{0628-Ensure-valid-vehicle-status.patch => 0627-Ensure-valid-vehicle-status.patch} (100%) rename patches/server/{0629-Prevent-softlocked-end-exit-portal-generation.patch => 0628-Prevent-softlocked-end-exit-portal-generation.patch} (100%) rename patches/server/{0630-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch => 0629-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch} (100%) rename patches/server/{0631-Don-t-log-debug-logging-being-disabled.patch => 0630-Don-t-log-debug-logging-being-disabled.patch} (100%) rename patches/server/{0632-fix-various-menus-with-empty-level-accesses.patch => 0631-fix-various-menus-with-empty-level-accesses.patch} (100%) rename patches/server/{0633-Preserve-overstacked-loot.patch => 0632-Preserve-overstacked-loot.patch} (100%) rename patches/server/{0634-Update-head-rotation-in-missing-places.patch => 0633-Update-head-rotation-in-missing-places.patch} (93%) rename patches/server/{0635-prevent-unintended-light-block-manipulation.patch => 0634-prevent-unintended-light-block-manipulation.patch} (100%) rename patches/server/{0636-Fix-CraftCriteria-defaults-map.patch => 0635-Fix-CraftCriteria-defaults-map.patch} (100%) rename patches/server/{0637-Fix-upstreams-block-state-factories.patch => 0636-Fix-upstreams-block-state-factories.patch} (99%) rename patches/server/{0638-Configurable-feature-seeds.patch => 0637-Configurable-feature-seeds.patch} (100%) rename patches/server/{0639-Add-root-admin-user-detection.patch => 0638-Add-root-admin-user-detection.patch} (97%) rename patches/server/{0640-don-t-attempt-to-teleport-dead-entities.patch => 0639-don-t-attempt-to-teleport-dead-entities.patch} (91%) rename patches/server/{0641-Prevent-excessive-velocity-through-repeated-crits.patch => 0640-Prevent-excessive-velocity-through-repeated-crits.patch} (100%) rename patches/server/{0642-Remove-client-side-code-using-deprecated-for-removal.patch => 0641-Remove-client-side-code-using-deprecated-for-removal.patch} (100%) rename patches/server/{0643-Fix-Spigot-growth-modifiers.patch => 0642-Fix-Spigot-growth-modifiers.patch} (98%) rename patches/server/{0644-Prevent-ContainerOpenersCounter-openCount-from-going.patch => 0643-Prevent-ContainerOpenersCounter-openCount-from-going.patch} (100%) rename patches/server/{0645-Add-PlayerItemFrameChangeEvent.patch => 0644-Add-PlayerItemFrameChangeEvent.patch} (100%) rename patches/server/{0646-Optimize-HashMapPalette.patch => 0645-Optimize-HashMapPalette.patch} (100%) rename patches/server/{0647-Allow-delegation-to-vanilla-chunk-gen.patch => 0646-Allow-delegation-to-vanilla-chunk-gen.patch} (100%) rename patches/server/{0648-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch => 0647-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch} (100%) rename patches/server/{0649-Add-more-Campfire-API.patch => 0648-Add-more-Campfire-API.patch} (100%) rename patches/server/{0650-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch => 0649-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch} (100%) rename patches/server/{0651-Forward-CraftEntity-in-teleport-command.patch => 0650-Forward-CraftEntity-in-teleport-command.patch} (95%) rename patches/server/{0652-Improve-scoreboard-entries.patch => 0651-Improve-scoreboard-entries.patch} (100%) rename patches/server/{0653-Entity-powdered-snow-API.patch => 0652-Entity-powdered-snow-API.patch} (100%) rename patches/server/{0654-Add-API-for-item-entity-health.patch => 0653-Add-API-for-item-entity-health.patch} (100%) rename patches/server/{0655-Configurable-max-block-light-for-monster-spawning.patch => 0654-Configurable-max-block-light-for-monster-spawning.patch} (100%) rename patches/server/{0656-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch => 0655-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch} (100%) rename patches/server/{0657-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch => 0656-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch} (100%) rename patches/server/{0658-Bucketable-API.patch => 0657-Bucketable-API.patch} (100%) rename patches/server/{0659-Validate-usernames.patch => 0658-Validate-usernames.patch} (100%) rename patches/server/{0660-Make-water-animal-spawn-height-configurable.patch => 0659-Make-water-animal-spawn-height-configurable.patch} (100%) rename patches/server/{0661-Expose-vanilla-BiomeProvider-from-WorldInfo.patch => 0660-Expose-vanilla-BiomeProvider-from-WorldInfo.patch} (100%) rename patches/server/{0662-Add-config-option-for-worlds-affected-by-time-cmd.patch => 0661-Add-config-option-for-worlds-affected-by-time-cmd.patch} (100%) rename patches/server/{0663-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch => 0662-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch} (100%) rename patches/server/{0664-Multiple-Entries-with-Scoreboards.patch => 0663-Multiple-Entries-with-Scoreboards.patch} (100%) rename patches/server/{0665-Reset-placed-block-on-exception.patch => 0664-Reset-placed-block-on-exception.patch} (100%) rename patches/server/{0666-Add-configurable-height-for-slime-spawn.patch => 0665-Add-configurable-height-for-slime-spawn.patch} (100%) rename patches/server/{0667-Fix-xp-reward-for-baby-zombies.patch => 0666-Fix-xp-reward-for-baby-zombies.patch} (100%) rename patches/server/{0668-Multi-Block-Change-API-Implementation.patch => 0667-Multi-Block-Change-API-Implementation.patch} (97%) rename patches/server/{0669-Fix-NotePlayEvent.patch => 0668-Fix-NotePlayEvent.patch} (100%) rename patches/server/{0670-Freeze-Tick-Lock-API.patch => 0669-Freeze-Tick-Lock-API.patch} (100%) rename patches/server/{0671-More-PotionEffectType-API.patch => 0670-More-PotionEffectType-API.patch} (100%) rename patches/server/{0672-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch => 0671-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch} (100%) rename patches/server/{0673-API-for-creating-command-sender-which-forwards-feedb.patch => 0672-API-for-creating-command-sender-which-forwards-feedb.patch} (100%) rename patches/server/{0674-Add-missing-structure-set-seed-configs.patch => 0673-Add-missing-structure-set-seed-configs.patch} (99%) rename patches/server/{0675-Implement-regenerateChunk.patch => 0674-Implement-regenerateChunk.patch} (98%) rename patches/server/{0676-Fix-cancelled-powdered-snow-bucket-placement.patch => 0675-Fix-cancelled-powdered-snow-bucket-placement.patch} (95%) rename patches/server/{0677-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch => 0676-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch} (100%) rename patches/server/{0678-Add-GameEvent-tags.patch => 0677-Add-GameEvent-tags.patch} (100%) rename patches/server/{0679-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch => 0678-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch} (94%) rename patches/server/{0680-Furnace-RecipesUsed-API.patch => 0679-Furnace-RecipesUsed-API.patch} (100%) rename patches/server/{0681-Configurable-sculk-sensor-listener-range.patch => 0680-Configurable-sculk-sensor-listener-range.patch} (100%) rename patches/server/{0682-Add-missing-block-data-mins-and-maxes.patch => 0681-Add-missing-block-data-mins-and-maxes.patch} (100%) rename patches/server/{0683-Option-to-have-default-CustomSpawners-in-custom-worl.patch => 0682-Option-to-have-default-CustomSpawners-in-custom-worl.patch} (96%) rename patches/server/{0684-Put-world-into-worldlist-before-initing-the-world.patch => 0683-Put-world-into-worldlist-before-initing-the-world.patch} (100%) rename patches/server/{0685-Fix-Entity-Position-Desync.patch => 0684-Fix-Entity-Position-Desync.patch} (100%) rename patches/server/{0686-Custom-Potion-Mixes.patch => 0685-Custom-Potion-Mixes.patch} (100%) rename patches/server/{0687-Force-close-world-loading-screen.patch => 0686-Force-close-world-loading-screen.patch} (100%) rename patches/server/{0688-Fix-falling-block-spawn-methods.patch => 0687-Fix-falling-block-spawn-methods.patch} (100%) rename patches/server/{0689-Expose-furnace-minecart-push-values.patch => 0688-Expose-furnace-minecart-push-values.patch} (100%) rename patches/server/{0690-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch => 0689-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch} (95%) rename patches/server/{0691-More-Projectile-API.patch => 0690-More-Projectile-API.patch} (100%) rename patches/server/{0692-Fix-swamp-hut-cat-generation-deadlock.patch => 0691-Fix-swamp-hut-cat-generation-deadlock.patch} (100%) rename patches/server/{0693-Don-t-allow-vehicle-movement-from-players-while-tele.patch => 0692-Don-t-allow-vehicle-movement-from-players-while-tele.patch} (94%) rename patches/server/{0694-Implement-getComputedBiome-API.patch => 0693-Implement-getComputedBiome-API.patch} (96%) rename patches/server/{0695-Make-some-itemstacks-nonnull.patch => 0694-Make-some-itemstacks-nonnull.patch} (100%) rename patches/server/{0696-Implement-enchantWithLevels-API.patch => 0695-Implement-enchantWithLevels-API.patch} (100%) rename patches/server/{0697-Fix-saving-in-unloadWorld.patch => 0696-Fix-saving-in-unloadWorld.patch} (100%) rename patches/server/{0698-Buffer-OOB-setBlock-calls.patch => 0697-Buffer-OOB-setBlock-calls.patch} (100%) rename patches/server/{0699-Add-TameableDeathMessageEvent.patch => 0698-Add-TameableDeathMessageEvent.patch} (100%) rename patches/server/{0700-Fix-new-block-data-for-EntityChangeBlockEvent.patch => 0699-Fix-new-block-data-for-EntityChangeBlockEvent.patch} (99%) rename patches/server/{0701-fix-player-loottables-running-when-mob-loot-gamerule.patch => 0700-fix-player-loottables-running-when-mob-loot-gamerule.patch} (100%) rename patches/server/{0702-Ensure-entity-passenger-world-matches-ridden-entity.patch => 0701-Ensure-entity-passenger-world-matches-ridden-entity.patch} (91%) rename patches/server/{0703-cache-resource-keys.patch => 0702-cache-resource-keys.patch} (100%) rename patches/server/{0704-Allow-changing-the-EnderDragon-podium.patch => 0703-Allow-changing-the-EnderDragon-podium.patch} (100%) rename patches/server/{0705-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch => 0704-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch} (100%) rename patches/server/{0706-Prevent-tile-entity-copies-loading-chunks.patch => 0705-Prevent-tile-entity-copies-loading-chunks.patch} (90%) rename patches/server/{0707-Use-username-instead-of-display-name-in-PlayerList-g.patch => 0706-Use-username-instead-of-display-name-in-PlayerList-g.patch} (100%) rename patches/server/{0708-Expand-PlayerItemDamageEvent.patch => 0707-Expand-PlayerItemDamageEvent.patch} (93%) rename patches/server/{0709-WorldCreator-keepSpawnLoaded.patch => 0708-WorldCreator-keepSpawnLoaded.patch} (100%) rename patches/server/{0710-Fix-CME-in-CraftPersistentDataTypeRegistry.patch => 0709-Fix-CME-in-CraftPersistentDataTypeRegistry.patch} (100%) rename patches/server/{0711-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch => 0710-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch} (100%) rename patches/server/{0712-Add-EntityDyeEvent-and-CollarColorable-interface.patch => 0711-Add-EntityDyeEvent-and-CollarColorable-interface.patch} (100%) rename patches/server/{0713-Fire-CauldronLevelChange-on-initial-fill.patch => 0712-Fire-CauldronLevelChange-on-initial-fill.patch} (100%) rename patches/server/{0714-fix-powder-snow-cauldrons-not-turning-to-water.patch => 0713-fix-powder-snow-cauldrons-not-turning-to-water.patch} (100%) rename patches/server/{0715-Add-PlayerStopUsingItemEvent.patch => 0714-Add-PlayerStopUsingItemEvent.patch} (100%) rename patches/server/{0716-Don-t-tick-markers.patch => 0715-Don-t-tick-markers.patch} (95%) rename patches/server/{0717-Expand-FallingBlock-API.patch => 0716-Expand-FallingBlock-API.patch} (100%) rename patches/server/{0718-Add-support-for-Proxy-Protocol.patch => 0717-Add-support-for-Proxy-Protocol.patch} (100%) rename patches/server/{0719-Fix-OfflinePlayer-getBedSpawnLocation.patch => 0718-Fix-OfflinePlayer-getBedSpawnLocation.patch} (100%) rename patches/server/{0720-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch => 0719-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch} (100%) rename patches/server/{0721-Sanitize-sent-BlockEntity-NBT.patch => 0720-Sanitize-sent-BlockEntity-NBT.patch} (97%) rename patches/server/{0722-Disable-component-selector-resolving-in-books-by-def.patch => 0721-Disable-component-selector-resolving-in-books-by-def.patch} (100%) rename patches/server/{0723-Prevent-entity-loading-causing-async-lookups.patch => 0722-Prevent-entity-loading-causing-async-lookups.patch} (97%) rename patches/server/{0724-Throw-exception-on-world-create-while-being-ticked.patch => 0723-Throw-exception-on-world-create-while-being-ticked.patch} (100%) rename patches/server/{0725-Dont-resent-entity-on-art-update.patch => 0724-Dont-resent-entity-on-art-update.patch} (100%) rename patches/server/{0726-Add-WardenAngerChangeEvent.patch => 0725-Add-WardenAngerChangeEvent.patch} (100%) rename patches/server/{0727-Add-option-for-strict-advancement-dimension-checks.patch => 0726-Add-option-for-strict-advancement-dimension-checks.patch} (100%) rename patches/server/{0728-Add-missing-important-BlockStateListPopulator-method.patch => 0727-Add-missing-important-BlockStateListPopulator-method.patch} (100%) rename patches/server/{0729-Nameable-Banner-API.patch => 0728-Nameable-Banner-API.patch} (100%) rename patches/server/{0730-Don-t-broadcast-messages-to-command-blocks.patch => 0729-Don-t-broadcast-messages-to-command-blocks.patch} (100%) rename patches/server/{0731-Prevent-empty-items-from-being-added-to-world.patch => 0730-Prevent-empty-items-from-being-added-to-world.patch} (100%) rename patches/server/{0732-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch => 0731-Fix-CCE-for-SplashPotion-and-LingeringPotion-spawnin.patch} (100%) rename patches/server/{0733-Add-Player-getFishHook.patch => 0732-Add-Player-getFishHook.patch} (100%) rename patches/server/{0734-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch => 0733-Do-not-sync-load-chunk-for-dynamic-game-event-listen.patch} (100%) rename patches/server/{0735-Add-various-missing-EntityDropItemEvent-calls.patch => 0734-Add-various-missing-EntityDropItemEvent-calls.patch} (98%) rename patches/server/{0736-Fix-Bee-flower-NPE.patch => 0735-Fix-Bee-flower-NPE.patch} (100%) rename patches/server/{0737-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch => 0736-Fix-Spigot-Config-not-using-commands.spam-exclusions.patch} (87%) rename patches/server/{0738-More-Teleport-API.patch => 0737-More-Teleport-API.patch} (98%) rename patches/server/{0739-Add-EntityPortalReadyEvent.patch => 0738-Add-EntityPortalReadyEvent.patch} (95%) rename patches/server/{0740-Don-t-use-level-random-in-entity-constructors.patch => 0739-Don-t-use-level-random-in-entity-constructors.patch} (100%) rename patches/server/{0741-Send-block-entities-after-destroy-prediction.patch => 0740-Send-block-entities-after-destroy-prediction.patch} (97%) rename patches/server/{0742-Warn-on-plugins-accessing-faraway-chunks.patch => 0741-Warn-on-plugins-accessing-faraway-chunks.patch} (100%) rename patches/server/{0743-Custom-Chat-Completion-Suggestions-API.patch => 0742-Custom-Chat-Completion-Suggestions-API.patch} (94%) rename patches/server/{0744-Add-and-fix-missing-BlockFadeEvents.patch => 0743-Add-and-fix-missing-BlockFadeEvents.patch} (100%) rename patches/server/{0745-Collision-API.patch => 0744-Collision-API.patch} (100%) rename patches/server/{0746-Fix-suggest-command-message-for-brigadier-syntax-exc.patch => 0745-Fix-suggest-command-message-for-brigadier-syntax-exc.patch} (92%) rename patches/server/{0747-Block-Ticking-API.patch => 0746-Block-Ticking-API.patch} (100%) rename patches/server/{0748-Add-Velocity-IP-Forwarding-Support.patch => 0747-Add-Velocity-IP-Forwarding-Support.patch} (99%) rename patches/server/{0749-Add-NamespacedKey-biome-methods.patch => 0748-Add-NamespacedKey-biome-methods.patch} (100%) rename patches/server/{0750-Fix-plugin-loggers-on-server-shutdown.patch => 0749-Fix-plugin-loggers-on-server-shutdown.patch} (92%) rename patches/server/{0751-Stop-large-look-changes-from-crashing-the-server.patch => 0750-Stop-large-look-changes-from-crashing-the-server.patch} (100%) rename patches/server/{0752-Fire-EntityChangeBlockEvent-in-more-places.patch => 0751-Fire-EntityChangeBlockEvent-in-more-places.patch} (100%) rename patches/server/{0753-Missing-eating-regain-reason.patch => 0752-Missing-eating-regain-reason.patch} (100%) rename patches/server/{0754-Missing-effect-cause.patch => 0753-Missing-effect-cause.patch} (100%) rename patches/server/{0755-Added-byte-array-serialization-deserialization-for-P.patch => 0754-Added-byte-array-serialization-deserialization-for-P.patch} (100%) rename patches/server/{0756-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch => 0755-Add-a-consumer-parameter-to-ProjectileSource-launchP.patch} (100%) rename patches/server/{0757-Call-BlockPhysicsEvent-more-often.patch => 0756-Call-BlockPhysicsEvent-more-often.patch} (100%) rename patches/server/{0758-Configurable-chat-thread-limit.patch => 0757-Configurable-chat-thread-limit.patch} (100%) rename patches/server/{0759-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch => 0758-Mitigate-effects-of-WorldCreator-keepSpawnLoaded-ret.patch} (100%) rename patches/server/{0760-fix-Jigsaw-block-kicking-user.patch => 0759-fix-Jigsaw-block-kicking-user.patch} (100%) rename patches/server/{0761-use-BlockFormEvent-for-mud-converting-into-clay.patch => 0760-use-BlockFormEvent-for-mud-converting-into-clay.patch} (100%) rename patches/server/{0762-Add-getDrops-to-BlockState.patch => 0761-Add-getDrops-to-BlockState.patch} (100%) rename patches/server/{0763-Fix-a-bunch-of-vanilla-bugs.patch => 0762-Fix-a-bunch-of-vanilla-bugs.patch} (100%) rename patches/server/{0764-Remove-unnecessary-onTrackingStart-during-navigation.patch => 0763-Remove-unnecessary-onTrackingStart-during-navigation.patch} (100%) rename patches/server/{0765-Fix-custom-piglin-loved-items.patch => 0764-Fix-custom-piglin-loved-items.patch} (100%) rename patches/server/{0766-EntityPickupItemEvent-fixes.patch => 0765-EntityPickupItemEvent-fixes.patch} (100%) rename patches/server/{0767-Correctly-handle-interactions-with-items-on-cooldown.patch => 0766-Correctly-handle-interactions-with-items-on-cooldown.patch} (97%) rename patches/server/{0768-Add-PlayerInventorySlotChangeEvent.patch => 0767-Add-PlayerInventorySlotChangeEvent.patch} (100%) rename patches/server/{0769-Elder-Guardian-appearance-API.patch => 0768-Elder-Guardian-appearance-API.patch} (100%) rename patches/server/{0770-Allow-changing-bed-s-occupied-property.patch => 0769-Allow-changing-bed-s-occupied-property.patch} (100%) rename patches/server/{0771-Add-entity-knockback-API.patch => 0770-Add-entity-knockback-API.patch} (100%) rename patches/server/{0772-Detect-headless-JREs.patch => 0771-Detect-headless-JREs.patch} (100%) rename patches/server/{0773-fix-entity-vehicle-collision-event-not-called.patch => 0772-fix-entity-vehicle-collision-event-not-called.patch} (100%) rename patches/server/{0774-Add-EntityToggleSitEvent.patch => 0773-Add-EntityToggleSitEvent.patch} (100%) rename patches/server/{0775-Add-fire-tick-delay-option.patch => 0774-Add-fire-tick-delay-option.patch} (100%) rename patches/server/{0776-Add-Moving-Piston-API.patch => 0775-Add-Moving-Piston-API.patch} (100%) rename patches/server/{0777-Ignore-impossible-spawn-tick.patch => 0776-Ignore-impossible-spawn-tick.patch} (100%) rename patches/server/{0778-Fix-EntityArgument-suggestion-permissions-to-align-w.patch => 0777-Fix-EntityArgument-suggestion-permissions-to-align-w.patch} (100%) rename patches/server/{0779-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch => 0778-Fix-EntityCombustEvent-cancellation-cant-fully-preve.patch} (95%) rename patches/server/{0780-Add-PrePlayerAttackEntityEvent.patch => 0779-Add-PrePlayerAttackEntityEvent.patch} (94%) rename patches/server/{0781-ensure-reset-EnderDragon-boss-event-name.patch => 0780-ensure-reset-EnderDragon-boss-event-name.patch} (100%) rename patches/server/{0782-fix-MC-252817-green-map-markers-do-not-disappear.patch => 0781-fix-MC-252817-green-map-markers-do-not-disappear.patch} (100%) rename patches/server/{0783-Add-Player-Warden-Warning-API.patch => 0782-Add-Player-Warden-Warning-API.patch} (100%) rename patches/server/{0784-More-vanilla-friendly-methods-to-update-trades.patch => 0783-More-vanilla-friendly-methods-to-update-trades.patch} (100%) rename patches/server/{0785-Add-paper-dumplisteners-command.patch => 0784-Add-paper-dumplisteners-command.patch} (98%) rename patches/server/{0786-check-global-player-list-where-appropriate.patch => 0785-check-global-player-list-where-appropriate.patch} (100%) rename patches/server/{0787-Fix-async-entity-add-due-to-fungus-trees.patch => 0786-Fix-async-entity-add-due-to-fungus-trees.patch} (100%) rename patches/server/{0788-ItemStack-damage-API.patch => 0787-ItemStack-damage-API.patch} (98%) rename patches/server/{0789-Friction-API.patch => 0788-Friction-API.patch} (98%) rename patches/server/{0790-Ability-to-control-player-s-insomnia-and-phantoms.patch => 0789-Ability-to-control-player-s-insomnia-and-phantoms.patch} (100%) rename patches/server/{0791-Fix-premature-player-kicks-on-shutdown.patch => 0790-Fix-premature-player-kicks-on-shutdown.patch} (97%) rename patches/server/{0792-Sync-offhand-slot-in-menus.patch => 0791-Sync-offhand-slot-in-menus.patch} (100%) rename patches/server/{0793-Player-Entity-Tracking-Events.patch => 0792-Player-Entity-Tracking-Events.patch} (96%) rename patches/server/{0794-Limit-pet-look-distance.patch => 0793-Limit-pet-look-distance.patch} (100%) rename patches/server/{0795-Fixes-and-additions-to-the-SpawnReason-API.patch => 0794-Fixes-and-additions-to-the-SpawnReason-API.patch} (100%) rename patches/server/{0796-fix-Instruments.patch => 0795-fix-Instruments.patch} (96%) rename patches/server/{0797-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch => 0796-Improve-inlining-for-some-hot-BlockBehavior-and-Flui.patch} (100%) rename patches/server/{0798-Fix-inconsistencies-in-dispense-events-regarding-sta.patch => 0797-Fix-inconsistencies-in-dispense-events-regarding-sta.patch} (100%) rename patches/server/{0799-Add-BlockLockCheckEvent.patch => 0798-Add-BlockLockCheckEvent.patch} (95%) rename patches/server/{0800-Add-Sneaking-API-for-Entities.patch => 0799-Add-Sneaking-API-for-Entities.patch} (100%) rename patches/server/{0801-Improve-logging-and-errors.patch => 0800-Improve-logging-and-errors.patch} (95%) rename patches/server/{0802-Improve-PortalEvents.patch => 0801-Improve-PortalEvents.patch} (93%) rename patches/server/{0803-Add-config-option-for-spider-worldborder-climbing.patch => 0802-Add-config-option-for-spider-worldborder-climbing.patch} (100%) rename patches/server/{0804-Add-missing-SpigotConfig-logCommands-check.patch => 0803-Add-missing-SpigotConfig-logCommands-check.patch} (89%) rename patches/server/{0805-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch => 0804-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch} (100%) rename patches/server/{0806-Flying-Fall-Damage.patch => 0805-Flying-Fall-Damage.patch} (92%) rename patches/server/{0807-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch => 0806-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch} (94%) rename patches/server/{0808-config-for-disabling-entity-tag-tags.patch => 0807-config-for-disabling-entity-tag-tags.patch} (100%) rename patches/server/{0809-Use-single-player-info-update-packet-on-join.patch => 0808-Use-single-player-info-update-packet-on-join.patch} (95%) rename patches/server/{0810-Correctly-shrink-items-during-EntityResurrectEvent.patch => 0809-Correctly-shrink-items-during-EntityResurrectEvent.patch} (95%) rename patches/server/{0811-Win-Screen-API.patch => 0810-Win-Screen-API.patch} (93%) rename patches/server/{0812-Remove-CraftItemStack-setAmount-null-assignment.patch => 0811-Remove-CraftItemStack-setAmount-null-assignment.patch} (93%) rename patches/server/{0813-Fix-force-opening-enchantment-tables.patch => 0812-Fix-force-opening-enchantment-tables.patch} (100%) rename patches/server/{0814-Add-Entity-Body-Yaw-API.patch => 0813-Add-Entity-Body-Yaw-API.patch} (95%) rename patches/server/{0815-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch => 0814-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch} (100%) rename patches/server/{0816-Add-EntityFertilizeEggEvent.patch => 0815-Add-EntityFertilizeEggEvent.patch} (100%) rename patches/server/{0817-Fix-HumanEntity-drop-not-updating-the-client-inv.patch => 0816-Fix-HumanEntity-drop-not-updating-the-client-inv.patch} (100%) rename patches/server/{0818-Add-CompostItemEvent-and-EntityCompostItemEvent.patch => 0817-Add-CompostItemEvent-and-EntityCompostItemEvent.patch} (100%) rename patches/server/{0819-Correctly-handle-ArmorStand-invisibility.patch => 0818-Correctly-handle-ArmorStand-invisibility.patch} (100%) rename patches/server/{0820-Fix-advancement-triggers-for-entity-damage.patch => 0819-Fix-advancement-triggers-for-entity-damage.patch} (100%) rename patches/server/{0821-Fix-text-display-error-on-spawn.patch => 0820-Fix-text-display-error-on-spawn.patch} (100%) rename patches/server/{0822-Fix-inventories-returning-null-Locations.patch => 0821-Fix-inventories-returning-null-Locations.patch} (100%) rename patches/server/{0823-Add-Shearable-API.patch => 0822-Add-Shearable-API.patch} (100%) rename patches/server/{0824-Fix-SpawnEggMeta-get-setSpawnedType.patch => 0823-Fix-SpawnEggMeta-get-setSpawnedType.patch} (100%) rename patches/server/{0825-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch => 0824-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch} (100%) rename patches/server/{0826-Treat-sequence-violations-like-they-should-be.patch => 0825-Treat-sequence-violations-like-they-should-be.patch} (86%) rename patches/server/{0827-remove-duplicate-animate-packet-for-records.patch => 0826-remove-duplicate-animate-packet-for-records.patch} (100%) rename patches/server/{0828-Prevent-causing-expired-keys-from-impacting-new-join.patch => 0827-Prevent-causing-expired-keys-from-impacting-new-join.patch} (96%) rename patches/server/{0829-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch => 0828-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch} (100%) rename patches/server/{0830-Use-array-for-gamerule-storage.patch => 0829-Use-array-for-gamerule-storage.patch} (100%) rename patches/server/{0831-Fix-a-couple-of-upstream-bed-issues.patch => 0830-Fix-a-couple-of-upstream-bed-issues.patch} (100%) rename patches/server/{0832-Fix-demo-flag-not-enabling-demo-mode.patch => 0831-Fix-demo-flag-not-enabling-demo-mode.patch} (100%) rename patches/server/{0833-Add-Mob-Experience-reward-API.patch => 0832-Add-Mob-Experience-reward-API.patch} (100%) rename patches/server/{0834-Break-redstone-on-top-of-trap-doors-early.patch => 0833-Break-redstone-on-top-of-trap-doors-early.patch} (100%) rename patches/server/{0835-Avoid-Lazy-Initialization-for-Enum-Fields.patch => 0834-Avoid-Lazy-Initialization-for-Enum-Fields.patch} (100%) rename patches/server/{0836-More-accurate-isInOpenWater-impl.patch => 0835-More-accurate-isInOpenWater-impl.patch} (100%) rename patches/server/{0837-Expand-PlayerItemMendEvent.patch => 0836-Expand-PlayerItemMendEvent.patch} (94%) rename patches/server/{0838-Refresh-ProjectileSource-for-projectiles.patch => 0837-Refresh-ProjectileSource-for-projectiles.patch} (97%) rename patches/server/{0839-Add-transient-modifier-API.patch => 0838-Add-transient-modifier-API.patch} (100%) rename patches/server/{0840-Fix-block-place-logic.patch => 0839-Fix-block-place-logic.patch} (97%) rename patches/server/{0841-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch => 0840-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch} (94%) rename patches/server/{0842-Call-BlockGrowEvent-for-missing-blocks.patch => 0841-Call-BlockGrowEvent-for-missing-blocks.patch} (100%) rename patches/server/{0843-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch => 0842-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch} (100%) rename patches/server/{0844-fix-MapLike-spam-for-missing-key-selector.patch => 0843-fix-MapLike-spam-for-missing-key-selector.patch} (100%) rename patches/server/{0845-Fix-sniffer-removeExploredLocation.patch => 0844-Fix-sniffer-removeExploredLocation.patch} (100%) rename patches/server/{0846-Add-method-to-remove-all-active-potion-effects.patch => 0845-Add-method-to-remove-all-active-potion-effects.patch} (91%) rename patches/server/{0847-Fix-incorrect-crafting-result-amount-for-fireworks.patch => 0846-Fix-incorrect-crafting-result-amount-for-fireworks.patch} (100%) rename patches/server/{0848-Add-event-for-player-editing-sign.patch => 0847-Add-event-for-player-editing-sign.patch} (98%) rename patches/server/{0849-Only-tick-item-frames-if-players-can-see-it.patch => 0848-Only-tick-item-frames-if-players-can-see-it.patch} (100%) rename patches/server/{0850-Fix-cmd-permission-levels-for-command-blocks.patch => 0849-Fix-cmd-permission-levels-for-command-blocks.patch} (98%) rename patches/server/{0851-Add-option-to-disable-block-updates.patch => 0850-Add-option-to-disable-block-updates.patch} (100%) rename patches/server/{0852-Call-missing-BlockDispenseEvent.patch => 0851-Call-missing-BlockDispenseEvent.patch} (100%) rename patches/server/{0853-Don-t-load-chunks-for-supporting-block-checks.patch => 0852-Don-t-load-chunks-for-supporting-block-checks.patch} (90%) rename patches/server/{0854-Optimize-player-lookups-for-beacons.patch => 0853-Optimize-player-lookups-for-beacons.patch} (100%) rename patches/server/{0855-Add-Sign-getInteractableSideFor.patch => 0854-Add-Sign-getInteractableSideFor.patch} (100%) rename patches/server/{0856-fix-item-meta-for-tadpole-buckets.patch => 0855-fix-item-meta-for-tadpole-buckets.patch} (100%) rename patches/server/{0857-Fix-BanList-API.patch => 0856-Fix-BanList-API.patch} (99%) rename patches/server/{0858-Determine-lava-and-water-fluid-explosion-resistance-.patch => 0857-Determine-lava-and-water-fluid-explosion-resistance-.patch} (100%) rename patches/server/{0859-Fix-possible-NPE-on-painting-creation.patch => 0858-Fix-possible-NPE-on-painting-creation.patch} (100%) rename patches/server/{0860-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch => 0859-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch} (100%) rename patches/server/{0861-ExperienceOrb-should-call-EntitySpawnEvent.patch => 0860-ExperienceOrb-should-call-EntitySpawnEvent.patch} (93%) rename patches/server/{0862-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch => 0861-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch} (100%) rename patches/server/{0863-Add-whitelist-events.patch => 0862-Add-whitelist-events.patch} (100%) rename patches/server/{0864-Implement-PlayerFailMoveEvent.patch => 0863-Implement-PlayerFailMoveEvent.patch} (95%) rename patches/server/{0865-Folia-scheduler-and-owned-region-API.patch => 0864-Folia-scheduler-and-owned-region-API.patch} (100%) rename patches/server/{0866-Only-erase-allay-memory-on-non-item-targets.patch => 0865-Only-erase-allay-memory-on-non-item-targets.patch} (100%) rename patches/server/{0867-API-for-updating-recipes-on-clients.patch => 0866-API-for-updating-recipes-on-clients.patch} (100%) rename patches/server/{0868-Fix-rotation-when-spawning-display-entities.patch => 0867-Fix-rotation-when-spawning-display-entities.patch} (100%) rename patches/server/{0869-Only-capture-actual-tree-growth.patch => 0868-Only-capture-actual-tree-growth.patch} (98%) rename patches/server/{0870-Use-correct-source-for-mushroom-block-spread-event.patch => 0869-Use-correct-source-for-mushroom-block-spread-event.patch} (100%) rename patches/server/{0871-Respect-randomizeData-on-more-entities-when-spawning.patch => 0870-Respect-randomizeData-on-more-entities-when-spawning.patch} (100%) rename patches/server/{0872-Use-correct-seed-on-api-world-load.patch => 0871-Use-correct-seed-on-api-world-load.patch} (100%) rename patches/server/{0873-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch => 0872-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch} (100%) rename patches/server/{0874-Cache-map-ids-on-item-frames.patch => 0873-Cache-map-ids-on-item-frames.patch} (100%) rename patches/server/{0875-Fix-custom-statistic-criteria-creation.patch => 0874-Fix-custom-statistic-criteria-creation.patch} (100%) rename patches/server/{0876-Bandaid-fix-for-Effect.patch => 0875-Bandaid-fix-for-Effect.patch} (100%) rename patches/server/{0877-SculkCatalyst-bloom-API.patch => 0876-SculkCatalyst-bloom-API.patch} (100%) rename patches/server/{0878-API-for-an-entity-s-scoreboard-name.patch => 0877-API-for-an-entity-s-scoreboard-name.patch} (100%) rename patches/server/{0879-Deprecate-and-replace-methods-with-old-StructureType.patch => 0878-Deprecate-and-replace-methods-with-old-StructureType.patch} (100%) rename patches/server/{0880-Don-t-tab-complete-namespaced-commands-if-send-names.patch => 0879-Don-t-tab-complete-namespaced-commands-if-send-names.patch} (95%) rename patches/server/{0881-Properly-handle-BlockBreakEvent-isDropItems.patch => 0880-Properly-handle-BlockBreakEvent-isDropItems.patch} (100%) rename patches/server/{0882-Fire-entity-death-event-for-ender-dragon.patch => 0881-Fire-entity-death-event-for-ender-dragon.patch} (100%) rename patches/server/{0883-Configurable-entity-tracking-range-by-Y-coordinate.patch => 0882-Configurable-entity-tracking-range-by-Y-coordinate.patch} (100%) rename patches/server/{0884-Add-Listing-API-for-Player.patch => 0883-Add-Listing-API-for-Player.patch} (99%) rename patches/server/{0885-Configurable-Region-Compression-Format.patch => 0884-Configurable-Region-Compression-Format.patch} (100%) rename patches/server/{0886-Add-BlockFace-to-BlockDamageEvent.patch => 0885-Add-BlockFace-to-BlockDamageEvent.patch} (96%) rename patches/server/{0887-Fix-NPE-on-Boat-getStatus.patch => 0886-Fix-NPE-on-Boat-getStatus.patch} (100%) rename patches/server/{0888-Expand-Pose-API.patch => 0887-Expand-Pose-API.patch} (95%) rename patches/server/{0889-More-DragonBattle-API.patch => 0888-More-DragonBattle-API.patch} (100%) rename patches/server/{0890-Add-PlayerPickItemEvent.patch => 0889-Add-PlayerPickItemEvent.patch} (96%) rename patches/server/{0891-Allow-trident-custom-damage.patch => 0890-Allow-trident-custom-damage.patch} (100%) rename patches/server/{0892-Expose-hand-in-BlockCanBuildEvent.patch => 0891-Expose-hand-in-BlockCanBuildEvent.patch} (100%) rename patches/server/{0893-Optimize-nearest-structure-border-iteration.patch => 0892-Optimize-nearest-structure-border-iteration.patch} (100%) rename patches/server/{0894-Implement-OfflinePlayer-isConnected.patch => 0893-Implement-OfflinePlayer-isConnected.patch} (94%) rename patches/server/{0895-Fix-inventory-desync.patch => 0894-Fix-inventory-desync.patch} (98%) rename patches/server/{0896-Add-titleOverride-to-InventoryOpenEvent.patch => 0895-Add-titleOverride-to-InventoryOpenEvent.patch} (98%) rename patches/server/{0897-Configure-sniffer-egg-hatch-time.patch => 0896-Configure-sniffer-egg-hatch-time.patch} (100%) rename patches/server/{0898-Do-crystal-portal-proximity-check-before-entity-look.patch => 0897-Do-crystal-portal-proximity-check-before-entity-look.patch} (100%) rename patches/server/{0899-Skip-POI-finding-if-stuck-in-vehicle.patch => 0898-Skip-POI-finding-if-stuck-in-vehicle.patch} (100%) rename patches/server/{0900-Add-slot-sanity-checks-in-container-clicks.patch => 0899-Add-slot-sanity-checks-in-container-clicks.patch} (96%) rename patches/server/{0901-Call-BlockRedstoneEvents-for-lecterns.patch => 0900-Call-BlockRedstoneEvents-for-lecterns.patch} (100%) rename patches/server/{0902-Allow-proper-checking-of-empty-item-stacks.patch => 0901-Allow-proper-checking-of-empty-item-stacks.patch} (93%) rename patches/server/{0903-Fix-silent-equipment-change-for-mobs.patch => 0902-Fix-silent-equipment-change-for-mobs.patch} (98%) rename patches/server/{0904-Fix-spigot-s-Forced-Stats.patch => 0903-Fix-spigot-s-Forced-Stats.patch} (100%) rename patches/server/{0905-Add-missing-InventoryHolders-to-inventories.patch => 0904-Add-missing-InventoryHolders-to-inventories.patch} (100%) rename patches/server/{0906-Do-not-read-tile-entities-in-chunks-that-are-positio.patch => 0905-Do-not-read-tile-entities-in-chunks-that-are-positio.patch} (100%) rename patches/server/{0907-Add-missing-logs-for-log-ips-config-option.patch => 0906-Add-missing-logs-for-log-ips-config-option.patch} (100%) rename patches/server/{0908-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch => 0907-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch} (100%) rename patches/server/{0909-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch => 0908-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch} (100%) rename patches/server/{0910-Fix-team-sidebar-objectives-not-being-cleared.patch => 0909-Fix-team-sidebar-objectives-not-being-cleared.patch} (100%) rename patches/server/{0911-Fix-missing-map-initialize-event-call.patch => 0910-Fix-missing-map-initialize-event-call.patch} (100%) rename patches/server/{0912-Update-entity-data-when-attaching-firework-to-entity.patch => 0911-Update-entity-data-when-attaching-firework-to-entity.patch} (100%) rename patches/server/{0913-Fix-UnsafeValues-loadAdvancement.patch => 0912-Fix-UnsafeValues-loadAdvancement.patch} (100%) rename patches/server/{0914-Add-player-idle-duration-API.patch => 0913-Add-player-idle-duration-API.patch} (100%) rename patches/server/{0915-Don-t-check-if-we-can-see-non-visible-entities.patch => 0914-Don-t-check-if-we-can-see-non-visible-entities.patch} (100%) rename patches/server/{0916-Fix-NPE-in-SculkBloomEvent-world-access.patch => 0915-Fix-NPE-in-SculkBloomEvent-world-access.patch} (100%) rename patches/server/{0917-Allow-null-itemstack-for-Player-sendEquipmentChange.patch => 0916-Allow-null-itemstack-for-Player-sendEquipmentChange.patch} (90%) rename patches/server/{0918-Optimize-VarInts.patch => 0917-Optimize-VarInts.patch} (100%) rename patches/server/{0919-Add-API-to-get-the-collision-shape-of-a-block-before.patch => 0918-Add-API-to-get-the-collision-shape-of-a-block-before.patch} (100%) rename patches/server/{0920-Add-predicate-for-blocks-when-raytracing.patch => 0919-Add-predicate-for-blocks-when-raytracing.patch} (100%) rename patches/server/{0921-Broadcast-take-item-packets-with-collector-as-source.patch => 0920-Broadcast-take-item-packets-with-collector-as-source.patch} (100%) rename patches/server/{0922-Expand-LingeringPotion-API.patch => 0921-Expand-LingeringPotion-API.patch} (100%) rename patches/server/{0923-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch => 0922-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch} (100%) rename patches/server/{0924-Add-hand-to-fish-event-for-all-player-interactions.patch => 0923-Add-hand-to-fish-event-for-all-player-interactions.patch} (100%) rename patches/server/{0925-Fix-several-issues-with-EntityBreedEvent.patch => 0924-Fix-several-issues-with-EntityBreedEvent.patch} (100%) rename patches/server/{0926-Add-UUID-attribute-modifier-API.patch => 0925-Add-UUID-attribute-modifier-API.patch} (100%) rename patches/server/{0927-Fix-missing-event-call-for-entity-teleport-API.patch => 0926-Fix-missing-event-call-for-entity-teleport-API.patch} (100%) rename patches/server/{0928-Lazily-create-LootContext-for-criterions.patch => 0927-Lazily-create-LootContext-for-criterions.patch} (100%) rename patches/server/{0929-Don-t-fire-sync-events-during-worldgen.patch => 0928-Don-t-fire-sync-events-during-worldgen.patch} (98%) rename patches/server/{0930-Add-Structure-check-API.patch => 0929-Add-Structure-check-API.patch} (93%) rename patches/server/{0931-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch => 0930-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch} (88%) rename patches/server/{0932-Restore-vanilla-entity-drops-behavior.patch => 0931-Restore-vanilla-entity-drops-behavior.patch} (98%) rename patches/server/{0933-Dont-resend-blocks-on-interactions.patch => 0932-Dont-resend-blocks-on-interactions.patch} (99%) rename patches/server/{0934-add-more-scoreboard-API.patch => 0933-add-more-scoreboard-API.patch} (100%) rename patches/server/{0935-Improve-Registry.patch => 0934-Improve-Registry.patch} (100%) rename patches/server/{0936-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch => 0935-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch} (100%) rename patches/server/{0937-Add-experience-points-API.patch => 0936-Add-experience-points-API.patch} (95%) rename patches/server/{0938-Add-drops-to-shear-events.patch => 0937-Add-drops-to-shear-events.patch} (99%) rename patches/server/{0939-Add-PlayerShieldDisableEvent.patch => 0938-Add-PlayerShieldDisableEvent.patch} (96%) rename patches/server/{0940-Validate-ResourceLocation-in-NBT-reading.patch => 0939-Validate-ResourceLocation-in-NBT-reading.patch} (97%) rename patches/server/{0941-Properly-handle-experience-dropping-on-block-break.patch => 0940-Properly-handle-experience-dropping-on-block-break.patch} (100%) rename patches/server/{0942-Fixup-NamespacedKey-handling.patch => 0941-Fixup-NamespacedKey-handling.patch} (100%) rename patches/server/{0943-Expose-LootTable-of-DecoratedPot.patch => 0942-Expose-LootTable-of-DecoratedPot.patch} (100%) rename patches/server/{0944-Reduce-allocation-of-Vec3D-by-entity-tracker.patch => 0943-Reduce-allocation-of-Vec3D-by-entity-tracker.patch} (100%) rename patches/server/{0945-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch => 0944-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch} (100%) rename patches/server/{0946-Add-ShulkerDuplicateEvent.patch => 0945-Add-ShulkerDuplicateEvent.patch} (100%) rename patches/server/{0947-Add-api-for-spawn-egg-texture-colors.patch => 0946-Add-api-for-spawn-egg-texture-colors.patch} (100%) rename patches/server/{0948-Add-Lifecycle-Event-system.patch => 0947-Add-Lifecycle-Event-system.patch} (100%) rename patches/server/{0949-ItemStack-Tooltip-API.patch => 0948-ItemStack-Tooltip-API.patch} (100%) rename patches/server/{0950-Add-getChunkSnapshot-includeLightData-parameter.patch => 0949-Add-getChunkSnapshot-includeLightData-parameter.patch} (100%) rename patches/server/{0951-Add-FluidState-API.patch => 0950-Add-FluidState-API.patch} (98%) rename patches/server/{0952-add-number-format-api.patch => 0951-add-number-format-api.patch} (100%) rename patches/server/{0953-improve-BanList-types.patch => 0952-improve-BanList-types.patch} (100%) rename patches/server/{0954-Expanded-Hopper-API.patch => 0953-Expanded-Hopper-API.patch} (100%) rename patches/server/{0955-Add-BlockBreakProgressUpdateEvent.patch => 0954-Add-BlockBreakProgressUpdateEvent.patch} (100%) rename patches/server/{0956-Deprecate-ItemStack-setType.patch => 0955-Deprecate-ItemStack-setType.patch} (100%) rename patches/server/{0957-Add-CartographyItemEvent.patch => 0956-Add-CartographyItemEvent.patch} (94%) rename patches/server/{0958-More-Raid-API.patch => 0957-More-Raid-API.patch} (100%) rename patches/server/{0959-Add-onboarding-message-for-initial-server-start.patch => 0958-Add-onboarding-message-for-initial-server-start.patch} (96%) rename patches/server/{0960-Configurable-max-block-fluid-ticks.patch => 0959-Configurable-max-block-fluid-ticks.patch} (100%) rename patches/server/{0961-Fix-bees-aging-inside-hives.patch => 0960-Fix-bees-aging-inside-hives.patch} (100%) rename patches/server/{0962-Disable-memory-reserve-allocating.patch => 0961-Disable-memory-reserve-allocating.patch} (100%) rename patches/server/{0963-Fire-EntityDamageByEntityEvent-for-unowned-wither-sk.patch => 0962-Fire-EntityDamageByEntityEvent-for-unowned-wither-sk.patch} (100%) rename patches/server/{0964-Fix-DamageSource-API.patch => 0963-Fix-DamageSource-API.patch} (98%) rename patches/server/{0965-Fix-creation-of-invalid-block-entity-during-world-ge.patch => 0964-Fix-creation-of-invalid-block-entity-during-world-ge.patch} (100%) rename patches/server/{0966-Fix-possible-StackOverflowError-for-some-dispenses.patch => 0965-Fix-possible-StackOverflowError-for-some-dispenses.patch} (100%) rename patches/server/{0967-Improve-tag-parser-handling.patch => 0966-Improve-tag-parser-handling.patch} (99%) rename patches/server/{0968-Item-Mutation-Fixes.patch => 0967-Item-Mutation-Fixes.patch} (100%) rename patches/server/{0969-Per-world-ticks-per-spawn-settings.patch => 0968-Per-world-ticks-per-spawn-settings.patch} (100%) rename patches/server/{0970-Properly-track-the-changed-item-from-dispense-events.patch => 0969-Properly-track-the-changed-item-from-dispense-events.patch} (100%) rename patches/server/{0971-Rewrite-dataconverter-system.patch => 0970-Rewrite-dataconverter-system.patch} (99%) rename patches/server/{0972-Suspicious-Effect-Entry-API.patch => 0971-Suspicious-Effect-Entry-API.patch} (100%) rename patches/server/{0973-check-if-itemstack-is-stackable-first.patch => 0972-check-if-itemstack-is-stackable-first.patch} (100%) rename patches/server/{0974-disable-forced-empty-world-ticks.patch => 0973-disable-forced-empty-world-ticks.patch} (100%) rename patches/server/{0975-Starlight.patch => 0974-Starlight.patch} (99%) rename patches/server/{0976-Rewrite-chunk-system.patch => 0975-Rewrite-chunk-system.patch} (100%) rename patches/server/{0977-incremental-chunk-and-player-saving.patch => 0976-incremental-chunk-and-player-saving.patch} (97%) rename patches/server/{0978-Optimize-isInWorldBounds-and-getBlockState-for-inlin.patch => 0977-Optimize-isInWorldBounds-and-getBlockState-for-inlin.patch} (100%) rename patches/server/{0979-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch => 0978-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch} (98%) rename patches/server/{0980-Strip-raytracing-for-EntityLiving-hasLineOfSight.patch => 0979-Strip-raytracing-for-EntityLiving-hasLineOfSight.patch} (100%) rename patches/server/{0981-Optimize-Network-Manager-and-add-advanced-packet-sup.patch => 0980-Optimize-Network-Manager-and-add-advanced-packet-sup.patch} (100%) rename patches/server/{0982-Allow-Saving-of-Oversized-Chunks.patch => 0981-Allow-Saving-of-Oversized-Chunks.patch} (100%) rename patches/server/{0983-Fix-World-isChunkGenerated-calls.patch => 0982-Fix-World-isChunkGenerated-calls.patch} (100%) rename patches/server/{0984-Flat-bedrock-generator-settings.patch => 0983-Flat-bedrock-generator-settings.patch} (100%) rename patches/server/{0985-Entity-Activation-Range-2.0.patch => 0984-Entity-Activation-Range-2.0.patch} (99%) rename patches/server/{0986-Optional-per-player-mob-spawns.patch => 0985-Optional-per-player-mob-spawns.patch} (99%) rename patches/server/{0987-Anti-Xray.patch => 0986-Anti-Xray.patch} (100%) rename patches/server/{0988-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch => 0987-Improve-cancelling-PreCreatureSpawnEvent-with-per-pl.patch} (96%) rename patches/server/{0989-Optimize-Collision-to-not-load-chunks.patch => 0988-Optimize-Collision-to-not-load-chunks.patch} (98%) rename patches/server/{0990-Optimize-GoalSelector-Goal.Flag-Set-operations.patch => 0989-Optimize-GoalSelector-Goal.Flag-Set-operations.patch} (100%) rename patches/server/{0991-Entity-load-save-limit-per-chunk.patch => 0990-Entity-load-save-limit-per-chunk.patch} (100%) rename patches/server/{0992-Improved-Watchdog-Support.patch => 0991-Improved-Watchdog-Support.patch} (99%) rename patches/server/{0993-Optimize-Voxel-Shape-Merging.patch => 0992-Optimize-Voxel-Shape-Merging.patch} (100%) rename patches/server/{0994-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch => 0993-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch} (99%) rename patches/server/{0995-Use-distance-map-to-optimise-entity-tracker.patch => 0994-Use-distance-map-to-optimise-entity-tracker.patch} (99%) rename patches/server/{0996-Optimize-Bit-Operations-by-inlining.patch => 0995-Optimize-Bit-Operations-by-inlining.patch} (100%) rename patches/server/{0997-Remove-streams-from-hot-code.patch => 0996-Remove-streams-from-hot-code.patch} (100%) rename patches/server/{0998-Eigencraft-redstone-implementation.patch => 0997-Eigencraft-redstone-implementation.patch} (100%) rename patches/server/{0999-Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch => 0998-Optimize-Pathfinder-Remove-Streams-Optimized-collect.patch} (100%) rename patches/server/{1000-Improve-boat-collision-performance.patch => 0999-Improve-boat-collision-performance.patch} (100%) rename patches/server/{1001-Optimise-general-POI-access.patch => 1000-Optimise-general-POI-access.patch} (100%) rename patches/server/{1002-Custom-table-implementation-for-blockstate-state-loo.patch => 1001-Custom-table-implementation-for-blockstate-state-loo.patch} (100%) rename patches/server/{1003-Execute-chunk-tasks-mid-tick.patch => 1002-Execute-chunk-tasks-mid-tick.patch} (97%) rename patches/server/{1004-Optimise-random-block-ticking.patch => 1003-Optimise-random-block-ticking.patch} (100%) rename patches/server/{1005-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch => 1004-Attempt-to-recalculate-regionfile-header-if-it-is-co.patch} (100%) rename patches/server/{1006-Use-Velocity-compression-and-cipher-natives.patch => 1005-Use-Velocity-compression-and-cipher-natives.patch} (100%) rename patches/server/{1007-Detail-more-information-in-watchdog-dumps.patch => 1006-Detail-more-information-in-watchdog-dumps.patch} (99%) rename patches/server/{1008-Collision-optimisations.patch => 1007-Collision-optimisations.patch} (99%) rename patches/server/{1009-Optimise-collision-checking-in-player-move-packet-ha.patch => 1008-Optimise-collision-checking-in-player-move-packet-ha.patch} (96%) rename patches/server/{1010-Fix-tripwire-disarming-not-working-as-intended.patch => 1009-Fix-tripwire-disarming-not-working-as-intended.patch} (100%) rename patches/server/{1011-Fix-entity-type-tags-suggestions-in-selectors.patch => 1010-Fix-entity-type-tags-suggestions-in-selectors.patch} (99%) rename patches/server/{1012-Add-Alternate-Current-redstone-implementation.patch => 1011-Add-Alternate-Current-redstone-implementation.patch} (100%) rename patches/server/{1013-optimize-dirt-and-snow-spreading.patch => 1012-optimize-dirt-and-snow-spreading.patch} (100%) rename patches/server/{1014-Properly-resend-entities.patch => 1013-Properly-resend-entities.patch} (98%) rename patches/server/{1015-Optimize-Hoppers.patch => 1014-Optimize-Hoppers.patch} (92%) rename patches/server/{1016-Improve-performance-of-mass-crafts.patch => 1015-Improve-performance-of-mass-crafts.patch} (98%) rename patches/server/{1017-Actually-optimise-explosions.patch => 1016-Actually-optimise-explosions.patch} (99%) rename patches/server/{1018-Optimise-chunk-tick-iteration.patch => 1017-Optimise-chunk-tick-iteration.patch} (99%) rename patches/server/{1019-Lag-compensation-ticks.patch => 1018-Lag-compensation-ticks.patch} (98%) rename patches/server/{1020-Optimise-nearby-player-retrieval.patch => 1019-Optimise-nearby-player-retrieval.patch} (100%) rename patches/server/{1021-Distance-manager-tick-timings.patch => 1020-Distance-manager-tick-timings.patch} (100%) rename patches/server/{1022-Handle-Oversized-block-entities-in-chunks.patch => 1021-Handle-Oversized-block-entities-in-chunks.patch} (100%) rename patches/server/{1023-Send-full-pos-packets-for-hard-colliding-entities.patch => 1022-Send-full-pos-packets-for-hard-colliding-entities.patch} (100%) rename patches/server/{1024-API-for-checking-sent-chunks.patch => 1023-API-for-checking-sent-chunks.patch} (100%) rename patches/server/{1025-Add-config-for-mobs-immune-to-default-effects.patch => 1024-Add-config-for-mobs-immune-to-default-effects.patch} (100%) rename patches/server/{1026-Deep-clone-nbt-tags-in-PDC.patch => 1025-Deep-clone-nbt-tags-in-PDC.patch} (94%) rename patches/server/{1027-Support-old-UUID-format-for-NBT.patch => 1026-Support-old-UUID-format-for-NBT.patch} (100%) rename patches/server/{1028-Fix-shield-disable-inconsistency.patch => 1027-Fix-shield-disable-inconsistency.patch} (100%) rename patches/server/{1029-Write-SavedData-IO-async.patch => 1028-Write-SavedData-IO-async.patch} (98%) rename patches/server/{1030-Don-t-lose-removed-data-components-in-ItemMeta.patch => 1029-Don-t-lose-removed-data-components-in-ItemMeta.patch} (93%) rename patches/server/{1031-Add-experimental-improved-give-command.patch => 1030-Add-experimental-improved-give-command.patch} (100%) rename patches/server/{1032-Handle-Large-Packets-disconnecting-client.patch => 1031-Handle-Large-Packets-disconnecting-client.patch} (100%) rename patches/server/{1033-Fix-ItemFlags.patch => 1032-Fix-ItemFlags.patch} (95%) rename patches/server/{1034-Fix-helmet-damage-reduction-inconsistencies.patch => 1033-Fix-helmet-damage-reduction-inconsistencies.patch} (92%) rename patches/server/{1035-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch => 1034-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch} (100%) rename patches/server/{1036-improve-checking-handled-tags-in-itemmeta.patch => 1035-improve-checking-handled-tags-in-itemmeta.patch} (98%) rename patches/server/{1037-General-ItemMeta-fixes.patch => 1036-General-ItemMeta-fixes.patch} (93%) rename patches/server/{1038-Expose-hasColor-to-leather-armor.patch => 1037-Expose-hasColor-to-leather-armor.patch} (100%) rename patches/server/{1039-Added-API-to-get-player-ha-proxy-address.patch => 1038-Added-API-to-get-player-ha-proxy-address.patch} (97%) rename patches/server/{1040-More-Chest-Block-API.patch => 1039-More-Chest-Block-API.patch} (100%) rename patches/server/{1041-Print-data-component-type-on-encoding-error.patch => 1040-Print-data-component-type-on-encoding-error.patch} (100%) rename patches/server/{1042-Fix-entity-tracker-desync-when-new-players-are-added.patch => 1041-Fix-entity-tracker-desync-when-new-players-are-added.patch} (100%) rename patches/server/{1043-Brigadier-based-command-API.patch => 1042-Brigadier-based-command-API.patch} (99%) rename patches/server/{1044-Fix-issues-with-Recipe-API.patch => 1043-Fix-issues-with-Recipe-API.patch} (100%) rename patches/server/{1045-Fix-equipment-slot-and-group-API.patch => 1044-Fix-equipment-slot-and-group-API.patch} (96%) rename patches/server/{1046-Allow-Bukkit-plugin-to-use-Paper-PluginLoader-API.patch => 1045-Allow-Bukkit-plugin-to-use-Paper-PluginLoader-API.patch} (100%) rename patches/server/{1047-Prevent-sending-oversized-item-data-in-equipment-and.patch => 1046-Prevent-sending-oversized-item-data-in-equipment-and.patch} (98%) rename patches/server/{1048-Prevent-NPE-if-hooked-entity-was-cleared.patch => 1047-Prevent-NPE-if-hooked-entity-was-cleared.patch} (100%) rename patches/server/{1049-Fix-cancelling-BlockPlaceEvent-calling-onRemove.patch => 1048-Fix-cancelling-BlockPlaceEvent-calling-onRemove.patch} (97%) rename patches/server/{1050-Add-missing-fishing-event-state.patch => 1049-Add-missing-fishing-event-state.patch} (100%) rename patches/server/{1051-Deprecate-InvAction-HOTBAR_MOVE_AND_READD.patch => 1050-Deprecate-InvAction-HOTBAR_MOVE_AND_READD.patch} (92%) rename patches/server/{1052-Fix-sending-disconnect-packet-in-phases-where-it-doe.patch => 1051-Fix-sending-disconnect-packet-in-phases-where-it-doe.patch} (100%) rename patches/server/{1053-Adopt-MaterialRerouting.patch => 1052-Adopt-MaterialRerouting.patch} (100%) rename patches/server/{1054-Fix-Player-setBlockUpdate.patch => 1053-Fix-Player-setBlockUpdate.patch} (100%) rename patches/server/{1055-Fix-removing-recipes-from-RecipeIterator.patch => 1054-Fix-removing-recipes-from-RecipeIterator.patch} (100%) rename patches/server/{1056-Configurable-damage-tick-when-blocking-with-shield.patch => 1055-Configurable-damage-tick-when-blocking-with-shield.patch} (100%) diff --git a/patches/api/0388-Add-BlockLockCheckEvent.patch b/patches/api/0388-Add-BlockLockCheckEvent.patch index c5d560192c..5ba41f5acf 100644 --- a/patches/api/0388-Add-BlockLockCheckEvent.patch +++ b/patches/api/0388-Add-BlockLockCheckEvent.patch @@ -23,10 +23,10 @@ index 0000000000000000000000000000000000000000..f309961e0e96b6baacc4fe6d80dabd6c +} diff --git a/src/main/java/io/papermc/paper/event/block/BlockLockCheckEvent.java b/src/main/java/io/papermc/paper/event/block/BlockLockCheckEvent.java new file mode 100644 -index 0000000000000000000000000000000000000000..4c335212f6a5ad4a304c3c0f66ffd7e0974c0572 +index 0000000000000000000000000000000000000000..5e2c8ad26dea2c8a84ae10f7da8cb836e78d7b68 --- /dev/null +++ b/src/main/java/io/papermc/paper/event/block/BlockLockCheckEvent.java -@@ -0,0 +1,186 @@ +@@ -0,0 +1,187 @@ +package io.papermc.paper.event.block; + +import com.google.common.base.Preconditions; @@ -34,6 +34,7 @@ index 0000000000000000000000000000000000000000..4c335212f6a5ad4a304c3c0f66ffd7e0 +import net.kyori.adventure.sound.Sound; +import net.kyori.adventure.text.Component; +import org.bukkit.block.Block; ++import org.bukkit.block.BlockState; +import org.bukkit.entity.Player; +import org.bukkit.event.HandlerList; +import org.bukkit.event.block.BlockEvent; @@ -53,7 +54,6 @@ index 0000000000000000000000000000000000000000..4c335212f6a5ad4a304c3c0f66ffd7e0 + + private static final HandlerList HANDLER_LIST = new HandlerList(); + -+ private final LockableTileState state; + private final Player player; + private Component lockedMessage; + private Sound lockedSound; @@ -61,9 +61,8 @@ index 0000000000000000000000000000000000000000..4c335212f6a5ad4a304c3c0f66ffd7e0 + private Result result = Result.DEFAULT; + + @ApiStatus.Internal -+ public BlockLockCheckEvent(final @NotNull Block block, final @NotNull LockableTileState state, final @NotNull Player player, final @NotNull Component lockedMessage, final @NotNull Sound lockedSound) { ++ public BlockLockCheckEvent(final @NotNull Block block, final @NotNull Player player, final @NotNull Component lockedMessage, final @NotNull Sound lockedSound) { + super(block); -+ this.state = state; + this.player = player; + this.lockedMessage = lockedMessage; + this.lockedSound = lockedSound; @@ -76,7 +75,9 @@ index 0000000000000000000000000000000000000000..4c335212f6a5ad4a304c3c0f66ffd7e0 + * @return the snapshot block state. + */ + public @NotNull LockableTileState getBlockState() { -+ return this.state; ++ final BlockState blockState = this.getBlock().getState(); ++ Preconditions.checkState(blockState instanceof LockableTileState, "Block state of lock-checked block is no longer a lockable tile state!"); ++ return (LockableTileState) blockState; + } + + /** diff --git a/patches/server/0003-Build-system-changes.patch b/patches/server/0003-Build-system-changes.patch index d984c48298..0c8070312f 100644 --- a/patches/server/0003-Build-system-changes.patch +++ b/patches/server/0003-Build-system-changes.patch @@ -131,14 +131,16 @@ index a5e8713bc0fefae455b666ebf13c9529e7ba94e6..1a528e1aa7b12f8b8cffce6c7bc4b5d5 public static PackRepository createPackRepository(Path dataPacksPath, DirectoryValidator symlinkFinder) { diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index 029783f07da0a8d91c2e443f76359b89869bc4cc..bebc3bcffa6dc12d4caf613f05b1e2a28a26f316 100644 +index d1442420f4f0ace1f6dab126785ef030a364a48c..d409bf8f4d3dcd9cb28d7493406404101b18aee8 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java -@@ -210,7 +210,7 @@ public class Main { +@@ -209,8 +209,8 @@ public class Main { + Main.useConsole = false; } - if (Main.class.getPackage().getImplementationVendor() != null && System.getProperty("IReallyKnowWhatIAmDoingISwear") == null) { +- if (false && Main.class.getPackage().getImplementationVendor() != null && System.getProperty("IReallyKnowWhatIAmDoingISwear") == null) { - Date buildDate = new Date(Integer.parseInt(Main.class.getPackage().getImplementationVendor()) * 1000L); ++ if (Main.class.getPackage().getImplementationVendor() != null && System.getProperty("IReallyKnowWhatIAmDoingISwear") == null) { // Paper + Date buildDate = new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss Z").parse(Main.class.getPackage().getImplementationVendor()); // Paper Calendar deadline = Calendar.getInstance(); diff --git a/patches/server/0010-Adventure.patch b/patches/server/0010-Adventure.patch index 1adb0e5f3c..990b41486f 100644 --- a/patches/server/0010-Adventure.patch +++ b/patches/server/0010-Adventure.patch @@ -3585,7 +3585,7 @@ index bd32f4e6ab8c41404ebcc8ef3b448c71db7b0650..ee5b61c476abc1f9a2babf350ac9dfa4 // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index e5f070de12b63487b71c54d8020a895e5eda862c..73c44f94aac069fa3ea9e82be6b95e77a2421c63 100644 +index 27ff661ded7c7241de8967a44739654887f69473..16c0d9956a1fe7081ddd07fe9cfeb05eb1820d0d 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java @@ -20,6 +20,12 @@ public class Main { @@ -4844,7 +4844,7 @@ index 9e05a8515c5f6f340182e91150fcad8bbf80a22b..adf22ce4f0bcd3bd57dc2030c6c92d3d @Override public CraftMerchant getCraftMerchant() { diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java -index 61ad00c38cfef8a1de61b4597ec1042428feccf4..4da38ebb7fdbdb0f8fa422ebcd2e3eec2b2be846 100644 +index 3ab6b212001c2b92cac42c0ff97e59c3d08b3e49..552ebe67f87b48734adf0da8ef78dcac9dd670a2 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java @@ -2,8 +2,9 @@ package org.bukkit.craftbukkit.inventory; @@ -4999,19 +4999,18 @@ index 61ad00c38cfef8a1de61b4597ec1042428feccf4..4da38ebb7fdbdb0f8fa422ebcd2e3eec if (this.pages != null) { diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBookSigned.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBookSigned.java -index 2e6f0a0f4bbe4ae3c7c85e679f6187e89d1298ff..c7360e2b2d6e50abc371c21b09cdadd63892f439 100644 +index c71a4971f127fdfc753306019313ce1a31201120..af15a8758ff40f64787f17be40d48b3419d424f1 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBookSigned.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBookSigned.java -@@ -2,7 +2,7 @@ package org.bukkit.craftbukkit.inventory; - - import com.google.common.base.Preconditions; +@@ -4,6 +4,7 @@ import com.google.common.base.Preconditions; import com.google.common.collect.ImmutableList; --import com.google.common.collect.ImmutableMap.Builder; + import com.google.common.collect.ImmutableMap.Builder; + import com.google.common.collect.Lists; +import com.google.common.collect.ImmutableMap; // Paper import java.util.ArrayList; import java.util.Arrays; import java.util.List; -@@ -346,7 +346,7 @@ public class CraftMetaBookSigned extends CraftMetaItem implements BookMeta { +@@ -346,7 +347,7 @@ public class CraftMetaBookSigned extends CraftMetaItem implements BookMeta { } @Override @@ -5020,7 +5019,7 @@ index 2e6f0a0f4bbe4ae3c7c85e679f6187e89d1298ff..c7360e2b2d6e50abc371c21b09cdadd6 super.serialize(builder); if (this.hasTitle()) { -@@ -459,4 +459,113 @@ public class CraftMetaBookSigned extends CraftMetaItem implements BookMeta { +@@ -459,4 +460,113 @@ public class CraftMetaBookSigned extends CraftMetaItem implements BookMeta { return this.spigot; } // Spigot end @@ -5135,10 +5134,10 @@ index 2e6f0a0f4bbe4ae3c7c85e679f6187e89d1298ff..c7360e2b2d6e50abc371c21b09cdadd6 + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index c33161090f6f746c04a87ca5b71f4df80f4fd246..41ba64593bd548131d1cdbecc79b2f38406aa78b 100644 +index 3ce5ebf4ee022d8c769736d503ad80642aa6b389..d1246f67abc5c2927b75a99bba6b9e9d56af4d7c 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -@@ -883,6 +883,18 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -890,6 +890,18 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { return !(this.hasDisplayName() || this.hasItemName() || this.hasLocalizedName() || this.hasEnchants() || (this.lore != null) || this.hasCustomModelData() || this.hasBlockData() || this.hasRepairCost() || !this.unhandledTags.build().isEmpty() || !this.persistentDataContainer.isEmpty() || this.hideFlag != 0 || this.isHideTooltip() || this.isUnbreakable() || this.hasEnchantmentGlintOverride() || this.isFireResistant() || this.hasMaxStackSize() || this.hasRarity() || this.hasFood() || this.hasTool() || this.hasDamage() || this.hasMaxDamage() || this.hasAttributeModifiers() || this.customTag != null); } @@ -5157,7 +5156,7 @@ index c33161090f6f746c04a87ca5b71f4df80f4fd246..41ba64593bd548131d1cdbecc79b2f38 @Override public String getDisplayName() { return CraftChatMessage.fromComponent(this.displayName); -@@ -913,6 +925,18 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -920,6 +932,18 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { return this.itemName != null; } @@ -5176,7 +5175,7 @@ index c33161090f6f746c04a87ca5b71f4df80f4fd246..41ba64593bd548131d1cdbecc79b2f38 @Override public String getLocalizedName() { return this.getDisplayName(); -@@ -932,6 +956,18 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -939,6 +963,18 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { return this.lore != null && !this.lore.isEmpty(); } @@ -5547,10 +5546,10 @@ index 4d586e1375ed8782939c9d480479e0dd981f8cbc..7900adb0b158bc17dd792dd082c33854 + } diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftChatMessage.java b/src/main/java/org/bukkit/craftbukkit/util/CraftChatMessage.java -index 28038c3a531680201dcc8f2716b8f46f3886e769..5a9ddf71dc186c537a23083ac59434fb446a2140 100644 +index ff040613083c015d9c52c0995591b64305fd5018..1b552b3f05ac7fc44450de4b1ec78907a0f62424 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftChatMessage.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftChatMessage.java -@@ -308,6 +308,7 @@ public final class CraftChatMessage { +@@ -264,6 +264,7 @@ public final class CraftChatMessage { public static String fromComponent(Component component) { if (component == null) return ""; diff --git a/patches/server/0011-Use-TerminalConsoleAppender-for-console-improvements.patch b/patches/server/0011-Use-TerminalConsoleAppender-for-console-improvements.patch index 50a85c9a5a..71d2fc53d6 100644 --- a/patches/server/0011-Use-TerminalConsoleAppender-for-console-improvements.patch +++ b/patches/server/0011-Use-TerminalConsoleAppender-for-console-improvements.patch @@ -423,7 +423,7 @@ index beff0bfe2502a17fd297524c51f96b33f889db93..749a4f1e8e46e0b072832056186d709a @Override public PluginCommand getPluginCommand(String name) { diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index 73c44f94aac069fa3ea9e82be6b95e77a2421c63..2ef6386ea4b95211e26c8759cae849cbe68e3f40 100644 +index 16c0d9956a1fe7081ddd07fe9cfeb05eb1820d0d..ac450dfcbf3e0f9792b4e073ee768b466729bca2 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java @@ -13,7 +13,6 @@ import java.util.logging.Logger; @@ -461,7 +461,7 @@ index 73c44f94aac069fa3ea9e82be6b95e77a2421c63..2ef6386ea4b95211e26c8759cae849cb + System.setProperty(net.minecrell.terminalconsole.TerminalConsoleAppender.JLINE_OVERRIDE_PROPERTY, "false"); // Paper } - if (Main.class.getPackage().getImplementationVendor() != null && System.getProperty("IReallyKnowWhatIAmDoingISwear") == null) { + if (Main.class.getPackage().getImplementationVendor() != null && System.getProperty("IReallyKnowWhatIAmDoingISwear") == null) { // Paper @@ -242,6 +252,7 @@ public class Main { } } diff --git a/patches/server/0027-Support-components-in-ItemMeta.patch b/patches/server/0027-Support-components-in-ItemMeta.patch index 1497a2f29d..6f82d7ec52 100644 --- a/patches/server/0027-Support-components-in-ItemMeta.patch +++ b/patches/server/0027-Support-components-in-ItemMeta.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Support components in ItemMeta diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 41ba64593bd548131d1cdbecc79b2f38406aa78b..c7eed6b642c69fb08bc6e50d4890ea61666cde01 100644 +index d1246f67abc5c2927b75a99bba6b9e9d56af4d7c..9541ecd3554e5c9de02ba0fff55d0e334faeba73 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -@@ -900,11 +900,23 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -907,11 +907,23 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { return CraftChatMessage.fromComponent(this.displayName); } @@ -32,7 +32,7 @@ index 41ba64593bd548131d1cdbecc79b2f38406aa78b..c7eed6b642c69fb08bc6e50d4890ea61 @Override public boolean hasDisplayName() { return this.displayName != null; -@@ -1078,6 +1090,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1085,6 +1097,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { return this.lore == null ? null : new ArrayList(Lists.transform(this.lore, CraftChatMessage::fromComponent)); } @@ -47,7 +47,7 @@ index 41ba64593bd548131d1cdbecc79b2f38406aa78b..c7eed6b642c69fb08bc6e50d4890ea61 @Override public void setLore(List lore) { if (lore == null || lore.isEmpty()) { -@@ -1092,6 +1112,21 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1099,6 +1119,21 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { } } @@ -69,7 +69,7 @@ index 41ba64593bd548131d1cdbecc79b2f38406aa78b..c7eed6b642c69fb08bc6e50d4890ea61 @Override public boolean hasCustomModelData() { return this.customModelData != null; -@@ -1763,6 +1798,11 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1770,6 +1805,11 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { } for (Object object : addFrom) { diff --git a/patches/server/0040-Check-online-mode-before-converting-and-renaming-pla.patch b/patches/server/0040-Check-online-mode-before-converting-and-renaming-pla.patch index f89cf885a5..70183b1722 100644 --- a/patches/server/0040-Check-online-mode-before-converting-and-renaming-pla.patch +++ b/patches/server/0040-Check-online-mode-before-converting-and-renaming-pla.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Check online mode before converting and renaming player data diff --git a/src/main/java/net/minecraft/world/level/storage/PlayerDataStorage.java b/src/main/java/net/minecraft/world/level/storage/PlayerDataStorage.java -index 79222a04ef104bf2eed85684479384b7c350ea19..e11c8523e633d2a8e3cea7ecd54978b2958b9684 100644 +index 79222a04ef104bf2eed85684479384b7c350ea19..cd013567dd6224c86c0f1813d8a3d5fb7b8cabb5 100644 --- a/src/main/java/net/minecraft/world/level/storage/PlayerDataStorage.java +++ b/src/main/java/net/minecraft/world/level/storage/PlayerDataStorage.java @@ -78,7 +78,7 @@ public class PlayerDataStorage { @@ -13,7 +13,7 @@ index 79222a04ef104bf2eed85684479384b7c350ea19..e11c8523e633d2a8e3cea7ecd54978b2 // Spigot Start boolean usingWrongFile = false; - if ( !file1.exists() ) -+ if ( org.bukkit.Bukkit.getOnlineMode() && !file.exists() ) // Paper - Check online mode first ++ if ( org.bukkit.Bukkit.getOnlineMode() && !file1.exists() ) // Paper - Check online mode first { file1 = new File( file, java.util.UUID.nameUUIDFromBytes( ( "OfflinePlayer:" + name ).getBytes( java.nio.charset.StandardCharsets.UTF_8 ) ).toString() + s ); if ( file1.exists() ) diff --git a/patches/server/0072-Handle-Item-Meta-Inconsistencies.patch b/patches/server/0072-Handle-Item-Meta-Inconsistencies.patch index 4c8d58d154..0d453a38d5 100644 --- a/patches/server/0072-Handle-Item-Meta-Inconsistencies.patch +++ b/patches/server/0072-Handle-Item-Meta-Inconsistencies.patch @@ -151,7 +151,7 @@ index f44502a51c9fb393746e866e1a93ae9cedc2b656..dac1ff1387462b0125140a37d134d51c static Map getEnchantments(net.minecraft.world.item.ItemStack item) { diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index c7eed6b642c69fb08bc6e50d4890ea61666cde01..f5689a447bb990d5e2acbb35ce3d02419f4a00e8 100644 +index 9541ecd3554e5c9de02ba0fff55d0e334faeba73..fffd4e86f3bbb6ca356ab6436b26555d80f42d34 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java @@ -6,6 +6,7 @@ import com.google.common.collect.ImmutableList; @@ -199,7 +199,7 @@ index c7eed6b642c69fb08bc6e50d4890ea61666cde01..f5689a447bb990d5e2acbb35ce3d0241 tag.entrySet().forEach((entry) -> { Holder id = entry.getKey(); -@@ -678,13 +680,13 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -685,13 +687,13 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { return modifiers; } @@ -215,7 +215,7 @@ index c7eed6b642c69fb08bc6e50d4890ea61666cde01..f5689a447bb990d5e2acbb35ce3d0241 for (Map.Entry entry : ench.entrySet()) { Enchantment enchantment = CraftEnchantment.stringToBukkit(entry.getKey().toString()); if ((enchantment != null) && (entry.getValue() instanceof Integer)) { -@@ -1003,14 +1005,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1010,14 +1012,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Override public Map getEnchants() { @@ -232,7 +232,7 @@ index c7eed6b642c69fb08bc6e50d4890ea61666cde01..f5689a447bb990d5e2acbb35ce3d0241 } if (ignoreRestrictions || level >= ench.getStartLevel() && level <= ench.getMaxLevel()) { -@@ -1591,7 +1593,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1598,7 +1600,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { clone.customModelData = this.customModelData; clone.blockData = this.blockData; if (this.enchantments != null) { @@ -241,7 +241,7 @@ index c7eed6b642c69fb08bc6e50d4890ea61666cde01..f5689a447bb990d5e2acbb35ce3d0241 } if (this.hasAttributeModifiers()) { clone.attributeModifiers = LinkedHashMultimap.create(this.attributeModifiers); -@@ -1918,4 +1920,22 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1925,4 +1927,22 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { return (result != null) ? result : Optional.empty(); } diff --git a/patches/server/0273-Book-Size-Limits.patch b/patches/server/0273-Book-Size-Limits.patch index 6449e1dc0c..cb7b4ecc29 100644 --- a/patches/server/0273-Book-Size-Limits.patch +++ b/patches/server/0273-Book-Size-Limits.patch @@ -5,49 +5,63 @@ Subject: [PATCH] Book Size Limits Puts some limits on the size of books. +diff --git a/src/main/java/net/minecraft/network/protocol/game/ServerboundEditBookPacket.java b/src/main/java/net/minecraft/network/protocol/game/ServerboundEditBookPacket.java +index ed61767a64cdce37dc7c226ebd0d693a60de24a9..f634a830a2b58a419e84f969bd53eeae4f4513bb 100644 +--- a/src/main/java/net/minecraft/network/protocol/game/ServerboundEditBookPacket.java ++++ b/src/main/java/net/minecraft/network/protocol/game/ServerboundEditBookPacket.java +@@ -16,9 +16,9 @@ public record ServerboundEditBookPacket(int slot, List pages, Optional STREAM_CODEC = StreamCodec.composite( + ByteBufCodecs.VAR_INT, + ServerboundEditBookPacket::slot, +- ByteBufCodecs.stringUtf8(8192).apply(ByteBufCodecs.list(200)), ++ ByteBufCodecs.stringUtf8(net.minecraft.world.item.component.WritableBookContent.PAGE_EDIT_LENGTH).apply(ByteBufCodecs.list(net.minecraft.world.item.component.WritableBookContent.MAX_PAGES)), // Paper - limit books + ServerboundEditBookPacket::pages, +- ByteBufCodecs.stringUtf8(128).apply(ByteBufCodecs::optional), ++ ByteBufCodecs.stringUtf8(net.minecraft.world.item.component.WrittenBookContent.TITLE_MAX_LENGTH).apply(ByteBufCodecs::optional), // Paper - limit books + ServerboundEditBookPacket::title, + ServerboundEditBookPacket::new + ); diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index e880b41e1824f986d04a0a32cc735d77f25cf987..3b3384fcbcb66a87dd50dece6bdac558491f66f0 100644 +index e880b41e1824f986d04a0a32cc735d77f25cf987..987bb9caa952a09615b0a819fc682b354be2b07c 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1040,6 +1040,45 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1040,6 +1040,43 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @Override public void handleEditBook(ServerboundEditBookPacket packet) { + // Paper start - Book size limits + if (!this.cserver.isPrimaryThread()) { -+ List pageList = packet.pages(); ++ final List pageList = packet.pages(); + long byteTotal = 0; -+ int maxBookPageSize = io.papermc.paper.configuration.GlobalConfiguration.get().itemValidation.bookSize.pageMax; -+ double multiplier = Math.max(0.3D, Math.min(1D, io.papermc.paper.configuration.GlobalConfiguration.get().itemValidation.bookSize.totalMultiplier)); ++ final int maxBookPageSize = io.papermc.paper.configuration.GlobalConfiguration.get().itemValidation.bookSize.pageMax; ++ final double multiplier = Math.clamp(io.papermc.paper.configuration.GlobalConfiguration.get().itemValidation.bookSize.totalMultiplier, 0.3D, 1D); + long byteAllowed = maxBookPageSize; -+ for (String testString : pageList) { -+ int byteLength = testString.getBytes(java.nio.charset.StandardCharsets.UTF_8).length; -+ if (byteLength > 256 * 4) { -+ ServerGamePacketListenerImpl.LOGGER.warn(this.player.getScoreboardName() + " tried to send a book with with a page too large!"); -+ server.scheduleOnMain(() -> this.disconnect("Book too large!")); -+ return; -+ } ++ for (final String page : pageList) { ++ final int byteLength = page.getBytes(java.nio.charset.StandardCharsets.UTF_8).length; + byteTotal += byteLength; -+ int length = testString.length(); -+ int multibytes = 0; ++ final int length = page.length(); ++ int multiByteCharacters = 0; + if (byteLength != length) { -+ for (char c : testString.toCharArray()) { ++ // Count the number of multi byte characters ++ for (final char c : page.toCharArray()) { + if (c > 127) { -+ multibytes++; ++ multiByteCharacters++; + } + } + } -+ byteAllowed += (maxBookPageSize * Math.min(1, Math.max(0.1D, (double) length / 255D))) * multiplier; + -+ if (multibytes > 1) { -+ // penalize MB -+ byteAllowed -= multibytes; ++ // Allow pages with fewer characters to consume less of the allowed byte quota ++ byteAllowed += maxBookPageSize * Math.clamp((double) length / 255D, 0.1D, 1) * multiplier; ++ ++ if (multiByteCharacters > 1) { ++ // Penalize multibyte characters ++ byteAllowed -= multiByteCharacters; + } + } + + if (byteTotal > byteAllowed) { -+ ServerGamePacketListenerImpl.LOGGER.warn(this.player.getScoreboardName() + " tried to send too large of a book. Book Size: " + byteTotal + " - Allowed: "+ byteAllowed + " - Pages: " + pageList.size()); -+ server.scheduleOnMain(() -> this.disconnect("Book too large!")); ++ ServerGamePacketListenerImpl.LOGGER.warn("{} tried to send a book too large. Book size: {} - Allowed: {} - Pages: {}", this.player.getScoreboardName(), byteTotal, byteAllowed, pageList.size()); ++ this.disconnect(Component.literal("Book too large!")); + return; + } + } diff --git a/patches/server/0282-Limit-Client-Sign-length-more.patch b/patches/server/0282-Limit-Client-Sign-length-more.patch index 68d596c6cf..5c0437e412 100644 --- a/patches/server/0282-Limit-Client-Sign-length-more.patch +++ b/patches/server/0282-Limit-Client-Sign-length-more.patch @@ -22,7 +22,7 @@ it only impacts data sent from the client. Set -DPaper.maxSignLength=XX to change limit or -1 to disable diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 04a9c48b9a9895ffe6ec0721bdfafb1b524bf386..e728b9f317d12c3c452db70ba7d1e930c84e345d 100644 +index e597a9d637a23b9fe307032a09d560ad0ebc2c4a..31f97b258ce4c80ef47596e93f7ccdece7b8dc9e 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -299,6 +299,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -33,7 +33,7 @@ index 04a9c48b9a9895ffe6ec0721bdfafb1b524bf386..e728b9f317d12c3c452db70ba7d1e930 public ServerGamePacketListenerImpl(MinecraftServer server, Connection connection, ServerPlayer player, CommonListenerCookie clientData) { super(server, connection, clientData, player); // CraftBukkit -@@ -3134,7 +3135,19 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3132,7 +3133,19 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @Override public void handleSignUpdate(ServerboundSignUpdatePacket packet) { diff --git a/patches/server/0358-Prevent-teleporting-dead-entities.patch b/patches/server/0358-Prevent-teleporting-dead-entities.patch index 034646a8bb..ecffde17d7 100644 --- a/patches/server/0358-Prevent-teleporting-dead-entities.patch +++ b/patches/server/0358-Prevent-teleporting-dead-entities.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Prevent teleporting dead entities diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 7277c9b82c127cd38db2daec3df4d33e8376b8dc..d0ce184da22352b591f4783918104a4c473cc873 100644 +index 165ff42656c863dbddd4072da8b6227243a64a95..c6051fd059ca48ced72e9dbddf9f2f89b6862bfc 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1540,6 +1540,13 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1538,6 +1538,13 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } public void internalTeleport(double d0, double d1, double d2, float f, float f1, Set set) { // Paper diff --git a/patches/server/0374-Prevent-position-desync-causing-tp-exploit.patch b/patches/server/0374-Prevent-position-desync-causing-tp-exploit.patch index 92eeabe500..17667e0811 100644 --- a/patches/server/0374-Prevent-position-desync-causing-tp-exploit.patch +++ b/patches/server/0374-Prevent-position-desync-causing-tp-exploit.patch @@ -13,10 +13,10 @@ behaviour, we need to move all of this dangerous logic outside of the move call and into an appropriate place in the tick method. diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index d0ce184da22352b591f4783918104a4c473cc873..7fab3281116aa917c96223c1a1caf6280293df65 100644 +index c6051fd059ca48ced72e9dbddf9f2f89b6862bfc..669ac3cb6ab7f350fcf3e12982436a4cad7a1cc3 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1355,6 +1355,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1353,6 +1353,11 @@ 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 diff --git a/patches/server/0376-Add-PlayerRecipeBookClickEvent.patch b/patches/server/0376-Add-PlayerRecipeBookClickEvent.patch index 2f223b4810..ac780aa49c 100644 --- a/patches/server/0376-Add-PlayerRecipeBookClickEvent.patch +++ b/patches/server/0376-Add-PlayerRecipeBookClickEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add PlayerRecipeBookClickEvent diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 7fab3281116aa917c96223c1a1caf6280293df65..591f4f43dd023facf0a8990682069190c388d64b 100644 +index 669ac3cb6ab7f350fcf3e12982436a4cad7a1cc3..808207eac07368e32f77032bc3c04694c56749a7 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -3041,16 +3041,40 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3039,16 +3039,40 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl if (!this.player.containerMenu.stillValid(this.player)) { ServerGamePacketListenerImpl.LOGGER.debug("Player {} interacted with invalid menu {}", this.player, this.player.containerMenu); } else { diff --git a/patches/server/0380-Fix-Per-World-Difficulty-Remembering-Difficulty.patch b/patches/server/0380-Fix-Per-World-Difficulty-Remembering-Difficulty.patch index c848c30dab..0631d9a027 100644 --- a/patches/server/0380-Fix-Per-World-Difficulty-Remembering-Difficulty.patch +++ b/patches/server/0380-Fix-Per-World-Difficulty-Remembering-Difficulty.patch @@ -63,7 +63,7 @@ index 997a96a21440ae72696d68f8031ece4ba487d3ef..3d8584929cee000ae7df10c5bd94f358 return Component.translatable("commands.difficulty.success", difficulty.getDisplayName()); }, true); diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index 3d33504eac6af17c8833de11226968d52f96232f..4d7c2832a9cd9a88b99c837a02df7fa91e572658 100644 +index 539a8ddfcf660bf824325516c88cf91f4a32a746..1bc8217cf1df95edadd57e18a91885808d31cb93 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -346,7 +346,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -89,10 +89,10 @@ index bf6c81300d29c445a1012d1159866547c202d135..e6a24484ef11a1d815a85126aec22154 playerlist.sendPlayerPermissionLevel(this); diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 299a2e78f4a83d224038c80287636a5d6b9b7450..95d20facdc43a356fd2e82f5d597f52ee61791dc 100644 +index c265889aa577c87706d658145954e95e0dc2a713..856f91450e746ff4d8b1105db6e87c8d8aa8168a 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -3244,7 +3244,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3242,7 +3242,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl public void handleChangeDifficulty(ServerboundChangeDifficultyPacket packet) { PacketUtils.ensureRunningOnSameThread(packet, this, this.player.serverLevel()); if (this.player.hasPermissions(2) || this.isSingleplayerOwner()) { diff --git a/patches/server/0384-Add-BlockStateMeta-clearBlockState.patch b/patches/server/0384-Add-BlockStateMeta-clearBlockState.patch index 88d5b8fb28..ab073dc3fd 100644 --- a/patches/server/0384-Add-BlockStateMeta-clearBlockState.patch +++ b/patches/server/0384-Add-BlockStateMeta-clearBlockState.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add BlockStateMeta#clearBlockState diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBlockState.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBlockState.java -index a72a3ea995a874150325189e11dc2bd338bd3bbf..9034905aabf057f387b65957a254d056b12e0519 100644 +index 70fb5ce3cf57f8f55715f5aa18885756a7a512e7..a433e41ee3728310c63180d8c80190f9f0454fa1 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBlockState.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBlockState.java -@@ -292,6 +292,13 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta +@@ -294,6 +294,13 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta return this.blockEntityTag != null; } diff --git a/patches/server/0385-Convert-legacy-attributes-in-Item-Meta.patch b/patches/server/0385-Convert-legacy-attributes-in-Item-Meta.patch index 3836de6364..13ed176ccb 100644 --- a/patches/server/0385-Convert-legacy-attributes-in-Item-Meta.patch +++ b/patches/server/0385-Convert-legacy-attributes-in-Item-Meta.patch @@ -30,10 +30,10 @@ index de40e522960469b98f987bd688489740446d9f85..5678d2007d5adf45dec0638c5dd848b6 public CraftAttributeMap(AttributeMap handle) { this.handle = handle; diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index f5689a447bb990d5e2acbb35ce3d02419f4a00e8..ce6767537bd0f8eb5c28eef9d50e042c5a9b4b4b 100644 +index fffd4e86f3bbb6ca356ab6436b26555d80f42d34..40093f20f9c9e332caf197d9b626ba2105ed4098 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -@@ -644,7 +644,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -651,7 +651,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { AttributeModifier attribMod = CraftAttributeInstance.convert(nmsModifier); diff --git a/patches/server/0386-Do-not-accept-invalid-client-settings.patch b/patches/server/0386-Do-not-accept-invalid-client-settings.patch index 0cfa8d4f81..1af7bd8be7 100644 --- a/patches/server/0386-Do-not-accept-invalid-client-settings.patch +++ b/patches/server/0386-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 95d20facdc43a356fd2e82f5d597f52ee61791dc..bc9c68c4df11ece9a9cba9b8cff1182c1d21551f 100644 +index 856f91450e746ff4d8b1105db6e87c8d8aa8168a..1e4146a200617dda795fdf4922d61d09526b4f8b 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -3236,6 +3236,13 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3234,6 +3234,13 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @Override public void handleClientInformation(ServerboundClientInformationPacket packet) { PacketUtils.ensureRunningOnSameThread(packet, this, this.player.serverLevel()); diff --git a/patches/server/0416-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch b/patches/server/0416-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch index b84a902592..9dc560c275 100644 --- a/patches/server/0416-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch +++ b/patches/server/0416-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch @@ -9,7 +9,7 @@ as this is how Vanilla teleports entities. Cancel any pending motion when teleported. diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index bc9c68c4df11ece9a9cba9b8cff1182c1d21551f..5d8b1fb9ee96ca397b8f3a0629bc4273ee21f41c 100644 +index 1e4146a200617dda795fdf4922d61d09526b4f8b..965e4843e4f7ef013420669f67a85f0a46c3d4c9 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -676,7 +676,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -21,7 +21,7 @@ index bc9c68c4df11ece9a9cba9b8cff1182c1d21551f..5d8b1fb9ee96ca397b8f3a0629bc4273 this.lastGoodX = this.awaitingPositionFromClient.x; this.lastGoodY = this.awaitingPositionFromClient.y; this.lastGoodZ = this.awaitingPositionFromClient.z; -@@ -1583,7 +1583,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1581,7 +1581,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.awaitingTeleportTime = this.tickCount; this.player.resetCurrentImpulseContext(); @@ -31,7 +31,7 @@ index bc9c68c4df11ece9a9cba9b8cff1182c1d21551f..5d8b1fb9ee96ca397b8f3a0629bc4273 } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 184d8bdca8aa06b6a1f00bab03e8c2688a391663..0b98618cb0b0e9c4b13415ab0e535cdfbd55b224 100644 +index 084824335dc4c83d331cac2da8fdd5604d650b5d..f66c382a1365f559c833cbfd70f8b6db34e8133a 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -165,6 +165,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess diff --git a/patches/server/0426-Fix-for-large-move-vectors-crashing-server.patch b/patches/server/0426-Fix-for-large-move-vectors-crashing-server.patch index 5d5bf70211..e4fe4052bc 100644 --- a/patches/server/0426-Fix-for-large-move-vectors-crashing-server.patch +++ b/patches/server/0426-Fix-for-large-move-vectors-crashing-server.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Fix for large move vectors crashing server Check movement distance also based on current position. diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 5d8b1fb9ee96ca397b8f3a0629bc4273ee21f41c..a1f17d1044d6ecb05c98af45e77f92229e377114 100644 +index 965e4843e4f7ef013420669f67a85f0a46c3d4c9..b0b48b9156ce3289f69b90e60b5aac6be6125303 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -492,9 +492,9 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -53,7 +53,7 @@ index 5d8b1fb9ee96ca397b8f3a0629bc4273ee21f41c..a1f17d1044d6ecb05c98af45e77f9222 boolean flag1 = entity.verticalCollisionBelow; if (entity instanceof LivingEntity) { -@@ -1259,7 +1268,16 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1257,7 +1266,16 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl double d7 = d1 - this.firstGoodY; double d8 = d2 - this.firstGoodZ; double d9 = this.player.getDeltaMovement().lengthSqr(); @@ -71,7 +71,7 @@ index 5d8b1fb9ee96ca397b8f3a0629bc4273ee21f41c..a1f17d1044d6ecb05c98af45e77f9222 if (this.player.isSleeping()) { if (d10 > 1.0D) { -@@ -1315,9 +1333,9 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1313,9 +1331,9 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl AABB axisalignedbb = this.player.getBoundingBox(); diff --git a/patches/server/0451-Limit-recipe-packets.patch b/patches/server/0451-Limit-recipe-packets.patch index ff56a355b5..a548a98004 100644 --- a/patches/server/0451-Limit-recipe-packets.patch +++ b/patches/server/0451-Limit-recipe-packets.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Limit recipe packets diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index a1f17d1044d6ecb05c98af45e77f92229e377114..35c8aa3971de05be66acd49b6a0b76cba59f93ac 100644 +index b0b48b9156ce3289f69b90e60b5aac6be6125303..b69292473c2c7dc87d11e01cbbd6c9efe6654544 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -266,6 +266,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -24,7 +24,7 @@ index a1f17d1044d6ecb05c98af45e77f92229e377114..35c8aa3971de05be66acd49b6a0b76cb /* Use thread-safe field access instead if (this.chatSpamTickCount > 0) { --this.chatSpamTickCount; -@@ -3053,6 +3055,14 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3051,6 +3053,14 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @Override public void handlePlaceRecipe(ServerboundPlaceRecipePacket packet) { diff --git a/patches/server/0466-Fix-interact-event-not-being-called-sometimes.patch b/patches/server/0466-Fix-interact-event-not-being-called-sometimes.patch index 96d7a637db..0a435975dc 100644 --- a/patches/server/0466-Fix-interact-event-not-being-called-sometimes.patch +++ b/patches/server/0466-Fix-interact-event-not-being-called-sometimes.patch @@ -11,10 +11,10 @@ Subject: [PATCH] Fix interact event not being called sometimes Co-authored-by: Moulberry diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 35c8aa3971de05be66acd49b6a0b76cba59f93ac..362bd15dc359762095bdc5120a25460227a0175e 100644 +index b69292473c2c7dc87d11e01cbbd6c9efe6654544..fb3acbce31d59b9d7e17cd529e438d7479824142 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1759,7 +1759,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1757,7 +1757,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl MutableComponent ichatmutablecomponent = Component.translatable("build.tooHigh", i - 1).withStyle(ChatFormatting.RED); this.player.sendSystemMessage(ichatmutablecomponent, true); @@ -23,7 +23,7 @@ index 35c8aa3971de05be66acd49b6a0b76cba59f93ac..362bd15dc359762095bdc5120a254602 this.player.swing(enumhand, true); } } -@@ -2375,13 +2375,20 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2373,13 +2373,20 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl double d3 = this.player.gameMode.getGameModeForPlayer() == GameType.CREATIVE ? 5.0D : 4.5D; // SPIGOT-5607: Only call interact event if no block or entity is being clicked. Use bukkit ray trace method, because it handles blocks and entities at the same time // SPIGOT-7429: Make sure to call PlayerInteractEvent for spectators and non-pickable entities diff --git a/patches/server/0510-Allow-using-signs-inside-spawn-protection.patch b/patches/server/0510-Allow-using-signs-inside-spawn-protection.patch index 560f3be3dd..e92a44aa0e 100644 --- a/patches/server/0510-Allow-using-signs-inside-spawn-protection.patch +++ b/patches/server/0510-Allow-using-signs-inside-spawn-protection.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Allow using signs inside spawn protection diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 362bd15dc359762095bdc5120a25460227a0175e..55c311ddc8add7d5838d112bc3a71baeb52356a8 100644 +index fb3acbce31d59b9d7e17cd529e438d7479824142..878244184f626650a8ea65ea9a0f5aeb7183862d 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1747,8 +1747,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1745,8 +1745,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl int i = this.player.level().getMaxBuildHeight(); if (blockposition.getY() < i) { diff --git a/patches/server/0515-Don-t-ignore-result-of-PlayerEditBookEvent.patch b/patches/server/0515-Don-t-ignore-result-of-PlayerEditBookEvent.patch index 16d596879b..fa06c428d3 100644 --- a/patches/server/0515-Don-t-ignore-result-of-PlayerEditBookEvent.patch +++ b/patches/server/0515-Don-t-ignore-result-of-PlayerEditBookEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Don't ignore result of PlayerEditBookEvent diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 55c311ddc8add7d5838d112bc3a71baeb52356a8..cf53e6270ef3cdd3baa251e813eeb3526919bbcc 100644 +index 878244184f626650a8ea65ea9a0f5aeb7183862d..2046b98a16eaef61a3fb4e0a43bc485b1d76d7cd 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1152,7 +1152,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1150,7 +1150,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl List> list1 = pages.stream().map(this::filterableFromOutgoing).toList(); itemstack.set(DataComponents.WRITABLE_BOOK_CONTENT, new WritableBookContent(list1)); diff --git a/patches/server/0525-fix-PlayerItemHeldEvent-firing-twice.patch b/patches/server/0525-fix-PlayerItemHeldEvent-firing-twice.patch index ea56241b84..3f46d95e18 100644 --- a/patches/server/0525-fix-PlayerItemHeldEvent-firing-twice.patch +++ b/patches/server/0525-fix-PlayerItemHeldEvent-firing-twice.patch @@ -5,10 +5,10 @@ Subject: [PATCH] fix PlayerItemHeldEvent firing twice diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index cf53e6270ef3cdd3baa251e813eeb3526919bbcc..22da7f7c4b033d31b7a71878e34562a4370a4bd4 100644 +index 2046b98a16eaef61a3fb4e0a43bc485b1d76d7cd..243e06053e18410fbae2a76b2f8585394ebd02f3 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1917,6 +1917,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1915,6 +1915,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl PacketUtils.ensureRunningOnSameThread(packet, this, this.player.serverLevel()); if (this.player.isImmobile()) return; // CraftBukkit if (packet.getSlot() >= 0 && packet.getSlot() < Inventory.getSelectionSize()) { diff --git a/patches/server/0530-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch b/patches/server/0530-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch index 26cdea3136..99d01d1c06 100644 --- a/patches/server/0530-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch +++ b/patches/server/0530-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Expand PlayerRespawnEvent, fix passed parameter issues Co-authored-by: Jake Potrebic diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 22da7f7c4b033d31b7a71878e34562a4370a4bd4..c8124bf451f5d03374f32a04b9b28fc9d97897ae 100644 +index 243e06053e18410fbae2a76b2f8585394ebd02f3..1cf451689cc2e197ebf89f799f986dc2db53f6c3 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2706,7 +2706,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2704,7 +2704,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl case PERFORM_RESPAWN: if (this.player.wonGame) { this.player.wonGame = false; diff --git a/patches/server/0542-Expand-PlayerGameModeChangeEvent.patch b/patches/server/0542-Expand-PlayerGameModeChangeEvent.patch index e528dfbb6a..1e0d09cc13 100644 --- a/patches/server/0542-Expand-PlayerGameModeChangeEvent.patch +++ b/patches/server/0542-Expand-PlayerGameModeChangeEvent.patch @@ -132,10 +132,10 @@ index de3ec353ea32d5d71e2f1b4b369b79b85d7ce5e8..c55d944a70300bf77dbde918c91815ca } diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index c8124bf451f5d03374f32a04b9b28fc9d97897ae..4a5553335cd6bbad8d3a05694710d95c96f62b9d 100644 +index 1cf451689cc2e197ebf89f799f986dc2db53f6c3..2aeff021e37e0105e602310cb0bc4a7f4c68017c 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2715,7 +2715,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2713,7 +2713,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.player = this.server.getPlayerList().respawn(this.player, false, RespawnReason.DEATH); if (this.server.isHardcore()) { @@ -145,7 +145,7 @@ index c8124bf451f5d03374f32a04b9b28fc9d97897ae..4a5553335cd6bbad8d3a05694710d95c } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 330e9c37c889b1573520090173401a0615d19592..8d78d5ecd17dcd56056f5bade6f047e30187ee2f 100644 +index 2d6de1734cb715554ca732d850b8df9591a3efb7..9a3ba0011f306a3cd1e3c60fcc329ab93011ebd8 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1640,7 +1640,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0545-Move-range-check-for-block-placing-up.patch b/patches/server/0545-Move-range-check-for-block-placing-up.patch index 44913b8c49..795c82855a 100644 --- a/patches/server/0545-Move-range-check-for-block-placing-up.patch +++ b/patches/server/0545-Move-range-check-for-block-placing-up.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Move range check for block placing up diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 4a5553335cd6bbad8d3a05694710d95c96f62b9d..a04c7677ded862890e6e809db610817b4cfff56a 100644 +index 2aeff021e37e0105e602310cb0bc4a7f4c68017c..886bb4ea3fca0b4c815b21a025d48b1e3363bf00 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1734,6 +1734,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1732,6 +1732,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl if (itemstack.isItemEnabled(worldserver.enabledFeatures())) { BlockHitResult movingobjectpositionblock = packet.getHitResult(); Vec3 vec3d = movingobjectpositionblock.getLocation(); diff --git a/patches/server/0548-Add-Unix-domain-socket-support.patch b/patches/server/0548-Add-Unix-domain-socket-support.patch index 054790699a..37a6f1e30f 100644 --- a/patches/server/0548-Add-Unix-domain-socket-support.patch +++ b/patches/server/0548-Add-Unix-domain-socket-support.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add Unix domain socket support diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index 5d62639b18d0bf8f5f7c8adc3470a6087980241b..4bc7b3d7c5214b3272614fe3fce8e4d8d2264867 100644 +index c0261c3cd6de850edbd197272c2d1c52f76e6ebe..b8043b7e778792153620923ea228c1a211c27969 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -232,6 +232,20 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -87,10 +87,10 @@ index d6d7f1c446ba5507f67038ff27775ba75156f4a7..c63c194c44646e6bc1a5942655278701 } diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index a04c7677ded862890e6e809db610817b4cfff56a..f4c6e815253f3e49577c554bf632e5c9f4f578ff 100644 +index 886bb4ea3fca0b4c815b21a025d48b1e3363bf00..eeb30a6e015dc16553248701e12db2820a70a1aa 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2534,6 +2534,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2532,6 +2532,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl // Spigot Start public SocketAddress getRawAddress() { diff --git a/patches/server/0554-Add-PlayerKickEvent-causes.patch b/patches/server/0554-Add-PlayerKickEvent-causes.patch index 5e3f4ce433..2c7c43865b 100644 --- a/patches/server/0554-Add-PlayerKickEvent-causes.patch +++ b/patches/server/0554-Add-PlayerKickEvent-causes.patch @@ -43,7 +43,7 @@ index dbcf183483766f39334d7f7e8336033906625f3f..300929a406905f5ff1ede664d5b99fb0 } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 7353beeea3f1e02d62a4d2456124edcf723371f3..2986dc458ddbd642669c6c2c104df2a2446e5b11 100644 +index 5c47573843c25b0d15037a28e55b616c829f694d..cdbdacee826c424177096ee78427eaf80131b5fd 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -2266,7 +2266,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 256 * 4) { - ServerGamePacketListenerImpl.LOGGER.warn(this.player.getScoreboardName() + " tried to send a book with with a page too large!"); -- server.scheduleOnMain(() -> this.disconnect("Book too large!")); -+ server.scheduleOnMain(() -> this.disconnect("Book too large!", org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_ACTION)); // Paper - kick event cause - return; - } - byteTotal += byteLength; -@@ -1108,14 +1108,14 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1106,14 +1106,14 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl if (byteTotal > byteAllowed) { - ServerGamePacketListenerImpl.LOGGER.warn(this.player.getScoreboardName() + " tried to send too large of a book. Book Size: " + byteTotal + " - Allowed: "+ byteAllowed + " - Pages: " + pageList.size()); -- server.scheduleOnMain(() -> this.disconnect("Book too large!")); -+ server.scheduleOnMain(() -> this.disconnect("Book too large!", org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_ACTION)); // Paper - kick event cause + ServerGamePacketListenerImpl.LOGGER.warn("{} tried to send a book too large. Book size: {} - Allowed: {} - Pages: {}", this.player.getScoreboardName(), byteTotal, byteAllowed, pageList.size()); +- this.disconnect(Component.literal("Book too large!")); ++ this.disconnect("Book too large!", org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_ACTION); // Paper - kick event cause return; } } @@ -314,7 +305,7 @@ index f4c6e815253f3e49577c554bf632e5c9f4f578ff..1f6e123fbd146129e5460631fdd88de9 return; } this.lastBookTick = MinecraftServer.currentTick; -@@ -1227,7 +1227,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1225,7 +1225,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl public void handleMovePlayer(ServerboundMovePlayerPacket packet) { PacketUtils.ensureRunningOnSameThread(packet, this, this.player.serverLevel()); if (ServerGamePacketListenerImpl.containsInvalidValues(packet.getX(0.0D), packet.getY(0.0D), packet.getZ(0.0D), packet.getYRot(0.0F), packet.getXRot(0.0F))) { @@ -323,7 +314,7 @@ index f4c6e815253f3e49577c554bf632e5c9f4f578ff..1f6e123fbd146129e5460631fdd88de9 } else { ServerLevel worldserver = this.player.serverLevel(); -@@ -1656,7 +1656,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1654,7 +1654,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.dropCount++; if (this.dropCount >= 20) { ServerGamePacketListenerImpl.LOGGER.warn(this.player.getScoreboardName() + " dropped their items too quickly!"); @@ -332,7 +323,7 @@ index f4c6e815253f3e49577c554bf632e5c9f4f578ff..1f6e123fbd146129e5460631fdd88de9 return; } } -@@ -1939,7 +1939,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1937,7 +1937,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.player.resetLastActionTime(); } else { ServerGamePacketListenerImpl.LOGGER.warn("{} tried to set an invalid carried item", this.player.getName().getString()); @@ -341,7 +332,7 @@ index f4c6e815253f3e49577c554bf632e5c9f4f578ff..1f6e123fbd146129e5460631fdd88de9 } } -@@ -2137,7 +2137,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2135,7 +2135,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl private void tryHandleChat(String s, Runnable runnable, boolean sync) { // CraftBukkit if (ServerGamePacketListenerImpl.isChatMessageIllegal(s)) { @@ -350,7 +341,7 @@ index f4c6e815253f3e49577c554bf632e5c9f4f578ff..1f6e123fbd146129e5460631fdd88de9 } else if (this.player.isRemoved() || this.player.getChatVisibility() == ChatVisiblity.HIDDEN) { // CraftBukkit - dead men tell no tales this.send(new ClientboundSystemChatPacket(Component.translatable("chat.disabled.options").withStyle(ChatFormatting.RED), false)); } else { -@@ -2160,7 +2160,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2158,7 +2158,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl if (optional.isEmpty()) { ServerGamePacketListenerImpl.LOGGER.warn("Failed to validate message acknowledgements from {}", this.player.getName().getString()); @@ -359,7 +350,7 @@ index f4c6e815253f3e49577c554bf632e5c9f4f578ff..1f6e123fbd146129e5460631fdd88de9 } return optional; -@@ -2346,7 +2346,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2344,7 +2344,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl // this.chatSpamTickCount += 20; if (this.chatSpamTickCount.addAndGet(20) > 200 && !this.server.getPlayerList().isOp(this.player.getGameProfile())) { // CraftBukkit end @@ -368,7 +359,7 @@ index f4c6e815253f3e49577c554bf632e5c9f4f578ff..1f6e123fbd146129e5460631fdd88de9 } } -@@ -2358,7 +2358,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2356,7 +2356,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl synchronized (this.lastSeenMessages) { if (!this.lastSeenMessages.applyOffset(packet.offset())) { ServerGamePacketListenerImpl.LOGGER.warn("Failed to validate message acknowledgements from {}", this.player.getName().getString()); @@ -377,7 +368,7 @@ index f4c6e815253f3e49577c554bf632e5c9f4f578ff..1f6e123fbd146129e5460631fdd88de9 } } -@@ -2506,7 +2506,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2504,7 +2504,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } if (i > 4096) { @@ -386,7 +377,7 @@ index f4c6e815253f3e49577c554bf632e5c9f4f578ff..1f6e123fbd146129e5460631fdd88de9 } } -@@ -2564,7 +2564,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2562,7 +2562,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl // Spigot Start if ( entity == this.player && !this.player.isSpectator() ) { @@ -395,7 +386,7 @@ index f4c6e815253f3e49577c554bf632e5c9f4f578ff..1f6e123fbd146129e5460631fdd88de9 return; } // Spigot End -@@ -2678,7 +2678,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2676,7 +2676,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } } @@ -404,7 +395,7 @@ index f4c6e815253f3e49577c554bf632e5c9f4f578ff..1f6e123fbd146129e5460631fdd88de9 ServerGamePacketListenerImpl.LOGGER.warn("Player {} tried to attack an invalid entity", ServerGamePacketListenerImpl.this.player.getName().getString()); } }); -@@ -3075,7 +3075,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3073,7 +3073,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl // Paper start - auto recipe limit if (!org.bukkit.Bukkit.isPrimaryThread()) { if (this.recipeSpamPackets.addAndGet(io.papermc.paper.configuration.GlobalConfiguration.get().spamLimiter.recipeSpamIncrement) > io.papermc.paper.configuration.GlobalConfiguration.get().spamLimiter.recipeSpamLimit) { @@ -413,7 +404,7 @@ index f4c6e815253f3e49577c554bf632e5c9f4f578ff..1f6e123fbd146129e5460631fdd88de9 return; } } -@@ -3317,7 +3317,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3315,7 +3315,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl if (!Objects.equals(profilepublickey_a, profilepublickey_a1)) { if (profilepublickey_a != null && profilepublickey_a1.expiresAt().isBefore(profilepublickey_a.expiresAt())) { @@ -422,7 +413,7 @@ index f4c6e815253f3e49577c554bf632e5c9f4f578ff..1f6e123fbd146129e5460631fdd88de9 } else { try { SignatureValidator signaturevalidator = this.server.getProfileKeySignatureValidator(); -@@ -3330,7 +3330,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3328,7 +3328,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.resetPlayerChatState(remotechatsession_a.validate(this.player.getGameProfile(), signaturevalidator)); } catch (ProfilePublicKey.ValidationException profilepublickey_b) { ServerGamePacketListenerImpl.LOGGER.error("Failed to validate profile key: {}", profilepublickey_b.getMessage()); @@ -486,7 +477,7 @@ index f472dea0bd4f834c0c8f0aa59ae7cdae082b14af..2fa51c3a70f43cd23b8f494fc643d66c } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 8d78d5ecd17dcd56056f5bade6f047e30187ee2f..6c759f6860c7eccb634c1c0cda6d8e24196023d1 100644 +index 9a3ba0011f306a3cd1e3c60fcc329ab93011ebd8..eee0c49bbf9bc768fcf7275c29536b4f16b1d421 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -633,7 +633,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0570-Ensure-disconnect-for-book-edit-is-called-on-main.patch b/patches/server/0570-Ensure-disconnect-for-book-edit-is-called-on-main.patch deleted file mode 100644 index 09e73af027..0000000000 --- a/patches/server/0570-Ensure-disconnect-for-book-edit-is-called-on-main.patch +++ /dev/null @@ -1,19 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Shane Freeder -Date: Tue, 22 Jun 2021 19:58:53 +0100 -Subject: [PATCH] Ensure disconnect for book edit is called on main - - -diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 1f6e123fbd146129e5460631fdd88de9dd60bdca..66d6bd361edfb04eeed4076feb20cb8861d48874 100644 ---- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1115,7 +1115,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl - // Paper end - Book size limits - // CraftBukkit start - if (this.lastBookTick + 20 > MinecraftServer.currentTick) { -- this.disconnect("Book edited too quickly!", org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_ACTION); // Paper - kick event cause -+ server.scheduleOnMain(() -> this.disconnect("Book edited too quickly!", org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_ACTION)); // Paper - kick event cause // Paper - Also ensure this is called on main - return; - } - this.lastBookTick = MinecraftServer.currentTick; diff --git a/patches/server/0571-Fix-return-value-of-Block-applyBoneMeal-always-being.patch b/patches/server/0570-Fix-return-value-of-Block-applyBoneMeal-always-being.patch similarity index 100% rename from patches/server/0571-Fix-return-value-of-Block-applyBoneMeal-always-being.patch rename to patches/server/0570-Fix-return-value-of-Block-applyBoneMeal-always-being.patch diff --git a/patches/server/0572-Use-getChunkIfLoadedImmediately-in-places.patch b/patches/server/0571-Use-getChunkIfLoadedImmediately-in-places.patch similarity index 100% rename from patches/server/0572-Use-getChunkIfLoadedImmediately-in-places.patch rename to patches/server/0571-Use-getChunkIfLoadedImmediately-in-places.patch diff --git a/patches/server/0573-Fix-commands-from-signs-not-firing-command-events.patch b/patches/server/0572-Fix-commands-from-signs-not-firing-command-events.patch similarity index 100% rename from patches/server/0573-Fix-commands-from-signs-not-firing-command-events.patch rename to patches/server/0572-Fix-commands-from-signs-not-firing-command-events.patch diff --git a/patches/server/0574-Add-PlayerArmSwingEvent.patch b/patches/server/0573-Add-PlayerArmSwingEvent.patch similarity index 88% rename from patches/server/0574-Add-PlayerArmSwingEvent.patch rename to patches/server/0573-Add-PlayerArmSwingEvent.patch index 0c66804f9a..9cf17a0903 100644 --- a/patches/server/0574-Add-PlayerArmSwingEvent.patch +++ b/patches/server/0573-Add-PlayerArmSwingEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add PlayerArmSwingEvent diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 66d6bd361edfb04eeed4076feb20cb8861d48874..dd3767f482929d7d8105a4164c27651099935a89 100644 +index eb13c0e8feb4a6933ae6063a2208b694cf29a342..5544ba7a5f61f24d081373f56f82e4ef0ef1f3f0 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2396,7 +2396,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2394,7 +2394,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } // Paper end - Call interact event // Arm swing animation diff --git a/patches/server/0575-Fix-kick-event-leave-message-not-being-sent.patch b/patches/server/0574-Fix-kick-event-leave-message-not-being-sent.patch similarity index 96% rename from patches/server/0575-Fix-kick-event-leave-message-not-being-sent.patch rename to patches/server/0574-Fix-kick-event-leave-message-not-being-sent.patch index 0aebdf0ac4..312e25e58e 100644 --- a/patches/server/0575-Fix-kick-event-leave-message-not-being-sent.patch +++ b/patches/server/0574-Fix-kick-event-leave-message-not-being-sent.patch @@ -50,10 +50,10 @@ index 7659a3f50f5a90814dc7331ea00d6251dcf32600..308aef9c4933b2bcdd622a34b68efab4 MinecraftServer minecraftserver = this.server; Connection networkmanager = this.connection; diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index dd3767f482929d7d8105a4164c27651099935a89..5ba7340d3860975b826dc878385e0879a9f07957 100644 +index 5544ba7a5f61f24d081373f56f82e4ef0ef1f3f0..2722d22a9204554c1b52aa853b50f1ce285f3833 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1878,6 +1878,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1876,6 +1876,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @Override public void onDisconnect(Component reason) { @@ -66,7 +66,7 @@ index dd3767f482929d7d8105a4164c27651099935a89..5ba7340d3860975b826dc878385e0879 // CraftBukkit start - Rarely it would send a disconnect line twice if (this.processedDisconnect) { return; -@@ -1886,11 +1892,17 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1884,11 +1890,17 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } // CraftBukkit end ServerGamePacketListenerImpl.LOGGER.info("{} lost connection: {}", this.player.getName().getString(), reason.getString()); @@ -86,7 +86,7 @@ index dd3767f482929d7d8105a4164c27651099935a89..5ba7340d3860975b826dc878385e0879 this.chatMessageChain.close(); // CraftBukkit start - Replace vanilla quit message handling with our own. /* -@@ -1900,7 +1912,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1898,7 +1910,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.player.disconnect(); // Paper start - Adventure diff --git a/patches/server/0576-Don-t-apply-cramming-damage-to-players.patch b/patches/server/0575-Don-t-apply-cramming-damage-to-players.patch similarity index 100% rename from patches/server/0576-Don-t-apply-cramming-damage-to-players.patch rename to patches/server/0575-Don-t-apply-cramming-damage-to-players.patch diff --git a/patches/server/0577-Rate-options-and-timings-for-sensors-and-behaviors.patch b/patches/server/0576-Rate-options-and-timings-for-sensors-and-behaviors.patch similarity index 100% rename from patches/server/0577-Rate-options-and-timings-for-sensors-and-behaviors.patch rename to patches/server/0576-Rate-options-and-timings-for-sensors-and-behaviors.patch diff --git a/patches/server/0578-Add-missing-forceDrop-toggles.patch b/patches/server/0577-Add-missing-forceDrop-toggles.patch similarity index 100% rename from patches/server/0578-Add-missing-forceDrop-toggles.patch rename to patches/server/0577-Add-missing-forceDrop-toggles.patch diff --git a/patches/server/0579-Stinger-API.patch b/patches/server/0578-Stinger-API.patch similarity index 100% rename from patches/server/0579-Stinger-API.patch rename to patches/server/0578-Stinger-API.patch diff --git a/patches/server/0580-Add-System.out-err-catcher.patch b/patches/server/0579-Add-System.out-err-catcher.patch similarity index 100% rename from patches/server/0580-Add-System.out-err-catcher.patch rename to patches/server/0579-Add-System.out-err-catcher.patch diff --git a/patches/server/0581-Prevent-AFK-kick-while-watching-end-credits.patch b/patches/server/0580-Prevent-AFK-kick-while-watching-end-credits.patch similarity index 93% rename from patches/server/0581-Prevent-AFK-kick-while-watching-end-credits.patch rename to patches/server/0580-Prevent-AFK-kick-while-watching-end-credits.patch index 92d95bf1df..2537fe43fe 100644 --- a/patches/server/0581-Prevent-AFK-kick-while-watching-end-credits.patch +++ b/patches/server/0580-Prevent-AFK-kick-while-watching-end-credits.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Prevent AFK kick while watching end credits diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 5ba7340d3860975b826dc878385e0879a9f07957..40d2c7bfc8ba8b8b366f23e53cf37f331e19ccf7 100644 +index 2722d22a9204554c1b52aa853b50f1ce285f3833..2da768a99617379a0f74c61303e1ca0bd4b12f6f 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -397,7 +397,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0582-Allow-skipping-writing-of-comments-to-server.propert.patch b/patches/server/0581-Allow-skipping-writing-of-comments-to-server.propert.patch similarity index 100% rename from patches/server/0582-Allow-skipping-writing-of-comments-to-server.propert.patch rename to patches/server/0581-Allow-skipping-writing-of-comments-to-server.propert.patch diff --git a/patches/server/0583-Add-PlayerSetSpawnEvent.patch b/patches/server/0582-Add-PlayerSetSpawnEvent.patch similarity index 99% rename from patches/server/0583-Add-PlayerSetSpawnEvent.patch rename to patches/server/0582-Add-PlayerSetSpawnEvent.patch index 6ffc931866..28d5ca16f6 100644 --- a/patches/server/0583-Add-PlayerSetSpawnEvent.patch +++ b/patches/server/0582-Add-PlayerSetSpawnEvent.patch @@ -187,7 +187,7 @@ index ba22ad1e4253477572d10d71db6db0ebc14d6755..94d067e9eeee73183de25165d8c97043 } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 6c759f6860c7eccb634c1c0cda6d8e24196023d1..bb75c965266fefa58919823e5fcc9f56f11b04d0 100644 +index eee0c49bbf9bc768fcf7275c29536b4f16b1d421..634da85870b31a9fc09d53f5670239e18bcb3d47 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1399,9 +1399,9 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0584-Make-hoppers-respect-inventory-max-stack-size.patch b/patches/server/0583-Make-hoppers-respect-inventory-max-stack-size.patch similarity index 91% rename from patches/server/0584-Make-hoppers-respect-inventory-max-stack-size.patch rename to patches/server/0583-Make-hoppers-respect-inventory-max-stack-size.patch index c5f669b979..c5b4e66926 100644 --- a/patches/server/0584-Make-hoppers-respect-inventory-max-stack-size.patch +++ b/patches/server/0583-Make-hoppers-respect-inventory-max-stack-size.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Make hoppers respect inventory max stack size diff --git a/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java -index dfb57192105d5e05e4c2e32da5eadb7c701a763a..92086ca118d55ec49cefa5bf18977f8706e3e4b4 100644 +index 1c8a08e317591413426285874de74f4de54efa07..542a5501ac94f57810d34e0f769a9a7855604f91 100644 --- a/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java +++ b/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java -@@ -485,15 +485,17 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen +@@ -495,15 +495,17 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen if (itemstack1.isEmpty()) { // Spigot start - SPIGOT-6693, InventorySubcontainer#setItem diff --git a/patches/server/0585-Optimize-entity-tracker-passenger-checks.patch b/patches/server/0584-Optimize-entity-tracker-passenger-checks.patch similarity index 100% rename from patches/server/0585-Optimize-entity-tracker-passenger-checks.patch rename to patches/server/0584-Optimize-entity-tracker-passenger-checks.patch diff --git a/patches/server/0586-Config-option-for-Piglins-guarding-chests.patch b/patches/server/0585-Config-option-for-Piglins-guarding-chests.patch similarity index 100% rename from patches/server/0586-Config-option-for-Piglins-guarding-chests.patch rename to patches/server/0585-Config-option-for-Piglins-guarding-chests.patch diff --git a/patches/server/0587-Add-EntityDamageItemEvent.patch b/patches/server/0586-Add-EntityDamageItemEvent.patch similarity index 97% rename from patches/server/0587-Add-EntityDamageItemEvent.patch rename to patches/server/0586-Add-EntityDamageItemEvent.patch index e78be10457..dab8825098 100644 --- a/patches/server/0587-Add-EntityDamageItemEvent.patch +++ b/patches/server/0586-Add-EntityDamageItemEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add EntityDamageItemEvent diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index b4cb9ff5553995dddfb99b6b3ac1250b92a65d9d..2947a43a1d9e49273ed0242691273e50c657cd05 100644 +index e5fbb6dac3b1869797f2141e82993374a9f18e94..1b062edcc04af4c500f38c1664b5cee25e265f3c 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -647,7 +647,7 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/0588-Optimize-indirect-passenger-iteration.patch b/patches/server/0587-Optimize-indirect-passenger-iteration.patch similarity index 96% rename from patches/server/0588-Optimize-indirect-passenger-iteration.patch rename to patches/server/0587-Optimize-indirect-passenger-iteration.patch index d00a5c0cf2..a535497d73 100644 --- a/patches/server/0588-Optimize-indirect-passenger-iteration.patch +++ b/patches/server/0587-Optimize-indirect-passenger-iteration.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Optimize indirect passenger iteration diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 318d0f557d50b74c44b2fd1ac84e12bf30e75c24..325d8551d4f6c1d24525fab607769a75320cf436 100644 +index b4670fc653721283f95bb61ac57c306b224b7fb7..56de24f923571aff124ae64b737cbdf482d4b847 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -3875,20 +3875,34 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess diff --git a/patches/server/0589-Configurable-item-frame-map-cursor-update-interval.patch b/patches/server/0588-Configurable-item-frame-map-cursor-update-interval.patch similarity index 100% rename from patches/server/0589-Configurable-item-frame-map-cursor-update-interval.patch rename to patches/server/0588-Configurable-item-frame-map-cursor-update-interval.patch diff --git a/patches/server/0590-Clear-bucket-NBT-after-dispense.patch b/patches/server/0589-Clear-bucket-NBT-after-dispense.patch similarity index 100% rename from patches/server/0590-Clear-bucket-NBT-after-dispense.patch rename to patches/server/0589-Clear-bucket-NBT-after-dispense.patch diff --git a/patches/server/0591-Change-EnderEye-target-without-changing-other-things.patch b/patches/server/0590-Change-EnderEye-target-without-changing-other-things.patch similarity index 100% rename from patches/server/0591-Change-EnderEye-target-without-changing-other-things.patch rename to patches/server/0590-Change-EnderEye-target-without-changing-other-things.patch diff --git a/patches/server/0592-Add-BlockBreakBlockEvent.patch b/patches/server/0591-Add-BlockBreakBlockEvent.patch similarity index 100% rename from patches/server/0592-Add-BlockBreakBlockEvent.patch rename to patches/server/0591-Add-BlockBreakBlockEvent.patch diff --git a/patches/server/0593-Option-to-prevent-data-components-copy-in-smithing-r.patch b/patches/server/0592-Option-to-prevent-data-components-copy-in-smithing-r.patch similarity index 100% rename from patches/server/0593-Option-to-prevent-data-components-copy-in-smithing-r.patch rename to patches/server/0592-Option-to-prevent-data-components-copy-in-smithing-r.patch diff --git a/patches/server/0594-More-CommandBlock-API.patch b/patches/server/0593-More-CommandBlock-API.patch similarity index 100% rename from patches/server/0594-More-CommandBlock-API.patch rename to patches/server/0593-More-CommandBlock-API.patch diff --git a/patches/server/0595-Add-missing-team-sidebar-display-slots.patch b/patches/server/0594-Add-missing-team-sidebar-display-slots.patch similarity index 100% rename from patches/server/0595-Add-missing-team-sidebar-display-slots.patch rename to patches/server/0594-Add-missing-team-sidebar-display-slots.patch diff --git a/patches/server/0596-Add-back-EntityPortalExitEvent.patch b/patches/server/0595-Add-back-EntityPortalExitEvent.patch similarity index 97% rename from patches/server/0596-Add-back-EntityPortalExitEvent.patch rename to patches/server/0595-Add-back-EntityPortalExitEvent.patch index 5a83bce11c..7b49353853 100644 --- a/patches/server/0596-Add-back-EntityPortalExitEvent.patch +++ b/patches/server/0595-Add-back-EntityPortalExitEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add back EntityPortalExitEvent diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 325d8551d4f6c1d24525fab607769a75320cf436..2d98bdae7e8686d8a15e8938a16d8d63f0575bef 100644 +index 56de24f923571aff124ae64b737cbdf482d4b847..5d4fa3823a6dbb6150e4b97cf3973eb254018e38 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -3312,6 +3312,28 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess diff --git a/patches/server/0597-Add-methods-to-find-targets-for-lightning-strikes.patch b/patches/server/0596-Add-methods-to-find-targets-for-lightning-strikes.patch similarity index 100% rename from patches/server/0597-Add-methods-to-find-targets-for-lightning-strikes.patch rename to patches/server/0596-Add-methods-to-find-targets-for-lightning-strikes.patch diff --git a/patches/server/0598-Get-entity-default-attributes.patch b/patches/server/0597-Get-entity-default-attributes.patch similarity index 100% rename from patches/server/0598-Get-entity-default-attributes.patch rename to patches/server/0597-Get-entity-default-attributes.patch diff --git a/patches/server/0599-Left-handed-API.patch b/patches/server/0598-Left-handed-API.patch similarity index 100% rename from patches/server/0599-Left-handed-API.patch rename to patches/server/0598-Left-handed-API.patch diff --git a/patches/server/0600-Add-more-advancement-API.patch b/patches/server/0599-Add-more-advancement-API.patch similarity index 100% rename from patches/server/0600-Add-more-advancement-API.patch rename to patches/server/0599-Add-more-advancement-API.patch diff --git a/patches/server/0601-Add-ItemFactory-getSpawnEgg-API.patch b/patches/server/0600-Add-ItemFactory-getSpawnEgg-API.patch similarity index 100% rename from patches/server/0601-Add-ItemFactory-getSpawnEgg-API.patch rename to patches/server/0600-Add-ItemFactory-getSpawnEgg-API.patch diff --git a/patches/server/0602-Add-critical-damage-API.patch b/patches/server/0601-Add-critical-damage-API.patch similarity index 98% rename from patches/server/0602-Add-critical-damage-API.patch rename to patches/server/0601-Add-critical-damage-API.patch index 80b6725bc2..e5f9caab27 100644 --- a/patches/server/0602-Add-critical-damage-API.patch +++ b/patches/server/0601-Add-critical-damage-API.patch @@ -59,7 +59,7 @@ index 56f7a753d2167504b6d91219093097323a9081c5..07afb966626d86b065e138959e9ffcac } // CraftBukkit end diff --git a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java -index 49dc01532f9b60b3f594abca56b7d807fe6716d5..427e889f58c86f7649fc1b661d55277599b320c0 100644 +index 9ebde3788437ba830973ad619bb549dfac1103e4..723ea3c0a9b69157362f229891567c37b1dd6f3b 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java +++ b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java @@ -392,6 +392,7 @@ public abstract class AbstractArrow extends Projectile { diff --git a/patches/server/0603-Fix-issues-with-mob-conversion.patch b/patches/server/0602-Fix-issues-with-mob-conversion.patch similarity index 100% rename from patches/server/0603-Fix-issues-with-mob-conversion.patch rename to patches/server/0602-Fix-issues-with-mob-conversion.patch diff --git a/patches/server/0604-Add-hasCollision-methods-to-various-places.patch b/patches/server/0603-Add-hasCollision-methods-to-various-places.patch similarity index 100% rename from patches/server/0604-Add-hasCollision-methods-to-various-places.patch rename to patches/server/0603-Add-hasCollision-methods-to-various-places.patch diff --git a/patches/server/0605-Goat-ram-API.patch b/patches/server/0604-Goat-ram-API.patch similarity index 100% rename from patches/server/0605-Goat-ram-API.patch rename to patches/server/0604-Goat-ram-API.patch diff --git a/patches/server/0606-Add-API-for-resetting-a-single-score.patch b/patches/server/0605-Add-API-for-resetting-a-single-score.patch similarity index 100% rename from patches/server/0606-Add-API-for-resetting-a-single-score.patch rename to patches/server/0605-Add-API-for-resetting-a-single-score.patch diff --git a/patches/server/0607-Add-Raw-Byte-Entity-Serialization.patch b/patches/server/0606-Add-Raw-Byte-Entity-Serialization.patch similarity index 100% rename from patches/server/0607-Add-Raw-Byte-Entity-Serialization.patch rename to patches/server/0606-Add-Raw-Byte-Entity-Serialization.patch diff --git a/patches/server/0608-Vanilla-command-permission-fixes.patch b/patches/server/0607-Vanilla-command-permission-fixes.patch similarity index 97% rename from patches/server/0608-Vanilla-command-permission-fixes.patch rename to patches/server/0607-Vanilla-command-permission-fixes.patch index ee87698d16..a896e258c5 100644 --- a/patches/server/0608-Vanilla-command-permission-fixes.patch +++ b/patches/server/0607-Vanilla-command-permission-fixes.patch @@ -33,7 +33,7 @@ index 899008b2980d13f1be6280cd8cb959c53a29bebf..d5f7da3502575f6847f3c22ab0e94284 private RedirectModifier modifier = null; private boolean forks; diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java -index 3728b051b9eb9e9e06bc765a9a2fae7f45daf6ff..779fee2f9b819124a01b9f8d2b7ed0d5f2accf6c 100644 +index 47792f65cb70a12fca3688900b93011a0ace6ba2..1b5797dc9b94952faa4cef885207e60b5216eb45 100644 --- a/src/main/java/net/minecraft/commands/Commands.java +++ b/src/main/java/net/minecraft/commands/Commands.java @@ -258,6 +258,13 @@ public class Commands { diff --git a/patches/server/0609-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch b/patches/server/0608-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch similarity index 97% rename from patches/server/0609-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch rename to patches/server/0608-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch index fd96ed9d70..b13869e417 100644 --- a/patches/server/0609-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch +++ b/patches/server/0608-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch @@ -51,7 +51,7 @@ index b90b525faa5bba684c783a56f136532a8195de84..5a13975fc9a472308ee74401f7b1f84f @Override public void doCloseContainer() { 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 f18e370399fb36040cec64dd7bee4915e3cb56d7..461129261d93ca9831f347c9612c6f38cbbd8ac9 100644 +index 07afb966626d86b065e138959e9ffcac27a0d5d2..9f3d1a5407635d740adb6722930c94781a021015 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -509,6 +509,11 @@ public abstract class Player extends LivingEntity { diff --git a/patches/server/0610-Fix-GameProfileCache-concurrency.patch b/patches/server/0609-Fix-GameProfileCache-concurrency.patch similarity index 100% rename from patches/server/0610-Fix-GameProfileCache-concurrency.patch rename to patches/server/0609-Fix-GameProfileCache-concurrency.patch diff --git a/patches/server/0611-Improve-and-expand-AsyncCatcher.patch b/patches/server/0610-Improve-and-expand-AsyncCatcher.patch similarity index 98% rename from patches/server/0611-Improve-and-expand-AsyncCatcher.patch rename to patches/server/0610-Improve-and-expand-AsyncCatcher.patch index 91ebe1c057..e90e655672 100644 --- a/patches/server/0611-Improve-and-expand-AsyncCatcher.patch +++ b/patches/server/0610-Improve-and-expand-AsyncCatcher.patch @@ -17,10 +17,10 @@ Async catch modifications to critical entity state Co-authored-by: Jake Potrebic diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 40d2c7bfc8ba8b8b366f23e53cf37f331e19ccf7..795e65c7c98d50ff67953ccb1ff68dac0088116e 100644 +index 2da768a99617379a0f74c61303e1ca0bd4b12f6f..d3a5b273d5251a685a76c6168dc34df64f611fd7 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1565,6 +1565,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1563,6 +1563,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } public void internalTeleport(double d0, double d1, double d2, float f, float f1, Set set) { // Paper diff --git a/patches/server/0612-Add-paper-mobcaps-and-paper-playermobcaps.patch b/patches/server/0611-Add-paper-mobcaps-and-paper-playermobcaps.patch similarity index 99% rename from patches/server/0612-Add-paper-mobcaps-and-paper-playermobcaps.patch rename to patches/server/0611-Add-paper-mobcaps-and-paper-playermobcaps.patch index bcca0e8640..080042b269 100644 --- a/patches/server/0612-Add-paper-mobcaps-and-paper-playermobcaps.patch +++ b/patches/server/0611-Add-paper-mobcaps-and-paper-playermobcaps.patch @@ -10,7 +10,7 @@ Also has a hover text on each mob category listing what entity types are in said category diff --git a/src/main/java/io/papermc/paper/command/PaperCommand.java b/src/main/java/io/papermc/paper/command/PaperCommand.java -index 27775df10a490ff75ca377e8373931738f1b817c..c9bb2df0d884227576ed8d2e72219bbbd7ba827e 100644 +index cdad0fd5257ae842f83b9c1c98b4565b468d4f54..fd4f37711989431f997d77fb0917f8a9232ce53f 100644 --- a/src/main/java/io/papermc/paper/command/PaperCommand.java +++ b/src/main/java/io/papermc/paper/command/PaperCommand.java @@ -40,6 +40,7 @@ public final class PaperCommand extends Command { diff --git a/patches/server/0613-Sanitize-ResourceLocation-error-logging.patch b/patches/server/0612-Sanitize-ResourceLocation-error-logging.patch similarity index 100% rename from patches/server/0613-Sanitize-ResourceLocation-error-logging.patch rename to patches/server/0612-Sanitize-ResourceLocation-error-logging.patch diff --git a/patches/server/0614-Manually-inline-methods-in-BlockPosition.patch b/patches/server/0613-Manually-inline-methods-in-BlockPosition.patch similarity index 100% rename from patches/server/0614-Manually-inline-methods-in-BlockPosition.patch rename to patches/server/0613-Manually-inline-methods-in-BlockPosition.patch diff --git a/patches/server/0615-Name-craft-scheduler-threads-according-to-the-plugin.patch b/patches/server/0614-Name-craft-scheduler-threads-according-to-the-plugin.patch similarity index 100% rename from patches/server/0615-Name-craft-scheduler-threads-according-to-the-plugin.patch rename to patches/server/0614-Name-craft-scheduler-threads-according-to-the-plugin.patch diff --git a/patches/server/0616-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch b/patches/server/0615-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch similarity index 100% rename from patches/server/0616-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch rename to patches/server/0615-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch diff --git a/patches/server/0617-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch b/patches/server/0616-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch similarity index 100% rename from patches/server/0617-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch rename to patches/server/0616-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch diff --git a/patches/server/0618-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch b/patches/server/0617-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch similarity index 100% rename from patches/server/0618-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch rename to patches/server/0617-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch diff --git a/patches/server/0619-Time-scoreboard-search.patch b/patches/server/0618-Time-scoreboard-search.patch similarity index 100% rename from patches/server/0619-Time-scoreboard-search.patch rename to patches/server/0618-Time-scoreboard-search.patch diff --git a/patches/server/0620-Oprimise-map-impl-for-tracked-players.patch b/patches/server/0619-Oprimise-map-impl-for-tracked-players.patch similarity index 100% rename from patches/server/0620-Oprimise-map-impl-for-tracked-players.patch rename to patches/server/0619-Oprimise-map-impl-for-tracked-players.patch diff --git a/patches/server/0621-Add-missing-InventoryType.patch b/patches/server/0620-Add-missing-InventoryType.patch similarity index 100% rename from patches/server/0621-Add-missing-InventoryType.patch rename to patches/server/0620-Add-missing-InventoryType.patch diff --git a/patches/server/0622-Optimise-BlockSoil-nearby-water-lookup.patch b/patches/server/0621-Optimise-BlockSoil-nearby-water-lookup.patch similarity index 100% rename from patches/server/0622-Optimise-BlockSoil-nearby-water-lookup.patch rename to patches/server/0621-Optimise-BlockSoil-nearby-water-lookup.patch diff --git a/patches/server/0623-Fix-merchant-inventory-not-closing-on-entity-removal.patch b/patches/server/0622-Fix-merchant-inventory-not-closing-on-entity-removal.patch similarity index 100% rename from patches/server/0623-Fix-merchant-inventory-not-closing-on-entity-removal.patch rename to patches/server/0622-Fix-merchant-inventory-not-closing-on-entity-removal.patch diff --git a/patches/server/0624-Check-requirement-before-suggesting-root-nodes.patch b/patches/server/0623-Check-requirement-before-suggesting-root-nodes.patch similarity index 100% rename from patches/server/0624-Check-requirement-before-suggesting-root-nodes.patch rename to patches/server/0623-Check-requirement-before-suggesting-root-nodes.patch diff --git a/patches/server/0625-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch b/patches/server/0624-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch similarity index 92% rename from patches/server/0625-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch rename to patches/server/0624-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch index 1049bf5495..13c199a250 100644 --- a/patches/server/0625-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch +++ b/patches/server/0624-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 795e65c7c98d50ff67953ccb1ff68dac0088116e..4ac3e9cacc3c54a67da1547a319fd501ff375354 100644 +index d3a5b273d5251a685a76c6168dc34df64f611fd7..3567ddb66adc5abac67a41208fe55931ea56742a 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -745,6 +745,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0626-Add-packet-limiter-config.patch b/patches/server/0625-Add-packet-limiter-config.patch similarity index 100% rename from patches/server/0626-Add-packet-limiter-config.patch rename to patches/server/0625-Add-packet-limiter-config.patch diff --git a/patches/server/0627-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch b/patches/server/0626-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch similarity index 100% rename from patches/server/0627-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch rename to patches/server/0626-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch diff --git a/patches/server/0628-Ensure-valid-vehicle-status.patch b/patches/server/0627-Ensure-valid-vehicle-status.patch similarity index 100% rename from patches/server/0628-Ensure-valid-vehicle-status.patch rename to patches/server/0627-Ensure-valid-vehicle-status.patch diff --git a/patches/server/0629-Prevent-softlocked-end-exit-portal-generation.patch b/patches/server/0628-Prevent-softlocked-end-exit-portal-generation.patch similarity index 100% rename from patches/server/0629-Prevent-softlocked-end-exit-portal-generation.patch rename to patches/server/0628-Prevent-softlocked-end-exit-portal-generation.patch diff --git a/patches/server/0630-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch b/patches/server/0629-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch similarity index 100% rename from patches/server/0630-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch rename to patches/server/0629-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch diff --git a/patches/server/0631-Don-t-log-debug-logging-being-disabled.patch b/patches/server/0630-Don-t-log-debug-logging-being-disabled.patch similarity index 100% rename from patches/server/0631-Don-t-log-debug-logging-being-disabled.patch rename to patches/server/0630-Don-t-log-debug-logging-being-disabled.patch diff --git a/patches/server/0632-fix-various-menus-with-empty-level-accesses.patch b/patches/server/0631-fix-various-menus-with-empty-level-accesses.patch similarity index 100% rename from patches/server/0632-fix-various-menus-with-empty-level-accesses.patch rename to patches/server/0631-fix-various-menus-with-empty-level-accesses.patch diff --git a/patches/server/0633-Preserve-overstacked-loot.patch b/patches/server/0632-Preserve-overstacked-loot.patch similarity index 100% rename from patches/server/0633-Preserve-overstacked-loot.patch rename to patches/server/0632-Preserve-overstacked-loot.patch diff --git a/patches/server/0634-Update-head-rotation-in-missing-places.patch b/patches/server/0633-Update-head-rotation-in-missing-places.patch similarity index 93% rename from patches/server/0634-Update-head-rotation-in-missing-places.patch rename to patches/server/0633-Update-head-rotation-in-missing-places.patch index 8116c5ccb3..ff87022802 100644 --- a/patches/server/0634-Update-head-rotation-in-missing-places.patch +++ b/patches/server/0633-Update-head-rotation-in-missing-places.patch @@ -8,7 +8,7 @@ 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 96c9feb545c02014c324852344a1d86156c32237..df7741ca931d7d1eb1b0cbdcc2b2bb15875c750c 100644 +index ebacae6f39fea052f4fb7c60f7164763b49f8148..0034e06a3caa89dfbb24a75d377d799ca0e8aed0 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -1813,6 +1813,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess diff --git a/patches/server/0635-prevent-unintended-light-block-manipulation.patch b/patches/server/0634-prevent-unintended-light-block-manipulation.patch similarity index 100% rename from patches/server/0635-prevent-unintended-light-block-manipulation.patch rename to patches/server/0634-prevent-unintended-light-block-manipulation.patch diff --git a/patches/server/0636-Fix-CraftCriteria-defaults-map.patch b/patches/server/0635-Fix-CraftCriteria-defaults-map.patch similarity index 100% rename from patches/server/0636-Fix-CraftCriteria-defaults-map.patch rename to patches/server/0635-Fix-CraftCriteria-defaults-map.patch diff --git a/patches/server/0637-Fix-upstreams-block-state-factories.patch b/patches/server/0636-Fix-upstreams-block-state-factories.patch similarity index 99% rename from patches/server/0637-Fix-upstreams-block-state-factories.patch rename to patches/server/0636-Fix-upstreams-block-state-factories.patch index 2fdb11ce82..a48a6b0d09 100644 --- a/patches/server/0637-Fix-upstreams-block-state-factories.patch +++ b/patches/server/0636-Fix-upstreams-block-state-factories.patch @@ -13,7 +13,7 @@ the material type of the block at that location. public net.minecraft.world.level.block.entity.BlockEntityType validBlocks diff --git a/src/main/java/net/minecraft/world/level/block/entity/BlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/BlockEntity.java -index 6e24673a793017ee857cf75bf9a74105ce76b773..e3c5f99b3ad91a9bb454f9ab95b1ccff0bb7b34c 100644 +index 7147484eefad44ba67db03b6ef2090a596e278de..6f6693456cf518b7bd9eb21ba681540a40c588ef 100644 --- a/src/main/java/net/minecraft/world/level/block/entity/BlockEntity.java +++ b/src/main/java/net/minecraft/world/level/block/entity/BlockEntity.java @@ -371,7 +371,7 @@ public abstract class BlockEntity { diff --git a/patches/server/0638-Configurable-feature-seeds.patch b/patches/server/0637-Configurable-feature-seeds.patch similarity index 100% rename from patches/server/0638-Configurable-feature-seeds.patch rename to patches/server/0637-Configurable-feature-seeds.patch diff --git a/patches/server/0639-Add-root-admin-user-detection.patch b/patches/server/0638-Add-root-admin-user-detection.patch similarity index 97% rename from patches/server/0639-Add-root-admin-user-detection.patch rename to patches/server/0638-Add-root-admin-user-detection.patch index 5b81dcd09a..ceb124af5d 100644 --- a/patches/server/0639-Add-root-admin-user-detection.patch +++ b/patches/server/0638-Add-root-admin-user-detection.patch @@ -40,7 +40,7 @@ index 0000000000000000000000000000000000000000..68098dfe716e93aafcca4d8d5b5a81d8 + } +} diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index 4bc7b3d7c5214b3272614fe3fce8e4d8d2264867..784788d8d3d1a07efbd406b6c463e046699081e2 100644 +index b8043b7e778792153620923ea228c1a211c27969..bbbadf5284907531eef761a738c3adf5305bd08f 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -192,6 +192,16 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface diff --git a/patches/server/0640-don-t-attempt-to-teleport-dead-entities.patch b/patches/server/0639-don-t-attempt-to-teleport-dead-entities.patch similarity index 91% rename from patches/server/0640-don-t-attempt-to-teleport-dead-entities.patch rename to patches/server/0639-don-t-attempt-to-teleport-dead-entities.patch index 1ea681b348..c23f304dec 100644 --- a/patches/server/0640-don-t-attempt-to-teleport-dead-entities.patch +++ b/patches/server/0639-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 df7741ca931d7d1eb1b0cbdcc2b2bb15875c750c..50aca89516dea3f4c4d668b994f4afdea69b4cc9 100644 +index 0034e06a3caa89dfbb24a75d377d799ca0e8aed0..7966d45adcbc239a506ab4aa2923a6df0dc36c03 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -730,7 +730,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess diff --git a/patches/server/0641-Prevent-excessive-velocity-through-repeated-crits.patch b/patches/server/0640-Prevent-excessive-velocity-through-repeated-crits.patch similarity index 100% rename from patches/server/0641-Prevent-excessive-velocity-through-repeated-crits.patch rename to patches/server/0640-Prevent-excessive-velocity-through-repeated-crits.patch diff --git a/patches/server/0642-Remove-client-side-code-using-deprecated-for-removal.patch b/patches/server/0641-Remove-client-side-code-using-deprecated-for-removal.patch similarity index 100% rename from patches/server/0642-Remove-client-side-code-using-deprecated-for-removal.patch rename to patches/server/0641-Remove-client-side-code-using-deprecated-for-removal.patch diff --git a/patches/server/0643-Fix-Spigot-growth-modifiers.patch b/patches/server/0642-Fix-Spigot-growth-modifiers.patch similarity index 98% rename from patches/server/0643-Fix-Spigot-growth-modifiers.patch rename to patches/server/0642-Fix-Spigot-growth-modifiers.patch index 245729c1f4..dbaed5a331 100644 --- a/patches/server/0643-Fix-Spigot-growth-modifiers.patch +++ b/patches/server/0642-Fix-Spigot-growth-modifiers.patch @@ -102,7 +102,7 @@ index c9ed129db2cadd0a33d69993961f43088725c3cb..d06e3892cf42723f8e3f621b5497c534 this.grow(world, state, pos, 1); } diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java -index 2a787b641fec29427963ac2bdc14df60f32af2bc..41f4416d820ed1ca2d02b457749cbb6c3dbb20af 100644 +index c15c60fb88c9d6e370e2100c57ccb59d5441c96f..44bdd0e6cdcabcb4deedd9aa3340330db2370615 100644 --- a/src/main/java/org/spigotmc/SpigotWorldConfig.java +++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java @@ -96,6 +96,7 @@ public class SpigotWorldConfig diff --git a/patches/server/0644-Prevent-ContainerOpenersCounter-openCount-from-going.patch b/patches/server/0643-Prevent-ContainerOpenersCounter-openCount-from-going.patch similarity index 100% rename from patches/server/0644-Prevent-ContainerOpenersCounter-openCount-from-going.patch rename to patches/server/0643-Prevent-ContainerOpenersCounter-openCount-from-going.patch diff --git a/patches/server/0645-Add-PlayerItemFrameChangeEvent.patch b/patches/server/0644-Add-PlayerItemFrameChangeEvent.patch similarity index 100% rename from patches/server/0645-Add-PlayerItemFrameChangeEvent.patch rename to patches/server/0644-Add-PlayerItemFrameChangeEvent.patch diff --git a/patches/server/0646-Optimize-HashMapPalette.patch b/patches/server/0645-Optimize-HashMapPalette.patch similarity index 100% rename from patches/server/0646-Optimize-HashMapPalette.patch rename to patches/server/0645-Optimize-HashMapPalette.patch diff --git a/patches/server/0647-Allow-delegation-to-vanilla-chunk-gen.patch b/patches/server/0646-Allow-delegation-to-vanilla-chunk-gen.patch similarity index 100% rename from patches/server/0647-Allow-delegation-to-vanilla-chunk-gen.patch rename to patches/server/0646-Allow-delegation-to-vanilla-chunk-gen.patch diff --git a/patches/server/0648-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch b/patches/server/0647-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch similarity index 100% rename from patches/server/0648-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch rename to patches/server/0647-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch diff --git a/patches/server/0649-Add-more-Campfire-API.patch b/patches/server/0648-Add-more-Campfire-API.patch similarity index 100% rename from patches/server/0649-Add-more-Campfire-API.patch rename to patches/server/0648-Add-more-Campfire-API.patch diff --git a/patches/server/0650-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch b/patches/server/0649-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch similarity index 100% rename from patches/server/0650-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch rename to patches/server/0649-Only-write-chunk-data-to-disk-if-it-serializes-witho.patch diff --git a/patches/server/0651-Forward-CraftEntity-in-teleport-command.patch b/patches/server/0650-Forward-CraftEntity-in-teleport-command.patch similarity index 95% rename from patches/server/0651-Forward-CraftEntity-in-teleport-command.patch rename to patches/server/0650-Forward-CraftEntity-in-teleport-command.patch index c07753356e..36fce551ed 100644 --- a/patches/server/0651-Forward-CraftEntity-in-teleport-command.patch +++ b/patches/server/0650-Forward-CraftEntity-in-teleport-command.patch @@ -5,7 +5,7 @@ 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 50aca89516dea3f4c4d668b994f4afdea69b4cc9..af1b161e5e61fe244b316d352452038c9b4ea458 100644 +index 7966d45adcbc239a506ab4aa2923a6df0dc36c03..1632b2231e20901ce8498f3a0442e9ea54fcc068 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -3284,6 +3284,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess diff --git a/patches/server/0652-Improve-scoreboard-entries.patch b/patches/server/0651-Improve-scoreboard-entries.patch similarity index 100% rename from patches/server/0652-Improve-scoreboard-entries.patch rename to patches/server/0651-Improve-scoreboard-entries.patch diff --git a/patches/server/0653-Entity-powdered-snow-API.patch b/patches/server/0652-Entity-powdered-snow-API.patch similarity index 100% rename from patches/server/0653-Entity-powdered-snow-API.patch rename to patches/server/0652-Entity-powdered-snow-API.patch diff --git a/patches/server/0654-Add-API-for-item-entity-health.patch b/patches/server/0653-Add-API-for-item-entity-health.patch similarity index 100% rename from patches/server/0654-Add-API-for-item-entity-health.patch rename to patches/server/0653-Add-API-for-item-entity-health.patch diff --git a/patches/server/0655-Configurable-max-block-light-for-monster-spawning.patch b/patches/server/0654-Configurable-max-block-light-for-monster-spawning.patch similarity index 100% rename from patches/server/0655-Configurable-max-block-light-for-monster-spawning.patch rename to patches/server/0654-Configurable-max-block-light-for-monster-spawning.patch diff --git a/patches/server/0656-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch b/patches/server/0655-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch similarity index 100% rename from patches/server/0656-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch rename to patches/server/0655-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch diff --git a/patches/server/0657-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch b/patches/server/0656-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch similarity index 100% rename from patches/server/0657-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch rename to patches/server/0656-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch diff --git a/patches/server/0658-Bucketable-API.patch b/patches/server/0657-Bucketable-API.patch similarity index 100% rename from patches/server/0658-Bucketable-API.patch rename to patches/server/0657-Bucketable-API.patch diff --git a/patches/server/0659-Validate-usernames.patch b/patches/server/0658-Validate-usernames.patch similarity index 100% rename from patches/server/0659-Validate-usernames.patch rename to patches/server/0658-Validate-usernames.patch diff --git a/patches/server/0660-Make-water-animal-spawn-height-configurable.patch b/patches/server/0659-Make-water-animal-spawn-height-configurable.patch similarity index 100% rename from patches/server/0660-Make-water-animal-spawn-height-configurable.patch rename to patches/server/0659-Make-water-animal-spawn-height-configurable.patch diff --git a/patches/server/0661-Expose-vanilla-BiomeProvider-from-WorldInfo.patch b/patches/server/0660-Expose-vanilla-BiomeProvider-from-WorldInfo.patch similarity index 100% rename from patches/server/0661-Expose-vanilla-BiomeProvider-from-WorldInfo.patch rename to patches/server/0660-Expose-vanilla-BiomeProvider-from-WorldInfo.patch diff --git a/patches/server/0662-Add-config-option-for-worlds-affected-by-time-cmd.patch b/patches/server/0661-Add-config-option-for-worlds-affected-by-time-cmd.patch similarity index 100% rename from patches/server/0662-Add-config-option-for-worlds-affected-by-time-cmd.patch rename to patches/server/0661-Add-config-option-for-worlds-affected-by-time-cmd.patch diff --git a/patches/server/0663-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch b/patches/server/0662-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch similarity index 100% rename from patches/server/0663-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch rename to patches/server/0662-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch diff --git a/patches/server/0664-Multiple-Entries-with-Scoreboards.patch b/patches/server/0663-Multiple-Entries-with-Scoreboards.patch similarity index 100% rename from patches/server/0664-Multiple-Entries-with-Scoreboards.patch rename to patches/server/0663-Multiple-Entries-with-Scoreboards.patch diff --git a/patches/server/0665-Reset-placed-block-on-exception.patch b/patches/server/0664-Reset-placed-block-on-exception.patch similarity index 100% rename from patches/server/0665-Reset-placed-block-on-exception.patch rename to patches/server/0664-Reset-placed-block-on-exception.patch diff --git a/patches/server/0666-Add-configurable-height-for-slime-spawn.patch b/patches/server/0665-Add-configurable-height-for-slime-spawn.patch similarity index 100% rename from patches/server/0666-Add-configurable-height-for-slime-spawn.patch rename to patches/server/0665-Add-configurable-height-for-slime-spawn.patch diff --git a/patches/server/0667-Fix-xp-reward-for-baby-zombies.patch b/patches/server/0666-Fix-xp-reward-for-baby-zombies.patch similarity index 100% rename from patches/server/0667-Fix-xp-reward-for-baby-zombies.patch rename to patches/server/0666-Fix-xp-reward-for-baby-zombies.patch diff --git a/patches/server/0668-Multi-Block-Change-API-Implementation.patch b/patches/server/0667-Multi-Block-Change-API-Implementation.patch similarity index 97% rename from patches/server/0668-Multi-Block-Change-API-Implementation.patch rename to patches/server/0667-Multi-Block-Change-API-Implementation.patch index 95d2c691b3..a6c9ee19af 100644 --- a/patches/server/0668-Multi-Block-Change-API-Implementation.patch +++ b/patches/server/0667-Multi-Block-Change-API-Implementation.patch @@ -24,7 +24,7 @@ index 926ff9be3d9e3f5d620e4c7ccb22b9f64865ff8c..1a37654aff9a9c86c9f7af10a1cf7213 buf.writeLong(this.sectionPos.asLong()); buf.writeVarInt(this.positions.length); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index bb75c965266fefa58919823e5fcc9f56f11b04d0..409d8f8957eda02a474f36e4c9010aee62c7fade 100644 +index 634da85870b31a9fc09d53f5670239e18bcb3d47..6793acbbae09a9bc39f59c029f6b02182ec33a92 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -928,6 +928,32 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0669-Fix-NotePlayEvent.patch b/patches/server/0668-Fix-NotePlayEvent.patch similarity index 100% rename from patches/server/0669-Fix-NotePlayEvent.patch rename to patches/server/0668-Fix-NotePlayEvent.patch diff --git a/patches/server/0670-Freeze-Tick-Lock-API.patch b/patches/server/0669-Freeze-Tick-Lock-API.patch similarity index 100% rename from patches/server/0670-Freeze-Tick-Lock-API.patch rename to patches/server/0669-Freeze-Tick-Lock-API.patch diff --git a/patches/server/0671-More-PotionEffectType-API.patch b/patches/server/0670-More-PotionEffectType-API.patch similarity index 100% rename from patches/server/0671-More-PotionEffectType-API.patch rename to patches/server/0670-More-PotionEffectType-API.patch diff --git a/patches/server/0672-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch b/patches/server/0671-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch similarity index 100% rename from patches/server/0672-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch rename to patches/server/0671-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch diff --git a/patches/server/0673-API-for-creating-command-sender-which-forwards-feedb.patch b/patches/server/0672-API-for-creating-command-sender-which-forwards-feedb.patch similarity index 100% rename from patches/server/0673-API-for-creating-command-sender-which-forwards-feedb.patch rename to patches/server/0672-API-for-creating-command-sender-which-forwards-feedb.patch diff --git a/patches/server/0674-Add-missing-structure-set-seed-configs.patch b/patches/server/0673-Add-missing-structure-set-seed-configs.patch similarity index 99% rename from patches/server/0674-Add-missing-structure-set-seed-configs.patch rename to patches/server/0673-Add-missing-structure-set-seed-configs.patch index 0c160b7c1c..6e9e7c21b8 100644 --- a/patches/server/0674-Add-missing-structure-set-seed-configs.patch +++ b/patches/server/0673-Add-missing-structure-set-seed-configs.patch @@ -277,7 +277,7 @@ index a4c34e9415632354d33668a38d06453ada4d3c77..cbf13e4f2da6a27619e9bc9a7cd73bb6 @Override diff --git a/src/main/java/org/spigotmc/SpigotWorldConfig.java b/src/main/java/org/spigotmc/SpigotWorldConfig.java -index 41f4416d820ed1ca2d02b457749cbb6c3dbb20af..5485df1a1b59e81f4dcedd21dd972e1fd2759573 100644 +index 44bdd0e6cdcabcb4deedd9aa3340330db2370615..37bbda040bd6f8a92295d2f32affbb53ea2d369b 100644 --- a/src/main/java/org/spigotmc/SpigotWorldConfig.java +++ b/src/main/java/org/spigotmc/SpigotWorldConfig.java @@ -322,6 +322,18 @@ public class SpigotWorldConfig diff --git a/patches/server/0675-Implement-regenerateChunk.patch b/patches/server/0674-Implement-regenerateChunk.patch similarity index 98% rename from patches/server/0675-Implement-regenerateChunk.patch rename to patches/server/0674-Implement-regenerateChunk.patch index c6a6c8eb34..61257215bf 100644 --- a/patches/server/0675-Implement-regenerateChunk.patch +++ b/patches/server/0674-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 43b3af7bba4551d98c7ffb53fbee9413ed5b8dd3..e31794510cb204fa1360803050d25d0e226785e2 100644 +index a5121eb7fa8fccf7e742beea285c2f741ece513d..7e9344fdafb01030061458c55ccf6836bf643da3 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -151,6 +151,7 @@ import org.jetbrains.annotations.Nullable; diff --git a/patches/server/0676-Fix-cancelled-powdered-snow-bucket-placement.patch b/patches/server/0675-Fix-cancelled-powdered-snow-bucket-placement.patch similarity index 95% rename from patches/server/0676-Fix-cancelled-powdered-snow-bucket-placement.patch rename to patches/server/0675-Fix-cancelled-powdered-snow-bucket-placement.patch index e46654952c..d0917dc1c2 100644 --- a/patches/server/0676-Fix-cancelled-powdered-snow-bucket-placement.patch +++ b/patches/server/0675-Fix-cancelled-powdered-snow-bucket-placement.patch @@ -8,7 +8,7 @@ snow bucket didn't revert grass that became snowy because of the placement. diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 2947a43a1d9e49273ed0242691273e50c657cd05..51a7919b019f2fd5d2e2ab850ed512769b0b1685 100644 +index 1b062edcc04af4c500f38c1664b5cee25e265f3c..aa0a5b392942e03123b1dbd68ec8e9e1321457e9 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -401,7 +401,7 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/0677-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch b/patches/server/0676-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch similarity index 100% rename from patches/server/0677-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch rename to patches/server/0676-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch diff --git a/patches/server/0678-Add-GameEvent-tags.patch b/patches/server/0677-Add-GameEvent-tags.patch similarity index 100% rename from patches/server/0678-Add-GameEvent-tags.patch rename to patches/server/0677-Add-GameEvent-tags.patch diff --git a/patches/server/0679-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch b/patches/server/0678-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch similarity index 94% rename from patches/server/0679-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch rename to patches/server/0678-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch index 74e1372a47..4490dcca94 100644 --- a/patches/server/0679-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch +++ b/patches/server/0678-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch @@ -9,7 +9,7 @@ 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 533e1225b863ef314b7defebc4787304fd19f5a1..6d80102287f3976ea7f0912bcbd5ff0a2088a0e1 100644 +index f295eaf2dced5bf294eb094f6d6110da826f053f..9f279ba3b3ed8a6cf4f79a41a1513b30d7ea9ccc 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1343,6 +1343,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop diff --git a/src/main/java/io/papermc/paper/command/PaperCommand.java b/src/main/java/io/papermc/paper/command/PaperCommand.java -index c9bb2df0d884227576ed8d2e72219bbbd7ba827e..534d9c380f26d6cce3c99fa88ad2e15410535094 100644 +index fd4f37711989431f997d77fb0917f8a9232ce53f..46bf42d5ea9e7b046f962531c5962d287cf44a41 100644 --- a/src/main/java/io/papermc/paper/command/PaperCommand.java +++ b/src/main/java/io/papermc/paper/command/PaperCommand.java @@ -41,6 +41,7 @@ public final class PaperCommand extends Command { diff --git a/patches/server/0786-check-global-player-list-where-appropriate.patch b/patches/server/0785-check-global-player-list-where-appropriate.patch similarity index 100% rename from patches/server/0786-check-global-player-list-where-appropriate.patch rename to patches/server/0785-check-global-player-list-where-appropriate.patch diff --git a/patches/server/0787-Fix-async-entity-add-due-to-fungus-trees.patch b/patches/server/0786-Fix-async-entity-add-due-to-fungus-trees.patch similarity index 100% rename from patches/server/0787-Fix-async-entity-add-due-to-fungus-trees.patch rename to patches/server/0786-Fix-async-entity-add-due-to-fungus-trees.patch diff --git a/patches/server/0788-ItemStack-damage-API.patch b/patches/server/0787-ItemStack-damage-API.patch similarity index 98% rename from patches/server/0788-ItemStack-damage-API.patch rename to patches/server/0787-ItemStack-damage-API.patch index ba4a14ae11..6b5800404d 100644 --- a/patches/server/0788-ItemStack-damage-API.patch +++ b/patches/server/0787-ItemStack-damage-API.patch @@ -11,7 +11,7 @@ the logic associated with damaging them public net.minecraft.world.entity.LivingEntity entityEventForEquipmentBreak(Lnet/minecraft/world/entity/EquipmentSlot;)B diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index acce1b72185d4687ef5a72dd4014d87149f4b092..dc473b46394b41d951b68ed0eb6993e6807a0d29 100644 +index 0ac1d8cf71dc685bcf2d1f9ab1440e933757359c..a158642471ab037ea3b99cac09ba5f3bf282e2a7 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -713,7 +713,14 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/0789-Friction-API.patch b/patches/server/0788-Friction-API.patch similarity index 98% rename from patches/server/0789-Friction-API.patch rename to patches/server/0788-Friction-API.patch index 4fef79a8fc..eb78b15231 100644 --- a/patches/server/0789-Friction-API.patch +++ b/patches/server/0788-Friction-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Friction API diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index d736a53a6ea2a20a950096cd89df178864e644f4..fecbef1ffcc942c71e3a1daaad4c16e0c774be49 100644 +index 947bccb93f2a5baa6236e1da1a7ec0b27c072a14..337c43f08465cb84227ca02b99f972b47a9186f5 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -273,6 +273,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0790-Ability-to-control-player-s-insomnia-and-phantoms.patch b/patches/server/0789-Ability-to-control-player-s-insomnia-and-phantoms.patch similarity index 100% rename from patches/server/0790-Ability-to-control-player-s-insomnia-and-phantoms.patch rename to patches/server/0789-Ability-to-control-player-s-insomnia-and-phantoms.patch diff --git a/patches/server/0791-Fix-premature-player-kicks-on-shutdown.patch b/patches/server/0790-Fix-premature-player-kicks-on-shutdown.patch similarity index 97% rename from patches/server/0791-Fix-premature-player-kicks-on-shutdown.patch rename to patches/server/0790-Fix-premature-player-kicks-on-shutdown.patch index 7cdccaff49..108bf6dec2 100644 --- a/patches/server/0791-Fix-premature-player-kicks-on-shutdown.patch +++ b/patches/server/0790-Fix-premature-player-kicks-on-shutdown.patch @@ -47,7 +47,7 @@ index fd2a5c829899d45641a5b5d30116f4f368953c15..f57679d88cd015caa8996d44b486da69 this.disconnect(Component.translatable("multiplayer.disconnect.server_shutdown")); } catch (ClassCastException classcastexception) { diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index f67b48131ec7e18177f5daeda19389641f00193a..e463727cccc6931de822f62309090241c7abada4 100644 +index b2a46033d522f3122041cc2966105159c8869fdc..9ba2a71e5bedbf8e65f9dd1652639afd397439c7 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -2071,7 +2071,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index cb9b46ed5ff2f9aa0d322be75659c0046f38c663..b35365fce1233214a0dd7f1cf86d940f47c860d3 100644 +index 5c592a274e5927552f00d9a28e91f5f26f8a36b9..bd36c447a8a500dbe30e87d376e9498928b64e30 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2041,7 +2041,9 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2039,7 +2039,9 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl private void performUnsignedChatCommand(String command) { // CraftBukkit start String command1 = "/" + command; @@ -19,7 +19,7 @@ index cb9b46ed5ff2f9aa0d322be75659c0046f38c663..b35365fce1233214a0dd7f1cf86d940f PlayerCommandPreprocessEvent event = new PlayerCommandPreprocessEvent(this.getCraftPlayer(), command1, new LazyPlayerSet(this.server)); this.cserver.getPluginManager().callEvent(event); -@@ -2081,7 +2083,9 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2079,7 +2081,9 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl private void performSignedChatCommand(ServerboundChatCommandSignedPacket packet, LastSeenMessages lastSeenMessages) { // CraftBukkit start String command = "/" + packet.command(); diff --git a/patches/server/0805-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch b/patches/server/0804-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch similarity index 100% rename from patches/server/0805-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch rename to patches/server/0804-Fix-NPE-on-Allay-stopDancing-while-not-dancing.patch diff --git a/patches/server/0806-Flying-Fall-Damage.patch b/patches/server/0805-Flying-Fall-Damage.patch similarity index 92% rename from patches/server/0806-Flying-Fall-Damage.patch rename to patches/server/0805-Flying-Fall-Damage.patch index f1e038d077..e3d1dccd5f 100644 --- a/patches/server/0806-Flying-Fall-Damage.patch +++ b/patches/server/0805-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 1ef5f8e0592e528b46af2a94b0650e9d15c58186..83a205387cb902121aabf0f5082c650debcb734c 100644 +index 61553ebc54b5666c2f53d2aa2bbb2a74f0a266dd..77624e34143dc37ca3b523a81b9a041ffb3199bd 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -194,6 +194,7 @@ public abstract class Player extends LivingEntity { @@ -26,7 +26,7 @@ index 1ef5f8e0592e528b46af2a94b0650e9d15c58186..83a205387cb902121aabf0f5082c650d } else { if (fallDistance >= 2.0F) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 560a354451e1c027ce4df3f18d39e122be7f96ed..9716687ba5aa407d714389c50b00e8c7ecf88724 100644 +index 26534a2ed76cb6038e02671190848f0c9997b2fc..1ca6552705213ce193ab9ce50b2ffeaad1f08dfd 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2563,6 +2563,19 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0807-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch b/patches/server/0806-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch similarity index 94% rename from patches/server/0807-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch rename to patches/server/0806-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch index 89d91e3b85..ff4f0cb39a 100644 --- a/patches/server/0807-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch +++ b/patches/server/0806-Expose-pre-collision-moving-velocity-to-VehicleBlock.patch @@ -6,7 +6,7 @@ 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 661f630b38dff4aa760e7939ff80b1361d426565..a6f0a1114da54f78ccb2fb6151bf14e34cd5c330 100644 +index 51f1f00e9e68abb9a098a193f8201715ae73a8e4..c15a08c6d9277dd1d6d63a25dacce0c43b8dad05 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -967,6 +967,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess diff --git a/patches/server/0808-config-for-disabling-entity-tag-tags.patch b/patches/server/0807-config-for-disabling-entity-tag-tags.patch similarity index 100% rename from patches/server/0808-config-for-disabling-entity-tag-tags.patch rename to patches/server/0807-config-for-disabling-entity-tag-tags.patch diff --git a/patches/server/0809-Use-single-player-info-update-packet-on-join.patch b/patches/server/0808-Use-single-player-info-update-packet-on-join.patch similarity index 95% rename from patches/server/0809-Use-single-player-info-update-packet-on-join.patch rename to patches/server/0808-Use-single-player-info-update-packet-on-join.patch index f8e74ba432..3eaa218c31 100644 --- a/patches/server/0809-Use-single-player-info-update-packet-on-join.patch +++ b/patches/server/0808-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 b35365fce1233214a0dd7f1cf86d940f47c860d3..fa4c6bd37bd7e3c66c867bab61b11b0bd217fd22 100644 +index bd36c447a8a500dbe30e87d376e9498928b64e30..2701152aef4ccf7aeab7b44d81c3d81955181296 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -3421,7 +3421,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3419,7 +3419,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.signedMessageDecoder = session.createMessageDecoder(this.player.getUUID()); this.chatMessageChain.append(() -> { this.player.setChatSession(session); diff --git a/patches/server/0810-Correctly-shrink-items-during-EntityResurrectEvent.patch b/patches/server/0809-Correctly-shrink-items-during-EntityResurrectEvent.patch similarity index 95% rename from patches/server/0810-Correctly-shrink-items-during-EntityResurrectEvent.patch rename to patches/server/0809-Correctly-shrink-items-during-EntityResurrectEvent.patch index f6e4b8d537..2cbae368b3 100644 --- a/patches/server/0810-Correctly-shrink-items-during-EntityResurrectEvent.patch +++ b/patches/server/0809-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 8a4977bf4d5b87ca30e048d749b6a878b1a17911..6c502f67234eee9c1446d490acde1dbe6f34119e 100644 +index 337c43f08465cb84227ca02b99f972b47a9186f5..ca5dd07e74d1ecf303091faeb4d7796bbc7a57c8 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1638,7 +1638,7 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0811-Win-Screen-API.patch b/patches/server/0810-Win-Screen-API.patch similarity index 93% rename from patches/server/0811-Win-Screen-API.patch rename to patches/server/0810-Win-Screen-API.patch index 57cc12a7dc..7c9e92ecea 100644 --- a/patches/server/0811-Win-Screen-API.patch +++ b/patches/server/0810-Win-Screen-API.patch @@ -7,7 +7,7 @@ Subject: [PATCH] Win Screen API public net.minecraft.server.level.ServerPlayer seenCredits diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 9716687ba5aa407d714389c50b00e8c7ecf88724..79ab080e496df2b8d11c777427863bd775e60b91 100644 +index 1ca6552705213ce193ab9ce50b2ffeaad1f08dfd..952728c30f8871f8ed1f27800feba7db038ad420 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1292,6 +1292,25 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0812-Remove-CraftItemStack-setAmount-null-assignment.patch b/patches/server/0811-Remove-CraftItemStack-setAmount-null-assignment.patch similarity index 93% rename from patches/server/0812-Remove-CraftItemStack-setAmount-null-assignment.patch rename to patches/server/0811-Remove-CraftItemStack-setAmount-null-assignment.patch index b95442b660..01e629abd6 100644 --- a/patches/server/0812-Remove-CraftItemStack-setAmount-null-assignment.patch +++ b/patches/server/0811-Remove-CraftItemStack-setAmount-null-assignment.patch @@ -16,7 +16,7 @@ with less than zero amounts, so this code doesn't create a problem with operations on the vanilla ItemStack. diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index 6352e56fa3e69690846842d474a1ae51ad4059c6..a1173823b3a95b973ae742f886b0555b3203288c 100644 +index 2a7996f5cfb1eacf098e73f35bafc4327b041c51..fa223d2381986cb260c79f074fb7b123396f1f86 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java @@ -160,7 +160,7 @@ public final class CraftItemStack extends ItemStack { diff --git a/patches/server/0813-Fix-force-opening-enchantment-tables.patch b/patches/server/0812-Fix-force-opening-enchantment-tables.patch similarity index 100% rename from patches/server/0813-Fix-force-opening-enchantment-tables.patch rename to patches/server/0812-Fix-force-opening-enchantment-tables.patch diff --git a/patches/server/0814-Add-Entity-Body-Yaw-API.patch b/patches/server/0813-Add-Entity-Body-Yaw-API.patch similarity index 95% rename from patches/server/0814-Add-Entity-Body-Yaw-API.patch rename to patches/server/0813-Add-Entity-Body-Yaw-API.patch index 7e9aba16c7..e6f4478e8a 100644 --- a/patches/server/0814-Add-Entity-Body-Yaw-API.patch +++ b/patches/server/0813-Add-Entity-Body-Yaw-API.patch @@ -43,7 +43,7 @@ index 365281dfc0308c5db0c72b56208d9b87be0e955e..991b94ff1186b1071a94b2662873dc07 @Override public boolean isInvisible() { // Paper - moved up from LivingEntity diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 8f987c87032fad49835d51cd747f40df2bb5aa32..a231543cf4fcc442e3675ece0d4c4950f4ed3126 100644 +index 112d54e1789d30ef89b34f53a60b0124538d3cda..37b62a45bbe2db725f24330f1f03e8cf09ab208c 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -1161,4 +1161,16 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/patches/server/0815-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch b/patches/server/0814-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch similarity index 100% rename from patches/server/0815-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch rename to patches/server/0814-Fix-MC-157464-Prevent-sleeping-villagers-moving-towa.patch diff --git a/patches/server/0816-Add-EntityFertilizeEggEvent.patch b/patches/server/0815-Add-EntityFertilizeEggEvent.patch similarity index 100% rename from patches/server/0816-Add-EntityFertilizeEggEvent.patch rename to patches/server/0815-Add-EntityFertilizeEggEvent.patch diff --git a/patches/server/0817-Fix-HumanEntity-drop-not-updating-the-client-inv.patch b/patches/server/0816-Fix-HumanEntity-drop-not-updating-the-client-inv.patch similarity index 100% rename from patches/server/0817-Fix-HumanEntity-drop-not-updating-the-client-inv.patch rename to patches/server/0816-Fix-HumanEntity-drop-not-updating-the-client-inv.patch diff --git a/patches/server/0818-Add-CompostItemEvent-and-EntityCompostItemEvent.patch b/patches/server/0817-Add-CompostItemEvent-and-EntityCompostItemEvent.patch similarity index 100% rename from patches/server/0818-Add-CompostItemEvent-and-EntityCompostItemEvent.patch rename to patches/server/0817-Add-CompostItemEvent-and-EntityCompostItemEvent.patch diff --git a/patches/server/0819-Correctly-handle-ArmorStand-invisibility.patch b/patches/server/0818-Correctly-handle-ArmorStand-invisibility.patch similarity index 100% rename from patches/server/0819-Correctly-handle-ArmorStand-invisibility.patch rename to patches/server/0818-Correctly-handle-ArmorStand-invisibility.patch diff --git a/patches/server/0820-Fix-advancement-triggers-for-entity-damage.patch b/patches/server/0819-Fix-advancement-triggers-for-entity-damage.patch similarity index 100% rename from patches/server/0820-Fix-advancement-triggers-for-entity-damage.patch rename to patches/server/0819-Fix-advancement-triggers-for-entity-damage.patch diff --git a/patches/server/0821-Fix-text-display-error-on-spawn.patch b/patches/server/0820-Fix-text-display-error-on-spawn.patch similarity index 100% rename from patches/server/0821-Fix-text-display-error-on-spawn.patch rename to patches/server/0820-Fix-text-display-error-on-spawn.patch diff --git a/patches/server/0822-Fix-inventories-returning-null-Locations.patch b/patches/server/0821-Fix-inventories-returning-null-Locations.patch similarity index 100% rename from patches/server/0822-Fix-inventories-returning-null-Locations.patch rename to patches/server/0821-Fix-inventories-returning-null-Locations.patch diff --git a/patches/server/0823-Add-Shearable-API.patch b/patches/server/0822-Add-Shearable-API.patch similarity index 100% rename from patches/server/0823-Add-Shearable-API.patch rename to patches/server/0822-Add-Shearable-API.patch diff --git a/patches/server/0824-Fix-SpawnEggMeta-get-setSpawnedType.patch b/patches/server/0823-Fix-SpawnEggMeta-get-setSpawnedType.patch similarity index 100% rename from patches/server/0824-Fix-SpawnEggMeta-get-setSpawnedType.patch rename to patches/server/0823-Fix-SpawnEggMeta-get-setSpawnedType.patch diff --git a/patches/server/0825-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch b/patches/server/0824-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch similarity index 100% rename from patches/server/0825-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch rename to patches/server/0824-Fix-crash-relating-to-bad-recipes-in-furnace-like-ti.patch diff --git a/patches/server/0826-Treat-sequence-violations-like-they-should-be.patch b/patches/server/0825-Treat-sequence-violations-like-they-should-be.patch similarity index 86% rename from patches/server/0826-Treat-sequence-violations-like-they-should-be.patch rename to patches/server/0825-Treat-sequence-violations-like-they-should-be.patch index b60e6de65d..40e7a2f298 100644 --- a/patches/server/0826-Treat-sequence-violations-like-they-should-be.patch +++ b/patches/server/0825-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 fa4c6bd37bd7e3c66c867bab61b11b0bd217fd22..665ef268a0936a52b979c6cca680e237ae7aa74c 100644 +index 2701152aef4ccf7aeab7b44d81c3d81955181296..4c98d14028171b3d89214657454a6ee8c7ac7efc 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1960,6 +1960,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1958,6 +1958,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl public void ackBlockChangesUpTo(int sequence) { if (sequence < 0) { diff --git a/patches/server/0827-remove-duplicate-animate-packet-for-records.patch b/patches/server/0826-remove-duplicate-animate-packet-for-records.patch similarity index 100% rename from patches/server/0827-remove-duplicate-animate-packet-for-records.patch rename to patches/server/0826-remove-duplicate-animate-packet-for-records.patch diff --git a/patches/server/0828-Prevent-causing-expired-keys-from-impacting-new-join.patch b/patches/server/0827-Prevent-causing-expired-keys-from-impacting-new-join.patch similarity index 96% rename from patches/server/0828-Prevent-causing-expired-keys-from-impacting-new-join.patch rename to patches/server/0827-Prevent-causing-expired-keys-from-impacting-new-join.patch index d71981b357..ae45bbfbdd 100644 --- a/patches/server/0828-Prevent-causing-expired-keys-from-impacting-new-join.patch +++ b/patches/server/0827-Prevent-causing-expired-keys-from-impacting-new-join.patch @@ -26,7 +26,7 @@ index 68c062cbaa030d62d97c9c003651f8fc17a00a6b..6247a21c9c391abf1f6db3482c659593 UPDATE_GAME_MODE((serialized, buf) -> serialized.gameMode = GameType.byId(buf.readVarInt()), (buf, entry) -> buf.writeVarInt(entry.gameMode().getId())), UPDATE_LISTED((serialized, buf) -> serialized.listed = buf.readBoolean(), (buf, entry) -> buf.writeBoolean(entry.listed())), diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 665ef268a0936a52b979c6cca680e237ae7aa74c..a2ce3d3423a8cb3b851c2d811678ccb9c5b5d5b0 100644 +index 4c98d14028171b3d89214657454a6ee8c7ac7efc..d3593ba584441e4928f40b488bf2b3922aae14e3 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -295,6 +295,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -51,7 +51,7 @@ index 665ef268a0936a52b979c6cca680e237ae7aa74c..a2ce3d3423a8cb3b851c2d811678ccb9 } private int getMaximumFlyingTicks(Entity vehicle) { -@@ -3419,6 +3427,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3417,6 +3425,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl private void resetPlayerChatState(RemoteChatSession session) { this.chatSession = session; diff --git a/patches/server/0829-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch b/patches/server/0828-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch similarity index 100% rename from patches/server/0829-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch rename to patches/server/0828-Prevent-GameEvents-being-fired-from-unloaded-chunks.patch diff --git a/patches/server/0830-Use-array-for-gamerule-storage.patch b/patches/server/0829-Use-array-for-gamerule-storage.patch similarity index 100% rename from patches/server/0830-Use-array-for-gamerule-storage.patch rename to patches/server/0829-Use-array-for-gamerule-storage.patch diff --git a/patches/server/0831-Fix-a-couple-of-upstream-bed-issues.patch b/patches/server/0830-Fix-a-couple-of-upstream-bed-issues.patch similarity index 100% rename from patches/server/0831-Fix-a-couple-of-upstream-bed-issues.patch rename to patches/server/0830-Fix-a-couple-of-upstream-bed-issues.patch diff --git a/patches/server/0832-Fix-demo-flag-not-enabling-demo-mode.patch b/patches/server/0831-Fix-demo-flag-not-enabling-demo-mode.patch similarity index 100% rename from patches/server/0832-Fix-demo-flag-not-enabling-demo-mode.patch rename to patches/server/0831-Fix-demo-flag-not-enabling-demo-mode.patch diff --git a/patches/server/0833-Add-Mob-Experience-reward-API.patch b/patches/server/0832-Add-Mob-Experience-reward-API.patch similarity index 100% rename from patches/server/0833-Add-Mob-Experience-reward-API.patch rename to patches/server/0832-Add-Mob-Experience-reward-API.patch diff --git a/patches/server/0834-Break-redstone-on-top-of-trap-doors-early.patch b/patches/server/0833-Break-redstone-on-top-of-trap-doors-early.patch similarity index 100% rename from patches/server/0834-Break-redstone-on-top-of-trap-doors-early.patch rename to patches/server/0833-Break-redstone-on-top-of-trap-doors-early.patch diff --git a/patches/server/0835-Avoid-Lazy-Initialization-for-Enum-Fields.patch b/patches/server/0834-Avoid-Lazy-Initialization-for-Enum-Fields.patch similarity index 100% rename from patches/server/0835-Avoid-Lazy-Initialization-for-Enum-Fields.patch rename to patches/server/0834-Avoid-Lazy-Initialization-for-Enum-Fields.patch diff --git a/patches/server/0836-More-accurate-isInOpenWater-impl.patch b/patches/server/0835-More-accurate-isInOpenWater-impl.patch similarity index 100% rename from patches/server/0836-More-accurate-isInOpenWater-impl.patch rename to patches/server/0835-More-accurate-isInOpenWater-impl.patch diff --git a/patches/server/0837-Expand-PlayerItemMendEvent.patch b/patches/server/0836-Expand-PlayerItemMendEvent.patch similarity index 94% rename from patches/server/0837-Expand-PlayerItemMendEvent.patch rename to patches/server/0836-Expand-PlayerItemMendEvent.patch index 5017935fca..6d3b0124bb 100644 --- a/patches/server/0837-Expand-PlayerItemMendEvent.patch +++ b/patches/server/0836-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 27b75172820c35b02fe6b63e379a5c9a9fa59159..fb2e9f832841a35b07db7bfe55ffd1c81322fe64 100644 +index a933061d4f0c45a34b5678c2b317b670f20b8a45..46d8bcad1545953757659870901cbbdf3340bc15 100644 --- a/src/main/java/net/minecraft/world/entity/ExperienceOrb.java +++ b/src/main/java/net/minecraft/world/entity/ExperienceOrb.java @@ -350,7 +350,7 @@ public class ExperienceOrb extends Entity { @@ -33,7 +33,7 @@ index 27b75172820c35b02fe6b63e379a5c9a9fa59159..fb2e9f832841a35b07db7bfe55ffd1c8 return k > 0 ? this.repairPlayerItems(player, k) : 0; } else { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 79ab080e496df2b8d11c777427863bd775e60b91..c341c64950e2addfcf30655f1cf94bc543bbdba4 100644 +index 952728c30f8871f8ed1f27800feba7db038ad420..1b9e1038f729582117dc93736f9a089bf6481cff 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1835,11 +1835,11 @@ public class CraftPlayer extends CraftHumanEntity implements Player { @@ -51,7 +51,7 @@ index 79ab080e496df2b8d11c777427863bd775e60b91..c341c64950e2addfcf30655f1cf94bc5 } } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 4c2a09f137a5cb508317b4a72ae82d6389ad6305..95b819ef8953b2d94a76e33328c967d21bf216b4 100644 +index cbf2cd3c7005fb4148c15966079922a8b18ece91..f4ca35e044e41b3fd1b83c482a5c19d188ea0bae 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1264,10 +1264,10 @@ public class CraftEventFactory { diff --git a/patches/server/0838-Refresh-ProjectileSource-for-projectiles.patch b/patches/server/0837-Refresh-ProjectileSource-for-projectiles.patch similarity index 97% rename from patches/server/0838-Refresh-ProjectileSource-for-projectiles.patch rename to patches/server/0837-Refresh-ProjectileSource-for-projectiles.patch index 4292aa9845..1f88e9728f 100644 --- a/patches/server/0838-Refresh-ProjectileSource-for-projectiles.patch +++ b/patches/server/0837-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 a6f0a1114da54f78ccb2fb6151bf14e34cd5c330..1d934225d6abbec6f231042b8a9c823ee4a26029 100644 +index c15a08c6d9277dd1d6d63a25dacce0c43b8dad05..73831000101765845c0881bba217b2ca54eb39dd 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 SyncedDataHolder, Nameable, EntityAccess diff --git a/patches/server/0839-Add-transient-modifier-API.patch b/patches/server/0838-Add-transient-modifier-API.patch similarity index 100% rename from patches/server/0839-Add-transient-modifier-API.patch rename to patches/server/0838-Add-transient-modifier-API.patch diff --git a/patches/server/0840-Fix-block-place-logic.patch b/patches/server/0839-Fix-block-place-logic.patch similarity index 97% rename from patches/server/0840-Fix-block-place-logic.patch rename to patches/server/0839-Fix-block-place-logic.patch index 6438856b91..2b6ced0aad 100644 --- a/patches/server/0840-Fix-block-place-logic.patch +++ b/patches/server/0839-Fix-block-place-logic.patch @@ -22,7 +22,7 @@ index 7d76cdc59984b156628273c8357485eb10046007..7180996027f70aef7afe32fb2adfce64 itemstack.consume(1, entityhuman); return InteractionResult.sidedSuccess(world.isClientSide); diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index acce1b72185d4687ef5a72dd4014d87149f4b092..0f0d35955827ffa8cdc7d947b316704a42242ad3 100644 +index a158642471ab037ea3b99cac09ba5f3bf282e2a7..7450c53f3d43e401e5219d5ff01868a28ee2c05f 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -515,13 +515,7 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/0841-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch b/patches/server/0840-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch similarity index 94% rename from patches/server/0841-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch rename to patches/server/0840-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch index c2c946f528..5c09743836 100644 --- a/patches/server/0841-Fix-spigot-sound-playing-for-BlockItem-ItemStacks.patch +++ b/patches/server/0840-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 0f0d35955827ffa8cdc7d947b316704a42242ad3..f099e677041daf795ffee35d3a4659274fc3f3d9 100644 +index 7450c53f3d43e401e5219d5ff01868a28ee2c05f..2038c6b5758d50216058d9e04398c42f658aba4a 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -566,7 +566,11 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/0842-Call-BlockGrowEvent-for-missing-blocks.patch b/patches/server/0841-Call-BlockGrowEvent-for-missing-blocks.patch similarity index 100% rename from patches/server/0842-Call-BlockGrowEvent-for-missing-blocks.patch rename to patches/server/0841-Call-BlockGrowEvent-for-missing-blocks.patch diff --git a/patches/server/0843-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch b/patches/server/0842-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch similarity index 100% rename from patches/server/0843-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch rename to patches/server/0842-Don-t-enforce-icanhasbukkit-default-if-alias-block-e.patch diff --git a/patches/server/0844-fix-MapLike-spam-for-missing-key-selector.patch b/patches/server/0843-fix-MapLike-spam-for-missing-key-selector.patch similarity index 100% rename from patches/server/0844-fix-MapLike-spam-for-missing-key-selector.patch rename to patches/server/0843-fix-MapLike-spam-for-missing-key-selector.patch diff --git a/patches/server/0845-Fix-sniffer-removeExploredLocation.patch b/patches/server/0844-Fix-sniffer-removeExploredLocation.patch similarity index 100% rename from patches/server/0845-Fix-sniffer-removeExploredLocation.patch rename to patches/server/0844-Fix-sniffer-removeExploredLocation.patch diff --git a/patches/server/0846-Add-method-to-remove-all-active-potion-effects.patch b/patches/server/0845-Add-method-to-remove-all-active-potion-effects.patch similarity index 91% rename from patches/server/0846-Add-method-to-remove-all-active-potion-effects.patch rename to patches/server/0845-Add-method-to-remove-all-active-potion-effects.patch index 5ea4211d6a..cb276dcd2a 100644 --- a/patches/server/0846-Add-method-to-remove-all-active-potion-effects.patch +++ b/patches/server/0845-Add-method-to-remove-all-active-potion-effects.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add method to remove all active potion effects diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index a231543cf4fcc442e3675ece0d4c4950f4ed3126..18af8736f30780b48313257a09973e30df6d0e2f 100644 +index 37b62a45bbe2db725f24330f1f03e8cf09ab208c..0196a49a5822e257b0e065e2383ec92b1bc27bba 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -562,6 +562,13 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/patches/server/0847-Fix-incorrect-crafting-result-amount-for-fireworks.patch b/patches/server/0846-Fix-incorrect-crafting-result-amount-for-fireworks.patch similarity index 100% rename from patches/server/0847-Fix-incorrect-crafting-result-amount-for-fireworks.patch rename to patches/server/0846-Fix-incorrect-crafting-result-amount-for-fireworks.patch diff --git a/patches/server/0848-Add-event-for-player-editing-sign.patch b/patches/server/0847-Add-event-for-player-editing-sign.patch similarity index 98% rename from patches/server/0848-Add-event-for-player-editing-sign.patch rename to patches/server/0847-Add-event-for-player-editing-sign.patch index ec1df39aea..277ce6259c 100644 --- a/patches/server/0848-Add-event-for-player-editing-sign.patch +++ b/patches/server/0847-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 f099e677041daf795ffee35d3a4659274fc3f3d9..d7693f2551ee4c5c3be6d3e77b18b7ddfbd6e36c 100644 +index 2038c6b5758d50216058d9e04398c42f658aba4a..c27ef32a3fc3edf5a4dd91d7cba93a78a5e762fa 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -545,7 +545,7 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/0849-Only-tick-item-frames-if-players-can-see-it.patch b/patches/server/0848-Only-tick-item-frames-if-players-can-see-it.patch similarity index 100% rename from patches/server/0849-Only-tick-item-frames-if-players-can-see-it.patch rename to patches/server/0848-Only-tick-item-frames-if-players-can-see-it.patch diff --git a/patches/server/0850-Fix-cmd-permission-levels-for-command-blocks.patch b/patches/server/0849-Fix-cmd-permission-levels-for-command-blocks.patch similarity index 98% rename from patches/server/0850-Fix-cmd-permission-levels-for-command-blocks.patch rename to patches/server/0849-Fix-cmd-permission-levels-for-command-blocks.patch index 1f86b6a789..9e0f13e66a 100644 --- a/patches/server/0850-Fix-cmd-permission-levels-for-command-blocks.patch +++ b/patches/server/0849-Fix-cmd-permission-levels-for-command-blocks.patch @@ -41,7 +41,7 @@ index f3c83bb20a73b489f1fb6bacb69388902b1b6fe7..3c0d2332207ba638faaaa4280bce18c3 // CraftBukkit end diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java -index 3d6e19c2078a87983a849e6d627cba0609a556cc..e1aa1e1f23512fc7d2267ff8e75358b67cb419a3 100644 +index 760a3ed87caac79f6a95e0a82226386d26de99db..ac42fb0c9edb973f4a503fd3a617b401318354f1 100644 --- a/src/main/java/net/minecraft/commands/Commands.java +++ b/src/main/java/net/minecraft/commands/Commands.java @@ -297,16 +297,7 @@ public class Commands { diff --git a/patches/server/0851-Add-option-to-disable-block-updates.patch b/patches/server/0850-Add-option-to-disable-block-updates.patch similarity index 100% rename from patches/server/0851-Add-option-to-disable-block-updates.patch rename to patches/server/0850-Add-option-to-disable-block-updates.patch diff --git a/patches/server/0852-Call-missing-BlockDispenseEvent.patch b/patches/server/0851-Call-missing-BlockDispenseEvent.patch similarity index 100% rename from patches/server/0852-Call-missing-BlockDispenseEvent.patch rename to patches/server/0851-Call-missing-BlockDispenseEvent.patch diff --git a/patches/server/0853-Don-t-load-chunks-for-supporting-block-checks.patch b/patches/server/0852-Don-t-load-chunks-for-supporting-block-checks.patch similarity index 90% rename from patches/server/0853-Don-t-load-chunks-for-supporting-block-checks.patch rename to patches/server/0852-Don-t-load-chunks-for-supporting-block-checks.patch index 5e49d5fc94..936d1935f2 100644 --- a/patches/server/0853-Don-t-load-chunks-for-supporting-block-checks.patch +++ b/patches/server/0852-Don-t-load-chunks-for-supporting-block-checks.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Don't load chunks for supporting block checks diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 1d934225d6abbec6f231042b8a9c823ee4a26029..9541fbd06bc000023d6119eff03787ef068178ce 100644 +index 73831000101765845c0881bba217b2ca54eb39dd..9119bf1eac38f9b40d035f702150a7939095266c 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -1210,7 +1210,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess diff --git a/patches/server/0854-Optimize-player-lookups-for-beacons.patch b/patches/server/0853-Optimize-player-lookups-for-beacons.patch similarity index 100% rename from patches/server/0854-Optimize-player-lookups-for-beacons.patch rename to patches/server/0853-Optimize-player-lookups-for-beacons.patch diff --git a/patches/server/0855-Add-Sign-getInteractableSideFor.patch b/patches/server/0854-Add-Sign-getInteractableSideFor.patch similarity index 100% rename from patches/server/0855-Add-Sign-getInteractableSideFor.patch rename to patches/server/0854-Add-Sign-getInteractableSideFor.patch diff --git a/patches/server/0856-fix-item-meta-for-tadpole-buckets.patch b/patches/server/0855-fix-item-meta-for-tadpole-buckets.patch similarity index 100% rename from patches/server/0856-fix-item-meta-for-tadpole-buckets.patch rename to patches/server/0855-fix-item-meta-for-tadpole-buckets.patch diff --git a/patches/server/0857-Fix-BanList-API.patch b/patches/server/0856-Fix-BanList-API.patch similarity index 99% rename from patches/server/0857-Fix-BanList-API.patch rename to patches/server/0856-Fix-BanList-API.patch index 8cd8ecd005..3250071e25 100644 --- a/patches/server/0857-Fix-BanList-API.patch +++ b/patches/server/0856-Fix-BanList-API.patch @@ -208,7 +208,7 @@ index 172202accf4448a933fcf1ff820316c7910dd7f7..50ee7656580d386db473c054f5c5ec57 return null; } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index c341c64950e2addfcf30655f1cf94bc543bbdba4..abc9c4869994e97b0d6301dd58882f8f7e9383e1 100644 +index 1b9e1038f729582117dc93736f9a089bf6481cff..b41646469bcbde02a1c2254247748bbcbbabddad 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1733,23 +1733,23 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0858-Determine-lava-and-water-fluid-explosion-resistance-.patch b/patches/server/0857-Determine-lava-and-water-fluid-explosion-resistance-.patch similarity index 100% rename from patches/server/0858-Determine-lava-and-water-fluid-explosion-resistance-.patch rename to patches/server/0857-Determine-lava-and-water-fluid-explosion-resistance-.patch diff --git a/patches/server/0859-Fix-possible-NPE-on-painting-creation.patch b/patches/server/0858-Fix-possible-NPE-on-painting-creation.patch similarity index 100% rename from patches/server/0859-Fix-possible-NPE-on-painting-creation.patch rename to patches/server/0858-Fix-possible-NPE-on-painting-creation.patch diff --git a/patches/server/0860-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch b/patches/server/0859-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch similarity index 100% rename from patches/server/0860-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch rename to patches/server/0859-Only-set-despawnTimer-for-Wandering-Traders-spawned-.patch diff --git a/patches/server/0861-ExperienceOrb-should-call-EntitySpawnEvent.patch b/patches/server/0860-ExperienceOrb-should-call-EntitySpawnEvent.patch similarity index 93% rename from patches/server/0861-ExperienceOrb-should-call-EntitySpawnEvent.patch rename to patches/server/0860-ExperienceOrb-should-call-EntitySpawnEvent.patch index 8b1e62e4fc..636b845e45 100644 --- a/patches/server/0861-ExperienceOrb-should-call-EntitySpawnEvent.patch +++ b/patches/server/0860-ExperienceOrb-should-call-EntitySpawnEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] ExperienceOrb should call EntitySpawnEvent diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 67604683e474701ac84b6e0a2f9c93a50978147b..332fb71629dfb281656e6473fb5504557848aab5 100644 +index 16f183c8e81b8c22ca51387e9e35282ed20d651c..97ce8663744041bd57bbb1000f77a05e01156a6c 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -735,7 +735,8 @@ public class CraftEventFactory { diff --git a/patches/server/0862-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch b/patches/server/0861-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch similarity index 100% rename from patches/server/0862-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch rename to patches/server/0861-Make-Amethyst-throw-both-Spread-and-Grow-Events.patch diff --git a/patches/server/0863-Add-whitelist-events.patch b/patches/server/0862-Add-whitelist-events.patch similarity index 100% rename from patches/server/0863-Add-whitelist-events.patch rename to patches/server/0862-Add-whitelist-events.patch diff --git a/patches/server/0864-Implement-PlayerFailMoveEvent.patch b/patches/server/0863-Implement-PlayerFailMoveEvent.patch similarity index 95% rename from patches/server/0864-Implement-PlayerFailMoveEvent.patch rename to patches/server/0863-Implement-PlayerFailMoveEvent.patch index 9a127a050d..d3f9e3790d 100644 --- a/patches/server/0864-Implement-PlayerFailMoveEvent.patch +++ b/patches/server/0863-Implement-PlayerFailMoveEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Implement PlayerFailMoveEvent diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index a2ce3d3423a8cb3b851c2d811678ccb9c5b5d5b0..38e19bd86bdef97dbea5ae2a4e7692ba10d39c47 100644 +index d3593ba584441e4928f40b488bf2b3922aae14e3..9ac65f4305d86e14a99196bcba11fabe5991265d 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1266,8 +1266,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1264,8 +1264,8 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl double d0 = ServerGamePacketListenerImpl.clampHorizontal(packet.getX(this.player.getX())); final double toX = d0; // Paper - OBFHELPER double d1 = ServerGamePacketListenerImpl.clampVertical(packet.getY(this.player.getY())); final double toY = d1; // Paper - OBFHELPER double d2 = ServerGamePacketListenerImpl.clampHorizontal(packet.getZ(this.player.getZ())); final double toZ = d2; // Paper - OBFHELPER @@ -19,7 +19,7 @@ index a2ce3d3423a8cb3b851c2d811678ccb9c5b5d5b0..38e19bd86bdef97dbea5ae2a4e7692ba if (this.player.isPassenger()) { this.player.absMoveTo(this.player.getX(), this.player.getY(), this.player.getZ(), f, f1); -@@ -1334,8 +1334,14 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1332,8 +1332,14 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } // Paper start - Prevent moving into unloaded chunks if (this.player.level().paperConfig().chunks.preventMovingIntoUnloadedChunks && (this.player.getX() != toX || this.player.getZ() != toZ) && !worldserver.areChunksLoadedForMove(this.player.getBoundingBox().expandTowards(new Vec3(toX, toY, toZ).subtract(this.player.position())))) { @@ -36,7 +36,7 @@ index a2ce3d3423a8cb3b851c2d811678ccb9c5b5d5b0..38e19bd86bdef97dbea5ae2a4e7692ba } // Paper end - Prevent moving into unloaded chunks -@@ -1344,9 +1350,16 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1342,9 +1348,16 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl if (d10 - d9 > Math.max(f2, Math.pow((double) (org.spigotmc.SpigotConfig.movedTooQuicklyMultiplier * (float) i * speed), 2)) && !this.isSingleplayerOwner()) { // CraftBukkit end @@ -56,7 +56,7 @@ index a2ce3d3423a8cb3b851c2d811678ccb9c5b5d5b0..38e19bd86bdef97dbea5ae2a4e7692ba } } } -@@ -1408,14 +1421,31 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1406,14 +1419,31 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl d8 = d2 - this.player.getZ(); d10 = d6 * d6 + d7 * d7 + d8 * d8; @@ -91,7 +91,7 @@ index a2ce3d3423a8cb3b851c2d811678ccb9c5b5d5b0..38e19bd86bdef97dbea5ae2a4e7692ba 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 { -@@ -3450,4 +3480,17 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3448,4 +3478,17 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl InteractionResult run(ServerPlayer player, Entity entity, InteractionHand hand); } diff --git a/patches/server/0865-Folia-scheduler-and-owned-region-API.patch b/patches/server/0864-Folia-scheduler-and-owned-region-API.patch similarity index 100% rename from patches/server/0865-Folia-scheduler-and-owned-region-API.patch rename to patches/server/0864-Folia-scheduler-and-owned-region-API.patch diff --git a/patches/server/0866-Only-erase-allay-memory-on-non-item-targets.patch b/patches/server/0865-Only-erase-allay-memory-on-non-item-targets.patch similarity index 100% rename from patches/server/0866-Only-erase-allay-memory-on-non-item-targets.patch rename to patches/server/0865-Only-erase-allay-memory-on-non-item-targets.patch diff --git a/patches/server/0867-API-for-updating-recipes-on-clients.patch b/patches/server/0866-API-for-updating-recipes-on-clients.patch similarity index 100% rename from patches/server/0867-API-for-updating-recipes-on-clients.patch rename to patches/server/0866-API-for-updating-recipes-on-clients.patch diff --git a/patches/server/0868-Fix-rotation-when-spawning-display-entities.patch b/patches/server/0867-Fix-rotation-when-spawning-display-entities.patch similarity index 100% rename from patches/server/0868-Fix-rotation-when-spawning-display-entities.patch rename to patches/server/0867-Fix-rotation-when-spawning-display-entities.patch diff --git a/patches/server/0869-Only-capture-actual-tree-growth.patch b/patches/server/0868-Only-capture-actual-tree-growth.patch similarity index 98% rename from patches/server/0869-Only-capture-actual-tree-growth.patch rename to patches/server/0868-Only-capture-actual-tree-growth.patch index 9f209c027a..5c41527169 100644 --- a/patches/server/0869-Only-capture-actual-tree-growth.patch +++ b/patches/server/0868-Only-capture-actual-tree-growth.patch @@ -17,7 +17,7 @@ index 5bbadc890a72f1cb22c6881ebcc163b0c06a367a..4fa838bf97ede6e1c893ba64f53aa7af } } diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index d7693f2551ee4c5c3be6d3e77b18b7ddfbd6e36c..f309bd640dfac68b9a1cf59bb52d315285b91c2c 100644 +index c27ef32a3fc3edf5a4dd91d7cba93a78a5e762fa..4485199c90e3efbce3e6a18a75703e86a9bdde3c 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -445,6 +445,7 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/0870-Use-correct-source-for-mushroom-block-spread-event.patch b/patches/server/0869-Use-correct-source-for-mushroom-block-spread-event.patch similarity index 100% rename from patches/server/0870-Use-correct-source-for-mushroom-block-spread-event.patch rename to patches/server/0869-Use-correct-source-for-mushroom-block-spread-event.patch diff --git a/patches/server/0871-Respect-randomizeData-on-more-entities-when-spawning.patch b/patches/server/0870-Respect-randomizeData-on-more-entities-when-spawning.patch similarity index 100% rename from patches/server/0871-Respect-randomizeData-on-more-entities-when-spawning.patch rename to patches/server/0870-Respect-randomizeData-on-more-entities-when-spawning.patch diff --git a/patches/server/0872-Use-correct-seed-on-api-world-load.patch b/patches/server/0871-Use-correct-seed-on-api-world-load.patch similarity index 100% rename from patches/server/0872-Use-correct-seed-on-api-world-load.patch rename to patches/server/0871-Use-correct-seed-on-api-world-load.patch diff --git a/patches/server/0873-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch b/patches/server/0872-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch similarity index 100% rename from patches/server/0873-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch rename to patches/server/0872-Remove-UpgradeData-neighbour-ticks-outside-of-range.patch diff --git a/patches/server/0874-Cache-map-ids-on-item-frames.patch b/patches/server/0873-Cache-map-ids-on-item-frames.patch similarity index 100% rename from patches/server/0874-Cache-map-ids-on-item-frames.patch rename to patches/server/0873-Cache-map-ids-on-item-frames.patch diff --git a/patches/server/0875-Fix-custom-statistic-criteria-creation.patch b/patches/server/0874-Fix-custom-statistic-criteria-creation.patch similarity index 100% rename from patches/server/0875-Fix-custom-statistic-criteria-creation.patch rename to patches/server/0874-Fix-custom-statistic-criteria-creation.patch diff --git a/patches/server/0876-Bandaid-fix-for-Effect.patch b/patches/server/0875-Bandaid-fix-for-Effect.patch similarity index 100% rename from patches/server/0876-Bandaid-fix-for-Effect.patch rename to patches/server/0875-Bandaid-fix-for-Effect.patch diff --git a/patches/server/0877-SculkCatalyst-bloom-API.patch b/patches/server/0876-SculkCatalyst-bloom-API.patch similarity index 100% rename from patches/server/0877-SculkCatalyst-bloom-API.patch rename to patches/server/0876-SculkCatalyst-bloom-API.patch diff --git a/patches/server/0878-API-for-an-entity-s-scoreboard-name.patch b/patches/server/0877-API-for-an-entity-s-scoreboard-name.patch similarity index 100% rename from patches/server/0878-API-for-an-entity-s-scoreboard-name.patch rename to patches/server/0877-API-for-an-entity-s-scoreboard-name.patch diff --git a/patches/server/0879-Deprecate-and-replace-methods-with-old-StructureType.patch b/patches/server/0878-Deprecate-and-replace-methods-with-old-StructureType.patch similarity index 100% rename from patches/server/0879-Deprecate-and-replace-methods-with-old-StructureType.patch rename to patches/server/0878-Deprecate-and-replace-methods-with-old-StructureType.patch diff --git a/patches/server/0880-Don-t-tab-complete-namespaced-commands-if-send-names.patch b/patches/server/0879-Don-t-tab-complete-namespaced-commands-if-send-names.patch similarity index 95% rename from patches/server/0880-Don-t-tab-complete-namespaced-commands-if-send-names.patch rename to patches/server/0879-Don-t-tab-complete-namespaced-commands-if-send-names.patch index 83a253acb9..25aa296c36 100644 --- a/patches/server/0880-Don-t-tab-complete-namespaced-commands-if-send-names.patch +++ b/patches/server/0879-Don-t-tab-complete-namespaced-commands-if-send-names.patch @@ -11,7 +11,7 @@ This patch prevents server from sending namespaced commands when player requests tab-complete only commands. diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 38e19bd86bdef97dbea5ae2a4e7692ba10d39c47..5c9d3ce9c84fd86209023306ad15a9bcb1725b0d 100644 +index 9ac65f4305d86e14a99196bcba11fabe5991265d..ed8175878c570cfe9bf9d954d9ecf49977690434 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -817,6 +817,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0881-Properly-handle-BlockBreakEvent-isDropItems.patch b/patches/server/0880-Properly-handle-BlockBreakEvent-isDropItems.patch similarity index 100% rename from patches/server/0881-Properly-handle-BlockBreakEvent-isDropItems.patch rename to patches/server/0880-Properly-handle-BlockBreakEvent-isDropItems.patch diff --git a/patches/server/0882-Fire-entity-death-event-for-ender-dragon.patch b/patches/server/0881-Fire-entity-death-event-for-ender-dragon.patch similarity index 100% rename from patches/server/0882-Fire-entity-death-event-for-ender-dragon.patch rename to patches/server/0881-Fire-entity-death-event-for-ender-dragon.patch diff --git a/patches/server/0883-Configurable-entity-tracking-range-by-Y-coordinate.patch b/patches/server/0882-Configurable-entity-tracking-range-by-Y-coordinate.patch similarity index 100% rename from patches/server/0883-Configurable-entity-tracking-range-by-Y-coordinate.patch rename to patches/server/0882-Configurable-entity-tracking-range-by-Y-coordinate.patch diff --git a/patches/server/0884-Add-Listing-API-for-Player.patch b/patches/server/0883-Add-Listing-API-for-Player.patch similarity index 99% rename from patches/server/0884-Add-Listing-API-for-Player.patch rename to patches/server/0883-Add-Listing-API-for-Player.patch index f380ada607..7e9ecaa392 100644 --- a/patches/server/0884-Add-Listing-API-for-Player.patch +++ b/patches/server/0883-Add-Listing-API-for-Player.patch @@ -119,7 +119,7 @@ index ea04eb049e16d1027d15f9863d1fcd16f090c464..0aa28caa1254137c0bae8e213bd08c9a // Paper end - Use single player info update packet on join player.sentListPacket = true; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 1654c04c261f5591df4815423efb55751882de10..4e034c274964a651d6d91a7e1dc39c04e4fba184 100644 +index a06145c8ba3cd88c827bcc354e7dc2dafa3eda32..89268fc4a0570da27c53ad5f5a36cfbc1615c3fb 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -199,6 +199,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0885-Configurable-Region-Compression-Format.patch b/patches/server/0884-Configurable-Region-Compression-Format.patch similarity index 100% rename from patches/server/0885-Configurable-Region-Compression-Format.patch rename to patches/server/0884-Configurable-Region-Compression-Format.patch diff --git a/patches/server/0886-Add-BlockFace-to-BlockDamageEvent.patch b/patches/server/0885-Add-BlockFace-to-BlockDamageEvent.patch similarity index 96% rename from patches/server/0886-Add-BlockFace-to-BlockDamageEvent.patch rename to patches/server/0885-Add-BlockFace-to-BlockDamageEvent.patch index 570b327293..888a2dd187 100644 --- a/patches/server/0886-Add-BlockFace-to-BlockDamageEvent.patch +++ b/patches/server/0885-Add-BlockFace-to-BlockDamageEvent.patch @@ -18,7 +18,7 @@ index 266fd2874293091f7bf49dcb8c9295250ac7286c..dd78a1685bd841577aa9d5010fffda14 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 fc14a3a64fe18971dcac8d90a062407f1d978fef..ae4a7249adfe707693dea4d2748590b869c2d4f9 100644 +index 97ce8663744041bd57bbb1000f77a05e01156a6c..cdb5fd2642e7c5325f11633de8d58a5a8cdc2c77 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -650,13 +650,13 @@ public class CraftEventFactory { diff --git a/patches/server/0887-Fix-NPE-on-Boat-getStatus.patch b/patches/server/0886-Fix-NPE-on-Boat-getStatus.patch similarity index 100% rename from patches/server/0887-Fix-NPE-on-Boat-getStatus.patch rename to patches/server/0886-Fix-NPE-on-Boat-getStatus.patch diff --git a/patches/server/0888-Expand-Pose-API.patch b/patches/server/0887-Expand-Pose-API.patch similarity index 95% rename from patches/server/0888-Expand-Pose-API.patch rename to patches/server/0887-Expand-Pose-API.patch index 0cd10176d6..de1b0ed67e 100644 --- a/patches/server/0888-Expand-Pose-API.patch +++ b/patches/server/0887-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 3aeb24963ce0415e97168196cbf53e8f26334013..de841b91b0a0c10c4b9f4dfdd3858c83f81ad183 100644 +index 27d736d34c91c08782fa8fd60742e296580e08f2..73669ce44d3b62183f983365df5a46c10e1458bf 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -420,6 +420,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess diff --git a/patches/server/0889-More-DragonBattle-API.patch b/patches/server/0888-More-DragonBattle-API.patch similarity index 100% rename from patches/server/0889-More-DragonBattle-API.patch rename to patches/server/0888-More-DragonBattle-API.patch diff --git a/patches/server/0890-Add-PlayerPickItemEvent.patch b/patches/server/0889-Add-PlayerPickItemEvent.patch similarity index 96% rename from patches/server/0890-Add-PlayerPickItemEvent.patch rename to patches/server/0889-Add-PlayerPickItemEvent.patch index 010e85d01a..a068c977bc 100644 --- a/patches/server/0890-Add-PlayerPickItemEvent.patch +++ b/patches/server/0889-Add-PlayerPickItemEvent.patch @@ -5,7 +5,7 @@ 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 5c9d3ce9c84fd86209023306ad15a9bcb1725b0d..30e0563ba54021bf8f2896bee8060e723ad84d48 100644 +index ed8175878c570cfe9bf9d954d9ecf49977690434..6d7f8807312eae5dea58c4f4b5dd60767ec64ad0 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -932,8 +932,17 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0891-Allow-trident-custom-damage.patch b/patches/server/0890-Allow-trident-custom-damage.patch similarity index 100% rename from patches/server/0891-Allow-trident-custom-damage.patch rename to patches/server/0890-Allow-trident-custom-damage.patch diff --git a/patches/server/0892-Expose-hand-in-BlockCanBuildEvent.patch b/patches/server/0891-Expose-hand-in-BlockCanBuildEvent.patch similarity index 100% rename from patches/server/0892-Expose-hand-in-BlockCanBuildEvent.patch rename to patches/server/0891-Expose-hand-in-BlockCanBuildEvent.patch diff --git a/patches/server/0893-Optimize-nearest-structure-border-iteration.patch b/patches/server/0892-Optimize-nearest-structure-border-iteration.patch similarity index 100% rename from patches/server/0893-Optimize-nearest-structure-border-iteration.patch rename to patches/server/0892-Optimize-nearest-structure-border-iteration.patch diff --git a/patches/server/0894-Implement-OfflinePlayer-isConnected.patch b/patches/server/0893-Implement-OfflinePlayer-isConnected.patch similarity index 94% rename from patches/server/0894-Implement-OfflinePlayer-isConnected.patch rename to patches/server/0893-Implement-OfflinePlayer-isConnected.patch index 479e78450f..5c57b374ff 100644 --- a/patches/server/0894-Implement-OfflinePlayer-isConnected.patch +++ b/patches/server/0893-Implement-OfflinePlayer-isConnected.patch @@ -23,7 +23,7 @@ index 4d654c4f0b6210a9841427789ba70ce5d1d308be..9d93130f23addb18b97d7f5ec013faef public String getName() { Player player = this.getPlayer(); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 4e034c274964a651d6d91a7e1dc39c04e4fba184..5da5dc72a0ddb45515bce0ea81825f5368bbd997 100644 +index 89268fc4a0570da27c53ad5f5a36cfbc1615c3fb..357255d58c2ec1e20828a544e5ae9f0927485cef 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -254,6 +254,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0895-Fix-inventory-desync.patch b/patches/server/0894-Fix-inventory-desync.patch similarity index 98% rename from patches/server/0895-Fix-inventory-desync.patch rename to patches/server/0894-Fix-inventory-desync.patch index aaa16e68f2..27d0fc0515 100644 --- a/patches/server/0895-Fix-inventory-desync.patch +++ b/patches/server/0894-Fix-inventory-desync.patch @@ -17,7 +17,7 @@ index a79023c9e3265221e55cae1879f9c0052dafbef6..88ea8ed1b81ece6315bc8dcde04b5fa1 this.containerMenu.findSlot(this.getInventory(), this.getInventory().selected).ifPresent(s -> { this.containerSynchronizer.sendSlotChange(this.containerMenu, s, this.getMainHandItem()); diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index babbcee2892990b626afed76b75861f0d42cf571..13c4edabb3671357d07a27d3e6403ed66a5028d5 100644 +index 5b169de9c2a34044dcf46c613291ae56a83ad5d2..80f0831fbd78ece360fe5ea850146a61dbe8c23c 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -1466,8 +1466,9 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Targeti diff --git a/patches/server/0896-Add-titleOverride-to-InventoryOpenEvent.patch b/patches/server/0895-Add-titleOverride-to-InventoryOpenEvent.patch similarity index 98% rename from patches/server/0896-Add-titleOverride-to-InventoryOpenEvent.patch rename to patches/server/0895-Add-titleOverride-to-InventoryOpenEvent.patch index e00de009ff..9965aa3045 100644 --- a/patches/server/0896-Add-titleOverride-to-InventoryOpenEvent.patch +++ b/patches/server/0895-Add-titleOverride-to-InventoryOpenEvent.patch @@ -79,7 +79,7 @@ index 3d36d79a4e7f16f6face3465cdf54656984f3ebc..41f3cdec7deabf34358b8087df77169f if (!player.isImmobile()) player.connection.send(new ClientboundOpenScreenPacket(container.containerId, windowType, io.papermc.paper.adventure.PaperAdventure.asVanilla(adventure$title))); // Paper - Prevent opening inventories when frozen player.containerMenu = container; diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index ae4a7249adfe707693dea4d2748590b869c2d4f9..31c35ccbd84fab60fcf30d0d00f1ee38c05e78ca 100644 +index cdb5fd2642e7c5325f11633de8d58a5a8cdc2c77..64d4246b9d13e6fe8b638c4a6b664f87fc0e66a0 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1381,10 +1381,21 @@ public class CraftEventFactory { diff --git a/patches/server/0897-Configure-sniffer-egg-hatch-time.patch b/patches/server/0896-Configure-sniffer-egg-hatch-time.patch similarity index 100% rename from patches/server/0897-Configure-sniffer-egg-hatch-time.patch rename to patches/server/0896-Configure-sniffer-egg-hatch-time.patch diff --git a/patches/server/0898-Do-crystal-portal-proximity-check-before-entity-look.patch b/patches/server/0897-Do-crystal-portal-proximity-check-before-entity-look.patch similarity index 100% rename from patches/server/0898-Do-crystal-portal-proximity-check-before-entity-look.patch rename to patches/server/0897-Do-crystal-portal-proximity-check-before-entity-look.patch diff --git a/patches/server/0899-Skip-POI-finding-if-stuck-in-vehicle.patch b/patches/server/0898-Skip-POI-finding-if-stuck-in-vehicle.patch similarity index 100% rename from patches/server/0899-Skip-POI-finding-if-stuck-in-vehicle.patch rename to patches/server/0898-Skip-POI-finding-if-stuck-in-vehicle.patch diff --git a/patches/server/0900-Add-slot-sanity-checks-in-container-clicks.patch b/patches/server/0899-Add-slot-sanity-checks-in-container-clicks.patch similarity index 96% rename from patches/server/0900-Add-slot-sanity-checks-in-container-clicks.patch rename to patches/server/0899-Add-slot-sanity-checks-in-container-clicks.patch index b049da07fe..f51262e68c 100644 --- a/patches/server/0900-Add-slot-sanity-checks-in-container-clicks.patch +++ b/patches/server/0899-Add-slot-sanity-checks-in-container-clicks.patch @@ -18,10 +18,10 @@ index 2a00a2c8102a4a88edcfc8c680c3711efeb75b4a..33340e8ebe23a1a9ce587be34551fb92 DataComponentType datacomponenttype; int k; diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 30e0563ba54021bf8f2896bee8060e723ad84d48..e13097ceba283fdf165d7e6327fe78590252fe94 100644 +index 6d7f8807312eae5dea58c4f4b5dd60767ec64ad0..b6d3ff57402ce5f70efbfdaf1cc50305e2f08958 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2970,6 +2970,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2968,6 +2968,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl break; case SWAP: if ((packet.getButtonNum() >= 0 && packet.getButtonNum() < 9) || packet.getButtonNum() == 40) { diff --git a/patches/server/0901-Call-BlockRedstoneEvents-for-lecterns.patch b/patches/server/0900-Call-BlockRedstoneEvents-for-lecterns.patch similarity index 100% rename from patches/server/0901-Call-BlockRedstoneEvents-for-lecterns.patch rename to patches/server/0900-Call-BlockRedstoneEvents-for-lecterns.patch diff --git a/patches/server/0902-Allow-proper-checking-of-empty-item-stacks.patch b/patches/server/0901-Allow-proper-checking-of-empty-item-stacks.patch similarity index 93% rename from patches/server/0902-Allow-proper-checking-of-empty-item-stacks.patch rename to patches/server/0901-Allow-proper-checking-of-empty-item-stacks.patch index 96786bb1b5..4a7f6baa7b 100644 --- a/patches/server/0902-Allow-proper-checking-of-empty-item-stacks.patch +++ b/patches/server/0901-Allow-proper-checking-of-empty-item-stacks.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Allow proper checking of empty item stacks diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index 55ae50f99a891a26dcdc0ec6266e3c05b3d12a5e..819e237a8797ab51b7f888b42a013c5198d8fcf6 100644 +index 7c510d673253e53c1cebbe7af2aacbcaa59cb9de..776437ae42865baccab4fb5d3f2715c8f0519b8a 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java @@ -36,12 +36,19 @@ public final class CraftItemStack extends ItemStack { diff --git a/patches/server/0903-Fix-silent-equipment-change-for-mobs.patch b/patches/server/0902-Fix-silent-equipment-change-for-mobs.patch similarity index 98% rename from patches/server/0903-Fix-silent-equipment-change-for-mobs.patch rename to patches/server/0902-Fix-silent-equipment-change-for-mobs.patch index 1db9162577..08e06c8e45 100644 --- a/patches/server/0903-Fix-silent-equipment-change-for-mobs.patch +++ b/patches/server/0902-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 13c4edabb3671357d07a27d3e6403ed66a5028d5..f9a8bcbd58ba450bf6f5f82ae9e08b8bec9a9c4d 100644 +index 80f0831fbd78ece360fe5ea850146a61dbe8c23c..5581fd6656fc13ea1d036d6caab2aba39c5320ac 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -1153,19 +1153,26 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Targeti diff --git a/patches/server/0904-Fix-spigot-s-Forced-Stats.patch b/patches/server/0903-Fix-spigot-s-Forced-Stats.patch similarity index 100% rename from patches/server/0904-Fix-spigot-s-Forced-Stats.patch rename to patches/server/0903-Fix-spigot-s-Forced-Stats.patch diff --git a/patches/server/0905-Add-missing-InventoryHolders-to-inventories.patch b/patches/server/0904-Add-missing-InventoryHolders-to-inventories.patch similarity index 100% rename from patches/server/0905-Add-missing-InventoryHolders-to-inventories.patch rename to patches/server/0904-Add-missing-InventoryHolders-to-inventories.patch diff --git a/patches/server/0906-Do-not-read-tile-entities-in-chunks-that-are-positio.patch b/patches/server/0905-Do-not-read-tile-entities-in-chunks-that-are-positio.patch similarity index 100% rename from patches/server/0906-Do-not-read-tile-entities-in-chunks-that-are-positio.patch rename to patches/server/0905-Do-not-read-tile-entities-in-chunks-that-are-positio.patch diff --git a/patches/server/0907-Add-missing-logs-for-log-ips-config-option.patch b/patches/server/0906-Add-missing-logs-for-log-ips-config-option.patch similarity index 100% rename from patches/server/0907-Add-missing-logs-for-log-ips-config-option.patch rename to patches/server/0906-Add-missing-logs-for-log-ips-config-option.patch diff --git a/patches/server/0908-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch b/patches/server/0907-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch similarity index 100% rename from patches/server/0908-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch rename to patches/server/0907-Fix-race-condition-on-UpgradeData.BlockFixers-class-.patch diff --git a/patches/server/0909-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch b/patches/server/0908-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch similarity index 100% rename from patches/server/0909-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch rename to patches/server/0908-Fix-NPE-in-AdvancementProgress-getDateAwarded.patch diff --git a/patches/server/0910-Fix-team-sidebar-objectives-not-being-cleared.patch b/patches/server/0909-Fix-team-sidebar-objectives-not-being-cleared.patch similarity index 100% rename from patches/server/0910-Fix-team-sidebar-objectives-not-being-cleared.patch rename to patches/server/0909-Fix-team-sidebar-objectives-not-being-cleared.patch diff --git a/patches/server/0911-Fix-missing-map-initialize-event-call.patch b/patches/server/0910-Fix-missing-map-initialize-event-call.patch similarity index 100% rename from patches/server/0911-Fix-missing-map-initialize-event-call.patch rename to patches/server/0910-Fix-missing-map-initialize-event-call.patch diff --git a/patches/server/0912-Update-entity-data-when-attaching-firework-to-entity.patch b/patches/server/0911-Update-entity-data-when-attaching-firework-to-entity.patch similarity index 100% rename from patches/server/0912-Update-entity-data-when-attaching-firework-to-entity.patch rename to patches/server/0911-Update-entity-data-when-attaching-firework-to-entity.patch diff --git a/patches/server/0913-Fix-UnsafeValues-loadAdvancement.patch b/patches/server/0912-Fix-UnsafeValues-loadAdvancement.patch similarity index 100% rename from patches/server/0913-Fix-UnsafeValues-loadAdvancement.patch rename to patches/server/0912-Fix-UnsafeValues-loadAdvancement.patch diff --git a/patches/server/0914-Add-player-idle-duration-API.patch b/patches/server/0913-Add-player-idle-duration-API.patch similarity index 100% rename from patches/server/0914-Add-player-idle-duration-API.patch rename to patches/server/0913-Add-player-idle-duration-API.patch diff --git a/patches/server/0915-Don-t-check-if-we-can-see-non-visible-entities.patch b/patches/server/0914-Don-t-check-if-we-can-see-non-visible-entities.patch similarity index 100% rename from patches/server/0915-Don-t-check-if-we-can-see-non-visible-entities.patch rename to patches/server/0914-Don-t-check-if-we-can-see-non-visible-entities.patch diff --git a/patches/server/0916-Fix-NPE-in-SculkBloomEvent-world-access.patch b/patches/server/0915-Fix-NPE-in-SculkBloomEvent-world-access.patch similarity index 100% rename from patches/server/0916-Fix-NPE-in-SculkBloomEvent-world-access.patch rename to patches/server/0915-Fix-NPE-in-SculkBloomEvent-world-access.patch diff --git a/patches/server/0917-Allow-null-itemstack-for-Player-sendEquipmentChange.patch b/patches/server/0916-Allow-null-itemstack-for-Player-sendEquipmentChange.patch similarity index 90% rename from patches/server/0917-Allow-null-itemstack-for-Player-sendEquipmentChange.patch rename to patches/server/0916-Allow-null-itemstack-for-Player-sendEquipmentChange.patch index 0f038d99ce..5c8534a63f 100644 --- a/patches/server/0917-Allow-null-itemstack-for-Player-sendEquipmentChange.patch +++ b/patches/server/0916-Allow-null-itemstack-for-Player-sendEquipmentChange.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Allow null itemstack for Player#sendEquipmentChange diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 027abbde974ff2c4844c3d815230d600140690a4..7fca299a92d330a46336c9fc88156d2ff18f3903 100644 +index af14b09630af4a092491e6b9a7b3f418cc82c0de..e9bd24861bca4554898306117bb533d19171cedf 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1125,7 +1125,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0918-Optimize-VarInts.patch b/patches/server/0917-Optimize-VarInts.patch similarity index 100% rename from patches/server/0918-Optimize-VarInts.patch rename to patches/server/0917-Optimize-VarInts.patch diff --git a/patches/server/0919-Add-API-to-get-the-collision-shape-of-a-block-before.patch b/patches/server/0918-Add-API-to-get-the-collision-shape-of-a-block-before.patch similarity index 100% rename from patches/server/0919-Add-API-to-get-the-collision-shape-of-a-block-before.patch rename to patches/server/0918-Add-API-to-get-the-collision-shape-of-a-block-before.patch diff --git a/patches/server/0920-Add-predicate-for-blocks-when-raytracing.patch b/patches/server/0919-Add-predicate-for-blocks-when-raytracing.patch similarity index 100% rename from patches/server/0920-Add-predicate-for-blocks-when-raytracing.patch rename to patches/server/0919-Add-predicate-for-blocks-when-raytracing.patch diff --git a/patches/server/0921-Broadcast-take-item-packets-with-collector-as-source.patch b/patches/server/0920-Broadcast-take-item-packets-with-collector-as-source.patch similarity index 100% rename from patches/server/0921-Broadcast-take-item-packets-with-collector-as-source.patch rename to patches/server/0920-Broadcast-take-item-packets-with-collector-as-source.patch diff --git a/patches/server/0922-Expand-LingeringPotion-API.patch b/patches/server/0921-Expand-LingeringPotion-API.patch similarity index 100% rename from patches/server/0922-Expand-LingeringPotion-API.patch rename to patches/server/0921-Expand-LingeringPotion-API.patch diff --git a/patches/server/0923-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch b/patches/server/0922-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch similarity index 100% rename from patches/server/0923-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch rename to patches/server/0922-Fix-strikeLightningEffect-powers-lightning-rods-and-.patch diff --git a/patches/server/0924-Add-hand-to-fish-event-for-all-player-interactions.patch b/patches/server/0923-Add-hand-to-fish-event-for-all-player-interactions.patch similarity index 100% rename from patches/server/0924-Add-hand-to-fish-event-for-all-player-interactions.patch rename to patches/server/0923-Add-hand-to-fish-event-for-all-player-interactions.patch diff --git a/patches/server/0925-Fix-several-issues-with-EntityBreedEvent.patch b/patches/server/0924-Fix-several-issues-with-EntityBreedEvent.patch similarity index 100% rename from patches/server/0925-Fix-several-issues-with-EntityBreedEvent.patch rename to patches/server/0924-Fix-several-issues-with-EntityBreedEvent.patch diff --git a/patches/server/0926-Add-UUID-attribute-modifier-API.patch b/patches/server/0925-Add-UUID-attribute-modifier-API.patch similarity index 100% rename from patches/server/0926-Add-UUID-attribute-modifier-API.patch rename to patches/server/0925-Add-UUID-attribute-modifier-API.patch diff --git a/patches/server/0927-Fix-missing-event-call-for-entity-teleport-API.patch b/patches/server/0926-Fix-missing-event-call-for-entity-teleport-API.patch similarity index 100% rename from patches/server/0927-Fix-missing-event-call-for-entity-teleport-API.patch rename to patches/server/0926-Fix-missing-event-call-for-entity-teleport-API.patch diff --git a/patches/server/0928-Lazily-create-LootContext-for-criterions.patch b/patches/server/0927-Lazily-create-LootContext-for-criterions.patch similarity index 100% rename from patches/server/0928-Lazily-create-LootContext-for-criterions.patch rename to patches/server/0927-Lazily-create-LootContext-for-criterions.patch diff --git a/patches/server/0929-Don-t-fire-sync-events-during-worldgen.patch b/patches/server/0928-Don-t-fire-sync-events-during-worldgen.patch similarity index 98% rename from patches/server/0929-Don-t-fire-sync-events-during-worldgen.patch rename to patches/server/0928-Don-t-fire-sync-events-during-worldgen.patch index dc885d181f..2ded3acb8e 100644 --- a/patches/server/0929-Don-t-fire-sync-events-during-worldgen.patch +++ b/patches/server/0928-Don-t-fire-sync-events-during-worldgen.patch @@ -31,7 +31,7 @@ index 2da315d288efa66f7bff96923ebd5eac5130ba39..39cf7ae086108d8077121829368b8160 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 de841b91b0a0c10c4b9f4dfdd3858c83f81ad183..9e3fef06ff458d8df327acb9eb740f755e2b34de 100644 +index 73669ce44d3b62183f983365df5a46c10e1458bf..948d17b13f07ca0b9160770e3b92d903d1b70407 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -649,7 +649,11 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @@ -68,7 +68,7 @@ index d769dc472d3f12bf1e30ddd767a76659b734caac..8c7cc9c5af0b8d8bef9b6e2d3d3e723c }, () -> { 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 b08a7a3ab30a6e4bf8d4dd90022e446444fafa46..853196418b29bb6013fcf22b3bc873a5b06820b7 100644 +index 844da8d55e43607239b54c7cb823cf26f2b04ed1..d0adf2740fe493af2486f78cf015db8bab47e642 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1163,6 +1163,11 @@ public abstract class LivingEntity extends Entity implements Attackable { diff --git a/patches/server/0930-Add-Structure-check-API.patch b/patches/server/0929-Add-Structure-check-API.patch similarity index 93% rename from patches/server/0930-Add-Structure-check-API.patch rename to patches/server/0929-Add-Structure-check-API.patch index b1501eb55b..faa75398b6 100644 --- a/patches/server/0930-Add-Structure-check-API.patch +++ b/patches/server/0929-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 039efd0b8eb141de044668a5633f26eee238c2b0..4a62482b7c73728de8a94542e8978e836540b328 100644 +index 8b4b4017f9874a153c27a96a7df1a966c5bdf4f3..2536a37ab9e5a7aa7373b1880f55cdb8c32a6f53 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -237,6 +237,20 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/server/0931-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch b/patches/server/0930-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch similarity index 88% rename from patches/server/0931-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch rename to patches/server/0930-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch index c40f835bff..8e6d59e4d2 100644 --- a/patches/server/0931-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch +++ b/patches/server/0930-Fix-CraftMetaItem-getAttributeModifier-duplication-c.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix CraftMetaItem#getAttributeModifier duplication check diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index ce6767537bd0f8eb5c28eef9d50e042c5a9b4b4b..e3ac829ae4f2b39c103e5626180ec9220c2b1f33 100644 +index 40093f20f9c9e332caf197d9b626ba2105ed4098..26fb480f24fa9396f08db0d51e022f35563d4e91 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -@@ -1321,7 +1321,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1328,7 +1328,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { Preconditions.checkNotNull(modifier, "AttributeModifier cannot be null"); this.checkAttributeList(); for (Map.Entry entry : this.attributeModifiers.entries()) { diff --git a/patches/server/0932-Restore-vanilla-entity-drops-behavior.patch b/patches/server/0931-Restore-vanilla-entity-drops-behavior.patch similarity index 98% rename from patches/server/0932-Restore-vanilla-entity-drops-behavior.patch rename to patches/server/0931-Restore-vanilla-entity-drops-behavior.patch index 860e4ede46..8be1eca73e 100644 --- a/patches/server/0932-Restore-vanilla-entity-drops-behavior.patch +++ b/patches/server/0931-Restore-vanilla-entity-drops-behavior.patch @@ -50,7 +50,7 @@ index 9179434d490bc8546ba3a35434998b9fc916e6b2..b032ce115b98af0e0384fb88ca88075e 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 9e3fef06ff458d8df327acb9eb740f755e2b34de..6342b9142ca6c3e17020911f95a81a4be3ca0401 100644 +index 948d17b13f07ca0b9160770e3b92d903d1b70407..d6ec2fe1a4a004a2d2f7d6e5bfd8fd45b27ebb7a 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -2523,6 +2523,25 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess @@ -104,7 +104,7 @@ index 9e3fef06ff458d8df327acb9eb740f755e2b34de..6342b9142ca6c3e17020911f95a81a4b 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 853196418b29bb6013fcf22b3bc873a5b06820b7..ae63033bab20bec39e0562421e7a3f449648a69d 100644 +index d0adf2740fe493af2486f78cf015db8bab47e642..cb07999629ba2d56602b3ae06ef06e350a8d1fb1 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -266,7 +266,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -165,7 +165,7 @@ index 767f076c6fad7a1146bc409bf47f1d2fc3caf3ce..095a678e3ff7b2bd713fe5bc8542b35a } } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 31c35ccbd84fab60fcf30d0d00f1ee38c05e78ca..d94f59e6de51da2c4b261957e8bb21ba90ef9f91 100644 +index 64d4246b9d13e6fe8b638c4a6b664f87fc0e66a0..8b322ade83e8e571af7c2e91a3c0d0784a7b9fad 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -964,18 +964,24 @@ public class CraftEventFactory { diff --git a/patches/server/0933-Dont-resend-blocks-on-interactions.patch b/patches/server/0932-Dont-resend-blocks-on-interactions.patch similarity index 99% rename from patches/server/0933-Dont-resend-blocks-on-interactions.patch rename to patches/server/0932-Dont-resend-blocks-on-interactions.patch index 5cca0bf242..53693f4954 100644 --- a/patches/server/0933-Dont-resend-blocks-on-interactions.patch +++ b/patches/server/0932-Dont-resend-blocks-on-interactions.patch @@ -149,7 +149,7 @@ index 6d494b80ae002aea00afa44adf83dad1ae5bbbc1..49557d6f22c5725c663a231deab019d4 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 f309bd640dfac68b9a1cf59bb52d315285b91c2c..3e9caee7322d7ffdb93fd7d063675dddc4c71226 100644 +index 4485199c90e3efbce3e6a18a75703e86a9bdde3c..3f6082b656ec8c9b96b40fbd1c926d5211ffe4c6 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -479,10 +479,12 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/0934-add-more-scoreboard-API.patch b/patches/server/0933-add-more-scoreboard-API.patch similarity index 100% rename from patches/server/0934-add-more-scoreboard-API.patch rename to patches/server/0933-add-more-scoreboard-API.patch diff --git a/patches/server/0935-Improve-Registry.patch b/patches/server/0934-Improve-Registry.patch similarity index 100% rename from patches/server/0935-Improve-Registry.patch rename to patches/server/0934-Improve-Registry.patch diff --git a/patches/server/0936-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch b/patches/server/0935-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch similarity index 100% rename from patches/server/0936-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch rename to patches/server/0935-Fix-NPE-on-null-loc-for-EntityTeleportEvent.patch diff --git a/patches/server/0937-Add-experience-points-API.patch b/patches/server/0936-Add-experience-points-API.patch similarity index 95% rename from patches/server/0937-Add-experience-points-API.patch rename to patches/server/0936-Add-experience-points-API.patch index 01c02c32f8..177e7f51b5 100644 --- a/patches/server/0937-Add-experience-points-API.patch +++ b/patches/server/0936-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 83a205387cb902121aabf0f5082c650debcb734c..dad2b84a2220368f2da005e217d73c63bb540a08 100644 +index 77624e34143dc37ca3b523a81b9a041ffb3199bd..32f6c029bf2f9a16d48ac73ff217c7462c64f175 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -1855,7 +1855,7 @@ public abstract class Player extends LivingEntity { @@ -18,7 +18,7 @@ index 83a205387cb902121aabf0f5082c650debcb734c..dad2b84a2220368f2da005e217d73c63 // Paper start - send while respecting visibility private static void sendSoundEffect(Player fromEntity, double x, double y, double z, SoundEvent soundEffect, SoundSource soundCategory, float volume, float pitch) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 7fca299a92d330a46336c9fc88156d2ff18f3903..8016976d226a421b3e16d281fa3c01be2f8d3eb0 100644 +index e9bd24861bca4554898306117bb533d19171cedf..68a0b6b8650e9e80e8e8c4037d92389cae899d72 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1902,6 +1902,49 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0938-Add-drops-to-shear-events.patch b/patches/server/0937-Add-drops-to-shear-events.patch similarity index 99% rename from patches/server/0938-Add-drops-to-shear-events.patch rename to patches/server/0937-Add-drops-to-shear-events.patch index 5ad1532f94..a271043b47 100644 --- a/patches/server/0938-Add-drops-to-shear-events.patch +++ b/patches/server/0937-Add-drops-to-shear-events.patch @@ -275,7 +275,7 @@ index 9c0bfddd479eef688d2509ad700371c3c860ff1a..e9f9b041ae7195e9d23bd446454b1d8c public boolean readyForShearing() { return !this.isSheared() && this.isAlive(); diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index d94f59e6de51da2c4b261957e8bb21ba90ef9f91..df82d811e94ee466f2336b8e04bc3441474cc3d2 100644 +index 8b322ade83e8e571af7c2e91a3c0d0784a7b9fad..e20feab675d05ae5b5b19870546585936c757970 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1666,20 +1666,20 @@ public class CraftEventFactory { @@ -306,7 +306,7 @@ index d94f59e6de51da2c4b261957e8bb21ba90ef9f91..df82d811e94ee466f2336b8e04bc3441 public static Cancellable handleStatisticsIncrease(net.minecraft.world.entity.player.Player entityHuman, net.minecraft.stats.Stat statistic, int current, int newValue) { diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java -index 819e237a8797ab51b7f888b42a013c5198d8fcf6..f53d6587b2bab3ed8428338950795a62b356c694 100644 +index 776437ae42865baccab4fb5d3f2715c8f0519b8a..520b637e0f281d3d3018681ec7b48b06c47f621e 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemStack.java @@ -65,6 +65,16 @@ public final class CraftItemStack extends ItemStack { diff --git a/patches/server/0939-Add-PlayerShieldDisableEvent.patch b/patches/server/0938-Add-PlayerShieldDisableEvent.patch similarity index 96% rename from patches/server/0939-Add-PlayerShieldDisableEvent.patch rename to patches/server/0938-Add-PlayerShieldDisableEvent.patch index 5d2b15dfcb..0d87c9cbf7 100644 --- a/patches/server/0939-Add-PlayerShieldDisableEvent.patch +++ b/patches/server/0938-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/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index dad2b84a2220368f2da005e217d73c63bb540a08..ebb70bfa34750227cda55b56764446833d3e1df6 100644 +index 32f6c029bf2f9a16d48ac73ff217c7462c64f175..9952da86af1a1a050e7485675ca2d6fb83d02422 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -989,7 +989,7 @@ public abstract class Player extends LivingEntity { diff --git a/patches/server/0940-Validate-ResourceLocation-in-NBT-reading.patch b/patches/server/0939-Validate-ResourceLocation-in-NBT-reading.patch similarity index 97% rename from patches/server/0940-Validate-ResourceLocation-in-NBT-reading.patch rename to patches/server/0939-Validate-ResourceLocation-in-NBT-reading.patch index f1217f22a8..fc62eef689 100644 --- a/patches/server/0940-Validate-ResourceLocation-in-NBT-reading.patch +++ b/patches/server/0939-Validate-ResourceLocation-in-NBT-reading.patch @@ -66,7 +66,7 @@ index 8c7cc9c5af0b8d8bef9b6e2d3d3e723cd76f3212..56b51096ca4147363a843accf6ef2510 @Nullable diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index c256b4307e896b3e9f0a399a93db761a8c5c593f..5eda2e858b309d2be704db1015c9c114ed9e63a9 100644 +index b7af45eac986097ef53fa90bb4edd67f8829f13c..958b25e62b040943c346114ef19d56104ae0a844 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -911,12 +911,13 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -85,7 +85,7 @@ index c256b4307e896b3e9f0a399a93db761a8c5c593f..5eda2e858b309d2be704db1015c9c114 if (nbt.contains("Brain", 10)) { diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index f9a8bcbd58ba450bf6f5f82ae9e08b8bec9a9c4d..d680ad6ce6cfc58753a3754a1bd5113fa9778cdc 100644 +index 5581fd6656fc13ea1d036d6caab2aba39c5320ac..748a6d81f409cf91a7aa2c88ded04f1d428cf0f6 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -645,7 +645,7 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Targeti @@ -98,7 +98,7 @@ index f9a8bcbd58ba450bf6f5f82ae9e08b8bec9a9c4d..d680ad6ce6cfc58753a3754a1bd5113f } diff --git a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java -index fc5913910f5614cd3e10cd9c1aa482a4b70ac260..31b8a8bf78d52b5f11b68e780ec09bf78e7bda84 100644 +index a7626757597e5014b0d1190345f930cbaf8fec7e..72c48bf33a0b882e4c94f1a7c343a170b1db0f53 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java +++ b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java @@ -561,7 +561,7 @@ public abstract class AbstractArrow extends Projectile { diff --git a/patches/server/0941-Properly-handle-experience-dropping-on-block-break.patch b/patches/server/0940-Properly-handle-experience-dropping-on-block-break.patch similarity index 100% rename from patches/server/0941-Properly-handle-experience-dropping-on-block-break.patch rename to patches/server/0940-Properly-handle-experience-dropping-on-block-break.patch diff --git a/patches/server/0942-Fixup-NamespacedKey-handling.patch b/patches/server/0941-Fixup-NamespacedKey-handling.patch similarity index 100% rename from patches/server/0942-Fixup-NamespacedKey-handling.patch rename to patches/server/0941-Fixup-NamespacedKey-handling.patch diff --git a/patches/server/0943-Expose-LootTable-of-DecoratedPot.patch b/patches/server/0942-Expose-LootTable-of-DecoratedPot.patch similarity index 100% rename from patches/server/0943-Expose-LootTable-of-DecoratedPot.patch rename to patches/server/0942-Expose-LootTable-of-DecoratedPot.patch diff --git a/patches/server/0944-Reduce-allocation-of-Vec3D-by-entity-tracker.patch b/patches/server/0943-Reduce-allocation-of-Vec3D-by-entity-tracker.patch similarity index 100% rename from patches/server/0944-Reduce-allocation-of-Vec3D-by-entity-tracker.patch rename to patches/server/0943-Reduce-allocation-of-Vec3D-by-entity-tracker.patch diff --git a/patches/server/0945-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch b/patches/server/0944-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch similarity index 100% rename from patches/server/0945-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch rename to patches/server/0944-Add-PlayerTradeEvent-and-PlayerPurchaseEvent.patch diff --git a/patches/server/0946-Add-ShulkerDuplicateEvent.patch b/patches/server/0945-Add-ShulkerDuplicateEvent.patch similarity index 100% rename from patches/server/0946-Add-ShulkerDuplicateEvent.patch rename to patches/server/0945-Add-ShulkerDuplicateEvent.patch diff --git a/patches/server/0947-Add-api-for-spawn-egg-texture-colors.patch b/patches/server/0946-Add-api-for-spawn-egg-texture-colors.patch similarity index 100% rename from patches/server/0947-Add-api-for-spawn-egg-texture-colors.patch rename to patches/server/0946-Add-api-for-spawn-egg-texture-colors.patch diff --git a/patches/server/0948-Add-Lifecycle-Event-system.patch b/patches/server/0947-Add-Lifecycle-Event-system.patch similarity index 100% rename from patches/server/0948-Add-Lifecycle-Event-system.patch rename to patches/server/0947-Add-Lifecycle-Event-system.patch diff --git a/patches/server/0949-ItemStack-Tooltip-API.patch b/patches/server/0948-ItemStack-Tooltip-API.patch similarity index 100% rename from patches/server/0949-ItemStack-Tooltip-API.patch rename to patches/server/0948-ItemStack-Tooltip-API.patch diff --git a/patches/server/0950-Add-getChunkSnapshot-includeLightData-parameter.patch b/patches/server/0949-Add-getChunkSnapshot-includeLightData-parameter.patch similarity index 100% rename from patches/server/0950-Add-getChunkSnapshot-includeLightData-parameter.patch rename to patches/server/0949-Add-getChunkSnapshot-includeLightData-parameter.patch diff --git a/patches/server/0951-Add-FluidState-API.patch b/patches/server/0950-Add-FluidState-API.patch similarity index 98% rename from patches/server/0951-Add-FluidState-API.patch rename to patches/server/0950-Add-FluidState-API.patch index de7b959ccc..1eab37c119 100644 --- a/patches/server/0951-Add-FluidState-API.patch +++ b/patches/server/0950-Add-FluidState-API.patch @@ -173,7 +173,7 @@ index 0000000000000000000000000000000000000000..c0c2805cb045cdd835b402776a6923fe + +} diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java b/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java -index 0e307c2bb788c1ec856613b0203f5fc7aca7e85d..1d16cd01e55f3e5bb8f49ad4c9f777d30180aab5 100644 +index 5cdc44c73b536f2ed2dcd49dbeccf0f69f614dba..ef1bfab74e93f48c621e7b4a3a54f59b84bdd064 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftRegionAccessor.java @@ -107,6 +107,13 @@ public abstract class CraftRegionAccessor implements RegionAccessor { diff --git a/patches/server/0952-add-number-format-api.patch b/patches/server/0951-add-number-format-api.patch similarity index 100% rename from patches/server/0952-add-number-format-api.patch rename to patches/server/0951-add-number-format-api.patch diff --git a/patches/server/0953-improve-BanList-types.patch b/patches/server/0952-improve-BanList-types.patch similarity index 100% rename from patches/server/0953-improve-BanList-types.patch rename to patches/server/0952-improve-BanList-types.patch diff --git a/patches/server/0954-Expanded-Hopper-API.patch b/patches/server/0953-Expanded-Hopper-API.patch similarity index 100% rename from patches/server/0954-Expanded-Hopper-API.patch rename to patches/server/0953-Expanded-Hopper-API.patch diff --git a/patches/server/0955-Add-BlockBreakProgressUpdateEvent.patch b/patches/server/0954-Add-BlockBreakProgressUpdateEvent.patch similarity index 100% rename from patches/server/0955-Add-BlockBreakProgressUpdateEvent.patch rename to patches/server/0954-Add-BlockBreakProgressUpdateEvent.patch diff --git a/patches/server/0956-Deprecate-ItemStack-setType.patch b/patches/server/0955-Deprecate-ItemStack-setType.patch similarity index 100% rename from patches/server/0956-Deprecate-ItemStack-setType.patch rename to patches/server/0955-Deprecate-ItemStack-setType.patch diff --git a/patches/server/0957-Add-CartographyItemEvent.patch b/patches/server/0956-Add-CartographyItemEvent.patch similarity index 94% rename from patches/server/0957-Add-CartographyItemEvent.patch rename to patches/server/0956-Add-CartographyItemEvent.patch index c867a928b3..fb7fec385f 100644 --- a/patches/server/0957-Add-CartographyItemEvent.patch +++ b/patches/server/0956-Add-CartographyItemEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add CartographyItemEvent diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index e13097ceba283fdf165d7e6327fe78590252fe94..bead9625a04a9c1139c54d6a56f055b80eb2d701 100644 +index b6d3ff57402ce5f70efbfdaf1cc50305e2f08958..ee38f7c9dd5bf9343bb9e271285331bd275bfd83 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -3092,6 +3092,19 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3090,6 +3090,19 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } } diff --git a/patches/server/0958-More-Raid-API.patch b/patches/server/0957-More-Raid-API.patch similarity index 100% rename from patches/server/0958-More-Raid-API.patch rename to patches/server/0957-More-Raid-API.patch diff --git a/patches/server/0959-Add-onboarding-message-for-initial-server-start.patch b/patches/server/0958-Add-onboarding-message-for-initial-server-start.patch similarity index 96% rename from patches/server/0959-Add-onboarding-message-for-initial-server-start.patch rename to patches/server/0958-Add-onboarding-message-for-initial-server-start.patch index a409b84b72..cc49fcfa13 100644 --- a/patches/server/0959-Add-onboarding-message-for-initial-server-start.patch +++ b/patches/server/0958-Add-onboarding-message-for-initial-server-start.patch @@ -17,7 +17,7 @@ index 7684e71f802f3d19e5340713b45cc84860ce9495..96142deb42700f888ea08689ab62c27e node = loader.load(); this.verifyGlobalConfigVersion(node); diff --git a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java -index ab5089781b8866cd6ad1b9570634ba84d936cfe7..4de88f74182bb596c6b5ad0351cc0dacefd0ce96 100644 +index cc847dce0116b8260790b890b1d5452c280e186c..2a5453707bc172d8d0efe3f11959cb0b5f830984 100644 --- a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java +++ b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java @@ -25,6 +25,7 @@ public class GlobalConfiguration extends ConfigurationPart { @@ -29,7 +29,7 @@ index ab5089781b8866cd6ad1b9570634ba84d936cfe7..4de88f74182bb596c6b5ad0351cc0dac return instance; } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 187421d19a6d3422612edad650ef15b40ba8c9b9..093a5d49d1a001b3ad5b4a880c60c0cb18874531 100644 +index 2a92268dfc8ee264e4ee6ffc56b40a87e334acc8..1a9e323659dcff12ce53919eb3d6d6f66f835292 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1129,6 +1129,16 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { String s = String.valueOf(worldserver); diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index ea5a36a192258b2f147b4a820f5cc988eb0e1180..86dcad62f59f68d2eefe2d5df1cdaee0955dc6e3 100644 +index 3f6082b656ec8c9b96b40fbd1c926d5211ffe4c6..066feef97f92b3f788dd6d25d188f2cc36fc4c80 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -801,10 +801,16 @@ public final class ItemStack implements DataComponentHolder { @@ -105,7 +105,7 @@ index 6207c6063cd11ccb1177fe7016c49c02a3416990..139cc0123921bf981d10334d9bd7378d } diff --git a/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java -index 92086ca118d55ec49cefa5bf18977f8706e3e4b4..8310d132006043e93c612890514c4c7f3eb1c74d 100644 +index 542a5501ac94f57810d34e0f769a9a7855604f91..ab5ce14f024305fcf3df4254212363145457eddb 100644 --- a/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java +++ b/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java @@ -156,6 +156,43 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen @@ -370,7 +370,7 @@ index 92086ca118d55ec49cefa5bf18977f8706e3e4b4..8310d132006043e93c612890514c4c7f private static boolean ejectItems(Level world, BlockPos pos, HopperBlockEntity blockEntity) { Container iinventory = HopperBlockEntity.getAttachedContainer(world, pos, blockEntity); -@@ -209,47 +443,50 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen +@@ -209,52 +443,55 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen if (HopperBlockEntity.isFullContainer(iinventory, enumdirection)) { return false; } else { @@ -380,6 +380,7 @@ index 92086ca118d55ec49cefa5bf18977f8706e3e4b4..8310d132006043e93c612890514c4c7f - if (!itemstack.isEmpty()) { - int j = itemstack.getCount(); - // CraftBukkit start - Call event when pushing items into other inventories +- ItemStack original = itemstack.copy(); - CraftItemStack oitemstack = CraftItemStack.asCraftMirror(blockEntity.removeItem(i, world.spigotConfig.hopperAmount)); // Spigot - - Inventory destinationInventory; @@ -395,10 +396,11 @@ index 92086ca118d55ec49cefa5bf18977f8706e3e4b4..8310d132006043e93c612890514c4c7f - InventoryMoveItemEvent event = new InventoryMoveItemEvent(blockEntity.getOwner().getInventory(), oitemstack, destinationInventory, true); - world.getCraftServer().getPluginManager().callEvent(event); - if (event.isCancelled()) { -- blockEntity.setItem(i, itemstack); +- blockEntity.setItem(i, original); - blockEntity.setCooldown(world.spigotConfig.hopperTransfer); // Delay hopper checks // Spigot - return false; - } +- int origCount = event.getItem().getAmount(); // Spigot - ItemStack itemstack1 = HopperBlockEntity.addItem(blockEntity, iinventory, CraftItemStack.asNMSCopy(event.getItem()), enumdirection); - // CraftBukkit end - @@ -408,7 +410,10 @@ index 92086ca118d55ec49cefa5bf18977f8706e3e4b4..8310d132006043e93c612890514c4c7f - } - - itemstack.setCount(j); -- if (j == 1) { +- // Spigot start +- itemstack.shrink(origCount - itemstack1.getCount()); +- if (j <= world.spigotConfig.hopperAmount) { +- // Spigot end - blockEntity.setItem(i, itemstack); - } - } @@ -419,12 +424,13 @@ index 92086ca118d55ec49cefa5bf18977f8706e3e4b4..8310d132006043e93c612890514c4c7f + return hopperPush(world, iinventory, enumdirection, blockEntity); + //for (int i = 0; i < blockEntity.getContainerSize(); ++i) { + // ItemStack itemstack = blockEntity.getItem(i); -+ ++// + // if (!itemstack.isEmpty()) { + // int j = itemstack.getCount(); + // // CraftBukkit start - Call event when pushing items into other inventories ++ // ItemStack original = itemstack.copy(); + // CraftItemStack oitemstack = CraftItemStack.asCraftMirror(blockEntity.removeItem(i, world.spigotConfig.hopperAmount)); // Spigot -+ ++// + // Inventory destinationInventory; + // // Have to special case large chests as they work oddly + // if (iinventory instanceof CompoundContainer) { @@ -434,35 +440,39 @@ index 92086ca118d55ec49cefa5bf18977f8706e3e4b4..8310d132006043e93c612890514c4c7f + // } else { + // destinationInventory = new CraftInventory(iinventory); + // } -+ -+ // InventoryMoveItemEvent event = new InventoryMoveItemEvent(tileentityhopper.getOwner().getInventory(), oitemstack, destinationInventory, true); ++// ++ // InventoryMoveItemEvent event = new InventoryMoveItemEvent(blockEntity.getOwner().getInventory(), oitemstack, destinationInventory, true); + // world.getCraftServer().getPluginManager().callEvent(event); + // if (event.isCancelled()) { -+ // blockEntity.setItem(i, itemstack); ++ // blockEntity.setItem(i, original); + // blockEntity.setCooldown(world.spigotConfig.hopperTransfer); // Delay hopper checks // Spigot + // return false; + // } ++ // int origCount = event.getItem().getAmount(); // Spigot + // ItemStack itemstack1 = HopperBlockEntity.addItem(blockEntity, iinventory, CraftItemStack.asNMSCopy(event.getItem()), enumdirection); + // // CraftBukkit end -+ ++// + // if (itemstack1.isEmpty()) { + // iinventory.setChanged(); + // return true; + // } -+ ++// + // itemstack.setCount(j); -+ // if (j == 1) { ++ // // Spigot start ++ // itemstack.shrink(origCount - itemstack1.getCount()); ++ // if (j <= world.spigotConfig.hopperAmount) { ++ // // Spigot end + // blockEntity.setItem(i, itemstack); + // } + // } + //} + -+ // return false; -+ // Paper end - Perf: Optimize Hoppers ++ //return false; ++ // Paper end - Perf: Optimize hoppers } } } -@@ -300,7 +537,6 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen +@@ -305,7 +542,6 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen return false; } } @@ -470,7 +480,7 @@ index 92086ca118d55ec49cefa5bf18977f8706e3e4b4..8310d132006043e93c612890514c4c7f return true; } -@@ -311,6 +547,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen +@@ -316,6 +552,7 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen if (iinventory != null) { Direction enumdirection = Direction.DOWN; @@ -478,12 +488,13 @@ index 92086ca118d55ec49cefa5bf18977f8706e3e4b4..8310d132006043e93c612890514c4c7f int[] aint = HopperBlockEntity.getSlots(iinventory, enumdirection); int i = aint.length; -@@ -346,44 +583,47 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen +@@ -351,63 +588,67 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen ItemStack itemstack = iinventory.getItem(i); if (!itemstack.isEmpty() && HopperBlockEntity.canTakeItemFromContainer(ihopper, iinventory, itemstack, i, enumdirection)) { - int j = itemstack.getCount(); - // CraftBukkit start - Call event on collection of items from inventories into the hopper +- ItemStack original = itemstack.copy(); - CraftItemStack oitemstack = CraftItemStack.asCraftMirror(iinventory.removeItem(i, world.spigotConfig.hopperAmount)); // Spigot - - Inventory sourceInventory; @@ -500,7 +511,7 @@ index 92086ca118d55ec49cefa5bf18977f8706e3e4b4..8310d132006043e93c612890514c4c7f - - Bukkit.getServer().getPluginManager().callEvent(event); - if (event.isCancelled()) { -- iinventory.setItem(i, itemstack); +- iinventory.setItem(i, original); - - if (ihopper instanceof HopperBlockEntity) { - ((HopperBlockEntity) ihopper).setCooldown(world.spigotConfig.hopperTransfer); // Spigot @@ -508,6 +519,7 @@ index 92086ca118d55ec49cefa5bf18977f8706e3e4b4..8310d132006043e93c612890514c4c7f - - return false; - } +- int origCount = event.getItem().getAmount(); // Spigot - ItemStack itemstack1 = HopperBlockEntity.addItem(iinventory, ihopper, CraftItemStack.asNMSCopy(event.getItem()), null); - // CraftBukkit end - @@ -517,15 +529,19 @@ index 92086ca118d55ec49cefa5bf18977f8706e3e4b4..8310d132006043e93c612890514c4c7f - } - - itemstack.setCount(j); -- if (j == 1) { +- // Spigot start +- itemstack.shrink(origCount - itemstack1.getCount()); +- if (j <= world.spigotConfig.hopperAmount) { +- // Spigot end - iinventory.setItem(i, itemstack); - } + // Paper start - Perf: Optimize Hoppers + return hopperPull(world, ihopper, iinventory, itemstack, i); + // int j = itemstack.getCount(); + // // CraftBukkit start - Call event on collection of items from inventories into the hopper ++ // ItemStack original = itemstack.copy(); + // CraftItemStack oitemstack = CraftItemStack.asCraftMirror(iinventory.removeItem(i, world.spigotConfig.hopperAmount)); // Spigot -+ ++// + // Inventory sourceInventory; + // // Have to special case large chests as they work oddly + // if (iinventory instanceof CompoundContainer) { @@ -535,36 +551,41 @@ index 92086ca118d55ec49cefa5bf18977f8706e3e4b4..8310d132006043e93c612890514c4c7f + // } else { + // sourceInventory = new CraftInventory(iinventory); + // } -+ ++// + // InventoryMoveItemEvent event = new InventoryMoveItemEvent(sourceInventory, oitemstack, ihopper.getOwner().getInventory(), false); -+ ++// + // Bukkit.getServer().getPluginManager().callEvent(event); + // if (event.isCancelled()) { -+ // iinventory.setItem(i, itemstack); -+ ++ // iinventory.setItem(i, original); ++// + // if (ihopper instanceof HopperBlockEntity) { + // ((HopperBlockEntity) ihopper).setCooldown(world.spigotConfig.hopperTransfer); // Spigot + // } -+ ++// + // return false; + // } ++ // int origCount = event.getItem().getAmount(); // Spigot + // ItemStack itemstack1 = HopperBlockEntity.addItem(iinventory, ihopper, CraftItemStack.asNMSCopy(event.getItem()), null); + // // CraftBukkit end -+ ++// + // if (itemstack1.isEmpty()) { + // iinventory.setChanged(); + // return true; + // } -+ ++// + // itemstack.setCount(j); -+ // if (j == 1) { ++ // // Spigot start ++ // itemstack.shrink(origCount - itemstack1.getCount()); ++ // if (j <= world.spigotConfig.hopperAmount) { ++ // // Spigot end + // iinventory.setItem(i, itemstack); + // } + // Paper end - Perf: Optimize Hoppers } - +- return false; -@@ -392,12 +632,14 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen + } + public static boolean addItem(Container inventory, ItemEntity itemEntity) { boolean flag = false; // CraftBukkit start @@ -580,7 +601,7 @@ index 92086ca118d55ec49cefa5bf18977f8706e3e4b4..8310d132006043e93c612890514c4c7f ItemStack itemstack = itemEntity.getItem().copy(); ItemStack itemstack1 = HopperBlockEntity.addItem((Container) null, inventory, itemstack, (Direction) null); -@@ -491,7 +733,9 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen +@@ -501,7 +742,9 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen stack = stack.split(to.getMaxStackSize()); } // Spigot end @@ -590,7 +611,7 @@ index 92086ca118d55ec49cefa5bf18977f8706e3e4b4..8310d132006043e93c612890514c4c7f stack = leftover; // Paper - Make hoppers respect inventory max stack size flag = true; } else if (HopperBlockEntity.canMergeItems(itemstack1, stack)) { -@@ -571,14 +815,20 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen +@@ -581,14 +824,20 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen @Nullable public static Container getContainerAt(Level world, BlockPos pos) { @@ -613,7 +634,7 @@ index 92086ca118d55ec49cefa5bf18977f8706e3e4b4..8310d132006043e93c612890514c4c7f iinventory = HopperBlockEntity.getEntityContainer(world, x, y, z); } -@@ -613,13 +863,13 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen +@@ -623,13 +872,13 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen @Nullable private static Container getEntityContainer(Level world, double x, double y, double z) { diff --git a/patches/server/1016-Improve-performance-of-mass-crafts.patch b/patches/server/1015-Improve-performance-of-mass-crafts.patch similarity index 98% rename from patches/server/1016-Improve-performance-of-mass-crafts.patch rename to patches/server/1015-Improve-performance-of-mass-crafts.patch index f9839d9135..006321f9a2 100644 --- a/patches/server/1016-Improve-performance-of-mass-crafts.patch +++ b/patches/server/1015-Improve-performance-of-mass-crafts.patch @@ -47,7 +47,7 @@ index fef82418358ecf19d367dafbec159bd78ea97494..f17ff5988d826c8fad68f6bf7bac1d06 for (int i = 0; i < nonNullList.size(); i++) { ItemStack itemStack = this.craftSlots.getItem(i); diff --git a/src/main/java/net/minecraft/world/item/crafting/RecipeManager.java b/src/main/java/net/minecraft/world/item/crafting/RecipeManager.java -index 0126b88f60904dfbf1e29eb3b89a985061d91f91..a31326e24cb68472c81cd781c5e3041772712862 100644 +index 6b3f8a43a734bf43478f9909eaa8df9169e69597..9d0ac3fb52a76a97bf954fbc5175cea90d385d8c 100644 --- a/src/main/java/net/minecraft/world/item/crafting/RecipeManager.java +++ b/src/main/java/net/minecraft/world/item/crafting/RecipeManager.java @@ -116,6 +116,7 @@ public class RecipeManager extends SimpleJsonResourceReloadListener { diff --git a/patches/server/1017-Actually-optimise-explosions.patch b/patches/server/1016-Actually-optimise-explosions.patch similarity index 99% rename from patches/server/1017-Actually-optimise-explosions.patch rename to patches/server/1016-Actually-optimise-explosions.patch index c770d1ea8e..fa8536ea3c 100644 --- a/patches/server/1017-Actually-optimise-explosions.patch +++ b/patches/server/1016-Actually-optimise-explosions.patch @@ -34,7 +34,7 @@ The results indicate that this logic is 5 times faster than Vanilla and 2.3 times faster than Lithium. diff --git a/src/main/java/net/minecraft/world/level/Explosion.java b/src/main/java/net/minecraft/world/level/Explosion.java -index ff0eb772fb272b0bcdf948e79b284039b55311b0..8611725989cff89d809e6b8837d8dbd7e4da2494 100644 +index ef40b996864c81d7e8fbb0727ea0a96f866c725f..638447e8cb74b26f4f8e3862c2fb4a3048979ebc 100644 --- a/src/main/java/net/minecraft/world/level/Explosion.java +++ b/src/main/java/net/minecraft/world/level/Explosion.java @@ -112,6 +112,271 @@ public class Explosion { diff --git a/patches/server/1018-Optimise-chunk-tick-iteration.patch b/patches/server/1017-Optimise-chunk-tick-iteration.patch similarity index 99% rename from patches/server/1018-Optimise-chunk-tick-iteration.patch rename to patches/server/1017-Optimise-chunk-tick-iteration.patch index 6b17ae655d..bc67b755cd 100644 --- a/patches/server/1018-Optimise-chunk-tick-iteration.patch +++ b/patches/server/1017-Optimise-chunk-tick-iteration.patch @@ -187,7 +187,7 @@ index ed5154e41ca858f4d6b4d1c276c66831c038d2a6..cdb3c2cde5d9133ef60cf96d91762e6a 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 7fbeebe63f755624b967374072aa2e0565ce8c35..36caf354634d6675a3f1ec6829f4778e1d0623bc 100644 +index 01577dbb16ff6abc9edcf897f7fadaad14350184..e2c67c011503c9c37b9d637c0268717baac13e32 100644 --- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java +++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java @@ -499,18 +499,10 @@ public class ServerChunkCache extends ChunkSource { diff --git a/patches/server/1019-Lag-compensation-ticks.patch b/patches/server/1018-Lag-compensation-ticks.patch similarity index 98% rename from patches/server/1019-Lag-compensation-ticks.patch rename to patches/server/1018-Lag-compensation-ticks.patch index fdc2829e61..b841ae267d 100644 --- a/patches/server/1019-Lag-compensation-ticks.patch +++ b/patches/server/1018-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 810b6099e734a5524e696beb3f25d6ca686625ea..0408d5d54fef7767ecf70e70686ad520d890ff26 100644 +index 6d7224787d328540319c76f904e00cbe96d53565..5df535aae94bbba940da5d21eb72afc945915f4c 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -315,6 +315,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop diff --git a/src/main/java/net/minecraft/server/level/ServerChunkCache.java b/src/main/java/net/minecraft/server/level/ServerChunkCache.java -index 36caf354634d6675a3f1ec6829f4778e1d0623bc..b99f50604bafecbc68835974c9ed0caa91911a40 100644 +index e2c67c011503c9c37b9d637c0268717baac13e32..fcecfda569d2a8d6b8a7e228831f822fb7327748 100644 --- a/src/main/java/net/minecraft/server/level/ServerChunkCache.java +++ b/src/main/java/net/minecraft/server/level/ServerChunkCache.java @@ -447,6 +447,13 @@ public class ServerChunkCache extends ChunkSource { diff --git a/patches/server/1030-Don-t-lose-removed-data-components-in-ItemMeta.patch b/patches/server/1029-Don-t-lose-removed-data-components-in-ItemMeta.patch similarity index 93% rename from patches/server/1030-Don-t-lose-removed-data-components-in-ItemMeta.patch rename to patches/server/1029-Don-t-lose-removed-data-components-in-ItemMeta.patch index 6c562f91cf..78f9aa97cf 100644 --- a/patches/server/1030-Don-t-lose-removed-data-components-in-ItemMeta.patch +++ b/patches/server/1029-Don-t-lose-removed-data-components-in-ItemMeta.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Don't lose removed data components in ItemMeta diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 2b131cc6f511416d4c8964848caff373a9c6325d..b525bfbab2c4a5ea408981287f477a8b35d699ca 100644 +index ddeea983c654ce079055ab152e740a751dab751a..2b8084738eddecf74f4e940f941c595f7898bed9 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java @@ -191,6 +191,13 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @@ -33,7 +33,7 @@ index 2b131cc6f511416d4c8964848caff373a9c6325d..b525bfbab2c4a5ea408981287f477a8b key.getValue().ifPresentOrElse((value) -> { this.unhandledTags.set((DataComponentType) key.getKey(), value); }, () -> { -@@ -809,9 +818,9 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -816,9 +825,9 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { } for (Map.Entry, Optional> e : this.unhandledTags.build().entrySet()) { diff --git a/patches/server/1031-Add-experimental-improved-give-command.patch b/patches/server/1030-Add-experimental-improved-give-command.patch similarity index 100% rename from patches/server/1031-Add-experimental-improved-give-command.patch rename to patches/server/1030-Add-experimental-improved-give-command.patch diff --git a/patches/server/1032-Handle-Large-Packets-disconnecting-client.patch b/patches/server/1031-Handle-Large-Packets-disconnecting-client.patch similarity index 100% rename from patches/server/1032-Handle-Large-Packets-disconnecting-client.patch rename to patches/server/1031-Handle-Large-Packets-disconnecting-client.patch diff --git a/patches/server/1033-Fix-ItemFlags.patch b/patches/server/1032-Fix-ItemFlags.patch similarity index 95% rename from patches/server/1033-Fix-ItemFlags.patch rename to patches/server/1032-Fix-ItemFlags.patch index 24f5e95581..03c57df6a3 100644 --- a/patches/server/1033-Fix-ItemFlags.patch +++ b/patches/server/1032-Fix-ItemFlags.patch @@ -33,7 +33,7 @@ index fca0cfba14dd2cc6f24b56eaf269594b2d87fd04..8734f0b777432cd8639094b75a3da1b9 @Override diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index b525bfbab2c4a5ea408981287f477a8b35d699ca..43a4a76d3829fb2ed7b5635d804fd826484c16db 100644 +index 2b8084738eddecf74f4e940f941c595f7898bed9..ff46121800980665b0442c13d90874cf6d7a7771 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java @@ -243,6 +243,12 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @@ -81,7 +81,7 @@ index b525bfbab2c4a5ea408981287f477a8b35d699ca..43a4a76d3829fb2ed7b5635d804fd826 Set, Optional>> keys = tag.entrySet(); for (Map.Entry, Optional> key : keys) { -@@ -603,7 +627,16 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -610,7 +634,16 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { ByteArrayInputStream buf = new ByteArrayInputStream(Base64.getDecoder().decode(unhandled)); try { CompoundTag unhandledTag = NbtIo.readCompressed(buf, NbtAccounter.unlimitedHeap()); @@ -99,7 +99,7 @@ index b525bfbab2c4a5ea408981287f477a8b35d699ca..43a4a76d3829fb2ed7b5635d804fd826 } catch (IOException ex) { Logger.getLogger(CraftMetaItem.class.getName()).log(Level.SEVERE, null, ex); } -@@ -817,6 +850,15 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -824,6 +857,15 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { itemTag.put(CraftMetaItem.MAX_DAMAGE, this.maxDamage); } @@ -115,7 +115,7 @@ index b525bfbab2c4a5ea408981287f477a8b35d699ca..43a4a76d3829fb2ed7b5635d804fd826 for (Map.Entry, Optional> e : this.unhandledTags.build().entrySet()) { e.getValue().ifPresentOrElse((value) -> { itemTag.builder.set((DataComponentType) e.getKey(), value); -@@ -891,7 +933,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -898,7 +940,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Overridden boolean isEmpty() { @@ -124,7 +124,7 @@ index b525bfbab2c4a5ea408981287f477a8b35d699ca..43a4a76d3829fb2ed7b5635d804fd826 } // Paper start -@@ -1544,6 +1586,8 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1551,6 +1593,8 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { && (this.hasTool() ? that.hasTool() && this.tool.equals(that.tool) : !that.hasTool()) && (this.hasDamage() ? that.hasDamage() && this.damage == that.damage : !that.hasDamage()) && (this.hasMaxDamage() ? that.hasMaxDamage() && this.maxDamage.equals(that.maxDamage) : !that.hasMaxDamage()) @@ -133,7 +133,7 @@ index b525bfbab2c4a5ea408981287f477a8b35d699ca..43a4a76d3829fb2ed7b5635d804fd826 && (this.version == that.version); } -@@ -1587,6 +1631,8 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1594,6 +1638,8 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { hash = 61 * hash + (this.hasDamage() ? this.damage : 0); hash = 61 * hash + (this.hasMaxDamage() ? 1231 : 1237); hash = 61 * hash + (this.hasAttributeModifiers() ? this.attributeModifiers.hashCode() : 0); @@ -142,7 +142,7 @@ index b525bfbab2c4a5ea408981287f477a8b35d699ca..43a4a76d3829fb2ed7b5635d804fd826 hash = 61 * hash + this.version; return hash; } -@@ -1627,6 +1673,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1634,6 +1680,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { clone.damage = this.damage; clone.maxDamage = this.maxDamage; clone.version = this.version; @@ -157,7 +157,7 @@ index b525bfbab2c4a5ea408981287f477a8b35d699ca..43a4a76d3829fb2ed7b5635d804fd826 return clone; } catch (CloneNotSupportedException e) { throw new Error(e); -@@ -1740,6 +1794,16 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1747,6 +1801,16 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { } } @@ -174,7 +174,7 @@ index b525bfbab2c4a5ea408981287f477a8b35d699ca..43a4a76d3829fb2ed7b5635d804fd826 if (!this.unhandledTags.isEmpty()) { Tag unhandled = DataComponentPatch.CODEC.encodeStart(MinecraftServer.getDefaultRegistryAccess().createSerializationContext(NbtOps.INSTANCE), this.unhandledTags.build()).getOrThrow(IllegalStateException::new); try { -@@ -1750,6 +1814,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1757,6 +1821,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { Logger.getLogger(CraftMetaItem.class.getName()).log(Level.SEVERE, null, ex); } } @@ -189,7 +189,7 @@ index b525bfbab2c4a5ea408981287f477a8b35d699ca..43a4a76d3829fb2ed7b5635d804fd826 if (!this.persistentDataContainer.isEmpty()) { // Store custom tags, wrapped in their compound builder.put(CraftMetaItem.BUKKIT_CUSTOM_TAG.BUKKIT, this.persistentDataContainer.serialize()); -@@ -1888,6 +1960,8 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1895,6 +1967,8 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { CraftMetaItem.MAX_DAMAGE.TYPE, CraftMetaItem.CUSTOM_DATA.TYPE, CraftMetaItem.ATTRIBUTES.TYPE, diff --git a/patches/server/1034-Fix-helmet-damage-reduction-inconsistencies.patch b/patches/server/1033-Fix-helmet-damage-reduction-inconsistencies.patch similarity index 92% rename from patches/server/1034-Fix-helmet-damage-reduction-inconsistencies.patch rename to patches/server/1033-Fix-helmet-damage-reduction-inconsistencies.patch index aaade14d1f..76f8306225 100644 --- a/patches/server/1034-Fix-helmet-damage-reduction-inconsistencies.patch +++ b/patches/server/1033-Fix-helmet-damage-reduction-inconsistencies.patch @@ -7,7 +7,7 @@ Affect the falling stalactite damage type where the reduction is not applied like in Vanilla diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 9f1c34ea44d00530713baf9fd40993cc5018e999..0cc8e7aa1b1bf29765709c883d11ec8601423737 100644 +index 96070da795755f71e99979288e32b7d7e2d869fb..dfbe0914ab2771ac632fd064719878ac47559e9f 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1212,7 +1212,7 @@ public class CraftEventFactory { diff --git a/patches/server/1035-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch b/patches/server/1034-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch similarity index 100% rename from patches/server/1035-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch rename to patches/server/1034-Revert-to-vanilla-handling-of-LivingEntity-actuallyH.patch diff --git a/patches/server/1036-improve-checking-handled-tags-in-itemmeta.patch b/patches/server/1035-improve-checking-handled-tags-in-itemmeta.patch similarity index 98% rename from patches/server/1036-improve-checking-handled-tags-in-itemmeta.patch rename to patches/server/1035-improve-checking-handled-tags-in-itemmeta.patch index a5308ead10..495ca8cae2 100644 --- a/patches/server/1036-improve-checking-handled-tags-in-itemmeta.patch +++ b/patches/server/1035-improve-checking-handled-tags-in-itemmeta.patch @@ -239,7 +239,7 @@ index d53df6f114c285b880167385807775e400c80fc9..1ac3bec02fce28d5ce698305a7482a9e getOrEmpty(tag, CraftMetaBanner.PATTERNS).ifPresent((entityTag) -> { List patterns = entityTag.layers(); diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBlockState.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBlockState.java -index 9034905aabf057f387b65957a254d056b12e0519..12911233c01d0ac1af9adbd157d56d28361fc76f 100644 +index a433e41ee3728310c63180d8c80190f9f0454fa1..a8a61b5aa55f31829874a54464d363d779a754c9 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBlockState.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBlockState.java @@ -161,8 +161,8 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta @@ -254,7 +254,7 @@ index 9034905aabf057f387b65957a254d056b12e0519..12911233c01d0ac1af9adbd157d56d28 getOrEmpty(tag, CraftMetaBlockState.BLOCK_ENTITY_TAG).ifPresent((nbt) -> { diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java -index 4da38ebb7fdbdb0f8fa422ebcd2e3eec2b2be846..a395c7ce952f4a60a5edf80e8731afa6388d18ea 100644 +index 552ebe67f87b48734adf0da8ef78dcac9dd670a2..e064af399dcae40b4f35aa993d356b1462f91d6c 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java @@ -64,8 +64,8 @@ public class CraftMetaBook extends CraftMetaItem implements BookMeta, WritableBo @@ -269,10 +269,10 @@ index 4da38ebb7fdbdb0f8fa422ebcd2e3eec2b2be846..a395c7ce952f4a60a5edf80e8731afa6 getOrEmpty(tag, CraftMetaBook.BOOK_CONTENT).ifPresent((writable) -> { List> pages = writable.pages(); diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBookSigned.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBookSigned.java -index c7360e2b2d6e50abc371c21b09cdadd63892f439..3f78a0935d738854182254b345064e3c225dcd5f 100644 +index af15a8758ff40f64787f17be40d48b3419d424f1..d67a314c1cd6990230e883ba919a83aca71608f2 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBookSigned.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBookSigned.java -@@ -78,8 +78,8 @@ public class CraftMetaBookSigned extends CraftMetaItem implements BookMeta { +@@ -79,8 +79,8 @@ public class CraftMetaBookSigned extends CraftMetaItem implements BookMeta { } } @@ -389,7 +389,7 @@ index 3ff0340c40e9dc9a6e690de15ccade7a0c4e8f02..3f6c5cbbf63631e4b72dc43558651ea9 getOrEmpty(tag, CraftMetaEntityTag.ENTITY_TAG).ifPresent((nbt) -> { this.entityTag = nbt.copyTag(); diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java -index b444bd26d6c3def3494d3cc0520e462408272be3..8e0dd4b7a7a25a8beb27b507047bc48d8227627c 100644 +index e64a898e75f2fa2aaa874e68fffb7c2445a88785..abc7401442fed907f520141858a0a75975444ced 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java @@ -60,8 +60,8 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { @@ -404,7 +404,7 @@ index b444bd26d6c3def3494d3cc0520e462408272be3..8e0dd4b7a7a25a8beb27b507047bc48d getOrEmpty(tag, CraftMetaFirework.FIREWORKS).ifPresent((fireworks) -> { this.power = fireworks.flightDuration(); diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 43a4a76d3829fb2ed7b5635d804fd826484c16db..5d86861a0df7308ae9b8440e5d9136fa7c8f1835 100644 +index ff46121800980665b0442c13d90874cf6d7a7771..d45efb73f0c87d12cf7817a6c857267f986d68ea 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java @@ -331,7 +331,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @@ -436,7 +436,7 @@ index 43a4a76d3829fb2ed7b5635d804fd826484c16db..5d86861a0df7308ae9b8440e5d9136fa key.getValue().ifPresentOrElse((value) -> { this.unhandledTags.set((DataComponentType) key.getKey(), value); }, () -> { -@@ -1936,67 +1943,74 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1943,67 +1950,74 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { this.version = version; } diff --git a/patches/server/1037-General-ItemMeta-fixes.patch b/patches/server/1036-General-ItemMeta-fixes.patch similarity index 93% rename from patches/server/1037-General-ItemMeta-fixes.patch rename to patches/server/1036-General-ItemMeta-fixes.patch index 1419a0790f..e530480702 100644 --- a/patches/server/1037-General-ItemMeta-fixes.patch +++ b/patches/server/1036-General-ItemMeta-fixes.patch @@ -148,7 +148,7 @@ index 1ac3bec02fce28d5ce698305a7482a9eccbb1867..b494568f833dc21d4e2447ac3e5c5002 for (Pattern p : this.patterns) { diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBlockState.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBlockState.java -index 12911233c01d0ac1af9adbd157d56d28361fc76f..3faef745d9b5d3baaea8c20c6f8e06f7bb529665 100644 +index a8a61b5aa55f31829874a54464d363d779a754c9..ec5132e2c1d7ace10bf2abfd99733cf96822b756 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBlockState.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBlockState.java @@ -142,9 +142,24 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta @@ -252,19 +252,16 @@ index 12911233c01d0ac1af9adbd157d56d28361fc76f..3faef745d9b5d3baaea8c20c6f8e06f7 } } -@@ -200,7 +235,10 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta - } else { +@@ -201,7 +236,7 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta this.material = Material.AIR; } -- this.blockEntityTag = CraftMetaBlockState.getBlockState(this.material, this.internalTag); -+ // Paper start -+ if (this.internalTag != null) { // legacy -+ this.setBlockState(CraftMetaBlockState.getBlockState(this.material, this.internalTag)); -+ } - this.internalTag = null; + if (this.internalTag != null) { +- this.blockEntityTag = CraftMetaBlockState.getBlockState(this.material, this.internalTag); ++ this.setBlockState(CraftMetaBlockState.getBlockState(this.material, this.internalTag)); // Paper - general item meta fixes - pass through setter + this.internalTag = null; + } } - -@@ -208,13 +246,21 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta +@@ -210,13 +245,21 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta void applyToItem(CraftMetaItem.Applicator tag) { super.applyToItem(tag); @@ -291,7 +288,7 @@ index 12911233c01d0ac1af9adbd157d56d28361fc76f..3faef745d9b5d3baaea8c20c6f8e06f7 } @Override -@@ -223,14 +269,29 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta +@@ -225,14 +268,29 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta if (tag.contains(CraftMetaBlockState.BLOCK_ENTITY_TAG.NBT, CraftMagicNumbers.NBT.TAG_COMPOUND)) { this.internalTag = tag.getCompound(CraftMetaBlockState.BLOCK_ENTITY_TAG.NBT); @@ -300,10 +297,10 @@ index 12911233c01d0ac1af9adbd157d56d28361fc76f..3faef745d9b5d3baaea8c20c6f8e06f7 + // Paper start - new serialization format + if (tag.contains(CraftMetaBlockState.BLOCK_ENTITY_TAG_CUSTOM_DATA.NBT, CraftMagicNumbers.NBT.TAG_COMPOUND)) { + this.blockEntityTag = CustomData.of(tag.getCompound(CraftMetaBlockState.BLOCK_ENTITY_TAG_CUSTOM_DATA.NBT)); - } ++ } + if (tag.contains(CraftMetaBlockState.BLOCK_ENTITY_COMPONENTS.NBT, CraftMagicNumbers.NBT.TAG_COMPOUND)) { + this.components = DataComponentMap.CODEC.parse(org.bukkit.craftbukkit.CraftRegistry.getMinecraftRegistry().createSerializationContext(net.minecraft.nbt.NbtOps.INSTANCE), tag.getCompound(CraftMetaBlockState.BLOCK_ENTITY_COMPONENTS.NBT)).getOrThrow(); -+ } + } + // Paper end - new serialization format } @@ -314,16 +311,16 @@ index 12911233c01d0ac1af9adbd157d56d28361fc76f..3faef745d9b5d3baaea8c20c6f8e06f7 + // Paper start - new serialization format + if (!this.blockEntityTag.isEmpty()) { + internalTags.put(CraftMetaBlockState.BLOCK_ENTITY_TAG_CUSTOM_DATA.NBT, this.blockEntityTag.getUnsafe()); // unsafe because it's serialized right away -+ } + } + if (!this.components.isEmpty()) { + final Tag componentsTag = DataComponentMap.CODEC.encodeStart(org.bukkit.craftbukkit.CraftRegistry.getMinecraftRegistry().createSerializationContext(net.minecraft.nbt.NbtOps.INSTANCE), this.components).getOrThrow(); + internalTags.put(CraftMetaBlockState.BLOCK_ENTITY_COMPONENTS.NBT, componentsTag); - } ++ } + // Paper end - new serialization format } @Override -@@ -244,9 +305,10 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta +@@ -246,9 +304,10 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta int applyHash() { final int original; int hash = original = super.applyHash(); @@ -337,7 +334,7 @@ index 12911233c01d0ac1af9adbd157d56d28361fc76f..3faef745d9b5d3baaea8c20c6f8e06f7 return original != hash ? CraftMetaBlockState.class.hashCode() ^ hash : hash; } -@@ -258,19 +320,19 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta +@@ -260,19 +319,19 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta if (meta instanceof CraftMetaBlockState) { CraftMetaBlockState that = (CraftMetaBlockState) meta; @@ -360,7 +357,7 @@ index 12911233c01d0ac1af9adbd157d56d28361fc76f..3faef745d9b5d3baaea8c20c6f8e06f7 } @Override -@@ -281,27 +343,53 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta +@@ -283,27 +342,53 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta @Override public CraftMetaBlockState clone() { CraftMetaBlockState meta = (CraftMetaBlockState) super.clone(); @@ -421,7 +418,7 @@ index 12911233c01d0ac1af9adbd157d56d28361fc76f..3faef745d9b5d3baaea8c20c6f8e06f7 } private static CraftBlockEntityState getBlockState(Material material, CompoundTag blockEntityTag) { -@@ -331,7 +419,23 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta +@@ -333,7 +418,23 @@ public class CraftMetaBlockState extends CraftMetaItem implements BlockStateMeta Class blockStateType = CraftBlockStates.getBlockStateType(stateMaterial); Preconditions.checkArgument(blockStateType == blockState.getClass() && blockState instanceof CraftBlockEntityState, "Invalid blockState for " + this.material); @@ -447,7 +444,7 @@ index 12911233c01d0ac1af9adbd157d56d28361fc76f..3faef745d9b5d3baaea8c20c6f8e06f7 private static Material shieldToBannerHack() { diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java -index a395c7ce952f4a60a5edf80e8731afa6388d18ea..e213ac74f8f4a62b7b8b2b7889250f5cdeb348fe 100644 +index e064af399dcae40b4f35aa993d356b1462f91d6c..27a275f324891e395bf3fd3038c0b9a724bbbf66 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java @@ -34,7 +34,7 @@ public class CraftMetaBook extends CraftMetaItem implements BookMeta, WritableBo @@ -460,21 +457,10 @@ index a395c7ce952f4a60a5edf80e8731afa6388d18ea..e213ac74f8f4a62b7b8b2b7889250f5c // We store the pages in their raw original text representation. See SPIGOT-5063, SPIGOT-5350, SPIGOT-3206 diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBookSigned.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBookSigned.java -index 3f78a0935d738854182254b345064e3c225dcd5f..218df87c596d47b431dbbf2aa42822ef174f948f 100644 +index d67a314c1cd6990230e883ba919a83aca71608f2..9c06daf1cbc075b775cf4e479c8063d8b9729098 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBookSigned.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBookSigned.java -@@ -116,8 +116,8 @@ public class CraftMetaBookSigned extends CraftMetaItem implements BookMeta { - } - } - -- this.resolved = SerializableMeta.getObject(Boolean.class, map, CraftMetaBookSigned.RESOLVED.BUKKIT, true); -- this.generation = SerializableMeta.getObject(Integer.class, map, CraftMetaBookSigned.GENERATION.BUKKIT, true); -+ this.resolved = SerializableMeta.getBoolean(map, CraftMetaBookSigned.RESOLVED.BUKKIT); // Paper - General ItemMeta fixes -+ this.generation = SerializableMeta.getObjectOptionally(Integer.class, map, CraftMetaBookSigned.GENERATION.BUKKIT, true).orElse(0); // Paper - General ItemMeta Fixes - } - - @Override -@@ -129,7 +129,7 @@ public class CraftMetaBookSigned extends CraftMetaItem implements BookMeta { +@@ -130,7 +130,7 @@ public class CraftMetaBookSigned extends CraftMetaItem implements BookMeta { for (Component page : this.pages) { list.add(Filterable.passThrough(page)); } @@ -483,21 +469,6 @@ index 3f78a0935d738854182254b345064e3c225dcd5f..218df87c596d47b431dbbf2aa42822ef } } -@@ -358,7 +358,13 @@ public class CraftMetaBookSigned extends CraftMetaItem implements BookMeta { - } - - if (this.pages != null) { -- builder.put(CraftMetaBookSigned.BOOK_PAGES.BUKKIT, ImmutableList.copyOf(this.pages)); -+ // Paper start - deserialization expects json -+ final List jsonPages = new ArrayList<>(this.pages.size()); -+ for (final Component page : this.pages) { -+ jsonPages.add(CraftChatMessage.toJSON(page)); -+ } -+ builder.put(CraftMetaBookSigned.BOOK_PAGES.BUKKIT, ImmutableList.copyOf(jsonPages)); -+ // Paper end - deserialization expects json - } - - if (this.resolved) { diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBundle.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBundle.java index f8c02fe01fd95aa5de8523c9ad452d91f5d3c16f..4447c754458e9fdead003b4044bf2bee6fcbaaa2 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBundle.java @@ -673,7 +644,7 @@ index 3f6c5cbbf63631e4b72dc43558651ea94f31ca78..da474a5b963d8e6769d120e9091e60ed return true; } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java -index 8e0dd4b7a7a25a8beb27b507047bc48d8227627c..77489c3ffaa3a72d4cf105499a77150fca6d8526 100644 +index abc7401442fed907f520141858a0a75975444ced..e198e15e54596de6dd65785c8c4a4d520512b404 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaFirework.java @@ -55,7 +55,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { @@ -742,23 +713,7 @@ index 8e0dd4b7a7a25a8beb27b507047bc48d8227627c..77489c3ffaa3a72d4cf105499a77150f effects.add((FireworkEffect) obj); } } -@@ -186,9 +190,13 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { - } - - List effects = new ArrayList<>(); -- for (FireworkEffect effect : this.effects) { -- effects.add(CraftMetaFirework.getExplosion(effect)); -+ // Paper start - fix NPE with effects list being null -+ if (this.effects != null) { -+ for (FireworkEffect effect : this.effects) { -+ effects.add(CraftMetaFirework.getExplosion(effect)); -+ } - } -+ // Paper end - - itemTag.put(CraftMetaFirework.FIREWORKS, new Fireworks(this.power, effects)); - } -@@ -218,7 +226,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { +@@ -220,7 +224,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { } boolean isFireworkEmpty() { @@ -767,7 +722,7 @@ index 8e0dd4b7a7a25a8beb27b507047bc48d8227627c..77489c3ffaa3a72d4cf105499a77150f } boolean hasPower() { -@@ -234,7 +242,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { +@@ -236,7 +240,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { if (meta instanceof CraftMetaFirework that) { return (this.hasPower() ? that.hasPower() && this.power == that.power : !that.hasPower()) @@ -776,7 +731,7 @@ index 8e0dd4b7a7a25a8beb27b507047bc48d8227627c..77489c3ffaa3a72d4cf105499a77150f } return true; -@@ -252,7 +260,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { +@@ -254,7 +258,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { if (this.hasPower()) { hash = 61 * hash + this.power; } @@ -785,7 +740,7 @@ index 8e0dd4b7a7a25a8beb27b507047bc48d8227627c..77489c3ffaa3a72d4cf105499a77150f hash = 61 * hash + 13 * this.effects.hashCode(); } return hash != original ? CraftMetaFirework.class.hashCode() ^ hash : hash; -@@ -262,7 +270,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { +@@ -264,7 +268,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { Builder serialize(Builder builder) { super.serialize(builder); @@ -794,7 +749,7 @@ index 8e0dd4b7a7a25a8beb27b507047bc48d8227627c..77489c3ffaa3a72d4cf105499a77150f builder.put(CraftMetaFirework.EXPLOSIONS.BUKKIT, ImmutableList.copyOf(this.effects)); } -@@ -287,6 +295,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { +@@ -289,6 +293,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { @Override public void addEffect(FireworkEffect effect) { Preconditions.checkArgument(effect != null, "FireworkEffect cannot be null"); @@ -802,7 +757,7 @@ index 8e0dd4b7a7a25a8beb27b507047bc48d8227627c..77489c3ffaa3a72d4cf105499a77150f if (this.effects == null) { this.effects = new ArrayList(); } -@@ -296,6 +305,10 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { +@@ -298,6 +303,10 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { @Override public void addEffects(FireworkEffect... effects) { Preconditions.checkArgument(effects != null, "effects cannot be null"); @@ -813,7 +768,7 @@ index 8e0dd4b7a7a25a8beb27b507047bc48d8227627c..77489c3ffaa3a72d4cf105499a77150f if (effects.length == 0) { return; } -@@ -314,7 +327,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { +@@ -316,7 +325,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { @Override public void addEffects(Iterable effects) { Preconditions.checkArgument(effects != null, "effects cannot be null"); @@ -822,7 +777,7 @@ index 8e0dd4b7a7a25a8beb27b507047bc48d8227627c..77489c3ffaa3a72d4cf105499a77150f } @Override -@@ -349,7 +362,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { +@@ -351,7 +360,7 @@ class CraftMetaFirework extends CraftMetaItem implements FireworkMeta { @Override public void setPower(int power) { Preconditions.checkArgument(power >= 0, "power cannot be less than zero: %s", power); @@ -832,7 +787,7 @@ index 8e0dd4b7a7a25a8beb27b507047bc48d8227627c..77489c3ffaa3a72d4cf105499a77150f } } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b449c5ed617 100644 +index d45efb73f0c87d12cf7817a6c857267f986d68ea..19f9629eb44e9361dcf1048027743fe3c9264b4c 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java @@ -175,9 +175,10 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @@ -869,7 +824,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 CraftMetaItem.getOrEmpty(tag, CraftMetaItem.NAME).ifPresent((component) -> { this.displayName = component; }); -@@ -750,7 +756,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -757,7 +763,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { Map mods = SerializableMeta.getObject(Map.class, map, key.BUKKIT, true); Multimap result = LinkedHashMultimap.create(); if (mods == null) { @@ -878,7 +833,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 } for (Object obj : mods.keySet()) { -@@ -908,10 +914,8 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -915,10 +921,8 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { } void applyModifiers(Multimap modifiers, CraftMetaItem.Applicator tag) { @@ -891,7 +846,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 return; } -@@ -940,7 +944,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -947,7 +951,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Overridden boolean isEmpty() { @@ -900,7 +855,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 } // Paper start -@@ -1036,6 +1040,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1043,6 +1047,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Override public void lore(final List lore) { @@ -908,7 +863,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 this.lore = lore != null ? io.papermc.paper.adventure.PaperAdventure.asVanilla(lore) : null; } // Paper end -@@ -1094,7 +1099,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1101,7 +1106,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Override public void removeEnchantments() { if (this.hasEnchants()) { @@ -917,7 +872,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 } } -@@ -1160,6 +1165,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1167,6 +1172,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { // Paper end @Override public void setLore(List lore) { @@ -925,7 +880,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 if (lore == null || lore.isEmpty()) { this.lore = null; } else { -@@ -1175,6 +1181,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1182,6 +1188,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { // Paper start @Override public void setLoreComponents(List lore) { @@ -933,7 +888,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 if (lore == null) { this.lore = null; } else { -@@ -1316,7 +1323,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1323,7 +1330,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Override public FoodComponent getFood() { @@ -942,7 +897,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 } @Override -@@ -1357,7 +1364,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1364,7 +1371,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Override public Multimap getAttributeModifiers(@Nullable EquipmentSlot slot) { @@ -951,7 +906,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 SetMultimap result = LinkedHashMultimap.create(); for (Map.Entry entry : this.attributeModifiers.entries()) { if (entry.getValue().getSlot() == null || entry.getValue().getSlot() == slot) { -@@ -1370,6 +1377,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1377,6 +1384,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Override public Collection getAttributeModifiers(@Nonnull Attribute attribute) { Preconditions.checkNotNull(attribute, "Attribute cannot be null"); @@ -959,7 +914,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 return this.attributeModifiers.containsKey(attribute) ? ImmutableList.copyOf(this.attributeModifiers.get(attribute)) : null; } -@@ -1377,10 +1385,12 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1384,10 +1392,12 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { public boolean addAttributeModifier(@Nonnull Attribute attribute, @Nonnull AttributeModifier modifier) { Preconditions.checkNotNull(attribute, "Attribute cannot be null"); Preconditions.checkNotNull(modifier, "AttributeModifier cannot be null"); @@ -973,7 +928,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 return this.attributeModifiers.put(attribute, modifier); } -@@ -1391,8 +1401,11 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1398,8 +1408,11 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { return; } @@ -987,7 +942,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 Iterator> iterator = attributeModifiers.entries().iterator(); while (iterator.hasNext()) { -@@ -1402,6 +1415,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1409,6 +1422,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { iterator.remove(); continue; } @@ -995,7 +950,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 this.attributeModifiers.put(next.getKey(), next.getValue()); } } -@@ -1409,13 +1423,13 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1416,13 +1430,13 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Override public boolean removeAttributeModifier(@Nonnull Attribute attribute) { Preconditions.checkNotNull(attribute, "Attribute cannot be null"); @@ -1011,7 +966,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 int removed = 0; Iterator> iter = this.attributeModifiers.entries().iterator(); -@@ -1435,7 +1449,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1442,7 +1456,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { public boolean removeAttributeModifier(@Nonnull Attribute attribute, @Nonnull AttributeModifier modifier) { Preconditions.checkNotNull(attribute, "Attribute cannot be null"); Preconditions.checkNotNull(modifier, "AttributeModifier cannot be null"); @@ -1020,7 +975,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 int removed = 0; Iterator> iter = this.attributeModifiers.entries().iterator(); -@@ -1457,7 +1471,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1464,7 +1478,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Override public String getAsString() { @@ -1029,7 +984,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 this.applyToItem(tag); DataComponentPatch patch = tag.build(); Tag nbt = DataComponentPatch.CODEC.encodeStart(MinecraftServer.getDefaultRegistryAccess().createSerializationContext(NbtOps.INSTANCE), patch).getOrThrow(); -@@ -1466,7 +1480,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1473,7 +1487,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Override public String getAsComponentString() { @@ -1038,7 +993,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 this.applyToItem(tag); DataComponentPatch patch = tag.build(); -@@ -1506,6 +1520,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1513,6 +1527,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { if (first == null || second == null) { return false; } @@ -1046,7 +1001,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 for (Map.Entry entry : first.entries()) { if (!second.containsEntry(entry.getKey(), entry.getValue())) { return false; -@@ -1531,6 +1546,8 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1538,6 +1553,8 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Override public void setDamage(int damage) { @@ -1055,7 +1010,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 this.damage = damage; } -@@ -1547,6 +1564,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1554,6 +1571,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { @Override public void setMaxDamage(Integer maxDamage) { @@ -1063,7 +1018,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 this.maxDamage = maxDamage; } -@@ -1578,7 +1596,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1585,7 +1603,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { && (this.hasCustomModelData() ? that.hasCustomModelData() && this.customModelData.equals(that.customModelData) : !that.hasCustomModelData()) && (this.hasBlockData() ? that.hasBlockData() && this.blockData.equals(that.blockData) : !that.hasBlockData()) && (this.hasRepairCost() ? that.hasRepairCost() && this.repairCost == that.repairCost : !that.hasRepairCost()) @@ -1072,7 +1027,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 && (this.unhandledTags.equals(that.unhandledTags)) && (Objects.equals(this.customTag, that.customTag)) && (this.persistentDataContainer.equals(that.persistentDataContainer)) -@@ -1636,8 +1654,8 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1643,8 +1661,8 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { hash = 61 * hash + (this.hasFood() ? this.food.hashCode() : 0); hash = 61 * hash + (this.hasTool() ? this.tool.hashCode() : 0); hash = 61 * hash + (this.hasDamage() ? this.damage : 0); @@ -1083,7 +1038,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 hash = 61 * hash + (this.canPlaceOnPredicates != null ? this.canPlaceOnPredicates.hashCode() : 0); // Paper hash = 61 * hash + (this.canBreakPredicates != null ? this.canBreakPredicates.hashCode() : 0); // Paper hash = 61 * hash + this.version; -@@ -1657,7 +1675,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1664,7 +1682,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { if (this.enchantments != null) { clone.enchantments = new EnchantmentMap(this.enchantments); // Paper } @@ -1092,7 +1047,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 clone.attributeModifiers = LinkedHashMultimap.create(this.attributeModifiers); } if (this.customTag != null) { -@@ -1864,7 +1882,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1871,7 +1889,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { } static void serializeModifiers(Multimap modifiers, ImmutableMap.Builder builder, ItemMetaKey key) { @@ -1101,7 +1056,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 return; } -@@ -1946,7 +1964,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1953,7 +1971,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { // Paper start - improve checking handled tags @org.jetbrains.annotations.VisibleForTesting public static final Map, Set>> HANDLED_DCTS_PER_TYPE = new HashMap<>(); @@ -1110,7 +1065,7 @@ index 5d86861a0df7308ae9b8440e5d9136fa7c8f1835..7d15711ffc908dff8a01f2425d729b44 CraftMetaItem.NAME.TYPE, CraftMetaItem.ITEM_NAME.TYPE, CraftMetaItem.LORE.TYPE, -@@ -2013,7 +2031,12 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -2020,7 +2038,12 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { // Paper end - improve checking handled data component types protected static Optional getOrEmpty(DataComponentPatch tag, ItemMetaKeyType type) { @@ -1410,10 +1365,10 @@ index b5392a3a6f6f3d0a54549e6bb93f28590ee048f0..7514aa6f206c4b82fecd112783f96bb9 } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/SerializableMeta.java b/src/main/java/org/bukkit/craftbukkit/inventory/SerializableMeta.java -index 8b407a33b04af6ae396ada0b8aca7dc246d314ef..d204845cf0b9de00589593469755cb8e42e0aa67 100644 +index b7e93a6ec72ec3e3390fefa52fda0c2cd8e17c0c..758778650bebf7b96eefab42543e812849124b2f 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/SerializableMeta.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/SerializableMeta.java -@@ -123,4 +123,21 @@ public final class SerializableMeta implements ConfigurationSerializable { +@@ -128,4 +128,21 @@ public final class SerializableMeta implements ConfigurationSerializable { } throw new IllegalArgumentException(field + "(" + object + ") is not a valid " + clazz); } diff --git a/patches/server/1038-Expose-hasColor-to-leather-armor.patch b/patches/server/1037-Expose-hasColor-to-leather-armor.patch similarity index 100% rename from patches/server/1038-Expose-hasColor-to-leather-armor.patch rename to patches/server/1037-Expose-hasColor-to-leather-armor.patch diff --git a/patches/server/1039-Added-API-to-get-player-ha-proxy-address.patch b/patches/server/1038-Added-API-to-get-player-ha-proxy-address.patch similarity index 97% rename from patches/server/1039-Added-API-to-get-player-ha-proxy-address.patch rename to patches/server/1038-Added-API-to-get-player-ha-proxy-address.patch index a9b47406aa..0c70ba8179 100644 --- a/patches/server/1039-Added-API-to-get-player-ha-proxy-address.patch +++ b/patches/server/1038-Added-API-to-get-player-ha-proxy-address.patch @@ -35,7 +35,7 @@ index 52f537b7bfbdeaad9d17c0e88a1ed1c8925a833f..8aff5129f85ab5729b3da2e465871be6 } else { super.channelRead(ctx, msg); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 84ed5dc8c82e28aa93fa0440d90ddb44dc5f3d40..7e6116963d835d4606ef3d93b69d3e44b61288e1 100644 +index 815bcfd90218b932ca004c0f18db8b4de5d35c19..40155cc70ba959eea8011626a30e26f44298c99d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -273,6 +273,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/1040-More-Chest-Block-API.patch b/patches/server/1039-More-Chest-Block-API.patch similarity index 100% rename from patches/server/1040-More-Chest-Block-API.patch rename to patches/server/1039-More-Chest-Block-API.patch diff --git a/patches/server/1041-Print-data-component-type-on-encoding-error.patch b/patches/server/1040-Print-data-component-type-on-encoding-error.patch similarity index 100% rename from patches/server/1041-Print-data-component-type-on-encoding-error.patch rename to patches/server/1040-Print-data-component-type-on-encoding-error.patch diff --git a/patches/server/1042-Fix-entity-tracker-desync-when-new-players-are-added.patch b/patches/server/1041-Fix-entity-tracker-desync-when-new-players-are-added.patch similarity index 100% rename from patches/server/1042-Fix-entity-tracker-desync-when-new-players-are-added.patch rename to patches/server/1041-Fix-entity-tracker-desync-when-new-players-are-added.patch diff --git a/patches/server/1043-Brigadier-based-command-API.patch b/patches/server/1042-Brigadier-based-command-API.patch similarity index 99% rename from patches/server/1043-Brigadier-based-command-API.patch rename to patches/server/1042-Brigadier-based-command-API.patch index ea4c736e9f..f94956ca8f 100644 --- a/patches/server/1043-Brigadier-based-command-API.patch +++ b/patches/server/1042-Brigadier-based-command-API.patch @@ -2069,7 +2069,7 @@ index e6c7f62ed379a78645933670299e4fcda8540ed1..59d7e8a3d83d3ab7aa28606401bb129c public org.bukkit.command.CommandSender getBukkitSender() { return this.source.getBukkitSender(this); diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java -index aa2fca6917fb67fe0e9ba067d11487c3a274f675..0126906e2afc8dd525f27a0c5e82116075c9d352 100644 +index d598712f4e7bd63e3011071e7a79645aa7fcec50..134befa037177b47dbda1ba033251d901bdbcd3f 100644 --- a/src/main/java/net/minecraft/commands/Commands.java +++ b/src/main/java/net/minecraft/commands/Commands.java @@ -156,7 +156,7 @@ public class Commands { @@ -2315,7 +2315,7 @@ index a0ec6c3d122ad28d65d37f1b9f82541997b37d37..c6d7ee0d498bd92d4321acd30ade10ab public void tick() { diff --git a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java -index eb4fc900164d1fb3a78653ae8bc42ea30323f5b7..2eb9c584cc77237f1c82d880a51a3f8b51008d73 100644 +index 5678414a608623a7698f72173fef87bde44f6aaa..ad967cc2283f902c76e48a59d59cf0dbdacbb5e3 100644 --- a/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java +++ b/src/main/java/net/minecraft/server/dedicated/DedicatedServer.java @@ -233,7 +233,6 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface @@ -2327,10 +2327,10 @@ index eb4fc900164d1fb3a78653ae8bc42ea30323f5b7..2eb9c584cc77237f1c82d880a51a3f8b this.setPvpAllowed(dedicatedserverproperties.pvp); this.setFlightAllowed(dedicatedserverproperties.allowFlight); diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 3faf80fca51d66480265eaf3cc89149e53ceb215..b9b3277c8ed94e0cd30b20b9c00a33eaad48e5ac 100644 +index c488dd9b6e8e61d6d969e9dcd525db7c2c469812..ce020ec03b2d1ba3e4caa7e6d18b627c121c1d02 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2464,33 +2464,20 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2462,33 +2462,20 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } } diff --git a/patches/server/1044-Fix-issues-with-Recipe-API.patch b/patches/server/1043-Fix-issues-with-Recipe-API.patch similarity index 100% rename from patches/server/1044-Fix-issues-with-Recipe-API.patch rename to patches/server/1043-Fix-issues-with-Recipe-API.patch diff --git a/patches/server/1045-Fix-equipment-slot-and-group-API.patch b/patches/server/1044-Fix-equipment-slot-and-group-API.patch similarity index 96% rename from patches/server/1045-Fix-equipment-slot-and-group-API.patch rename to patches/server/1044-Fix-equipment-slot-and-group-API.patch index 2f07399d2b..324f8c3556 100644 --- a/patches/server/1045-Fix-equipment-slot-and-group-API.patch +++ b/patches/server/1044-Fix-equipment-slot-and-group-API.patch @@ -52,10 +52,10 @@ index 9d74577af071954e1e37201a96368c1360076209..eafa54c870c3e2aef30c3f9f96f51660 throw new IllegalArgumentException("Not implemented. This is a bug"); } diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -index 7d15711ffc908dff8a01f2425d729b449c5ed617..b6686a42fe1eb29e00907105291e9e4a0baa08e0 100644 +index 19f9629eb44e9361dcf1048027743fe3c9264b4c..b38e208e2a69000bb43abe7bdfb58e504af4e6f7 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java -@@ -1367,7 +1367,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1374,7 +1374,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { if (this.attributeModifiers == null) return LinkedHashMultimap.create(); // Paper - don't change the components SetMultimap result = LinkedHashMultimap.create(); for (Map.Entry entry : this.attributeModifiers.entries()) { @@ -64,7 +64,7 @@ index 7d15711ffc908dff8a01f2425d729b449c5ed617..b6686a42fe1eb29e00907105291e9e4a result.put(entry.getKey(), entry.getValue()); } } -@@ -1435,9 +1435,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { +@@ -1442,9 +1442,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta { while (iter.hasNext()) { Map.Entry entry = iter.next(); diff --git a/patches/server/1046-Allow-Bukkit-plugin-to-use-Paper-PluginLoader-API.patch b/patches/server/1045-Allow-Bukkit-plugin-to-use-Paper-PluginLoader-API.patch similarity index 100% rename from patches/server/1046-Allow-Bukkit-plugin-to-use-Paper-PluginLoader-API.patch rename to patches/server/1045-Allow-Bukkit-plugin-to-use-Paper-PluginLoader-API.patch diff --git a/patches/server/1047-Prevent-sending-oversized-item-data-in-equipment-and.patch b/patches/server/1046-Prevent-sending-oversized-item-data-in-equipment-and.patch similarity index 98% rename from patches/server/1047-Prevent-sending-oversized-item-data-in-equipment-and.patch rename to patches/server/1046-Prevent-sending-oversized-item-data-in-equipment-and.patch index ed2e9d9dd8..5de1e5050f 100644 --- a/patches/server/1047-Prevent-sending-oversized-item-data-in-equipment-and.patch +++ b/patches/server/1046-Prevent-sending-oversized-item-data-in-equipment-and.patch @@ -201,10 +201,10 @@ index f16a69775332a08ed0e87d27acd0fc959359694c..a2279262c93408c11f5d2290b48fd794 ((LivingEntity) this.entity).detectEquipmentUpdatesPublic(); // CraftBukkit - SPIGOT-3789: sync again immediately after sending } diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index b9b3277c8ed94e0cd30b20b9c00a33eaad48e5ac..c450447585af4c8cdc87abe871c229ff895c3e53 100644 +index ce020ec03b2d1ba3e4caa7e6d18b627c121c1d02..8d9376f0f658bbd0bb72f688ce2a78c018571b7a 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2788,7 +2788,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2786,7 +2786,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl entity.refreshEntityData(ServerGamePacketListenerImpl.this.player); // SPIGOT-7136 - Allays if (entity instanceof Allay) { diff --git a/patches/server/1048-Prevent-NPE-if-hooked-entity-was-cleared.patch b/patches/server/1047-Prevent-NPE-if-hooked-entity-was-cleared.patch similarity index 100% rename from patches/server/1048-Prevent-NPE-if-hooked-entity-was-cleared.patch rename to patches/server/1047-Prevent-NPE-if-hooked-entity-was-cleared.patch diff --git a/patches/server/1049-Fix-cancelling-BlockPlaceEvent-calling-onRemove.patch b/patches/server/1048-Fix-cancelling-BlockPlaceEvent-calling-onRemove.patch similarity index 97% rename from patches/server/1049-Fix-cancelling-BlockPlaceEvent-calling-onRemove.patch rename to patches/server/1048-Fix-cancelling-BlockPlaceEvent-calling-onRemove.patch index 96084e7275..c740827e5f 100644 --- a/patches/server/1049-Fix-cancelling-BlockPlaceEvent-calling-onRemove.patch +++ b/patches/server/1048-Fix-cancelling-BlockPlaceEvent-calling-onRemove.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Fix cancelling BlockPlaceEvent calling onRemove diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 893efb2c4a07c33d41e934279dd914a9dbd4ef79..58c38bc4361ddf24716f326b0c6fc626d434756e 100644 +index 7c7b9b1e0b604b0164b431873e6753b60421f970..f8589837070039b4911a9532b92fa959c7af6352 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java @@ -473,9 +473,11 @@ public final class ItemStack implements DataComponentHolder { diff --git a/patches/server/1050-Add-missing-fishing-event-state.patch b/patches/server/1049-Add-missing-fishing-event-state.patch similarity index 100% rename from patches/server/1050-Add-missing-fishing-event-state.patch rename to patches/server/1049-Add-missing-fishing-event-state.patch diff --git a/patches/server/1051-Deprecate-InvAction-HOTBAR_MOVE_AND_READD.patch b/patches/server/1050-Deprecate-InvAction-HOTBAR_MOVE_AND_READD.patch similarity index 92% rename from patches/server/1051-Deprecate-InvAction-HOTBAR_MOVE_AND_READD.patch rename to patches/server/1050-Deprecate-InvAction-HOTBAR_MOVE_AND_READD.patch index 6be68ca368..275b00ea36 100644 --- a/patches/server/1051-Deprecate-InvAction-HOTBAR_MOVE_AND_READD.patch +++ b/patches/server/1050-Deprecate-InvAction-HOTBAR_MOVE_AND_READD.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Deprecate InvAction#HOTBAR_MOVE_AND_READD diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index c450447585af4c8cdc87abe871c229ff895c3e53..4ae88bfcead40cd05f9514a48a922a37767cb3cf 100644 +index 8d9376f0f658bbd0bb72f688ce2a78c018571b7a..dd0610104822bee532542c87ecc9cd16ccf3c216 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -3054,14 +3054,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3052,14 +3052,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl Slot clickedSlot = this.player.containerMenu.getSlot(packet.getSlotNum()); if (clickedSlot.mayPickup(this.player)) { ItemStack hotbar = this.player.getInventory().getItem(packet.getButtonNum()); diff --git a/patches/server/1052-Fix-sending-disconnect-packet-in-phases-where-it-doe.patch b/patches/server/1051-Fix-sending-disconnect-packet-in-phases-where-it-doe.patch similarity index 100% rename from patches/server/1052-Fix-sending-disconnect-packet-in-phases-where-it-doe.patch rename to patches/server/1051-Fix-sending-disconnect-packet-in-phases-where-it-doe.patch diff --git a/patches/server/1053-Adopt-MaterialRerouting.patch b/patches/server/1052-Adopt-MaterialRerouting.patch similarity index 100% rename from patches/server/1053-Adopt-MaterialRerouting.patch rename to patches/server/1052-Adopt-MaterialRerouting.patch diff --git a/patches/server/1054-Fix-Player-setBlockUpdate.patch b/patches/server/1053-Fix-Player-setBlockUpdate.patch similarity index 100% rename from patches/server/1054-Fix-Player-setBlockUpdate.patch rename to patches/server/1053-Fix-Player-setBlockUpdate.patch diff --git a/patches/server/1055-Fix-removing-recipes-from-RecipeIterator.patch b/patches/server/1054-Fix-removing-recipes-from-RecipeIterator.patch similarity index 100% rename from patches/server/1055-Fix-removing-recipes-from-RecipeIterator.patch rename to patches/server/1054-Fix-removing-recipes-from-RecipeIterator.patch diff --git a/patches/server/1056-Configurable-damage-tick-when-blocking-with-shield.patch b/patches/server/1055-Configurable-damage-tick-when-blocking-with-shield.patch similarity index 100% rename from patches/server/1056-Configurable-damage-tick-when-blocking-with-shield.patch rename to patches/server/1055-Configurable-damage-tick-when-blocking-with-shield.patch diff --git a/work/CraftBukkit b/work/CraftBukkit index ee95e171a0..65247583f8 160000 --- a/work/CraftBukkit +++ b/work/CraftBukkit @@ -1 +1 @@ -Subproject commit ee95e171a0761467c09e0657583a5636d7ae7d3c +Subproject commit 65247583f8c04171632caab7487c8aabceacd5c8 diff --git a/work/Spigot b/work/Spigot index fcd94e2117..f6a4805476 160000 --- a/work/Spigot +++ b/work/Spigot @@ -1 +1 @@ -Subproject commit fcd94e2117c41a2ff382fc7747bf8776a54d0389 +Subproject commit f6a48054762b87d7c8568e567127b883241c592b