Commit graph

1991 commits

Author SHA1 Message Date
Nassim Jahnke
3e7890be06 Hotfix double entity removal making entity scheduler retire call
The assumption that the setRemoved method will never be called more than once is flawed, considering even vanilla code seems to indicate it might happen. Especially with plugins, throwing an exception is not something reasonably maintainable across all the places it *could* happen.
If it is called a second time after already having been removed due to changing dimensions, that's definitely bad, so no extra check for that
Fixes #9420
2023-06-29 17:41:32 +02:00
Jake Potrebic
6671a56ff8 Improve command function perm level checks (#9411) 2023-06-28 23:18:28 -07:00
Jake Potrebic
c163c4b6a9 Fix replenishable container entities save/load existing contents (#9417) 2023-06-28 11:06:47 -07:00
Jake Potrebic
ab8df6ba8a Fix entity selectors while spectating (#9402) 2023-06-27 14:46:27 -07:00
Jake Potrebic
4f0fa96a00 Deprecate duplicate chat completion methods (#9401) 2023-06-27 01:18:59 -07:00
Lulu13022002
94fbc95d13 Avoid duplicate death event call for armorstands (#9223)
* Avoid duplicate death event call for armorstands

* restore vanilla behavior (emit the game event etc...)
2023-06-27 06:22:49 +02:00
Redned
609047b836 Only tick item frames if players can see it (#9377)
In the event that an item frame cannot be seen by any players, ticking the item frame every tick is unnecessary. This can be a very hot section of the entity tracker when lots of item frames are present on a server, so this reduces the logic which speeds it up.
2023-06-26 18:26:29 -05:00
Bit
18fa5eef34 Add event for player editing sign (#9300)
Addresses https://github.com/PaperMC/Paper/issues/9293
2023-06-26 18:35:32 -04:00
Nassim Jahnke
279c17fcdf Iterate over entity array copy for entity scheduler 2023-06-26 18:41:08 +02:00
powercas_gamer
9696b46122 Fix ugly java logger format for paper plugin dependency loader (#9395) 2023-06-25 09:57:45 +02:00
Owen1212055
ec0be3fbf2 Fix cycle on paper plugin toString (#9392) 2023-06-24 17:37:38 -04:00
Owen1212055
08197c3a58 Fix interact event call override (#9387) 2023-06-23 12:03:43 -04:00
Molean
1ef0244836 Fix incorrect phantom spawning entity (#9385) 2023-06-23 18:50:29 +08:00
Samir
97487ac8bb ratelimited packet is logged to console on kick (#9292) 2023-06-21 09:36:14 -04:00
Redned
03bf77cebd Fix incorrect crafting result amount for fireworks (#9322)
Although vanilla does not specifically call this method anywhere, this fixes a bug where the result using the Bukkit API returns the wrong amount.
2023-06-21 08:11:50 -05:00
Owen1212055
6a733d70c1 Properly Cancel Usable Items (#9225)
This fixes the bug causing canceling PlayerInteractEvent to cause items to continue to be used despite being canceled on the server.

For example, items being consumed but never finishing, shields being put up, etc.
The underlying issue of this is that the client modifies their synced data values, and so we have to (forcibly) resend
them in order for the client to reset their using item state.
2023-06-18 18:33:15 -04:00
Nassim Jahnke
135469a842 Pull Folia API take two 2023-06-18 22:46:52 +02:00
Nassim Jahnke
8686a939f1 Revert "Move some Folia API to Paper for easy compat (#9360)"
This reverts commit e256eec4ef.
2023-06-18 21:47:17 +02:00
Nassim Jahnke
e256eec4ef Move some Folia API to Paper for easy compat (#9360) 2023-06-18 20:02:59 +02:00
Shane Freeder
7727050285 Temp: Pre-init PlayerChunkLoaderData in order to prepopulate the BFS lookup cache because potatos (Closes #9338) 2023-06-18 13:49:22 +01:00
Nassim Jahnke
fb00916689 Updated Upstream (Bukkit/CraftBukkit)
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

Bukkit Changes:
0c5d8709 SPIGOT-7400: Downgrade maven-resolver due to issues resolving certain depends
255c4fdb SPIGOT-7380: Add PlayerInteractEvent#getClickedPosition and ChiseledBookshelf#getSlot

CraftBukkit Changes:
b6b514b7e SPIGOT-7400: Downgrade maven-resolver due to issues resolving certain depends
fcff84de9 SPIGOT-7399: Revert null check in CraftMetaItem#safelyAdd
44a4b5649 SPIGOT-7380: Add PlayerInteractEvent#getClickedPosition and ChiseledBookshelf#getSlot
676969d01 SPIGOT-7389: Handle setting null items in ChiseledBookshelf Inventory
2023-06-18 13:03:18 +02:00
Jake Potrebic
fb0fd871fe Add method to remove all active potion effects (#9361)
* Add method to remove all active potion effects

* use clear instead of removeAll
2023-06-17 21:10:13 -07:00
Riley Park
efe626d498 Disable BukkitMirrorTest 2023-06-17 14:20:46 -07:00
Jake Potrebic
c975c477f7 Add trail ruins structure set seed in spigot config (#9327)
Also adds a server test to ensure the defaults match and that a seed
exists for each structure set
2023-06-17 12:12:23 -07:00
Jake Potrebic
aa6d576fe0 Add method to get ungenerated chunk from long key (#9254)
Also added a missing deprecation for a location block key method
2023-06-17 11:43:08 -07:00
Jake Potrebic
d555760ff6 Remove more outdated config settings (#9358) 2023-06-17 11:25:22 -07:00
Jake Potrebic
06ee6ab5d4 Remove stacktrace on exception from reading server.properties (#9296) 2023-06-16 19:27:45 -07:00
Spottedleaf
c0d376e242 Copy itemstack when sanitizing for datawatcher items
Since the packet is broadcasted for players, it means that
the packet will be sent to multiple players. In this case,
modifying the data results in a possible race condition
where a CME may occur as the packet will be serialized on
many different netty IO threads.
2023-06-16 10:27:59 -07:00
Spottedleaf
cffc14631b Make sure to post process chunks before they are sent to players
Some TEs need to be post processed after generation to be sent
properly (chests)
2023-06-16 10:24:51 -07:00
Spottedleaf
3cfd74da9e Fix IntegerUtil#getDivisorNumbers
Use unsigned mod operation for initialization of anc

Also includes
- 5a0cefb45e
- acc8ed9634
2023-06-16 09:05:36 -07:00
powercas_gamer
2d788fba60 chore(api): add missing javadoc urls (#9355) 2023-06-16 17:34:49 +02:00
Ollie
f352774eef Update the server logo (#9264)
Co-authored-by: Bjarne Koll <git@lynxplay.dev>
2023-06-16 16:20:31 +01:00
Lulu13022002
0f4cd873af Fix sniffer removeExploredLocation and javadoc (#9311) 2023-06-16 15:33:25 +02:00
Nassim Jahnke
f0e193c3d1 Updated Upstream (Bukkit/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

Bukkit Changes:
be1f3344 SPIGOT-7326: Add ClickType#isMouseClick()

CraftBukkit Changes:
3b557627c Fix Player#setScoreboard() checking incorrect state
9a21b0b89 SPIGOT-7393: Fix new tile entities not loading Bukkit's PersistentDataContainer

Spigot Changes:
c62f4bd9 Rebuild patches
2023-06-16 13:32:29 +02:00
Phillipp Glanz
4de304b9eb Don't enforce icanhasbukkit default if alias block exists (#9334) 2023-06-16 13:02:43 +02:00
Jake Potrebic
26d93fcec4 Fix incorrect annotation on BrushableBlock#getItem (#9345) 2023-06-16 03:58:09 -07:00
Jake Potrebic
557ea82bf6 Updated Upstream (Bukkit/CraftBukkit) (#9342)
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

Bukkit Changes:
fdff0cd4 PR-869: Add Enderman#teleport and Enderman#teleportTowards
dfd86ee7 Improve sendSignChange and related documentation
beced2b2 PR-867: Add Player#sendBlockUpdate to send tile entity updates

CraftBukkit Changes:
ad6d0cffb SPIGOT-7394: Fix another issue with sendSignChange
66c5ce4c7 SPIGOT-7391: Preserve vanilla sign json where not modified by event
ae3824f94 PR-1204: Add Enderman#teleport and Enderman#teleportTowards
5863a2eae Fix sendSignChange not working
4a7eadc97 PR-1201: Add Player#sendBlockUpdate to send tile entity updates
789324e30 Work around issue placing decorated pots
2023-06-16 03:28:31 -07:00
Jason Penilla
3477dbf4aa Use ANSI serializer for console completion descriptions (#9351) 2023-06-15 10:11:09 -07:00
Jake Potrebic
8d5fa4f1ee Bump kyori's ansi to fix color bleed (#9346) 2023-06-15 09:24:01 -07:00
Jake Potrebic
56e39bc072 Re-add dropped patch during 1.20 update (#9344) 2023-06-14 17:52:28 -07:00
Bjarne Koll
529fb86efd Call BlockEntity#load in new child types (#9340)
BlockEntity#load is responsible for loading the pdc data for block
entities. Some of the new block entities added by mojang do not call
their super method, preventing paper from loading the PDC, which
leads to a loss of data.

This commit adds the super calls to prevent this.
2023-06-14 13:06:50 +02:00
powercas_gamer
01297f5079 [ci skip] mention adventure in chatcolor deprecation message (#9336)
* mention adventure in chatcolor deprecation message

* expand text

* americans
2023-06-14 05:48:41 +02:00
Jason Penilla
b40a6bb08b 1.20.1 (#9333) 2023-06-13 00:10:07 -07:00
Jake Potrebic
aa5e9d1d49 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#9301) 2023-06-12 16:51:45 -07:00
Jason Penilla
b835c02322 Fix dev bundle generation 2023-06-12 16:44:07 -07:00
Emilia Kond
6925d11945 Use net.kyori.ansi for console logging (#9313)
Uses the new ANSIComponentSerializer introduced in Adventure 4.14.0 to
serialize components when logging them via the ComponentLogger, or when
sending messages to the console.

This replaces the old solution which uses legacy jank and custom color
conversions, with a new library that handles the conversion and config
2023-06-13 01:00:12 +03:00
Bjarne Koll
bc6e534738 Implement BossBarViewer on Player (#9332)
* Implement BossBarViewer on Player

Author: Riley Park <rileysebastianpark@gmail.com>

* Implement BossBar#viewers
2023-06-12 23:43:39 +02:00
Jake Potrebic
8df3a11758 fix incorrectly updated move vector checking patch (#9328) 2023-06-12 11:26:43 -07:00
Jake Potrebic
a7397ad665 Fix SmithingInventory helper slot methods for 1.20 (#9325) 2023-06-12 10:04:53 -07:00
Lulu13022002
04928c58a4 Fix EntityDeathEvent cancellation (#9323) 2023-06-12 19:03:51 +02:00
Bjarne Koll
1fcfe34f7f Fix sendSignChange0's usage of SignText (#9310) 2023-06-11 22:53:28 +02:00
Jake Potrebic
4e7f46f6c3 correctly hide players from entity argument suggestions (#9245) 2023-06-10 18:15:43 -07:00
Lulu13022002
8ee3c344d4 Add back the source uuid on exp orb for animals breeding (#9289) 2023-06-11 03:01:10 +02:00
Spottedleaf
f85410d12b Fix incorrect collision shape for hopper item suck
It shouldn't cost too much more to check the correct shape,
provided that it is cached and we use the overall AABB
to collect possible entities to check against.

The issues with the old check code is that it will use two
getEntitiesOfClass calls plus the addition of streams
_and_ the toAabbs() logic on VoxelShape. The new code
caches toAabbs, uses one getEntitiesOfClass call, and
does not use streams. Then compared to 1.12, we are
only performing two additional AABB checks per item.
2023-06-10 13:42:03 -07:00
Spottedleaf
3fe23c1679 Allow double removal from player chunk loader
Unlike Folia, players may be incorrectly be double-removed

Fixes https://github.com/PaperMC/Paper/issues/9299
2023-06-10 08:27:23 -07:00
Owen1212055
eb317edc8a Don't use event to get block position (#9295) 2023-06-10 02:13:42 -04:00
Jake Potrebic
120345dea6 Properly remove the experimental smithing inventory type (#9290) 2023-06-09 11:50:00 -07:00
Jake Potrebic
fd6fd80508 Add API for waxed signs (#9291) 2023-06-09 11:32:20 -07:00
Lulu13022002
8405a53d88 Add pitcher plant api (#9286) 2023-06-09 14:23:38 +02:00
Bjarne Koll
3553730d51 Minimise EntityFertilizeEggEvent and add sniffer (#9280) 2023-06-09 09:01:08 +02:00
Jake Potrebic
0bd83b4c4d fix missing trigger entity for xp orb from breeding 2023-06-08 23:52:18 -07:00
Jake Potrebic
6dfe9ac1d8 add side to PlayerSignCommandPreprocessEvent 2023-06-08 22:57:24 -07:00
Jake Potrebic
e450f54015 fix some more 1.20 tracking issues 2023-06-08 22:45:45 -07:00
Jake Potrebic
6cc19431ea Fix setListenerRange for calibrated sculk sensors 2023-06-08 22:35:52 -07:00
Jason Penilla
e6be773522 Prevent the rcon thread from attempting connections after shutdown 2023-06-08 22:25:23 -07:00
Jake Potrebic
b3a92319b9 Ignore inline definitions of trim material & pattern 2023-06-08 21:53:37 -07:00
Jake Potrebic
6161cbb44c Add back Anti-Xray patch (#9283) 2023-06-08 21:29:58 -07:00
Owen1212055
d943e42150 Fix javadoc 2023-06-08 22:53:42 -04:00
Owen1212055
77e3d3e158 Finish tests & bad calls 2023-06-08 22:51:31 -04:00
Jake Potrebic
350be363a0 fix not editable sign after openSign 2023-06-08 19:45:48 -07:00
Owen1212055
fed16ccbff Move block farther away for Player#setRotation (#8514) 2023-06-08 22:37:59 -04:00
Lulu13022002
c67f26d42a Fix collision between AABB and a dot (#8733) 2023-06-09 04:17:32 +02:00
Lulu13022002
ae7ed5a3b3 Avoid duplicate poi entries from the first section (#9235) 2023-06-09 04:14:30 +02:00
Spottedleaf
65db359354 Fix crash relating to "Already sent chunk"
Forgot to update the distandce field in the single user area map
on update, and additionally used the wrong radius (introduced
last commit) for the broadcast map
2023-06-08 18:00:46 -07:00
Spottedleaf
8c4fdb4e79 Fix inconsistent chunk sending with vanilla
Vanilla now loads the proper number of chunks for sending
to players. So, we can finally match their behavior after
all these years.
2023-06-08 17:43:05 -07:00
Jake Potrebic
913720b65c add missing call to EntityInsideBlockEvent 2023-06-08 17:34:35 -07:00
Jake Potrebic
a4e62bcb6e fix some failing tests 2023-06-08 17:25:21 -07:00
Owen1212055
6ee3455f40 Fix breaking pots throwing exception 2023-06-08 20:24:02 -04:00
Jason Penilla
3913e1d74b Update adventure 2023-06-08 17:22:51 -07:00
Jake Potrebic
6038cfb862 add missing block entity type to CraftBlockStates 2023-06-08 17:04:46 -07:00
Jake Potrebic
2a0a2d181f fix sculk npe 2023-06-08 16:56:02 -07:00
Spottedleaf
20f6705a20 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:
fd92f1e65 SPIGOT-7378: Add BlockDropItemEvent for Suspicious Sand & Gravel drops
cb1b69d13 SPIGOT-7377: Server sends player list twice

Spigot Changes:
16cfc987 Rebuild patches
2023-06-08 16:47:58 -07:00
Spottedleaf
5c8d49542f Fix boot errors
Thanks kennytv
2023-06-08 16:44:17 -07:00
Spottedleaf
c7006765bd Fix final compilation issues 2023-06-08 16:35:02 -07:00
Spottedleaf
494b03ea47 Apply last patch 2023-06-08 16:21:20 -07:00
Spottedleaf
cadfd892c9 Add in some patches 2023-06-08 16:12:34 -07:00
Spottedleaf
e031042af5 Finish updating chunk system patch
Add in locking changes from folia, plus fix some diffs.
I'm sure it'll be error-free.
2023-06-08 16:04:53 -07:00
Jake Potrebic
dc11e08746 more compile fixes 2023-06-08 14:13:43 -07:00
Jake Potrebic
957d248aff more compile fixes 2023-06-08 13:56:13 -07:00
Jake Potrebic
180fe2a014 fix some more compile issues 2023-06-08 12:35:20 -07:00
Jake Potrebic
b7b98b0bd8 fix FullChunkAccess enum move (#9281) 2023-06-08 12:22:12 -07:00
Jake Potrebic
ebe89a7928 fix more compile errors 2023-06-08 12:00:58 -07:00
Owen1212055
5c83f1aca3 cleanup some descriptions + optimize hoppers patch 2023-06-08 14:10:23 -04:00
Jake Potrebic
27c0ed55ea add some more patches back 2023-06-08 10:48:28 -07:00
Jake Potrebic
f3124c37c5 add 1 more networking patch and add comments to dropped patches 2023-06-08 10:25:32 -07:00
Jake Potrebic
e516ecfd45 apply a couple network patches 2023-06-08 09:09:43 -07:00
Jake Potrebic
8ca7fa95c0 fix defaulting join-classpath to true for plugin deps 2023-06-08 06:50:41 -07:00
Nassim Jahnke
00b28e1c3b Fix bad fixup 2023-06-08 15:27:41 +02:00
Nassim Jahnke
aa7c3b02e8 Updated Upstream (Bukkit/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

Bukkit Changes:
2d009e64 Update SnakeYAML javadoc link
b4fd213c Switch Player#updateInventory deprecation for internal API annotation

CraftBukkit Changes:
f3b2b2210 SPIGOT-7376: Exception with getBlockData when hasBlockData is false
725545630 SPIGOT-7375: Fix crash breeding certain entities
b9873b0d4 Update Brigadier version with fix
68b320562 SPIGOT-7266: Found typo in CraftBukkit package
98b4d2ff8 SPIGOT-7372, SPIGOT-7373: Signs can't be edited, issues with SignChangeEvent
5f7bd4d78 SPIGOT-7371: Sign does not open edit text on placement
b4cf99d24 SPIGOT-7371: Fix editing signs with API
a2b6c2744 PR-1200: Implement open sign by side
a345bb940 SPIGOT-7368: Downgrade SpecialSource version

Spigot Changes:
723951c3 Rebuild patches
b655c57d Drop old collision API deprecated since 1.9.4
55b0fed4 Rebuild patches
2023-06-08 15:25:35 +02:00
Noah van der Aa
251cb43854 1.20: Remove Experimental API status where upstream forgot (#9271) 2023-06-08 15:04:43 +02:00