Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
Bukkit Changes:
91957aa3 #550: Add getHandlerList into ArrowBodyCountChangeEvent
30dc3e37 Update deprecation message for PotionMeta.setMainEffect
CraftBukkit Changes:
6f55306c4 SPIGOT-5794: Only skip interact event if position, hand and itemstack are equal
This is a pretty tiny update with very little changed. Recommended to update
from 1.16.2 ASAP as 1.16.2 is now no longer supported.
Plugins should mostly remain working as the NMS revision did not change.
Previously, Entity Activation Range only applied to the root entity of a vehicle chain.
If that vehicle is active, every entity as it's passenger would then tick.
This creates scenarios where EAR does not apply your desired ranges to passengers.
Additionally, any entity that was a passenger never had its inactiveTick method called
when the parent was inactive, creating behavioral desyncs.
This could of been a source of many villager issues when those villagers were in minecarts
as players commonly do.
Now we will process passengers checking their activation state independently of their vehicle
and if they are inactive, call their inactiveTick() method to ensure state remains consistent.
This also helps improve any desync issues with entity position of passengers too.
This also removes immunity for passenger/vehicles, so it should improve performance
of these minecart villagers too for EAR.
This makes it so entities that are passengers of other entities no longer count in the parents timings, as well as
tracks them as a separate timers per their tick status.
This lets you see how much time is spent in activated entities vs inactive (as inactive still has to do work)
Passengers is also tracked separately so you can identify "Villagers in Minecarts" vs roaming villagers, as
the lack of ability to move can impact their performance characteristics.
This will likely break any plugin that was naughty and directly messed with our internal timings as this
moves the timings to the EntityTypes object, speeding up creation of Entities to no longer store
a timing handler object per entity.
This will also change the output of the entities in timings to use internal ID's instead of class names.
If a plugin is broken by this, shame them for doing bad things. Paper will not fix it, they will have to fix it.
Upstream has released updates that appears 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:
a05df28a7 SPIGOT-6122: Revert "SPIGOT-5794: Do not skip PlayerInteractEvent"
Upstream has released updates that appears 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:
1d7440332#745: Fix getLocation for Cartography Table and Stonecutter
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
Bukkit Changes:
b56e8160 #519: Add ArrowBodyCountChangeEvent
CraftBukkit Changes:
39806409e#697: Add ArrowBodyCountChangeEvent
Spigot has been stripping the minecraft-server jar down in order to
reduce it's size, primarily by removing classes they don't use from
fastutil. as we use fastutil and offer it as API, this is useless
to us, and creates headaches when it breaks builds due to spigots
version of this being installed.
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
Bukkit Changes:
565a5727 #533: Add consumed item, hand and consumeItem boolean to EntityShootBowEvent
CraftBukkit Changes:
927200a9#718: Add consumed item, hand and consumeItem boolean to EntityShootBowEvent
Upstream has released updates that appears 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:
00bff0270 SPIGOT-5794: Do not skip PlayerInteractEvent
Up to now a simple counter variable was used to iterate through the
hidden-blocks in engine-mode 2 while obfuscating. This results in low
quality obfuscation.
One could for example easily write a hack, which bypasses Anti-Xray
by not showing ores, which have a certain pattern.
Furthermore, engine-mode 1 is slightly optimized by this commit.
However, engine-mode 2 is probably somewhat slower. I did some tests but
I wasn't able to get stable results for some reason. Therefore this
needs further testing.
An optimized random algorithm is utilized to pick random blocks from the
hidden-blocks list. This implementation uses xorshift and integer
multiplication for bounding. The resulting distribution is negligibly
biased because xorshift doesn't generate 0 and integer multiplication
also implies biased results.
Upstream has released updates that appears 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:
3f572834#740: Fix EntityDamageEvent not being called for non EntityDamageSource for End Crystals
3c7143e7 SPIGOT-5953, SPIGOT-5914: Use LinkedHashMap to keep captured block states in order
Upstream has released updates that appears 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:
e14c9acbe SPIGOT-6113: Ender Pearls thrown into portals that lead to disabled dimensions crash the server
97da39889 SPIGOT-6114: PlayerRespawnEvent player's location changed before event called
3b5c36769 SPIGOT-6115: Items being deleted on pick up with full inventory
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
Bukkit Changes:
323d6ca3 #535: Add EntityCategory API to LivingEntity
7d3323d8 #526: Add Block#applyBoneMeal()
CraftBukkit Changes:
bf451617 SPIGOT-6109: Improve loot handling
bfea4559 SPIGOT-6111: NPE in CraftHumanEntity#openWorkbench & CraftHumanEntity#openEnchanting
ee7116b4 Add note to CONTRIBUTING.md to suggest keeping commit messages / titles the same
eae15943#721: Add EntityCategory API to LivingEntity
8c611560#702: Add Block#applyBoneMeal()
8408de02#716: Fix barrel open API playing sound twice
74b6982b#711: Add Full RGB support to the console
Upstream has released updates that appears 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:
049120068 SPIGOT-6101: Store persist state of entities
0de8365dd SPIGOT-6103: Summoning an Eye of Ender throw an Error
Spigot Changes:
b5a13e6d Rebuild patches
Upstream has released updates that appears 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:
9aafdc9a7 SPIGOT-6099: PlayerPortalEvent.setTo ignores world for end portal travel
This patch buffers the number of logins which will attempt to join
the world per tick, this attempts to reduce the impact that join floods
has on the server
PaperMC believes that 1.16.2 is now ready for general release as we fixed the main issue plagueing the 1.16.x release, the MapLike data conversion issues.
Until now, it was not safe for a server to convert a world to 1.16.2 without data conversion issues around villages and potentially other things. If you did, those MapLike errors meant something went wrong.
This is now resolved.
Big thanks to all those that helped, notably @BillyGalbreath and @Proximyst who did large parts of the update process with me.
Please as always, backup your worlds and test before updating to 1.16.2!
If you update to 1.16.2, there is no going back to an older build than this.
---------------------------------
Co-authored-by: William Blake Galbreath <Blake.Galbreath@GMail.com>
Co-authored-by: Mariell Hoversholm <proximyst@proximyst.com>
Co-authored-by: krolik-exe <69214078+krolik-exe@users.noreply.github.com>
Co-authored-by: BillyGalbreath <BillyGalbreath@users.noreply.github.com>
Co-authored-by: stonar96 <minecraft.stonar96@gmail.com>
Co-authored-by: Shane Freeder <theboyetronic@gmail.com>
Co-authored-by: Jason <jasonpenilla2@me.com>
Co-authored-by: kashike <kashike@vq.lc>
Co-authored-by: Aurora <21148213+aurorasmiles@users.noreply.github.com>
Co-authored-by: KennyTV <kennytv@t-online.de>
Co-authored-by: commandblockguy <commandblockguy1@gmail.com>
Co-authored-by: DigitalRegent <misterwener@gmail.com>
Co-authored-by: ishland <ishlandmc@yeah.net>
If the server attempts to load a chunk generated by a newer version of
the game, immediately stop the server to prevent data corruption.
You can override this functionality at your own peril.
The existing regex is too open and allows for the absence of any actual
number data, detecting an NBT entry of just the letter "i" in upper or
lower case. This causes a single-character NBT entry to be processed as
an integer ending in "i", passing an empty String to to Integer.parseInt,
triggering an exception in loading the item.
This commit forces numbers to be present prior to the ending "i"
letter.
This patch was dropped in 1.14 . I couldn't find it in removed so I got it from 1.13
Tested with 30-40 players and works fine with default settings.
Closes https://github.com/PaperMC/Paper/issues/4070
This fixes a bug with obfuscation helpers for attack cooldown
But every other change should stay the same.
Cleaning up a lot of helpers that pointed to already unobfuscated items.
Also adds final to many of the obfhelpers to assist with inlining.
This is pretty much a patch maintenance
Hopefully fixes#4030 and hopefully fixes#4025
Use the concurrent enqueue process for all light tasks.
Restore dedicated light thread, helpful for profiling and identifying light work
as well as lets us give it a boosted thread priority
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
Bukkit Changes:
eeb1042f #491: Add support to change block's lid state
CraftBukkit Changes:
8fb65851#660: Add support to change block's lid state
Upstream has released updates that appears 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:
c3a22e78 SPIGOT-6032: Add best effort target events for new entities
Upstream has released updates that appears 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:
52fd29c0d SPIGOT-6033: Bukkit.getUnsafe().getMaterial() won't match renamed block materials
No longer rely on world time as plugins like to screw it up.
Add a new flag -Dpaper.ticklist-max-tick-delay= that
will automatically drop any tick entries that have a delay
exceeding the specified amount. This is only useful
for cleaning up a world that has been corrupted by
certain blocks having a huge tick delay.
Aimed at resolving #3251
Also fix an issue with some rails connecting incorrectly
that I found when testing.
Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>
Too many people try to disable async chunks thinking its the cure
to some mysterious problem.
It is not possible to fully disable async chunks, and the portion
that this config controls is so minor in the grand scheme of things.
People are needlessly hurting their server following bad advice, so
just kill this config except for the people who might actually benefit from it.
Ensures light priorities are properly processed before processing new
work, skipping the threads queue.
also stops processing work on task submission.
Also drops dead chunks light work to not waste time on work thats going to be discarded.
Fixes#3986Fixes#4002Fixes#3951
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
Bukkit Changes:
09f10fd9 SPIGOT-5950: Add PrepareSmithingEvent event
CraftBukkit Changes:
7c03d257 SPIGOT-6011: End Gateways do not work on Non-Main End Worlds
d492e363 SPIGOT-6015: Small Armor Stand doesn't drop items
5db13eea SPIGOT-5950: Add PrepareSmithingEvent event
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing
Bukkit Changes:
f1e73b03 #525: Add contributors plugin.yml field.
ef0999fe #529: Added getRecipe() method to retrieve a Recipe by it's NamespacedKey
CraftBukkit Changes:
8b831a965#714: Added getRecipe() method to retrieve a Recipe by it's NamespacedKey
Move the criterion storage to the AdvancementDataPlayer object
itself, so the criterion object stores no references - and thus
needs no cleanup.
Fixes#3050
Upstream has released updates that appears 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:
2361cb8a8 Increase outdated build delay to 3 weeks
Spigot Changes:
d4cbb644 Update bungeecord-chat
Upstream has released updates that appears 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:
75a2fb8e0 SPIGOT-5901: Improve multiworld support
Datapacks check this on load and are built concurrently. This was breaking them badly due
to race conditions.
Plus, .canUse we want to be safe for async anyways.
Fixes#3722
Spigot stored previous componenents as new ChatComponentText("legacy codes") which
this patch aimed to convert to the new format.
However, the impl ended up converting all lines.
If a plugin had a section symbol in the lore that isn't a color conversion, it would
make trigger this process every single time.
So now we will only process it if the pattern looks like the legacy bukkit format
Fixes#3869
Stop light copy was missing a default in the impl.
Should of been extremely low chance of impacting anything though
as the very first copy operation would have fixed it.
Sadly this doesn't fix the issues weve been trying to fix.
Fix player async teleporting adding priority to wrong world for cross world teleports
Also improve teleporting to wait for entity ticking status before teleporting to prevent neighbors loading
Upstream has released updates that appears 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:
72f368909 SPIGOT-5965: BlockRedstoneEvent.setNewCurrent(0) crashes server
60f8a29d1 SPIGOT-5968: Killer rabbits can't be set to the non-killer rabbit behavior
69fddc725#705: Improve implementation of furnace related block states