Commit graph

3083 commits

Author SHA1 Message Date
Jake Potrebic
bbe01377d5 Improve default item attributes API (#10765) 2024-05-23 11:44:07 -07:00
Jason Penilla
cb60dbc9e3 Print CommandRegisteredEvent deprecation warnings again (#10756) 2024-05-23 10:44:45 -07:00
Jake Potrebic
d637706bbd Fix equipment slot and group API (#10767) 2024-05-23 10:39:44 -07:00
Jake Potrebic
98853ee548 [ci skip] Move logic in our patches to ItemType/BlockType (#10772) 2024-05-23 10:32:02 -07:00
Jake Potrebic
c7e42591dd Always show command exception stack traces in logs (#10766) 2024-05-22 10:24:09 -07:00
Jake Potrebic
0c9dd451de fix default item attributes 2024-05-22 07:16:50 -07:00
Spottedleaf
dd88498616 Fix compile 2024-05-21 08:41:36 -07:00
Spottedleaf
e29a098cbe Remove ThreadedWorldUpgrader patch
The patch does not implement Vanilla forceUpgrade behavior.
Specifically, poi/entity conversion and regionfile recreation.

The Vanilla force upgrader is also no longer broken by CB, so the
bug fixes from this patch are not relevant anymore.
2024-05-21 08:21:28 -07:00
Jason Penilla
e71c77f5e9 Add a better warning message than "Server performance will be affected" for CommandRegisteredEvent use (#10754) 2024-05-20 11:15:21 -07:00
Jake Potrebic
93cb23c488 Add an 'empty' RecipeChoice for certain ingredient slots (#10710) 2024-05-20 07:20:47 -07:00
Jake Potrebic
763f42fc65 Check for more correct profile validation (#10730) 2024-05-19 17:45:43 -07:00
Jake Potrebic
3fb22e8951 fix CompassMeta not being correct (#10737) 2024-05-19 17:15:44 -07:00
Shane Freeder
c889d48f8c Make PaperSimplePluginClassLoader show class which is not found 2024-05-18 21:17:54 +01:00
Jake Potrebic
f14fe2e4f4 Fixes issues in the suppress dismount cancellation patch (#10735) 2024-05-17 14:37:16 -07:00
Jake Potrebic
5bd61ce801 Fix NPE sending resource pack without prompt
Fixes KyoriPowered/adventure#1075
2024-05-17 14:22:45 -07:00
Riley Park
1570ecc56c Expose server build information (#10729)
* Expose server build information

* squash patches

* final tweaks

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
Co-authored-by: masmc05 <masmc05@gmail.com>
2024-05-15 17:06:59 -07:00
Jason Penilla
b7e944756d Show stacktrace when modifyItemStack fails 2024-05-13 22:58:50 -07:00
Jason Penilla
9e0c66cd6c Correctly copy alias requirements in command upgrader
Fixes NPE when converting namespaced commands.

Since the brigadier command api, more aliased commands
(namespaced variants) are registered in the vanilla dispatcher,
which made this issue more apparent.
2024-05-13 15:55:15 -07:00
Spottedleaf
e5d36081c0 Make exception during command conversion non-fatal
Instead of allowing chunks to fail to convert completely,
simply log the exception and the offending command. Command
conversion failure should never result in chunk data deletion,
as commands are not critical chunk data.
2024-05-13 14:40:02 -07:00
Jake Potrebic
036a488ef5 fix creating complex recipes that have air results
Fixes #10715
2024-05-13 06:16:45 -07:00
Jake Potrebic
0c984809fd Better way to keep paper datapack enabled 2024-05-12 21:48:07 -07:00
Jake Potrebic
eba7123352 Improve Recipe validation (#10707) 2024-05-12 13:46:46 -07:00
Bjarne Koll
def79f079d Prevent infinite recursion on cyclic brig redirect (#10705)
Prevent infinite recursion when declaring a cyclic relation between
command nodes via child nodes redirecting to an nth parent by marking a
command node as unwrapped before unwrapping its children.
2024-05-12 17:41:21 +02:00
Owen1212055
cde6cb4f28 Properly pass requirement on namespaced redirects (#10701) 2024-05-12 02:46:42 -04:00
Jason Penilla
f9008ceb01 Fix signed book page serialization (#10696) 2024-05-11 15:13:18 -07:00
Jake Potrebic
702864d8f8 Updated Upstream (Bukkit/CraftBukkit) (#10691)
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:
fa99e752 PR-1007: Add ItemMeta#getAsComponentString()
94a91782 Fix copy-pasted BlockType.Typed documentation
9b34ac8c Largely restore deprecated PotionData API
51a6449b PR-1008: Deprecate ITEMS_TOOLS, removed in 1.20.5
702d15fe Fix Javadoc reference
42f6cdf4 PR-919: Add internal ItemType and BlockType, delegate Material methods to them
237bb37b SPIGOT-1166, SPIGOT-7647: Expose Damager BlockState in EntityDamageByBlockEvent
035ea146 SPIGOT-6993: Allow #setVelocity to change the speed of a fireball and add a note to #setDirection about it
8c7880fb PR-1004: Improve field rename handling and centralize conversion between bukkit and string more
87c90e93 SPIGOT-7650: Add DamageSource for EntityDeathEvent and PlayerDeathEvent

CraftBukkit Changes:
4af0f22e8 SPIGOT-7664: Item meta should prevail over block states
c2ccc46ec SPIGOT-7666: Fix access to llama and horse special slot
124ac66d7 SPIGOT-7665: Fix ThrownPotion#getEffects() implementation only bringing custom effects
66f1f439a Restore null page behaviour of signed books even though not strictly allowed by API
6118e5398 Fix regression listening to minecraft:brand custom payloads
c1a26b366 Fix unnecessary and potential not thread-safe chat visibility check
12360a7ec Remove unused imports
147b098b4 PR-1397: Add ItemMeta#getAsComponentString()
428aefe0e Largely restore deprecated PotionData API
afe5b5ee9 PR-1275: Add internal ItemType and BlockType, delegate Material methods to them
8afeafa7d SPIGOT-1166, SPIGOT-7647: Expose Damager BlockState in EntityDamageByBlockEvent
4e7d749d4 SPIGOT-6993: Allow #setVelocity to change the speed of a fireball and add a note to #setDirection about it
441880757 Support both entity_data and bucket_entity_data on axolotl/fish buckets
0e22fdd1e Fix custom direct BlockState being not correctly set in DamageSource
f2182ed47 SPIGOT-7659: TropicalFishBucketMeta should use BUCKET_ENTITY_DATA
2a6207fe1 PR-1393: Improve field rename handling and centralize conversion between bukkit and string more
c024a5039 SPIGOT-7650: Add DamageSource for EntityDeathEvent and PlayerDeathEvent
741b84480 PR-1390: Improve internal handling of damage sources
0364df4e1 SPIGOT-7657: Error when loading angry entities
2024-05-11 14:48:37 -07:00
Owen1212055
567cc3f4b3 Brigadier Command Support (#8235)
Adds the ability for plugins to register their own brigadier commands 

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
Co-authored-by: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
Co-authored-by: Bjarne Koll <git@lynxplay.dev>
2024-05-11 16:30:30 -04:00
Jake Potrebic
b71a9db7ad handle recent ItemMeta changes in serialization logic 2024-05-11 09:14:16 -07:00
Jake Potrebic
c5fb79b218 adjust ItemMeta to distinguish null and empty modifiers
Fixes #10686 (again)
2024-05-11 07:16:21 -07:00
Jake Potrebic
df292ced7a Fix keepalive time interval (#10690) 2024-05-10 17:23:58 -07:00
Jake Potrebic
8a5f5f023a Fix stacks losing empty attr modifiers
Fixes #10686
2024-05-10 12:05:06 -07:00
Jason Penilla
71de67180a Add conversion for summon command 2024-05-10 12:57:07 +02:00
Nassim Jahnke
fb102cafd1 Add validation to player profile and properties (#10680) 2024-05-10 12:52:03 +02:00
Spottedleaf
af67859c56 Use MCDataConverter instead of raw convert call for cmd converter
MCDataConverter uses the breakpoint system, which for future
updates may be neccesary (probably not).

Also, add the 1.20.6 version field.
2024-05-10 00:34:37 -07:00
Joseph Burton
67b30c5ed5 Fix DataConverter ConverterParticleToNBT.parseProperties
- The old code was using `StringReader.peek()` in a place where it meant to be `StringReader.skip()`.
- The vanilla code allows a trailing comma, but only if there is no whitespace between it and the closing bracket, which is a bit weird. I think that's a bug and it shouldn't allow trailing commas, but if you disagree then only the first issue needs to be fixed.
2024-05-10 00:31:58 -07:00
Spottedleaf
79fcb6baf4 Fix chunk data version check not running in chunk system
The old read() method should just redirect to the new
chunk system method, however due to an error in moving
the chunk system patch around the data version check was
left in the old (UNUSED) read() method.
2024-05-09 23:47:13 -07:00
Spottedleaf
b407e24c84 Invalidate PathTypeCache when pathfinding updates are disabled
The configuration should not allow the cache to break. Additionally,
invalidating the cache is cheap and as such there is no gain to avoid
invalidating it.
2024-05-09 23:07:32 -07:00
Spottedleaf
df07e2152f Fix entity tracker desync when new players are added to the tracker
The delta position packet instructs the client to update
the entity position by a position difference. However, this position
difference is relative to the last position in the entity tracker
state, not the last position which has been sent to the player. As
a result, if the last position the player has recorded is different
than the one stored in the entity tracker (which occurs when a new
player is added to an existing entity tracker state) then the sent
position difference will cause a position desync for the client.

We can resolve this problem by either tracking the last position
sent per-player, or by simply resetting the last sent position
in the entity tracker state every time a new player is added.
Resetting the last sent position every time a new player is
added to the tracker is just easier to do, so that is what
this patch does.
2024-05-09 17:08:59 -07:00
Nassim Jahnke
1ebe089f8d Print data component type on encoding error 2024-05-09 15:12:12 +02:00
Shane Freeder
2d2eafa713 Update Adventure to 4.17.0 Release 2024-05-08 15:48:45 +01:00
Bjarne Koll
93f003b64f Correctly compare holders in BeaconMenu (#10673) 2024-05-08 03:18:57 +02:00
Lulu13022002
624d28817c Fix hopper pull event being skipped after the first call (#10667) 2024-05-07 14:28:45 +02:00
Jason Penilla
c0abf0cfc9 Fix ping event always receiving protocol version 0 (#10671) 2024-05-07 05:24:45 -07:00
Jake Potrebic
dfd0478a87 Fix BlockStateMeta (#10647)
* Fixes CraftMetaBlockState block entity data components

* rebase and merge into general item meta fix

* Add javadoc notice

* Update message

---------

Co-authored-by: Bjarne Koll <git@lynxplay.dev>
2024-05-05 12:56:46 -07:00
SoSeDiK
b00b419da9 Add a way to check whether the chest is blocked (#10635)
* More Chest Block API

* rebased and slight logic fixes
2024-05-05 20:57:28 +03:00
Bridge
254ed14dc9 Prevent profile lookups when unnecessary (#10651) 2024-05-05 19:07:30 +02:00
Tamion
548fa24c1e Fix EntityLoadCrossbowEvent (#10645)
* fix

* hehe
2024-05-05 18:54:04 +02:00
Lulu13022002
1465288208 [ci skip] Update old particle reference in javadoc (#10652) 2024-05-05 18:44:06 +02:00
NonSwag
b5d6fdee48 Add missing SpigotConfig logCommands check (#10659) 2024-05-05 18:41:02 +02:00
Nostal Yuu
de6967e549 Added API to get player's proxy address (#10400) 2024-05-06 00:39:32 +08:00
Jake Potrebic
838bab409e Updated Upstream (CraftBukkit) (#10646)
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:
66fd94322 SPIGOT-7652: Remove remap for SPELL_MOB_AMBIENT which no longer exists
ecfa4f973 SPIGOT-7654: ItemStack#isSimilar does not work with empty BlockStateMeta
4460ecc49 SPIGOT-7655: ItemMeta#addItemFlags(ItemFlag.HIDE_ATTRIBUTES) not working when no attribute modifiers set
5d84f48a4 SPIGOT-7653: Update ApiVersion.CURRENT with latest version and include tests
2024-05-05 09:08:55 -07:00
Lulu13022002
b94c74495e Add missing experimental field and annotations (#10653) 2024-05-05 18:00:54 +02:00
Bjarne Koll
252c489f15 Keep components using single items in creative (#10664)
The craftbukkit implementation stores the old and new data patch of an
item during ItemStack#useOn(UseOnContext) to properly cancel events via
comparison and change detection of the component patch.

However, it uses #getComponentsPatch to fetch the new stack component
patch, which always yields an empty patch set if an itemstack is
considered empty by the game.
As the restoration of an itemstack's count to its previous state is
handled after the entire ItemStack#useOn method, items used in creative
mode temporarily have a count of zero, which causes craftbukkit to
consider their new component patch as EMPTY even tho said item may have
data.
The new patch is applied and, after useOn completes, the count is reset
if the player is in creative mode, leading to lost data.

This commit fixes said inconsistency by directly accessing the
components of the item via components#asPatch, storing the proper
component patch even for an item that temporarily has a count of zero.
2024-05-05 11:40:36 +02:00
Jake Potrebic
f51bdcf978 fix shear drops for wolf and bogged
Fixes #10661
2024-05-04 22:48:06 -07:00
Nassim Jahnke
7b2ce17e23 Add missing step in V3818 2024-05-04 22:49:48 +02:00
Jake Potrebic
4473bf06e0 add RegistryAccess for managing registries (#10154)
* add RegistryAccess for managing registries

* add missing types to key data generator

* fix some stuff

* Add RegistryKeys for all other non-server-backed registries

* fix tests

* remove Experimental annotations
2024-05-04 11:22:35 -07:00
Joseph Burton
128ea2f10b Fix lodestone compass target conversion 2024-05-04 12:58:06 +02:00
Joseph Burton
4a8b9a03eb Fix can_place_on conversion and size check for item containers 2024-05-02 20:23:15 +02:00
Shane Freeder
a8e49a12d3 default save-empty-scoreboard-teams to vanilla
The primary environmental factor which caused this feature to be implemented
is no longer much of a factor within the community
2024-05-02 09:53:43 +01:00
SoSeDiK
a56d850e4b Expose #hasColor to leather armor (#10638) 2024-05-01 20:14:42 +03:00
SoSeDiK
71c03637bf Add EquipmentSlot#getOppositeHand (#10632) 2024-05-01 20:14:27 +03:00
SoSeDiK
6ad89448b8 Add GameMode#isInvulnerable (#10633) 2024-05-01 20:14:17 +03:00
Nassim Jahnke
9432b19638 Update Java version references, add note on var usages 2024-05-01 18:44:17 +02:00
Andrew Teeter
f1693652c8 Add damage check for mending (#10631) 2024-05-01 06:01:48 -04:00
SoSeDiK
58e7ac939f Expose canReach to mob pathfinding API (#10636) 2024-05-01 13:00:11 +03:00
Jake Potrebic
61a36373c0 Fixes beds not exploding in the nether
Also correctly marks the captured BlockState as "unplaced"
Fixes #10629
2024-04-30 16:42:43 -07:00
Nassim Jahnke
f97bdb1894 Add initial size cap to component map 2024-04-30 11:14:20 +02:00
Jason Penilla
ec006b59bb Fix sealed package check in BytecodeModifyingURLClassLoader (#10627) 2024-04-30 01:21:16 -07:00
Jake Potrebic
ff22570edc fix dumpitem command nbt format
use the snbt visitor instead of plain string
2024-04-29 18:49:19 -07:00
Jake Potrebic
9db4ebd3f1 fix spawnChunkRadius gamerule resetting
Fixes #10622
2024-04-29 15:22:29 -07:00
Noah van der Aa
723528c18b 1.20.6 (#10623) 2024-04-30 00:16:07 +02:00
Bjarne Koll
e136fada5d Validate manifest provided mapping namespace (#10612)
With plugins adopting paperweights mapping namespaces in their manifest
file in and after paper 1.20.5, incorrectly spelled namespaces
previously were simply implied as the spigot namespace.

This commit properly ensures plugin authors are using a known mapping
namespace in their manifest, avoiding down the line confusion on
incorrect remapping behaviour.

The commit also fixes two incorrect log parameters.
2024-04-29 05:43:50 +02:00
Jake Potrebic
74b2f39f80 Fix incorrect Commodore mapping of sweeping enchant 2024-04-28 17:25:21 -07:00
Jake Potrebic
9987c3cb96 Reset component prototype on itemtype change 2024-04-28 17:13:30 -07:00
Jason Penilla
c82479dc52 Remap plugin libraries with namespace set to spigot (#10610)
* Remap plugin libraries with namespace set to spigot

* Remap plugin libraries with namespace set to spigot
2024-04-28 14:55:10 -07:00
Jason Penilla
32ad479664 Rewrite reflection in library loader jars (#10608)
* Rewrite reflection in library loader jars

* Address todos
2024-04-28 13:14:10 -07:00
Jake Potrebic
b10448ebda Fix CraftMetaBlockState adding extra tags 2024-04-28 12:34:11 -07:00
Shane Freeder
f4303373e1 Add itemName components (Resolves #10467) (#10471)
* Add itemName components (Resolves ##10467)

* improve javadocs and formatting

* rebased

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2024-04-28 18:08:59 +01:00
Jake Potrebic
819639770e final missing validation for data components 2024-04-28 09:46:30 -07:00
Nassim Jahnke
cbb35324c1 Fix overly strong name validation in player heads
Closes #10477
2024-04-28 18:25:20 +02:00
Jake Potrebic
c45369311e respect hard list size limits in ItemMeta 2024-04-28 09:06:14 -07:00
Nassim Jahnke
2355f31613 Don't hard fail on plugin remap error
Closes #10474
2024-04-28 17:25:31 +02:00
Jake Potrebic
da3ca7a40d Fix issue with empty lists in adventure predicates
Fixes #10473
2024-04-28 08:22:16 -07:00
Shane Freeder
36fa573f48 Fix another missing book meta tag 2024-04-28 13:48:20 +01:00
Shane Freeder
4aab51d78a Fix book meta lacking resolved tag from older versions (Fixes #10470) 2024-04-28 13:15:03 +01:00
Nassim Jahnke
7ffc581d32 Fix test compilation 2024-04-28 14:20:52 +02:00
Jake Potrebic
c6bdd67d28 more fixes for ItemMeta relating to components 2024-04-27 22:27:51 -07:00
Jake Potrebic
c534b3e0ea Fix firework meta NPE
Fixes #10466
2024-04-27 20:57:42 -07:00
caramel
d1a11cca31 Fix the incorrect codec usage in the Style convert (#10465) 2024-04-28 12:32:11 +09:00
Jason Penilla
0b9087f4b8 Only scan org.bukkit.craftbukkit.inventory in MetaHandledTagsTest
fixes tests OOMing
2024-04-27 18:25:15 -07:00
Jake Potrebic
57a40dbdd3 remove calls to DoNotUse methods 2024-04-27 18:18:20 -07:00
Jake Potrebic
dcbe8f75f2 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:
304e83eb PR-1002: Improve documentation and implementation of getMaxStackSize
e8215ea2 SPIGOT-7638: Library loader does not seem to resolve every dependency
79c595c0 SPIGOT-7637: Bad logic in checking nullability of AttributeModifier slots

CraftBukkit Changes:
91b1fc3f1 SPIGOT-7644: Fix ItemMeta#getAsString
4e77a81e1 SPIGOT-7615: PlayerLeashEntityEvent cancelled eats lead
996f660f3 Do not remove leash knot if leasing to an existing leash knot gets cancelled
f70367d42 SPIGOT-7643: Fix inverted leash event cancelled usage and remove leash knot if no entity gets leashed
7ddb48294 SPIGOT-7640: Abnormal jumping height of wind charge
080c8711e SPIGOT-7639: Incoming plugin channels not working
ad549847e Open a direct connection instead of pinging mojang server to check if it is reachable
38e2926c5 SPIGOT-7365: DamageCause blocked by shield should trigger invulnerableTime
2024-04-27 18:00:01 -07:00
Jake Potrebic
25e7f94c2a fix last test issue 2024-04-27 17:45:30 -07:00
Jake Potrebic
663c8a772f Fix issue with hopppers
Fixes #10464
2024-04-27 17:31:32 -07:00
Jake Potrebic
9230c67a88 improve checking handled tags in itemmeta (#9470) 2024-04-27 17:33:17 -07:00
Jason Penilla
a7e0798f78 Use JetBrains runtime for run tasks
allows for better runtime class redefinition

closes #10459
2024-04-27 17:27:32 -07:00
Nassim Jahnke
c4adb2b7c7 Temporarily comment out adventure jd links 2024-04-28 02:05:52 +02:00
Jake Potrebic
c0b22957f5 proper migration to gamerules for keep spawn loaded distance 2024-04-27 15:50:33 -07:00
Nassim Jahnke
942ac65c39 Fix bad diff in build gradle file 2024-04-28 00:43:17 +02:00
Jake Potrebic
31eecaee4a Revert to vanilla handling of LivingEntity#actuallyHurt (#10463) 2024-04-27 14:35:53 -07:00
Jake Potrebic
4b762a6259 more ItemFlag fixes 2024-04-27 14:32:14 -07:00
Jason Penilla
ed3f76d3a5 remove funny diff 2024-04-27 14:11:35 -07:00
Jason Penilla
bf6862b141 Move cb version definition to gradle patch 2024-04-27 14:02:33 -07:00
Jason Penilla
e20beef9c7 Move obfhelper/stack deobf diff into original patch 2024-04-27 13:53:56 -07:00
Lulu13022002
e0adb01ddc update generator 2024-04-27 22:30:15 +02:00
Jason Penilla
9f60650248 Bump adventure ansi serializer 2024-04-27 13:31:37 -07:00
Jason Penilla
a97258b9ee Start cleaning up plugin remapping patches 2024-04-27 13:27:01 -07:00
Lulu13022002
ba5fe77f0f fix helmet damage reduction inconsistencies
See: https://github.com/PaperMC/Paper/issues/9555#issuecomment-1681120506
2024-04-27 21:56:29 +02:00
Lulu13022002
9c0da4515d fix PotionEffectType#getEffectAttributes 2024-04-27 21:48:14 +02:00
Spottedleaf
a0c2ebbdd4 Update DataConverter to 1.20.6-rc1
Fixes trader llama inventory incorrectly converting
2024-04-27 12:39:35 -07:00
Jake Potrebic
cdeb62baac fix item flags 2024-04-27 12:17:58 -07:00
Jason Penilla
43b52c8d61 Unify plugin remapping debug flags 2024-04-27 11:41:56 -07:00
Shane Freeder
4f09300744 Restore Handle Large Packets Disconnecting Client Patch 2024-04-27 15:06:52 +01:00
Jake Potrebic
e600a4de22 improve dumpitem and pgive commands 2024-04-26 23:57:49 -07:00
Jake Potrebic
cafa0f3267 bunch of fixes and improvements 2024-04-26 23:17:58 -07:00
Jake Potrebic
77e87218b9 add back hunk to async SavedData IO 2024-04-26 19:33:30 -07:00
Jake Potrebic
1bcdad0118 more fixes 2024-04-26 19:09:42 -07:00
Jake Potrebic
36445ba659 add back missing call to profile fill events 2024-04-26 18:41:54 -07:00
Jake Potrebic
d575d43c03 fix adventure converters not using RegistryOps 2024-04-26 18:16:31 -07:00
Jake Potrebic
b1f19f295c fix enchantment order issue 2024-04-26 18:06:35 -07:00
Jake Potrebic
f0911d4f2d readd old UUID format patch 2024-04-26 17:41:36 -07:00
Jake Potrebic
a9b6792b11 fix javadocs for SpawnerEntry$Equipment API 2024-04-26 17:00:26 -07:00
Jake Potrebic
5a55c71491 deprecate our ItemRarity API 2024-04-26 16:43:59 -07:00
Jake Potrebic
d0db132328 fix custom potion mixes 2024-04-26 16:17:13 -07:00
Jake Potrebic
f673d54842 fix exact choice recipes 2024-04-26 15:25:20 -07:00
Jake Potrebic
6ba0e1048f fix adventure translations 2024-04-26 15:08:35 -07:00
Jason Penilla
8cb49c8d67 Update paper plugin check in PluginRemapper 2024-04-26 14:31:45 -07:00
Jake Potrebic
15221cd4ac remove no longer needed patches and fix tests 2024-04-26 14:29:16 -07:00
Jason Penilla
6bfa9ce2b1 Update patched spigot decompiler to fix inconsistency based on processing order 2024-04-26 11:42:17 -07:00
Jake Potrebic
0cd4c50623 fix some more issues 2024-04-26 11:39:20 -07:00
Jake Potrebic
a55b0c8097 fix some issues on the todo list 2024-04-26 09:22:55 -07:00
Jake Potrebic
8a37019dc2 fix chat_type issue 2024-04-26 08:33:00 -07:00
Owen1212055
fca0167880 Drop old decompile fix 2024-04-26 08:39:10 -04:00
Nassim Jahnke
deba816f30 Fix accumulated total ticking chunks not being updated 2024-04-26 11:55:56 +02:00
Nassim Jahnke
c0ac50971d Fix light setting in protochunk 2024-04-26 11:12:19 +02:00
Nassim Jahnke
335f485dd4 Fix compile issues 2024-04-26 10:45:00 +02:00
Jake Potrebic
5c514dd900 support patch versions in api-version 2024-04-25 23:29:16 -07:00
Jason Penilla
898fa27a8f plugin manager updates 2024-04-25 23:17:15 -07:00
Jake Potrebic
c9e0e1f9f3 fix issue with item default attribute API 2024-04-25 23:10:38 -07:00
Jake Potrebic
e5628d4fc7 fixup loom pattern select event patch 2024-04-25 22:44:49 -07:00
Jason Penilla
e66d823dc3 hunk system fixes 2024-04-25 22:25:02 -07:00
Jason Penilla
3606096fbb compile fixes 2024-04-25 21:27:19 -07:00
Jason Penilla
af2e3abf87 compile fixes 2024-04-25 20:15:07 -07:00
Jason Penilla
9c8593cb14 compile fixes 2024-04-25 19:54:07 -07:00
Jason Penilla
ce02863322 generator fix 2024-04-25 19:09:21 -07:00
Jake Potrebic
88a3dac057 some more compile fixes 2024-04-25 18:51:28 -07:00
Jake Potrebic
48c586ab9c fixup adventure's book meta handling 2024-04-25 17:46:17 -07:00
Jake Potrebic
e83056f93a fixup sus effect entry patches 2024-04-25 17:10:12 -07:00
Jake Potrebic
a404f4b9ab address my own comments 2024-04-25 16:24:08 -07:00
Nassim Jahnke
2d89c1f53e Fixup damage source change 2024-04-25 23:28:56 +02:00
Nassim Jahnke
333b7145f0 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:
69fa4695 Add some missing deprecation annotations
f850da2e Update Maven plugins/versions
8d8400db Use regular compiler seeing as ECJ doesn't support Java 21 JRE
c29e1688 Revert "BUILDTOOLS-676: Downgrade Maven compiler version"
07bce714 SPIGOT-7355: More field renames and fixes
6a8ea764 Fix bad merge in penultimate commit
50a7920c Fix imports in previous commit
83640dd1 PR-995: Add required feature to MinecraftExperimental for easy lookups
fc1f96cf BUILDTOOLS-676: Downgrade Maven compiler version

CraftBukkit Changes:
90f1059ba Fix item placement
661afb43c SPIGOT-7633: Clearer error message for missing particle data
807b465b3 SPIGOT-7634: Armadillo updates infrequently
590cf09a8 Fix unit tests always seeing Mojang server as unavailable
7c7ac5eb2 SPIGOT-7636: Fix clearing ItemMeta
4a72905cf SPIGOT-7635: Fix Player#transfer and cookie methods
ebb50e136 Fix incorrect Vault implementation
b33fed8b7 Update Maven plugins/versions
6f00f0608 SPIGOT-7632: Control middle clicking chest does not copy contents
db821f405 Use regular compiler seeing as ECJ doesn't support Java 21 JRE
8a2976737 Revert "BUILDTOOLS-676: Downgrade Maven compiler version"
0297f87bb SPIGOT-7355: More field renames and fixes
2d03bdf6a SPIGOT-7629: Fix loading banner patterns
e77951fac Fix equality of deserialized display names
c66f3e4fd SPIGOT-7631: Fix deserialisation of BlockStateMeta
9c2c7be8d SPIGOT-7630: Fix crash saving unticked leashed entities
8c1e7c841 PR-1384: Disable certain PlayerProfile tests, if Mojang's services or internet are not available
ced93d572 SPIGOT-7626: sendSignChange() has no effect
c77362cae SPIGOT-7625: ItemStack with lore cannot be serialized in 1.20.5
ff2004387 SPIGOT-7620: Fix server crash when hoppers transfer items to double chests
8b4abeb03 BUILDTOOLS-676: Downgrade Maven compiler version
2024-04-25 23:21:18 +02:00
Nassim Jahnke
686f224893 More compile fixes 2024-04-25 22:47:32 +02:00
Nassim Jahnke
ca25aa1859 More more compile fixes 2024-04-25 22:34:46 +02:00
Nassim Jahnke
b432863793 Fix more compile issues 2024-04-25 21:40:53 +02:00
Jason Penilla
09a83f66ee compile fixes 2024-04-25 12:16:00 -07:00
Jason Penilla
0a19a66562 Fixes for cb pkg ver 2024-04-25 11:16:53 -07:00
Noah van der Aa
e6eff7111e Fix WorldCreator#keepSpawnLoaded 2024-04-25 19:57:27 +02:00
Bjarne Koll
d0743357eb Missing FQN in CraftPotionBrewer getter 2024-04-25 19:45:17 +02:00
Bjarne Koll
d6adc0b264 Some more compilation fixes 2024-04-25 19:42:24 +02:00
Noah van der Aa
2af3439727 Un-jankify root user detection 2024-04-25 19:13:12 +02:00
Bjarne Koll
b7e5de9401 Update Enchantment damage increase API
The Enchantment damage increase API added previously used the
EntityCategory enum as a parameter. These values are now however
determined by tags instead of the categories themselves.

Deprecated the outdated api method, create a new overload that takes
EntityType instead and implement deprecated method by guessing an entity
type from the builtin registry based on the category passed.
This method allows
a) the tags to still be modified and the legacy
   method still respecting such.
b) potential cursed implementations of enchantments of plugins to not
   break that override the getDamageBonus method on Enchantment.
2024-04-25 18:42:50 +02:00
Jake Potrebic
dc556091df readd fix bee aging patch 2024-04-25 09:06:13 -07:00
Jake Potrebic
cbfb3d4f97 update smithing recipe copy data components API 2024-04-25 08:13:36 -07:00
Owen1212055
8fa2c4d4fd pass more stuff 2024-04-25 09:01:54 -04:00
Owen1212055
a47a33b837 Fix properly resend patches 2024-04-25 08:42:47 -04:00
Owen1212055
1cc4c39836 Patches!!!!!!! (we are done) 2024-04-25 08:36:48 -04:00
Nassim Jahnke
79ce7b6c81 (Almost) all patches applied 2024-04-25 14:23:55 +02:00
Nassim Jahnke
18acb6fc31 More more patches, including hopper optimization patch 2024-04-25 14:07:39 +02:00
Nassim Jahnke
c42850dbcc More patches 2024-04-25 13:02:27 +02:00
Nassim Jahnke
4047edb114 Apply and move up non-optimization patches 2024-04-25 12:27:57 +02:00
Nassim Jahnke
02eec3bcd0 Patches 2024-04-25 11:42:10 +02:00
Spottedleaf
dd114da7f0 chunk system 2024-04-25 01:52:52 -07:00
Spottedleaf
0dfd08b1d8 starlight 2024-04-25 00:14:22 -07:00
Spottedleaf
4ded614f0b dataconverter 2024-04-24 23:49:13 -07:00
Jason Penilla
0773a7aff5 compile fixes 2024-04-24 22:29:18 -07:00
Jason Penilla
c3eb1935c1 compile fixes 2024-04-24 22:16:04 -07:00
Jason Penilla
72936860a1 compile fixes 2024-04-24 21:38:28 -07:00
Jason Penilla
1db3411c0e compile fixes
compile fixes

compile fixes
2024-04-24 20:40:32 -07:00
Jake Potrebic
aa5add485f work on adventure 2024-04-24 20:14:51 -07:00
Jason Penilla
f70bbeeac6 some work on adventure 2024-04-24 18:10:18 -07:00
Jason Penilla
960e8f1ad8 adventure 4.17.0-SNAPSHOT 2024-04-24 17:46:57 -07:00
Jason Penilla
03152bc733 Drop conduit api patch (upstream implemented same api with same method signatures) 2024-04-24 17:40:30 -07:00
Jason Penilla
faad8cbd62 Apply more API-implementing patches 2024-04-24 17:36:24 -07:00
Jake Potrebic
21581c8111 955 2024-04-24 16:25:57 -07:00
Owen1212055
308e992c47 Patches!!!!!!! 2024-04-24 18:36:49 -04:00
Jason Penilla
16579c63d9 Update reflection rewriter to 0.0.1 release 2024-04-24 15:02:37 -07:00
Noah van der Aa
44a5402713 Restore original formatting for MC-252817 patch 2024-04-24 23:26:18 +02:00
Noah van der Aa
060e370a08 more more work (806) 2024-04-24 23:23:56 +02:00
Noah van der Aa
3ea4a03fbc more more work (757) 2024-04-24 22:32:38 +02:00
Noah van der Aa
b8911367e6 more work (721) 2024-04-24 22:05:42 +02:00
Jason Penilla
f2519808c9 694 2024-04-24 11:03:59 -07:00
Jason Penilla
4a43daa012 683 2024-04-24 10:59:51 -07:00
Nassim Jahnke
fe5f51f44e More patch work 2024-04-24 18:15:59 +02:00
Nassim Jahnke
bd5d09cb3f 666 plus 1 2024-04-24 17:27:28 +02:00
Owen1212055
b866d785c8 Patches!!!!!!! 2024-04-24 10:30:32 -04:00
Owen1212055
a68fb9030a Patches!!!!!!! 2024-04-24 10:29:12 -04:00
Owen1212055
5a30d10b36 Patches! 2024-04-24 09:46:45 -04:00
Owen1212055
babd22019c Patches! 2024-04-24 08:11:27 -04:00
Jake Potrebic
27c46717f6 405 2024-04-23 23:44:48 -07:00
Jake Potrebic
49787270cb 354 2024-04-23 23:05:14 -07:00
Jake Potrebic
ebedfa4da7 301 2024-04-23 22:43:09 -07:00
Jake Potrebic
840f63b25a 253 2024-04-23 19:46:06 -07:00
Jake Potrebic
e45f4f85f4 221 2024-04-23 19:21:40 -07:00
Owen1212055
717c16dc69 Patches! 2024-04-23 18:25:14 -07:00
Owen1212055
c844ac9d01 Update upstream 2024-04-23 19:31:55 -04:00
Owen1212055
97cf432687 update 2024-04-23 19:30:03 -04:00
Jake Potrebic
9a497c83b8 fix 2 of our javadoc errors 2024-04-23 16:30:24 -07:00
Jake Potrebic
8c0153f78d work on some API stuff 2024-04-23 16:26:24 -07:00
Jason Penilla
d527aa0f5b Fix api compile 2024-04-23 14:47:29 -07:00
Jason Penilla
178efa2903 Don't use defaultToolchain method for run tasks 2024-04-23 14:39:36 -07:00
Jason Penilla
8004d7f08a 41 2024-04-23 14:31:37 -07:00
Jason Penilla
17a9cefe8e Fix continueServerUpdate with 2-line subjects 2024-04-23 14:26:28 -07:00
Jason Penilla
fbe7d95d0f 33 2024-04-23 14:12:24 -07:00
Jason Penilla
040ea261c7 Apply timings 2024-04-23 14:04:59 -07:00
Jason Penilla
67e8e37fe3 Apply shadow removal patch 2024-04-23 13:41:25 -07:00
Jason Penilla
5c78ce1a3a Fix reflection diff and order wrt commodore diff 2024-04-23 13:36:31 -07:00
Nassim Jahnke
0898d2405e Work 2024-04-23 21:23:27 +02:00
Jason Penilla
a616fad617 Add plugin remapping patches 2024-04-23 11:44:28 -07:00
Jake Potrebic
5c6e2be729 work on Adventure patch 2024-04-23 11:32:19 -07:00
Jake Potrebic
7f1e33effe do some work 2024-04-23 11:03:16 -07:00
Jake Potrebic
47ee5579ff Begin update to 1.20.5 2024-04-23 10:02:08 -07:00
leguan
73da69c09e [ci skip] Fix javadoc typo (#10445) 2024-04-22 20:08:37 +02:00
Jake Potrebic
659ebace6c More Raid API (#7537) 2024-04-20 12:57:51 -07:00
Tamion
9c2056070c Add Configuration for finding Structures outside World Border (#10437) 2024-04-20 21:29:32 +02:00
Janet Blackquill
2db91fd866 Add CartographyItemEvent and get/setResult for CartographyInventory (#10396) 2024-04-20 14:10:35 -04:00
Florian Beck
3fc5a0b21d Added chunk view API (#10398) 2024-04-20 19:56:59 +02:00
Nassim Jahnke
ab63e7e64f Allow setting player list name early 2024-04-20 15:24:42 +02:00
Tamion
b1a467786e Fix inventory desync with PlayerLeashEntityEvent (#10436) 2024-04-20 05:23:32 +02:00
Jake Potrebic
bdfe4c21f6 Add API for ticking fluids (#10435)
* Add API for ticking fluids

* update javadocs
2024-04-19 13:03:32 -07:00
brickmonster
07e8f74355 Remove dead code (LegacyResult) (#10411)
* Stop firing AsyncPlayerChatPreviewEvent as chat preview was removed in 1.19.3. This is in parity with upstream

* formatting and small tweaks

* correctly set MESSAGE_CHANGED flag for modern modifications

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2024-04-19 20:47:24 +01:00
Jason Penilla
76be2651ca "Downgrade" Vineflower to 1.10.1 release (#10423)
* "Downgrade" Vineflower to 1.10.1 release

The main thing we lose from the 1.11 snapshots is a recent fix for redundant casts.

* Thanks intellij

* a
2024-04-16 12:44:59 -07:00
Owen1212055
14b0751f02 Deprecate ItemStack#setType & add ItemStack#withType (#10290) 2024-04-12 17:16:22 -04:00
ButterDebugger
9e05b17b92 Add color transition and clone functions to ParticleBuilder (#10342) 2024-04-12 16:07:28 -04:00
Cross
dd8fa8eefb Fix hit criteria advancement triggered before changing state (#10409)
* Fix hit criteria advancement being triggered before changing block state.

* Rebase

---------

Co-authored-by: Bjarne Koll <git@lynxplay.dev>
2024-04-12 20:42:00 +01:00
Shane Freeder
0d8e6831c3 Fix StackOverflowException thrown on shutdown (Fixes #10404) (#10408)
paper previously migrated away from using executeIfPossible as this throws a
RejectedExecutionException when the server is shutting down, which is then picked
up by the Connection handler object and causes the player to be kicked without
the intended disconnection message that comes from commands such as /stop, /restart

This was fine, because previously changes made in spigot would just prevent these
packets from being executed anyways. Instead, we'll just use a marker exception
to try to detect this specific state.
2024-04-12 20:37:00 +01:00
Hy3z
73c52d2df4 [ci skip] Referenced InventoryDragEvent in documentation of InventoryClickEvent (#10395) 2024-04-12 21:19:55 +02:00
Jake Potrebic
89528bff42 Update patches to handle vineflower decompiler (#10406)
* Update patches to handle vineflower decompiler

* update patches again to handle inlined simple lambdas

* update vf again and re-apply/rebuild patches

* update patches after removal of verify-merges flag

* fix compile issue

* remove maven local

* fix some issues

* address more issues

* fix collision patch

* use paperweight release

* more fixes

* update fineflower and fix patches again

* add missing comment descriptor

---------

Co-authored-by: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
2024-04-12 12:14:06 -07:00
Lulu13022002
99625a6d53 [ci skip] Update book page/char limit for book meta doc (#10415) 2024-04-12 20:58:44 +02:00
gecko10000
a7eec3f980 Change online mode default for Velocity configuration (#10413) 2024-04-12 10:21:31 -07:00
Jake Potrebic
7263a87e9c Deprecate several Keyed#getKey methods (#10357)
- Structure (can already be defined inline in datapacks
- PatternType (can be defined inline in 1.20.5 data components)
- MusicInstrument (same as above)
2024-04-07 22:20:51 -07:00
Shane Freeder
b56970d394 Allow player-list API to self un/list (#10358) 2024-04-07 01:45:43 +01:00
Joseph Burton
bccba9bc30 Ignore minecart in activation range (#10359) 2024-04-07 00:50:43 +01:00
Noah van der Aa
7f488e6d9d Disable vertical air friction when item entities have friction disabled (#10369) 2024-04-07 01:36:59 +02:00
Evan
b6a760757a Add BlockBreakProgressUpdateEvent (#10300) 2024-04-06 18:28:17 -04:00
Lulu13022002
d06c0b4571 Backport some stuff from the generators branch (#10365) 2024-04-06 23:51:47 +02:00
Tamion
613a19f70d Add more item use API (#10304) 2024-04-06 23:44:27 +02:00
Lulu13022002
2089697232 Don't throw NPE for unplaced blockstate on #getDrops (#10366) 2024-04-06 23:26:56 +02:00
powercas_gamer
8a2bd44f1f Deprecate Bukkit#getLogger (#10388)
* Deprecate Bukkit#getLogger

* fix typo in MaterialSetTags

* change to Internal and squash into other patch

* improve api note message

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2024-04-06 23:20:29 +02:00
Pierpaolo Coletta
e1e5a33da4 Fix invalid block entities created during world gen (#10375) 2024-04-06 23:16:54 +02:00
Bridge
7de6922d21 feat: Entity#teleportAsync method with TeleportFlags (#10371)
* feat: Entity#teleportAsync method with TeleportFlags

* use method-local class

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2024-04-06 22:38:37 +02:00
Jake Potrebic
68e86d7297 Updated Upstream (Bukkit/CraftBukkit) (#10379)
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:
f02baa38 PR-988: Add World#getIntersectingChunks(BoundingBox)
9321d665 Move getItemInUse up to LivingEntity
819eef73 PR-959: Add access to current item's remaining ticks
c4fdadb0 SPIGOT-7601: Add AbstractArrow#getItem
be8261ca Add support for Java 22
26119676 PR-979: Add more translation keys
66753362 PR-985: Correct book maximum pages and characters per page documentation
c8be92fa PR-980: Improve getArmorContents() documentation
f1120ee2 PR-983: Expose riptide velocity to PlayerRiptideEvent

CraftBukkit Changes:
dfaa89bbe PR-1369: Add World#getIntersectingChunks(BoundingBox)
51bbab2b9 Move getItemInUse up to LivingEntity
668e09602 PR-1331: Add access to current item's remaining ticks
a639406d1 SPIGOT-7601: Add AbstractArrow#getItem
0398930fc SPIGOT-7602: Allow opening in-world horse and related inventories
ffd15611c SPIGOT-7608: Allow empty lists to morph to any PDT list
2188dcfa9 Add support for Java 22
45d6a609f SPIGOT-7604: Revert "SPIGOT-7365: DamageCause blocked by shield should trigger invulnerableTime"
06d915943 SPIGOT-7365: DamageCause blocked by shield should trigger invulnerableTime
ca3bc3707 PR-1361: Add more translation keys
366c3ca80 SPIGOT-7600: EntityChangeBlockEvent is not fired for frog eggs
06d0f9ba8 SPIGOT-7593: Fix sapling growth physics / client-side updates
45c2608e4 PR-1366: Expose riptide velocity to PlayerRiptideEvent
29b6bb79b SPIGOT-7587: Remove fixes for now-resolved MC-142590 and MC-109346
2024-04-06 12:53:39 -07:00
Jason Penilla
61dc3d0b17 build: Compile against and shade the filtered jar (#9747)
* Compile against & shade the filtered jar

* Move check for if the paper asset root needs to be pushed

* Don't disable incremental compilation

* Remove mavenLocal

* use paperweight release
2024-04-04 17:12:05 -07:00
DungeonDev
44336b8510 Add config option for tripwire disarming fix
Fixes #10382

Co-authored-by: Tamion <70228790+notTamion@users.noreply.github.com>
2024-04-02 12:15:49 +02:00
Jason Penilla
2b24892fa4 build: Update paperweight to 1.5.12 and Gradle Wrapper to 8.7 (#10361) 2024-03-29 10:43:36 -07:00
Jake Potrebic
8fa3b24907 [ci skip] move custom brig exception to paper package 2024-03-26 08:38:26 -07:00
Nassim Jahnke
c848b33030 Return dummy string instead of empty optional 2024-03-25 13:26:01 +01:00
maxcom1
6a200a1663 Add methods to change entity physics (#10334) 2024-03-23 22:26:17 +01:00
FireInstall
0c76cbb7cc Move invisible setting up to entities (#10346) 2024-03-23 20:27:30 +01:00
Shane Freeder
5efed01031 Do not copy profile data if profiles are the same (#10259) 2024-03-20 21:47:50 +00:00
TonytheMacaroni
b17ca0b19e Expose power on fireballs (#10302) 2024-03-20 17:33:34 -04:00
Jake Potrebic
3e27ced8ce Clone mutable types in events when changes are discarded (#10333) 2024-03-20 13:42:29 -07:00
maxcom1
71a2187c20 Fire EntityChangeBlockEvent on beehive nectar deposit (#10306)
* Add BeehiveNectarDepositEvent

* Fire EntityChangeBlockEvent instead of a separate event
2024-03-20 20:35:10 +01:00
Nassim Jahnke
8e2c466bc3 Fix tripwire disarming not working as intended 2024-03-19 19:49:12 +01:00
viciscat
956e59eaef Expand Hopper BlockState API (#10328) 2024-03-16 20:28:50 +01:00
Jake Potrebic
c47e305c9f Fix DamageSource API (#10307)
Uses the correct entity in the EntityDamageByEntity event
Returns the correct entity for API's DamageSource#getCausingEntity
2024-03-16 11:51:22 -07:00
leguan
5423df4cab Add onboarding message for initial server start (#10312) 2024-03-16 19:10:26 +01:00
Suppergerrie2
c136006ed0 Fix missing profiler.pop() in PathFinder::findPath (#10320) 2024-03-15 12:09:47 +01:00
Bjarne Koll
ce6e3b23da Allow passenger retaining teleport via end gateway (#10283)
Previously paper disabled the abilities for entities to teleport via end
gateways if they were being used as a vehicle.

While the behaviour generally worked fine for entities riding other
entities, players would quickly end up in an invalid state, not seeing
their passenger anymore.

This commit removes the paper introduced limitation by now properly
updating the passengers location of a player when they are teleporting
through an end gateway.
2024-03-10 01:08:44 +01:00
Jake Potrebic
31997fcd56 Add param to overrides to the correct method is called (#10308) 2024-03-09 15:16:27 -08:00
Jake Potrebic
8b00b9a52d Updated Upstream (Bukkit/CraftBukkit) (#10301)
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:
7ca2b46c SPIGOT-7594: Fix typo and include missing MinecraftExperimental annotation in Loot Table enum

CraftBukkit Changes:
176c0ad39 Fix copying BlockStates with fields (eg, Banner)
ee685bd2a Fix Camel not standing up when hurt
619936d4b Increase outdated build delay
2024-03-08 15:52:00 -08:00
Jake Potrebic
ee3ba92337 Per world ticks per spawn settings (#6891) 2024-03-03 14:53:58 -08:00
Owen1212055
7415dcf70e Allow enabling sand duping (#10191)
Because this exploit has been widely known for years and has not been fixed by Mojang, we decided that it was worth allowing people to toggle it on/off due to how easy it is to make it configurable.

It should be noted that this decision does not promise all future exploits will be configurable.
2024-03-03 17:05:34 -05:00
Yannick Lamprecht
ae0c893174 add overloads to use suspicious effect entry to mushroom cow and suspicious stew meta (#10245)
The existing method with PotionEffect suggests that all attributes are used. In fact, only the PotionEffectType and the duration are used.



---------

Co-authored-by: Bjarne Koll <git@lynxplay.dev>
2024-03-03 22:40:18 +01:00
Shane Freeder
5a66c3b64e Don't tick empty worlds (#9025) 2024-03-03 21:10:45 +00:00
Jake Potrebic
a2a55e2b27 Deprecate extra ban methods with raw BanEntry (#9580) 2024-03-03 12:54:52 -08:00
Gero
0c2d5b9b74 Configurable max block/fluid ticks (#10266) 2024-03-03 21:43:00 +01:00
Yannick Lamprecht
29009b5f04 improve BanList types (#10239) 2024-03-03 21:36:17 +01:00
Rodney
715e4018a4 Fire EntityDamageByEntityEvent for unowned wither skulls patch (#10244) 2024-03-03 20:35:50 +01:00
Yannick Lamprecht
bf8eb0f964 add rich message component support to configuration (#10225) 2024-03-03 19:59:22 +01:00
granny
db9d9c153d check if itemstack is stackable first (#10285) 2024-03-03 10:37:00 -08:00
Nassim Jahnke
1cfe913c93 Fix spawnreason saving 2024-02-23 23:13:37 +01:00
Bjarne Koll
b2aea18b19 Fix corrupted plugin.yml breaking plugin loading (#10279)
Fix corrupted plugin.yml file in one plugin not loading any plugins by
the server.

Co-authored-by: Aleksander Jagiello <themolkapl@gmail.com>
2024-02-23 18:54:44 +01:00
Shane Freeder
f8a84f01e2 Make debug mode print current configuration phase 2024-02-23 13:54:52 +00:00
Nassim Jahnke
1863ac217f Updated Upstream (Bukkit/CraftBukkit/Spigot) (#10277)
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:
9a80d38c SPIGOT-336, SPIGOT-3366, SPIGOT-5768, SPIGOT-6409, SPIGOT-6861, PR-722: Add EntityRemoveEvent
258086d9 SPIGOT-7417, PR-967: Add Sign#getTargetSide and Sign#getAllowedEditor
ffaba051 SPIGOT-7584: Add missing Tag.ITEMS_NON_FLAMMABLE_WOOD

CraftBukkit Changes:
98b6c1ac7 SPIGOT-7589 Fix NullPointerException when bans expire
a2736ddb0 SPIGOT-336, SPIGOT-3366, SPIGOT-5768, SPIGOT-6409, SPIGOT-6861, PR-1008: Add EntityRemoveEvent
5bf12cb89 SPIGOT-7565: Throw a more descriptive error message when a developer tries to spawn an entity from a CraftBukkit class
76d95fe7e SPIGOT-7417, PR-1343: Add Sign#getTargetSide and Sign#getAllowedEditor

Spigot Changes:
e9ec5485 Rebuild patches
f1b62e0c Rebuild patches
2024-02-23 14:37:33 +01:00
Shane Freeder
e33fdd8189 Do not access world state to see if we can see a Player
Thrown into the adventure patch because I don't see the justification of a patch existing
for something like this.
2024-02-22 16:23:15 +00:00
Nassim Jahnke
bc49d1fd6c Add more ResourceLocation checks, some cleanup 2024-02-18 12:53:27 +01:00
Jason Penilla
14253bdf2c Run round-trip adventure codec tests with JSON, NBT, and Java ops. Use JavaOps for conversions. (#10031) 2024-02-17 14:58:56 -07:00
viciscat
c4731d1330 FluidState API (#9951)
* Add new FluidState API functionality
---------

Co-authored-by: Bjarne Koll <git@lynxplay.dev>
Co-authored-by: Owen1212055 <23108066+Owen1212055@users.noreply.github.com>
2024-02-17 21:44:03 +01:00
David Mayr
2d6b2baf34 Scoreboard objective number format api (#10036)
* feat: number format api

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: make each individual score customizable

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* docs: fix incorrect descriptions

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: use access transformers

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: use adventure codecs

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* test: test for matching styles

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: convert number formats to interfaces

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: add style conversion to adventure patch

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: use paper adventure method in PaperScoreboardFormat

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* chore: rename methods to avoid a method in records

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* fix: check if objective is still registered

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: improve style conversion

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: modify how the getter behaves in score

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: use fluent naming

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* docs: add spaces before the paper comments

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* chore: styling changes

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* chore: make constant final

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* feat: add methods for styled format instead of constants

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* fix: remove incorrect getTrackedPlayers check

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* docs: add . at the end of sentences

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* docs: explain null behaviour

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* docs: mention score creation

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>

* rebase and fix javadoc comments

* remove server implementation defaults

* fix format for PaperScoreboardFormat

---------

Signed-off-by: David Mayr <davidliebtkekse@gmail.com>
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2024-02-17 21:22:00 +01:00
Emilia Kond
c113eea77d [ci skip] Fix javadoc mistake in PluginMeta (#10258)
"Schematic versioning" is not a real thing. The intended versioning
scheme is "semantic versioning". Introduced in #8108.
2024-02-17 21:37:55 +02:00
leguan
060fd2cde7 [ci skip] Fix JavaDoc mistake in BlockPistonRetractEvent (#10250) 2024-02-17 20:15:15 +01:00
Jake Potrebic
1f16b25f9e Fire entity knockback event for ownerless tnt (#7171) 2024-02-16 15:44:43 -08:00
Shane Freeder
72004ecb99 Updated Upstream (Bukkit) (#10255)
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:
58ce1b0f Improve compatibility of new DamageSource API
2024-02-16 22:44:38 +00:00
Pedro
d884bac087 Fix BlockState being set to null for damage events (#10252) 2024-02-15 06:05:50 -03:00
Nassim Jahnke
41dcfd64b1 Updated Upstream (Bukkit/CraftBukkit) (#10242)
* 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:
a6a9d2a4 Remove some old ApiStatus.Experimental annotations
be72314c SPIGOT-7300, PR-829: Add new DamageSource API providing enhanced information about entity damage
b252cf05 SPIGOT-7576, PR-970: Add methods in MushroomCow to change stew effects
b1c689bd PR-902: Add Server#isLoggingIPs to get log-ips configuration
08f86d1c PR-971: Add Player methods for client-side potion effects
2e3024a9 PR-963: Add API for in-world structures
a23292a7 SPIGOT-7530, PR-948: Improve Resource Pack API with new 1.20.3 functionality
1851857b SPIGOT-3071, PR-969: Add entity spawn method with spawn reason
cde4c52a SPIGOT-5553, PR-964: Add EntityKnockbackEvent

CraftBukkit Changes:
38fd4bd50 Fix accidentally renamed internal damage method
80f0ce4be SPIGOT-7300, PR-1180: Add new DamageSource API providing enhanced information about entity damage
7e43f3b16 SPIGOT-7581: Fix typo in BlockMushroom
ea14b7d90 SPIGOT-7576, PR-1347: Add methods in MushroomCow to change stew effects
4c687f243 PR-1259: Add Server#isLoggingIPs to get log-ips configuration
22a541a29 Improve support for per-world game rules
cb7dccce2 PR-1348: Add Player methods for client-side potion effects
b8d6109f0 PR-1335: Add API for in-world structures
4398a1b5b SPIGOT-7577: Make CraftWindCharge#explode discard the entity
e74107678 Fix Crafter maximum stack size
0bb0f4f6a SPIGOT-7530, PR-1314: Improve Resource Pack API with new 1.20.3 functionality
4949f556d SPIGOT-3071, PR-1345: Add entity spawn method with spawn reason
20ac73ca2 PR-1353: Fix Structure#place not working as documented with 0 palette
3c1b77871 SPIGOT-6911, PR-1349: Change max book length in CraftMetaBook
333701839 SPIGOT-7572: Bee nests generated without bees
f48f4174c SPIGOT-5553, PR-1336: Add EntityKnockbackEvent
2024-02-11 22:28:00 +01:00
Warrior
0ec98e642c Add getChunkSnapshot includeLightData parameter (#10234) 2024-02-10 22:28:56 +01:00
Emilia Kond
1ba0d87cba Fire BlockPreDispenseEvent for droppers (#10226) 2024-02-10 23:19:22 +02:00
Jake Potrebic
e8e83aefff Properly track the changed item from dispense events (#8658) 2024-02-10 13:17:24 -08:00
Jake Potrebic
d767c37a54 Fix possible StackOverflowError for some dispenser iteractions (#8524) 2024-02-10 12:17:40 -08:00
Lulu13022002
9665ac3903 Fix WaterBottleSplashEvent not forwarding hit result (#10203) 2024-02-10 20:27:29 +01:00
Warrior
a863590fd5 Propagate failed to bind to port error (#10235) 2024-02-10 20:23:50 +01:00
Yannick Lamprecht
8129e8b3d5 itemstack expose tooltip lines (#10185)
* Itemstack Tooltip API

* re-order methods so advanced is first

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2024-02-10 02:12:50 +01:00
Lulu13022002
bda56c82ff Fix fox drops on death (#8862) 2024-02-10 01:07:10 +01:00
Tamion
8b0207ac93 Add Conduit API (#10195) 2024-02-09 23:03:27 +01:00
Micah Rao
dec84759dc Check for server JARs in plugin directory (#10228) 2024-02-09 16:05:13 -05:00
Tamion
03d5d38a6a Add Arrow/Stinger Removal Time API (#10193) 2024-02-09 21:56:13 +01:00
Moulberry
6591c39509 Fix NotNull locales (#10216)
Two methods returning locales are annotated @NotNull, despite being able
to return null
2024-02-10 04:30:50 +08:00
Jake Potrebic
4f9f09bb9b Lifecycle Event System (#9629)
* registering stuff event system

* simply by removing a ton of unneeded generics

* separate RegistryEvent and RegistrarEvent

* add logic for removing hooks when a plugin is disabled

* cleanup more

* swap around the way things are registered

* block further hook registrations for JavaPlugin

* Slightly more extensible to support registry mod API

* rename some types

* more moving/renaming

* remove 'hook' name

* Rename to 'lifecycle'

* move more impls for the server

* add priorities

* added lock for bootstrap event registration

* slight refactor to allow 'register anywhere' event types

* Move event type list to server impl

* use builder pattern to create event handler configurations

* add some more javadocs

* fix some issues, slight refactors

* call predicate and method renames

* add owner aware events

* rebased and refactored owner aware events

* add single helper method for registering simple handler

* compile fixes

* check owner and fix generics on register helper

* javadoc fixes and a few type renames

* more javadoc fixes

* move service loader file to correct location

* rename to Monitorable and Prioritizable

* add invalidation system for events after running them

* block reloading plugins in certain situations

* update test plugin

* remove dummy events

* rebase
2024-02-09 12:12:01 -08:00
Nassim Jahnke
679f34297e Improve tag parser handling, move hunks out of chunk system patch 2024-02-05 12:31:51 +01:00
Nassim Jahnke
f2da18d62e More provider source fixup 2024-02-02 12:44:09 +01:00
Nassim Jahnke
6fba18bac1 Add missing catch 2024-02-01 11:41:29 +01:00
Nassim Jahnke
e07a036b9f Fix sleeping pos desync 2024-02-01 10:53:15 +01:00
Nassim Jahnke
1cdeef88c5 Small refactor of Paper plugin context preparation 2024-02-01 10:51:29 +01:00
Lulu13022002
f7e469eb2e [ci skip] Cleanup events (#10202) 2024-02-01 10:15:57 +01:00
Rowan
d676979ea0 [ci skip] Fix incorrect documentation for BlockDropItemEvent (#10175)
Co-authored-by: Bjarne Koll <git@lynxplay.dev>
2024-01-27 20:42:46 +01:00
Jake Potrebic
cc0082f248 Properly check if a loot table exists (#10190) 2024-01-27 11:21:18 -08:00
Warrior
adf45d523a Disable memory reserve allocating (#10180) 2024-01-27 20:06:03 +01:00
Luis
dd9c9c8f6c Make spawn egg colours visible (#10158)
Co-authored-by: Yannick Lamprecht <1420893+yannicklamprecht@users.noreply.github.com>
2024-01-27 18:32:05 +00:00
Chase Henderson
c4aa25cd95 Shulker duplicate event (#10135) 2024-01-27 13:13:12 -05:00
Jake Potrebic
a86380bc18 [ci skip] clarify javadocs for Block#getDrops (#10153) 2024-01-27 09:35:09 -08:00
Nassim Jahnke
b63a0c5a8f Fix javadoc errors, remove unused classes 2024-01-26 21:34:40 +01:00
Nassim Jahnke
ad30e27e98 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:
1d522878 PR-966: Introduce getRespawnLocation as a replacement for getBedSpawnLocation
cc01b745 PR-965: Add DragonBattle#setPreviouslyKilled
28e3702f SPIGOT-6921, PR-957: Add methods to remove all enchantments on an ItemStack
8872404e PR-961: Add BlockData#copyTo
4054cc7b PR-956: Add method to get an offline player's location

CraftBukkit Changes:
292ec79e0 SPIGOT-7568: Call EntityChangeBlockEvent for DecoratedPot
b44bf5aa8 SPIGOT-7575: SuspiciousStewMeta creates invalid PotionEffect data
161784713 PR-1340: Centralize the conversion from and to Minecraft / Bukkit registry items even more and add a test case for them
b93c5a30d PR-1338: Introduce getRespawnLocation as a replacement for getBedSpawnLocation
fb973486c SPIGOT-7570: PrepareItemCraftEvent#isRepair() always returns false
c9c24535e PR-1337: Add DragonBattle#setPreviouslyKilled
c8b4da803 SPIGOT-6921, PR-1330: Add methods to remove all enchantments on an ItemStack
95bc1c4f5 PR-1333: Add BlockData#copyTo
36e2f9ce1 PR-1329: Add method to get an offline player's location

Spigot Changes:
c198da22 SPIGOT-7563: Update to latest release of bungeecord-chat
2024-01-26 20:17:06 +01:00
Nassim Jahnke
98775ea8e5 [ci skip] Fixup a few bad comments 2024-01-26 19:41:41 +01:00
Nassim Jahnke
d71804b7f8 Finish moving patches back and improving compilable state 2024-01-25 10:54:46 +01:00
Nassim Jahnke
52438f04a0 [ci skip] Move chunk system patch back 2024-01-24 22:13:08 +01:00
Shane Freeder
49feea0525 Convert average tick value in the GUI to the correct granularity 2024-01-24 16:27:32 +00:00
Nassim Jahnke
8dae5500dd [ci skip] Move chunk system patch a bit back 2024-01-24 15:57:53 +01:00
Nassim Jahnke
2a60c836aa [ci skip] Fixup last commit 2024-01-24 14:05:59 +01:00
Nassim Jahnke
fae4fc60c9 [ci skip] Move chunk system patch back a bit 2024-01-24 13:07:40 +01:00
Nassim Jahnke
24e3f94688 [ci skip] (Mostly) finish adding identifying patch comments 2024-01-24 11:45:17 +01:00
FireInstall
15288309a2 Expose LootTable of DecoratedPot (#10023) 2024-01-23 21:57:17 +01:00
Jake Potrebic
b9b956adb8 Add BlockStateMeta#clearBlockState (#10160) 2024-01-23 12:41:47 -08:00
1stGlitch
85453a2f60 Add world to Entity AddTo/RemoveFrom Events (#10183)
When a plugin listens to the EntityAddToWorld and EntityRemoveFromWorld events, I don't believe there is currently any method of directly obtaining which world the entity was actually added to/removed from. Using event.getEntity().getWorld() works in many cases, but not all. Specifically, when an entity is teleported from one world to another, the location of the entity is updated prior to the removal event being called. This means that when an entity goes through a nether/end portal or is teleported between worlds with a command, a plugin listening to the EntityRemoveFromWorldEvent has no way of determining which world the entity was actually removed from (without relying on other events).

To resolve this, I've added the world as a field in the events along with a getter to retrieve it. I also removed an unused import and made the documentation more clear on the event behaviour when chunks load/unload.
2024-01-23 15:17:14 -05:00
Nassim Jahnke
cd30cd6d41 Move diffs around to compile without later ones applied 2024-01-23 18:01:39 +01:00
Nassim Jahnke
091f54138b [ci skip] Move some disruptive patches back 2024-01-23 15:43:48 +01:00
Nassim Jahnke
88d3d87993 [ci skip] Add more patch identifying comments 2024-01-23 14:34:17 +01:00
Nassim Jahnke
e433c8696b [ci skip] Move some disruptive patches back 2024-01-23 12:06:27 +01:00
Nassim Jahnke
5dec86e71c [ci skip] Move some disruptive patches back 2024-01-22 21:04:08 +01:00
Nassim Jahnke
94e0370bed [ci skip] Add more patch identifying comments 2024-01-22 19:01:10 +01:00
Nassim Jahnke
2a2cdc2d1a [ci skip] Add more patch identifying comments 2024-01-22 18:04:55 +01:00
Nassim Jahnke
b088c37fc1 [ci skip] Add more patch identifying comments 2024-01-21 19:37:09 +01:00
Nassim Jahnke
bc99c40604 [ci skip] Add more patch identifying comments, cleanup 2024-01-21 17:39:05 +01:00
Nassim Jahnke
db4ed47134 [ci skip] Add more identifying patch comments 2024-01-21 13:56:22 +01:00
Nassim Jahnke
0571a6438e [ci skip] Add more identifying patch comments 2024-01-21 12:53:04 +01:00
Nassim Jahnke
f6609428b6 [ci skip] Add more identifying patch comments 2024-01-21 12:11:43 +01:00
Nassim Jahnke
dee90322eb [ci skip] Add more identifying patch comments 2024-01-20 23:13:41 +01:00
Shane Freeder
e34d100c9c Async world data IO saving (#10171)
Co-authored-by: Cryptite <cryptite@gmail.com>
2024-01-20 21:51:15 +00:00
Pantera (Mad_Daniel)
4112589be3 Add back Reduce allocation of Vec3D by entity tracker patch (#10179) 2024-01-21 02:26:51 +09:00
Nassim Jahnke
1b920c7241 [ci skip] Add more identifying patch comments 2024-01-20 12:50:16 +01:00
Lulu13022002
8b532bad3a Add visual blockdata api for primed tnt (#10146) 2024-01-20 00:01:12 +01:00