Commit graph

2955 commits

Author SHA1 Message Date
Jason Penilla
859ebd5ad4 Fix client lag on advancement loading (#4710)
When new advancements are added via the UnsafeValues#loadAdvancement
API, it triggers a full datapack reload when this is not necessary. The
advancement is already loaded directly into the advancement registry,
and the point of saving the advancement to the Bukkit datapack seems to
be for persistence. By removing the call to reload datapacks when an
advancement is loaded, the client no longer completely freezes up when
adding a new advancement.
To ensure the client still receives the updated advancement data, we
manually reload the advancement data for all players, which
normally takes place as a part of the datapack reloading.
2020-11-11 08:18:36 -08:00
Aurora
ae22eecc49 [CI-SKIP] Update IRC information in readme and config (#4751)
Co-authored-by: Mariell <proximyst@proximyst.com>
Co-authored-by: Riley Park <rileysebastianpark@gmail.com>
2020-11-10 09:15:03 +01:00
Mariell Hoversholm
58c9443d76 Toggle for removing existing dragon 2020-09-30 22:52:29 +02:00
Shane Freeder
f7185064c9 Updated Upstream (Spigot)
Restab at the last upstream to add support for migrating the option for disabling player data
saving back into spigots config, vs blindly dropping 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

Spigot Changes:
a19903d2 SPIGOT-520: Add option to disable player data saving
2020-11-09 01:05:27 +00:00
Shane Freeder
fe115b0ebe Revert "Updated Upstream (Spigot) (#4745)"
This reverts commit 27979ca2fa.
2020-11-09 00:09:37 +00:00
Mariell
27979ca2fa Updated Upstream (Spigot) (#4745)
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

Spigot Changes:
a19903d2 SPIGOT-520: Add option to disable player data saving
2020-11-08 11:00:43 +01:00
Shane Freeder
690a0bc308 Updated Upstream (Bukkit/CraftBukkit)
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:
f4f2ef4c SPIGOT-6222: Correct javadoc for Entity#setPassenger
1871ca9d #559: Add wait time modification for FishHook

CraftBukkit Changes:
bc6a175e #767: Add wait time modification for FishHook
2fc37bcc SPIGOT-6197: Prevent world loading from updating spawn settings of all worlds
2020-11-07 00:19:04 +00:00
Mariell
0b2f49cb81 OBFHELPERS (#4733) 2020-11-03 22:30:15 +01:00
Daniel Ennis
6f4fbe1c89 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#4728)
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:
30885166 Update to Minecraft 1.16.4

CraftBukkit Changes:
3af81c71 Update to Minecraft 1.16.4

Spigot Changes:
f011ca24 Update to Minecraft 1.16.4

Co-authored-by: Mariell Hoversholm <proximyst@proximyst.com>
2020-11-02 21:22:15 -05:00
oxygencraft
0e476e7c68 Add getOfflinePlayerIfCached(String) 2020-10-25 18:42:35 +11:00
Spottedleaf
94d3dceaa9 Fix ghost blocks in ticking view distance
Fixes #4298.

Tuinity patch:
576e2cc1af/patches/server/0047-Fix-ghost-blocks-in-ticking-view-distance.patch
2020-11-01 16:28:55 +01:00
Toon Schoenmakers
19df25be11 Avoid crashing clients when fishing loot is empty, Fixes #4235 (#4681) 2020-10-28 21:39:02 +01:00
Yive
ad16dcceca Fix armor stands still doing entity collision 2020-10-25 11:06:01 -07:00
Mariell
81113bd07b Make fireworks call PlayerLaunchProjectileEvent (#4698) 2020-10-27 23:01:32 +01:00
Andrew Steinborn
51ed2d9d21 [1.16] Improve performance of matching ingredients for shapeless recipes (#4694) 2020-10-27 15:04:32 +00:00
Mariell
7811aecad6 Updated Upstream (Bukkit/CraftBukkit) (#4688)
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:
4abf9e96 #557: Add TNTPrimed#setSource method

CraftBukkit Changes:
dea41389 Remove outdated build delay.
9da3b5bf #762: Add TNTPrimed#setSource method
2020-10-26 16:02:55 +01:00
Shane Freeder
4d21a2e77a Add support for RanagedEntity API for newer mobs (Fixes #4678) 2020-10-22 13:01:44 +01:00
stonar96
970735ca15 Fix slime block in Anti-Xray 2020-10-17 04:19:09 +02:00
giacomo
a8b92f3d9d Fixed TileEntityBell memory leak 2020-10-10 12:23:52 +02:00
Trigary
7995c5cfeb Add player elytra boost API 2020-04-14 12:11:25 +02:00
William Blake Galbreath
18f927e706 Fix item locations dropped from campfires 2020-10-03 20:32:52 -05:00
Mariell
03ce97a3cc BukkitValues was renamed ChunkBukkitValues (#4664)
I blame cat!
2020-10-17 22:53:51 +02:00
Mariell
2d4ed8726c Updated Upstream (CraftBukkit) (#4663) 2020-10-17 22:42:18 +02:00
Shane Freeder
f2a3a8db27 Fix SafeNBTCopy#hasKey semantics
Fixes hasKey to check that a key actually exists, while retaining the
option to scream at keys which are requested which haven't been marked as
needing to be copied
2020-10-17 12:46:35 +01:00
Shane Freeder
2942a2d247 Don't assume that entries exist for SafeNBTCopy 2020-10-17 12:20:44 +01:00
Mariell
db28a6b208 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#4659)
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:
01e22e09 Misc maven build updates
746f5324 #556: Allow sending messages from specific UUIDs
92b99cde #501: Add PersistentDataHolder to Chunk

CraftBukkit Changes:
4ef13f94 Misc maven build updates
04639f5a #759: Allow sending messages from specific UUIDs
77c894a2 #672: Add PersistentDataHolder to Chunk

Spigot Changes:
57bbdd8e Rebuild patches

Co-authored-by: Shane Freeder <theboyetronic@gmail.com>
2020-10-17 12:39:45 +02:00
Shane Freeder
7391a61447 Revert "Updated Upstream (Bukkit/CraftBukkit/Spigot)"
This reverts commit d833a4aeef.
2020-10-17 10:48:00 +01:00
Shane Freeder
d833a4aeef Updated Upstream (Bukkit/CraftBukkit/Spigot)
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:
01e22e09 Misc maven build updates
746f5324 #556: Allow sending messages from specific UUIDs
92b99cde #501: Add PersistentDataHolder to Chunk

CraftBukkit Changes:
4ef13f94 Misc maven build updates
04639f5a #759: Allow sending messages from specific UUIDs
77c894a2 #672: Add PersistentDataHolder to Chunk

Spigot Changes:
57bbdd8e Rebuild patches
2020-10-17 09:18:39 +01:00
stonar96
16d779960b Anti Xray: Obfuscate blocks touching lava feature (#3311) 2020-10-16 23:08:33 +02:00
Mariell Hoversholm
478597ea05 Updated Upstream (Bukkit/CraftBukkit)
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:
e461dcfe #555: Item - add getters/setters for owner/thrower

CraftBukkit Changes:
055870c4 #758: Item - add getters/setters for owner/thrower
2020-10-14 16:00:43 +02:00
Aurora
b14059a5a1 Update discord link in the paper.yml (#4646) 2020-10-14 03:37:34 +02:00
Spottedleaf
cccb35da1a Reduce blockpos allocation from pathfinding 2020-10-11 19:51:10 -04:00
Spottedleaf
ae00aa1ee4 Retain block place order when capturing blockstates
Fixes twisted vines not connecting properly when grown via
bonemeal by a player.

In general, look at making this logic more robust (i.e properly handling
cases where a captured entry is overriden) - but for now this will do.
2020-10-11 19:32:08 -04:00
Spottedleaf
016ecf57ac Improve inlinig for some hot IBlockData methods 2020-10-11 19:18:27 -04:00
Spottedleaf
cb129f90fa Optimise getType calls
Remove the map lookup for converting from Block->Bukkit Material
2020-10-11 18:52:57 -04:00
Spottedleaf
32aa63f5ed Fix for large move vectors crashing server
Check movement distance also based on current position.
2020-10-11 18:48:05 -04:00
ForceUpdate1
bffa3708e8 Fix distance in checkHighPriorityChunks (Fixes #4582) (#4605) 2020-10-12 00:24:06 +02:00
Aikar
6932cf79b5 Reset Ender Crystals on Dragon Spawn - Fixes #3522
Crystals can end up in a bad state in certain conditions which causes
an exception on the expected number of crystals going negative.

This ensures the crystals/pillars are in expected state when the dragon spawns.
2020-10-11 16:11:57 -04:00
chickeneer
024f4f2fce MC-147729: Drop items that are extra from a crafting recipe 2020-10-11 13:47:45 -04:00
Aikar
976c295514 Improve Priority handling of neighbor chunks
Restores vanilla like behavior where neighbor chunks have less priority than the source chunk.

This resolves the issue where teleporting sometimes has the chunk your arriving in slow to send.

Also improves light tasks to always process tasks when tasks from the current priority level are collected
instead of bundling them.
2020-10-08 01:07:10 -04:00
Jason Penilla
79106fd44b Fix CME when adding a passenger during Spawn events (#4616) 2020-10-04 20:46:18 -07:00
Aikar
6444280b12 Fix "Not a string" Map Conversion spam - Fixes #3901
The maps did convert successfully, but had noisy logs due to Spigot
implementing this logic incorrectly.

This stops the spam by converting the old format to new before
requesting the world.
2020-10-08 00:02:03 -04:00
William Blake Galbreath
2defac165a Fix deop kicking non-whitelisted player when white list is not enabled 2020-10-03 22:04:14 -05:00
Mariell
5bdf0f1b1a Updated Upstream (CraftBukkit) (#4622)
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:
1f4693a8 SPIGOT-6168: Fix error with Player.getBedSpawnLocation when world is unloaded while server running
2020-10-06 15:59:35 +02:00
Mariell
eb2557d9ac Add a missing return in Eigencraft redstone (#4621) 2020-10-05 18:03:41 +02:00
BillyGalbreath
331d1ed71c Entity#isTicking (#4612) 2020-10-03 22:05:33 -05:00
Andrew Steinborn
ac051139a8 Lazily track plugin scoreboards by default
On servers with plugins that constantly churn through scoreboards, there is a risk of degraded GC performance due to the number of scoreboards held on by weak references. Most plugins don't even need the (vanilla) functionality that requires all plugin scoreboards to be tracked by the server. Instead, only track scoreboards when an objective is added with a non-dummy criteria.

This is a breaking change, however the change is a much more sensible default. In case this breaks your workflow you can always force all scoreboards to be tracked with settings.track-plugin-scoreboards in paper.yml.
2020-10-03 04:47:01 -04:00
Mariell Hoversholm
ae82e7eb1c Updated Upstream (CraftBukkit)
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:
5c77bd28 SPIGOT-6147: InventoryCloseEvent does not fire after closing player inventory
2020-10-01 15:16:32 +02:00
Mariell Hoversholm
e3bbc0d3ec Updated Upstream (CraftBukkit)
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:
5da21f87 SPIGOT-6152: End exit gates in custom ends do not send back to overworld
1ee373fe SPIGOT-6157: Crash when PortalCreateEvent cancelled
2020-09-30 21:12:34 +02:00
MeFisto94
28be3aae37 Expose the Entity Counter to allow plugins to use valid and non-conflicting Entity Ids 2020-08-28 01:44:21 +02:00
Mariell Hoversholm
6fea984629 Updated Upstream (CraftBukkit)
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:
a339310c #755: Fix NPE when calling getInventory() for virtual EnderChests
2577f9bf Increase outdated build delay
1dabfdc8 #754: Fix pre-1.16 serialized SkullMeta being broken on 1.16+, losing textures
2020-09-27 16:52:40 +02:00
Mariell Hoversholm
f26dc668ae Patch SPIGOT-6086 for all invalid locations
md_5's patch for SPIGOT-6086 only applies to locations over the world,
not those under or outside it.
2020-09-27 16:32:04 +02:00
Aikar
22d50756e9 Revert "Only consider chunks Loaded if at BORDER status"
This reverts commit 7968c4f5c9.

Issues have been found post merge that sadly no one discovered during test builds.
Reverting for now until we can identify the issue and do another test round.
2020-09-21 22:12:28 -04:00
Mariell Hoversholm
fc0dafdc58 Prevent fire from spreading to invalid locations 2020-09-21 20:40:48 +02:00
Aikar
9f27271254 Light improvements
Trying to solve random hangs we've seen, ensuring that this part of code isnt the culprit

also fixing a vanilla bug reportedby PhiPro where tickets are released too early
hoping this reduces amount of incorrect light issues.
2020-09-19 14:04:25 -04:00
Aikar
97b9071852 Preserve initial velocity of spawned entities - Fixes #4292 2020-09-19 13:19:34 -04:00
Aikar
0aa0eba111 Optimize some methods for inlining
Adds final to some methods to improve inlining ability
2020-09-19 11:51:01 -04:00
Aikar
7968c4f5c9 Only consider chunks Loaded if at BORDER status
This greatly improves performance as it drastically reduces the amount
of Entities and Tile Entities that are "registered" into the world, as
purely "cached" chunks will no longer have their entities hanging out in the world.

Additionally this fixes our Entity Add To World and Entity Remove From World events

Those events have not been firing correctly since MC changed how chunks work here.

Now the server will only consider a chunk "loaded" if it's got a ticket putting
it at level 33 or lower, which matches the public Bukkit API.
2020-09-12 22:24:48 -04:00
Shane Freeder
9c1e6eab19 Updated Upstream (Bukkit/CraftBukkit/Spigot)
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:
ccb9614e #548: LivingEntity - add methods for getting/setting invisibility

CraftBukkit Changes:
f8d4da08 #743: LivingEntity - add methods for getting/setting invisibility

Spigot Changes:
17d78dbd Rebuild patches
2020-09-19 12:29:53 +01:00
Shane Freeder
9cf1088154 Extend block drop capture to capture all items added to the world (Fixes #4307)
Closes #4316
2020-09-17 00:40:00 +01:00
Automated
dca2ee55df [Auto] Updated Upstream (Bukkit/CraftBukkit)
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:
d75d8a38 #549: Add Fluid types / tags

CraftBukkit Changes:
890130b46 #746: Add Fluid types / tags
2020-09-14 05:57:06 -04:00
Aikar
99dd3ad303 Cache DataFixerUpper Rewrite Rules on demand
Mojang precaches every single potential rewrite rule that could ever
exist on server startup. This includes rules from all the way back to versions from 6+ years ago.

This is the source of why the server hogs every CPU core at 100% every start.

For anyone who hard resets for updates or has force upgraded their entire world, this
results in completely wasted cpu cycles.

This massive CPU usage also delays server startup time.

We improve this by making "min version to precache" that defaults to a future version
so that no rewrite rules are precached.

someone who expects to be converting a lot chunks could theoretically set
-DPaper.minPrecachedDatafixVersion=<dataVersionConvertingFrom> as a startup
parameter and only build from that point on.

However this will likely never be needed as the server will still run
the same cache logic on demand when it's actually needed. The only
cost would be some delay on the FIRST chunk conversion, but paper already
runs chunk conversions on another thread so this will likely never be
a concern for TPS.

This patch will significantly reduce CPU use on startup, reduce memory usage,
and improve server startup time.
2020-09-12 17:56:00 -04:00
Mariell
0a05b29148 Updated Upstream (CraftBukkit/Spigot) (#4318)
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:
d5a72960 SPIGOT-6063: ConsoleSender sending extra lines in Java 13+

Spigot Changes:
2740d5ae Rebuild patches
2020-09-12 21:57:21 +02:00
Aikar
06e816fd71 Restore thread pool names for Bootstrap vs main
1.16.2 introduced 2 thread pools for Bootstrap vs main we didn't account for.

This also sets Bootstrap priority to be 1 less thread priority too so MC Main threads will always have
more priority specially on servers running multiple instances, since bootstrap tends to use up all CPU.
2020-09-12 11:23:34 -04:00
Automated
ff60225e01 [Auto] Updated Upstream (Bukkit/CraftBukkit)
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
2020-09-11 18:42:19 -04:00
Aikar
465e97513b (1.16.3) Missed some fixes to include in commit 2020-09-10 19:56:58 -04:00
Aikar
9f446a771f (FIRST 1.16.3): Update Paper to 1.16.3
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.
2020-09-10 19:47:58 -04:00
Aikar
2b164910c8 (FINAL 1.16.2) Improve Entity Activation Range passenger behavior
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.
2020-09-10 18:09:10 -04:00
Aikar
09d97cf54e (FINAL 1.16.2) Improve Timings support for Active vs Inactive vs Passengers
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.
2020-09-10 18:02:39 -04:00
Josh Roy
e7375f54fe Add additional open container api to HumanEntity 2020-08-26 02:30:08 -04:00
Shane Freeder
d45b5f3499 Fix block data exception when cancelling PortalCreateEvent (#4199) 2020-09-10 09:02:22 +01:00
Daniel Ennis
6f266255ec Fix Entity Teleportation and cancel velocity if teleported (#4210) 2020-09-03 21:48:44 -04:00
Automated
55c99a8953 [Auto] Updated Upstream (CraftBukkit)
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"
2020-09-03 16:52:21 -04:00
MiniDigger | Martin
e113a7a6a0 Use wrapped StructureManager to prevent worldgen deadlock 2020-09-02 13:57:35 +02:00
Joshua Dean Küpper
976ac75539 Fix Zombie ShouldBurnInDay API (#4268) 2020-09-01 22:25:06 +02:00
miclebrick
593cdd29be Cache block data strings 2018-12-06 19:53:27 -05:00
Shane Freeder
e233d9a058 install remapped server jar to paper package space
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.
2020-09-01 23:20:58 +01:00
Aikar
e6f2cd150f Updated Upstream (Bukkit/CraftBukkit)
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
2020-08-31 08:30:51 -04:00
chickeneer
f92df32870 Properly pass the close reason for new inventory opens (#2658) (#4247) 2020-08-31 06:12:14 -05:00
ysl3000
8684dcd76e Create HoverEvent from ItemStack Entity
add myself to MIT list

Co-authored-by: Mariell <proximyst@proximyst.com>
Co-authored-by: MiniDigger | Martin <admin@minidigger.dev>
2020-07-06 22:19:08 +02:00
MeFisto94
21b927ed55 Add a way to get translation keys for blocks, entities and materials 2020-08-11 21:20:44 +02:00
BillyGalbreath
030eda8908 Add more Evoker API 2020-08-23 15:29:02 +02:00
Aikar
d417f6d48b Fix build conflicts 2020-08-30 14:38:49 -04:00
Mariell
a67734d483 Add zombie targets turtle egg config (#4181)
Co-authored-by: BillyGalbreath <Blake.Galbreath@GMail.com>
2020-08-30 20:27:50 +02:00
Eearslya Sleiarion
7324cdbd10 Add BellRingEvent for village bells (#2230) 2020-08-30 11:26:15 -07:00
Daniel Ennis
cfe899e104 Fix PersistentDataContainer contract violation (_->!null returns null) (#3990) 2020-08-30 14:02:34 -04:00
Josh Roy
a9c8e493d3 Fix NPE in getBedSpawnLocation (#4238) 2020-08-30 13:59:14 -04:00
foss-mc
975f6ce331 Fix CraftTeam null check (#4249) 2020-08-30 23:33:25 +08:00
Mariell Hoversholm
422914ef9d Increase visibility of a few methods
Fixes PaperMC/Paper#4094.
2020-08-28 21:40:31 +02:00
Automated
a22f15dcc9 [Auto] Updated Upstream (CraftBukkit)
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
2020-08-29 00:17:19 -04:00
Mariell Hoversholm
4ffde966fe PortalCreateEvent needs to know its entity
Fixes PaperMC/Paper#4076.
2020-08-21 20:58:20 +02:00
Mariell Hoversholm
e7ec1f421f Port Eigencraft to 1.16 2020-08-04 12:23:54 +02:00
stonar96
c348e498ba Make engine-mode 2 truly random
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.
2020-08-07 04:26:01 +02:00
Shane Freeder
8dad068601 Updated Upstream (CraftBukkit)
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
2020-08-28 12:06:39 +01:00
Professor Bloodstone
a16b50072f Fix TNT not pushing creative players 2020-08-25 20:46:04 +02:00
Josh Roy
b1e247dea7 Fix hex colors not working in some kick messages 2020-08-27 16:58:27 -04:00
Shane Freeder
c02f7541d2 Fix reading the brand message from clients
Also try to catch the exception caused by clients/plugins seemingly
mangling this information
2020-08-27 17:11:13 +01:00
Shane Freeder
5591eeb4c2 Updated Upstream (Bukkit/CraftBukkit)
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
2020-08-27 14:37:37 +01:00
William Blake Galbreath
240e86489b Add playPickupItemAnimation to LivingEntity 2020-08-23 19:41:34 +02:00
Aikar
1622581fc9 Fix some modded clients getting kicked for invalid payload - Fixes #4201 2020-08-25 20:03:24 -04:00
Aikar
9a12d91631 Fix enderdragon tracking range to honor vanilla 2020-08-25 19:38:19 -04:00
Shane Freeder
d6f3b5e44f Remove debug
Today is going to be a long day
2020-08-25 13:30:52 +01:00
Shane Freeder
77c45fe41a fix config option in last commit 2020-08-25 13:23:58 +01:00
Shane Freeder
448d693a4b Buffer joins to world
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
2020-08-25 12:30:57 +01:00
Daniel Ennis
69ee95fa42 1.16.2 Release (#4123)
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 Penilla <11360596+jpenilla@users.noreply.github.com>
Co-authored-by: Riley Park <rileysebastianpark@gmail.com>
Co-authored-by: Aurora <21148213+aurorasmiles@users.noreply.github.com>
Co-authored-by: Nassim Jahnke <nassim@njahnke.dev>
Co-authored-by: commandblockguy <commandblockguy1@gmail.com>
Co-authored-by: DigitalRegent <misterwener@gmail.com>
Co-authored-by: ishland <ishlandmc@yeah.net>
2020-08-24 22:22:08 -04:00
DigitalRegent
773a850390 Brand support 2020-08-23 05:09:19 -07:00
Zach Brown
4a319fd99e Do not let the server load chunks from newer versions (1.16.2+)
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.
2020-08-21 19:27:25 -04:00
Matt Baxter
aa4b4d37dc Fix regex mistake in CB NBT int deserialization (#4146)
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.
2020-08-17 13:13:15 -04:00
MrIvanPlays
6eda368428 Restore incremental player saving
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
2020-08-09 09:04:18 +03:00
Mariell Hoversholm
4a213fd1ef Restore Pathfinder Optimizations from 1.15.2
We dropped the patch in 1.16.1 update due to it being a major conflict.
This restores it.

Co-Authored-By: Aikar <aikar@aikar.co>
2020-08-06 22:51:29 -04:00
Aikar
ac72244dc1 Drop syncPosition on teleportation patch
I'm not sure it was really helping, and now suspecting it might be causing issues
Movement sucks
2020-08-06 22:49:50 -04:00
Aikar
25f900bcc4 Fix Light Thread causing world memory leak - Fixes #4045 2020-08-06 20:02:20 -04:00
Aikar
1885d74eff Improve EntityTargetLivingEntityEvent for 1.16 mobs
CraftBukkit has a bug in their implementation and is incorrectly handling forget
Also adds more target reasons for why it forgot target.

Fixes #4042
2020-08-06 19:38:49 -04:00
Aikar
305390ec83 Clean up a lot of obfuscation helpers and impls
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
2020-08-02 01:39:36 -04:00
William Blake Galbreath
e5c86b8f4f Fix scoreboard vanilla colors not working in chat 2020-07-31 16:20:29 +01:00
Aikar
c6fe95327f Improve Light Optimizations more
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
2020-07-30 22:01:32 -04:00
Mariell Hoversholm
9b4ddafa60 Updated Upstream (Bukkit/CraftBukkit)
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
2020-07-29 21:50:16 +02:00
Aikar
8392fa12ec Further improve Chunk Light Prioritization
This is as fast as its going to get outside of making the light engine calculations it self faster.

Fixes #4022
2020-07-29 01:51:57 -04:00
Aikar
0f0a2ef492 Fix deadlock issue with watchdog stopping
Fixes #4008
2020-07-28 22:19:01 -04:00
Aikar
9478c1859c Updated Upstream (CraftBukkit)
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
2020-07-28 19:59:44 -04:00
Mariell Hoversholm
4d79d13b66 Fix PersistentDataContainer contract violation (_->!null returns null) 2020-07-24 01:09:57 +02:00
Spottedleaf
46fb6bf239 Fix off by one error for scheduling block ticks (#4014)
Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>

Fixes #4015
2020-07-27 22:19:11 -07:00
Spottedleaf
b6aced22de Tighten logic for handling target tick times in tick scheduler (#4010)
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>
2020-07-27 20:05:27 -07:00
Aikar
529c4f9f90 Remove ability to disable async chunks unless single core cpu
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.
2020-07-27 23:01:56 -04:00
Aikar
dda6cbb298 Fix Light Prioritization Issues
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 #3986
Fixes #4002
Fixes #3951
2020-07-27 22:46:19 -04:00
Shane Freeder
502d7b2d1c Add missing strikeLighting call to World#spigot()#strikeLightningEffect 2020-07-26 12:12:19 +01:00
Spottedleaf
1b248d842f [1.16] Do not sync load POI data (#3996)
Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>
2020-07-24 20:28:57 -07:00
Shane Freeder
14fa92720f Don't make per-player scale mob counts with the spawn range
https://github.com/PaperMC/Paper/pull/3971#issuecomment-663316000
2020-07-24 21:34:41 +01:00
Spottedleaf
254605cdae Improve per player mob spawning (#3971)
Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>
2020-07-23 11:10:46 -07:00
Prof-Bloodstone
7673fda496 Updated Upstream (Bukkit/CraftBukkit) (#3980)
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
2020-07-23 01:35:44 +02:00
tofipix
5021388bcf Fix IDE Debug JVM Flag for 1.16 (#3983) 2020-07-23 01:18:36 +02:00
Nassim Jahnke
7db19cb346 Use title packet for actionbar methods (#3959) 2020-07-22 10:01:35 +02:00
Aikar
80153a0772 Amend last commit to fix decompile error forgot to commit 2020-07-22 02:15:51 -04:00
Spottedleaf
9813f8a38f Fix AdvancementDataPlayer leak due from quitting early in login
Move the criterion storage to the AdvancementDataPlayer object
itself, so the criterion object stores no references - and thus
needs no cleanup.

Fixes #3050
2020-07-22 02:10:13 -04:00
William Blake Galbreath
99625f0fa9 Fix SPIGOT-5885 Unable to disable advancements 2020-07-10 13:24:43 -05:00
William Blake Galbreath
511e97b881 Fix SPIGOT-5824 Bukkit world-container is not used 2020-07-10 13:22:47 -05:00
Aikar
c146123919 Load config files early on
also fixes the ide commodore rewrite patch version

Prep for other PR's to be updated to use these as some options need to use some values earlier
2020-07-22 00:50:40 -04:00
Mariell
0df99cedeb Only get spawn block if it's relevant, fixes #3934 (#3942) 2020-07-19 14:58:29 +02:00
Automated
2cba62f17a [Auto] Updated Upstream (CraftBukkit/Spigot)
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
2020-07-18 03:57:21 -04:00
Mariell
827e6cec16 Fix zero reputation deleting villagers (#3857) 2020-07-17 19:47:04 +02:00
Aikar
518ae65609 Use consistent priorities for light tasks
Should fix high priority chunk loads prioritizing over urgent sync loads

Also fixes build Kenny broke! Bad Kenny.
2020-07-17 13:24:12 -04:00
Josh Roy
c7f57cff99 Fix SPIGOT-5989 (#3920) 2020-07-17 12:49:50 -04:00
Nassim Jahnke
ec909b2144 Fix moveToWorld worldserver reference (#3929) 2020-07-17 18:44:39 +02:00
Automated
837cf98b9e [Auto] Updated Upstream (CraftBukkit)
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
2020-07-16 19:07:15 -04:00
Spottedleaf
0580766485 Move range check for block placing up (#3917)
Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>
2020-07-15 19:38:53 -07:00
Spottedleaf
c9d30bb9c0 Fix erroneuous entity count reporting in timings 2020-07-14 11:58:55 +01:00
Aikar
3b63ba9db1 Thread Safe Vanilla Command permission checking
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
2020-07-11 03:55:59 -04:00
BillyGalbreath
5f0de8fc57 Fix MC-125757 (#3859) 2020-07-09 19:40:37 -05:00
Aikar
3ccbdd3c85 Only convert lore lines that actually look legacy
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
2020-07-09 20:31:04 -04:00
Aikar
8b5bb0dbe0 Misc Improvements to Async Teleporting and Light patch
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
2020-07-09 19:24:10 -04:00
Automated
7c7443c1bd [Auto] Updated Upstream (CraftBukkit)
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
2020-07-08 19:17:08 -04:00
Mariell
4455020aa4 Fix Villagers WeightedList issue (#3860)
dont clone the list for villagers as the list is accessed post sort and needs to have sorted data.
2020-07-08 21:57:24 +02:00
Aikar
aa9c5663ec Fix bug on y bitset extraction from 1.16 update
accidently copied z's to y.

seems to impact light only, but is not the source of the light bug we've been trying to fix
2020-07-07 01:41:02 -04:00
Wyatt Childers
81f9964fcb Optimize the advancement data player iteration to be O(N) rather than O(N^2) 2020-07-04 23:08:23 -04:00
Automated
386cb1c1c9 [Auto] Updated Upstream (CraftBukkit/Spigot)
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:
2f1810812 Improve physics code

Spigot Changes:
c3a49df2 Rebuild patches
2020-07-06 19:47:11 -04:00
Aikar
bf940a42e0 Fix Concurrency issue in WeightedList
if multiple threads from worldgen sort at same time, it will crash.
So make a copy of the list for sorting purposes.

Fixes #3732
Fixes #3824
2020-07-06 18:38:10 -04:00
Andrew Steinborn
7a714e6e13 [1.16] Optimize NetworkManager exception handling (#3819) 2020-07-06 00:27:37 -04:00
Aikar
7f78e35522 Fire inventory listeners if PrepareResult changes item
Fixes #3810
2020-07-05 15:33:23 -04:00
Aikar
130bffdf85 Don't check chunk for portal on world gen entity add - Fixes #3780 2020-07-05 15:00:07 -04:00
BillyGalbreath
3aa6d3b3c0 Implements #3761 - Add entity liquid API (#3762) 2020-07-05 02:00:09 -05:00
Aikar
174560824a Fix anvils bug - Fixes #3802 2020-07-05 02:25:29 -04:00
Aikar
1e75e54195 Move bedrock config under unsupported, add comments to these configs
Hopefully help 'technical minecrafters' find and understand these configs
by adding notes to them, and fixing the incorrect config placement on the
bedrock config.
2020-07-05 02:12:14 -04:00
MiniDigger | Martin
149172d006 Allow delegation to vanilla chunk gen 2020-04-29 02:12:51 +02:00
MiniDigger | Martin
4cb36133b6 Allow delegation to vanilla chunk gen 2020-04-29 02:12:51 +02:00
BillyGalbreath
b7c653f532 Add PrepareResultEvent (#3776)
Adds a new event for all crafting stations that generate a result slot item

Anvil and Grindstone now extend this event
2020-07-04 22:36:46 -05:00
BillyGalbreath
3de79cd7c3 Report proxy onlinde mode to bstats as online (#3093) 2020-07-04 21:59:25 -05:00
William Blake Galbreath
2ce563b6d0 Fix #3701 - Loottables erasing on viewing 2020-07-02 15:34:26 -05:00
Jake Potrebic
5064606627 Incorrect spawn reason for monsters from spawner - Fixes #3708 (#3764) 2020-07-04 19:54:39 -06:00
Josh Roy
0ad44580b3 Remove streams from classes related to villager gossip (#3748) 2020-07-04 21:31:58 -04:00
Jake Potrebic
bbf35c13bb add EntityTargetLivingEntityEvent for new 1.16 mobs (#3782) 2020-07-04 19:30:13 -06:00
BillyGalbreath
7de9b9d112 Update itemstack legacy name and lore (#3741) 2020-07-04 19:47:24 -05:00
Automated
27e5ecf06c [Auto] Updated Upstream (CraftBukkit)
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:
833047174 Increase outdated build delay to 7 days
5209a4f73 SPIGOT-5940: EntityChangeBlockEvent is not called for villager emptying composter
2020-07-04 19:02:13 -04:00
Wyatt Childers
9fd4674a11 Spawn player in correct world on login 2020-07-03 14:57:28 -04:00
Aikar
d1261a7551 Support String UUID's in old player skulls
Should fix remaining skull issues for people with unconverted old skulls.

Fixes #3734
2020-07-03 02:16:51 -04:00
Aikar
d6e23b14a7 Updated Upstream (Bukkit/CraftBukkit/Spigot)
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:
0ca45a21 #503: Add PlayerHarvestBlockEvent
dfa80a52 SPIGOT-5930: Add PlayerRespawnEvent#isAnchorSpawn

CraftBukkit Changes:
145921e2 #676: Add PlayerHarvestBlockEvent
47abffa2 SPIGOT-5929: Angered zombified piglins do not inherit killed_by_player status
7f6b4f58 SPIGOT-5930: Add PlayerRespawnEvent#isAnchorSpawn
94eff632 SPIGOT-5867, MC-193339: NPE during shutdown when rcon enabled with no password
068618eb SPIGOT-5927: Some items NBT data disappears

Spigot Changes:
beb7d47c Rebuild patches

Fixes #3738
2020-07-03 02:08:00 -04:00
Jake Potrebic
0740b03bab Bandaid italic legacy serialization #3757 (#3760) 2020-07-02 15:42:23 -06:00
MiniDigger | Martin
cbc2d143d7 Support components in ItemMeta (#3513) 2020-07-02 17:53:21 +02:00
Callum
c09194971e Fix MOTD new line support (#3756) 2020-07-02 13:58:39 +01:00
Callum
85408c2f74 Fix hex colours not being allowed in MOTD (#3755) 2020-07-02 08:19:43 +01:00
Automated
0f6675fffa [Auto] Updated Upstream (CraftBukkit)
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:
d9bd43b06 Change outdated build delay to 3 days
2020-07-01 19:17:11 -04:00
Josh Roy
a03c4deb10 [1.16] Remove some streams from structures (#3704)
This showed up a lot in the spark profiler, should have a low-medium performance improvement.
2020-07-01 09:53:16 -04:00
Shane Freeder
3bc3b61ce3 Fix shutdown on eula not being agreed (Fixes #4647) 2020-07-01 12:21:57 +01:00
Aikar
e32b8cfddb Improve old UUID support, clean up old legacy keys.
If we set a UUID to new format, need to make sure old format doesn't
exist anymore. Additionally, ensure if new format exists, we prefer it over old.
2020-07-01 05:42:51 -04:00
Aikar
62802db4ac Allow teleporting through end gateways as a passenger/vehicle
Vanilla allows this now for same world teleports

Fixes #3735
2020-07-01 05:42:22 -04:00
Aikar
be5f765e93 Convert legacy attributes in Item Meta
Fixes #3705
2020-07-01 04:28:56 -04:00
Aikar
7b5d35ff25 Fix server not stopping when eula not agreed yet 2020-07-01 03:32:26 -04:00
Aikar
438da20dd5 Clean up duplicated GameProfile Properties
We had a bug where we accidently cloned properties resulting in skulls
growing to large sizes and preventing login.

This now automatically cleans up the extra properties.

Fixes #3719
Fixes #3667
2020-07-01 03:15:52 -04:00
Aikar
d9bdfa4aa2 Fix supporting more places of the old UUID format
Fixes #3734
2020-07-01 03:13:57 -04:00
Aikar
174c81a963 Updated Upstream (Bukkit/CraftBukkit/Spigot)
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:
6ff65c82 SPIGOT-5908: CompassMeta for new lodestone compass data

CraftBukkit Changes:
3b9cf0f8 Improve code formatting
008f039f SPIGOT-5913: MOTD no longer supports new line character
b8b65eb7 SPIGOT-5908: CompassMeta for new lodestone compass data

Spigot Changes:
4d9262cf Rebuild patches
d27f7952 SPIGOT-5912: Outdated client message shows outdated server message
2020-07-01 02:11:46 -04:00
Aikar
860f4c4b58 Updated Upstream (Bukkit/CraftBukkit/Spigot)
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:
42d5a714 SPIGOT-5899: Hoglins API similar to Piglins
2c1ee10e SPIGOT-5887: ClickType doesn't include off hand swaps
5ff7c7ce SPIGOT-5886: Missing BlockData

CraftBukkit Changes:
7560f5f5 SPIGOT-5905: Fix hex colours not being allowed in MOTD
d47c47ee SPIGOT-5889: Villager using composter should call EntityChangeBlockEvent
2fe6b4a3 SPIGOT-5899: Hoglins API similar to Piglins
e09dbeca SPIGOT-5887: ClickType doesn't include off hand swaps
23aac2a5 SPIGOT-5903: EntityDismountEvent cannot be triggered asynchronously
92cbf656 SPIGOT-5884: Tab completions lost on reloadData / minecraft:reload
fb4e54ad SPIGOT-5902: PlayerRespawnEvent places player at spawn before event is called
aa8f3d5a SPIGOT-5901: Structures are generated in all worlds based on the setting for the main world
a0c35937 SPIGOT-5895: PlayerChangedWorldEvent#getFrom is incorrect
89c0a5c3 SPIGOT-5886: Missing BlockData

Spigot Changes:
0287a20d SPIGOT-5903: EntityDismountEvent cannot be triggered asynchronously
2020-06-30 01:20:29 -04:00
Shane Freeder
d2d7dfbef2 Fix compile 2020-06-29 15:03:41 +01:00
Shane Freeder
d84b4a3b26 fix EntityDismountEvent being fired on gen threads 2020-06-29 14:48:24 +01:00
Aikar
849ede2317 Don't fire unleash/dismount events from worldgen threads
Mojang can trigger this during worldgen and tries to fire bukkit events.
2020-06-29 04:04:18 -04:00
Aikar
b94e847258 Support old UUID format for NBT
We have stored UUID in plenty of places that did not get DFU'd

So just look for old format and load it if it exists.
2020-06-29 03:28:10 -04:00
Aikar
c4520e6199 Improve Legacy Component serialization size
Don't constantly send format: false for all formatting options when parent already
has it false

Fixes #3680
2020-06-28 21:27:16 -04:00
Aikar
8e46a01608 Fix case where some skulls still have string UUID's
These heads are technically outdated, but this patch shouldn't care about
what format the original value was in, so keep it the same.
2020-06-28 20:33:14 -04:00
Aikar
52496b075b Fix Reloadable save players error on stop
Not sure what plugins or panels are doing to have triggered this.
Reloading resource packs appear to have been happening during shutdown

So this will abort the end of the reload process if we are not on the
correct thread and stop saving players as part of this task too.
2020-06-28 20:06:26 -04:00
Aikar
b15e37b0e9 revert chat changes for now until can get it properly working 2020-06-28 20:03:31 -04:00
Aikar
bc0095b99a Add /paper dumpitem command
Allows inspecting an items NBT at ease of the item in the players hand.
2020-06-28 19:38:30 -04:00
Aikar
73fe12740d Fix texture profile properties getting duplicated - Fixes #3667 2020-06-28 19:37:53 -04:00