Noah van der Aa
57fdc668fa
Undeprecate Server#getMap ( #9185 )
...
The only way to get a map is via its id, which is not a magic value. This implementation isn't going to be changing anytime soon, so it should be undeprecated.
2023-05-14 20:23:57 -04:00
Jake Potrebic
ab7bc3fb34
Remove javadoc that doesn't apply to Paper ( #9206 )
2023-05-14 19:20:43 -04:00
booky10
9daa019d6c
Added wither vanilla invulnerability API ( #9124 )
2023-05-12 15:24:50 -05:00
Redned
1edfefdef8
Add option to flush region files on save ( #9149 )
2023-05-12 15:07:24 -05:00
Nassim Jahnke
efd47e3a68
Updated Upstream (Bukkit/CraftBukkit/Spigot) ( #9188 )
...
* 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:
2fcba9b2 SPIGOT-7347: Add missing documentation and details to ShapedRecipe
c278419d PR-854: Move getHighestBlockYAt methods from World to RegionAccessor
201399fb PR-853: Add API for directly setting Display transformation matrices
ecfa559a PR-849: Add InventoryView#setTitle
653d7edb SPIGOT-519: Add TNTPrimeEvent
22fccc09 PR-846: Add method to get chunk load level
a070a52c PR-844: Add methods to convert Vector to and from JOML vectors
cc7111fe PR-276: Add accessors to Wither's invulnerability ticks
777d24e9 SPIGOT-7209: Accessors and events for player's exp cooldown
ccb2d01b SPIGOT-6308: Deprecate the location name property of map items
cd04a31b PR-780: Add PlayerSpawnChangeEvent
7d1f5b64 SPIGOT-6780: Improve documentation for World#spawnFallingBlock
5696668a SPIGOT-6885: Add test and easier to debug code for reference in yaml configuration comments
2e13cff7 PR-589: Expand the FishHook API
2c7d3da5 PR-279: Minor edits to various Javadocs
CraftBukkit Changes:
01b2e1af4 SPIGOT-7346: Disallow players from executing commands after disconnecting
7fe5ee022 PR-1186: Move getHighestBlockYAt methods from World to RegionAccessor
bcc85ef67 PR-1185: Add API for directly setting Display transformation matrices
a7cfc778f PR-1176: Add InventoryView#setTitle
563d42226 SPIGOT-519: Add TNTPrimeEvent
ccbc6abca Add test for Chunk.LoadLevel mirroring
2926e0513 PR-1171: Add method to get chunk load level
63cad7f84 PR-375: Add accessors to Wither's invulnerability ticks
bfd8b1ac8 SPIGOT-7209: Accessors and events for player's exp cooldown
f92a41c39 PR-1181: Consolidate Location conversion code
10f866759 SPIGOT-6308: Deprecate the location name property of map items
82f7b658a PR-1095: Add PlayerSpawnChangeEvent
b421af7e4 PR-808: Expand the FishHook API
598ad7b3f Increase outdated build delay
Spigot Changes:
d1bd3bd2 Rebuild patches
e4265cc8 SPIGOT-7297: Entity Tracking Range option for Display entities
* Work around javac bug
* Call PlayerSpawnChangeEvent
* 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:
2fcba9b2 SPIGOT-7347: Add missing documentation and details to ShapedRecipe
c278419d PR-854: Move getHighestBlockYAt methods from World to RegionAccessor
201399fb PR-853: Add API for directly setting Display transformation matrices
CraftBukkit Changes:
01b2e1af4 SPIGOT-7346: Disallow players from executing commands after disconnecting
7fe5ee022 PR-1186: Move getHighestBlockYAt methods from World to RegionAccessor
bcc85ef67 PR-1185: Add API for directly setting Display transformation matrices
Spigot Changes:
7da74dae Rebuild patches
2023-05-12 13:10:08 +02:00
Warrior
688409279f
Fix lightning being able to hit spectators ( #9193 )
2023-05-08 16:17:00 +02:00
Bjarne Koll
1d4c7806ff
Fix BlockPosition#offset(double,double,double) ( #9190 )
2023-05-07 14:14:34 +02:00
Nassim Jahnke
813d0399f9
Make sure the player didn't disconnect when processing commands
2023-05-06 17:10:22 +02:00
Lulu13022002
9846d0d89e
Fix some NPE for EntityCompostItemEvent ( #9169 )
2023-05-03 12:07:51 +01:00
Pedro
83da4b6101
Fix DamageSource for Falling Blocks ( #9175 )
2023-05-03 11:50:59 +01:00
Spottedleaf
4f9575eed8
Break redstone on top of trap doors early
...
This logic hooks into the neighbour update which should be invoked
as a result of redstone powering the trap door.
2023-05-01 18:32:30 -07:00
Lukas Alt
bcec5b11e6
Fixed large packet handling ( #9147 )
...
Co-authored-by: Shane Freeder <theboyetronic@gmail.com>
2023-04-27 19:50:14 +01:00
GodOfPro
f4ce997a42
Add Mob Experience reward API ( #9122 )
2023-04-27 19:49:19 +01:00
Owen
936205beae
Disable allowListing before received from client ( #9167 )
2023-04-23 21:24:12 -04:00
Owen
5c4671a9bf
Fix LegacyPluginLoader dependency registration ( #9165 )
2023-04-23 02:55:10 +01:00
Owen
8e3009e0db
Resolve Plugin Dependency Issues, Improve PluginLoading Compat, Small Loading Issues ( #9129 )
2023-04-22 12:44:40 -05:00
Jakub Zacek
f7717c3712
Fix server ignoring fallback for translatable components ( #9134 )
2023-04-20 08:05:41 +01:00
Emily
beed22d336
Undo making JavaPlugin#logger field public ( #9125 )
2023-04-19 16:46:09 +01:00
Luke Chambers
dd216c1f09
Fix Inconsistencies with Paper Plugin Names ( #9098 )
2023-04-16 11:49:13 -05:00
Jake Potrebic
6d2121efde
Removes some references to deprecated methods/types ( #9043 )
2023-04-15 18:13:59 -07:00
Warrior
23a443eeaa
Fix demo flag not enabling demo mode ( #9103 )
2023-04-15 18:30:23 -05:00
Shane Freeder
8d040fad9b
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:
465c4964 PR-843: Add damage methods to FallingBlock
46ba7c9f SPIGOT-7335: Fix typo in TextDisplay#TextAlignment enum name
CraftBukkit Changes:
818582f40 PR-1169: Add damage methods to FallingBlock
15a3eac66 SPIGOT-7335: Fix typo in TextDisplay#TextAlignment enum name
f01fb4979 SPIGOT-7336: Fix typo in internal method name
2023-04-14 00:52:42 +01:00
DungeonDev
e338793603
Optimize hoppers by not trying to merge full items. ( #9110 )
...
This can skip many very expensive call to ItemStack.tagMatches.
Makes canMergeItems return false for merging into ItemStacks that are already full.
2023-04-11 15:35:54 +02:00
Jake Potrebic
5ffdff8822
Fix a couple of bed bugs ( #9112 )
2023-04-10 15:12:22 -07:00
Shane Freeder
e811927394
Revert "Resolve Plugin Dependency Issues, Improve PluginLoading Compat, Small Loading Issues ( #9068 )"
...
This reverts commit f8d2f823db
.
2023-04-10 11:25:04 +01:00
Redned
8be7a60b76
Fix getBrightness and getRawBrightness throwing exception in BlockStateListPopulator ( #9111 )
2023-04-10 10:06:49 +02:00
caramel
ab72b123ec
Update Adventure to 4.13.1 ( #9113 )
2023-04-10 10:06:38 +02:00
Nassim Jahnke
058d7c1aa3
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:
13eb4146 SPIGOT-5217, SPIGOT-6183: Add RespawnReason to PlayerRespawnEvent
CraftBukkit Changes:
5ee3419b7 SPIGOT-5217, SPIGOT-6183: Add RespawnReason to PlayerRespawnEvent
Spigot Changes:
514cf03a Rebuild patches and add RespawnReason.PLUGIN to Player#respawn
2023-04-10 10:03:36 +02:00
Shane Freeder
b626528da0
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:
de5ba402 PR-848: Mark get/setCatType methods deprecated in addition to the enum
CraftBukkit Changes:
50ee87fbc SPIGOT-7333: Correctly handle null in ColorableArmorMeta#setColor()
790be710b SPIGOT-7332: Persistent Data Container of Chunk not saving on stop or restart.
2023-04-09 23:38:03 +01:00
Owen
f8d2f823db
Resolve Plugin Dependency Issues, Improve PluginLoading Compat, Small Loading Issues ( #9068 )
2023-04-09 23:28:30 +01:00
Jake Potrebic
6a7fef0e4a
Allow entity effect changes off the main thread for worldgen ( #8942 )
...
* Allow entity effect modification off the main thread for worldgen
* squash all async catcher patches
2023-04-09 11:38:32 -07:00
Jake Potrebic
b5ce6e3dc5
Updated Upstream (Bukkit/CraftBukkit/Spigot) ( #9104 )
...
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:
eb4b416d PR-822: Add experimental armor trim API
33498e1d PR-831: Add a standard of annotations for Minecraft experimental things and API
CraftBukkit Changes:
19de3550d SPIGOT-7315: Bed placement duplicates crops if cancelled
1eb88374e PR-1147: Add experimental armor trim API
c4c0bb0e9 Show clean error for invalidly configured server.properties options
3ae90697f Fix UUID not being updated when changing world of MapView
e43000601 PR-1164, MC-227255, MC-253819: Fix rotation of beehives and bells
Spigot Changes:
d2fdfe39 Rebuild patches
2023-04-09 01:00:50 +01:00
Jake Potrebic
29b17a892d
Updated Upstream (Bukkit/CraftBukkit/Spigot) ( #9088 )
...
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:
5efeb7bd Also update compiler version
c13b867a Update some Maven plugin versions
deb28d9f PR-837: Add more bell API
e938d62a PR-819: Allow Player#sendBlockDamage() to specify a source entity
0e75532c PR-818: Add more Guardian API, particularly for its laser
a10155aa PR-839: Add BlockData#rotate and BlockData#mirror
77e690b4 PR-836: Add missing API for explosive minecarts
60722059 PR-832: Allow getting chunks without generating them and optimize chunk data request for ungenerated chunks
0a2c4b4b PR-834: Add Player#sendHurtAnimation()
CraftBukkit Changes:
be8682aa8 Also update compiler version
08e305f5b Update some Maven plugin versions
187bdd463 PR-1160: Add more bell API
2f8e5bc7c PR-1145: Allow Player#sendBlockDamage() to specify a source entity
bcbb61b36 PR-1144: Add more Guardian API, particularly for its laser
722ddff6d PR-1162: Add BlockData#rotate and BlockData#mirror
80998277c PR-1159: Add missing API for explosive minecarts
1fddefce1 PR-1155: Allow getting chunks without generating them and optimize chunk data request for ungenerated chunks
20e8a486f PR-1157: Add Player#sendHurtAnimation()
Spigot Changes:
b31949f2 Rebuild patches
2023-04-07 19:39:13 +01:00
Jake Potrebic
ad6c14c62e
Fix unknown cmd msg for mc namespaced cmds ( #9059 )
2023-04-06 19:27:41 -05:00
Alex
e9f6e7ae8a
Properly resync player on Player#setPlayerProfile ( #9080 )
...
Currently breaking are potion effects and the XP bar, both are now being resent to make the client know about them again.
2023-04-06 18:21:33 -05:00
Shane Freeder
f5677aa472
Fix TPS command output ( #9091 )
...
* Fix TPS command output
* Cleanup + rebase
---------
Co-authored-by: Owen1212055 <23108066+Owen1212055@users.noreply.github.com>
2023-04-06 18:08:44 -05:00
Lulu13022002
3c8c22323f
Fix some broken block place logic ( #9094 )
...
- The dispensed shulker will not play the place sound (due to its logic been removed)
- The hanging sign text editor cannot be cancelled using the BlockPlaceEvent (not consistent with the other regular signs)
- The jukebox logic hasn't been synced with the RecordItem
2023-04-06 17:39:32 -05:00
Warrior
9b77660f07
Port airplane's use array for gamerule storage patch ( #9087 )
2023-04-06 14:18:45 +02:00
Shane Freeder
9367e6e6b3
Prevent GameEvents being fired from unloaded chunks
2023-04-06 12:42:10 +01:00
BlockyTheDev
e6ef1bae88
[ci skip] Update download urls ( #9100 )
2023-04-04 17:06:59 -07:00
Harry Devane
497b91939c
Fix ignoreCancelled having no effect on events registered by direct EventExecutor ( #9099 )
2023-04-04 22:40:31 +01:00
Lulu13022002
641dafd0a8
Cleanup some patches ( #9093 )
2023-04-04 11:47:16 +02:00
Shane Freeder
08491449ae
Do not send expired keys to players on login ( #9090 )
...
This patch will prevent sending expired keys to players when logging into a server, while the client does have some grace period to prevent issues, if a key has expired beyond the grace period, connecting clients will be disconnected from the server upon join. The client should update keys before this key even expires, and a new key will be broadcasted out if we somehow actually get one.
2023-04-03 10:45:02 +01:00
Jake Potrebic
9893e2b734
Deprecate ChatColor ( #9069 )
...
All API that uses it is deprecated
2023-04-02 11:53:29 -07:00
elmital
1d2fe64da8
fix: null SpawnReason for new player ( #9015 )
2023-04-02 13:37:53 -05:00
Cody
50e683de14
Added a config option for ticking markers ( #9034 )
2023-04-02 13:21:13 -05:00
Jake Potrebic
dc08c74cb3
Remove duplicate animate packet for records ( #8600 )
2023-04-02 13:05:30 -05:00
Owen
5fb3ab0109
Allow non player entities in scoreboards by default ( #9082 )
...
This in general caused much more confusion than needed, and in general, made rather negligible performance gains on collision.
2023-04-02 12:53:11 -05:00
powercas_gamer
7a96bf2095
Make debug dump file names consistent ( #9075 )
2023-03-31 13:17:57 +02:00
Shane Freeder
11ab383e4f
Don't use plugin-profiling to enable timings
...
The paper config has taken precidence over this for a long time
with 0 complaints, and now it's tripping the deprecation warning,
even if timings is disabled in the paper config.
2023-03-31 05:47:59 +01:00
Lulu13022002
06fdc02537
[ci skip] Correct upstream/paper javadoc ( #8286 )
2023-03-30 21:09:13 -07:00
Nassim Jahnke
bf92f3e4db
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:
9153f77e PR-841: Remove incorrect ClickType.CONTROL_DROP from ClickType#isShiftClick
bceda6ab PR-840: Adjust annotations in Display entity interface
a6b85ac3 PR-835: Add Jukebox#hasRecord() and #startPlaying(), clarify #setRecord()
CraftBukkit Changes:
e142fb9fd SPIGOT-7188: ChunkSnapshot biome y coordinate doesn't match chunk biome y coord
eff1743b9 SPIGOT-7313: More accurately edit data on Jukeboxes
2023-03-30 15:40:15 +02:00
Riley Park
cbcdfd03e7
Make other link in deprecation message clickable too
2023-03-29 19:35:26 -07:00
Jake Potrebic
ef5fa90932
Fix crash relating to bad recipes in furnace-like tile entities ( #9011 )
2023-03-30 03:29:38 +01:00
Riley Park
a13759afcc
Turn deprecation message into a Component
to be used in the command at a later date
2023-03-29 19:15:21 -07:00
Riley Park
32875b429a
8948: Nag when timings is enabled or a plugin creates a new Timing
2023-03-29 12:30:37 -07:00
Jake Potrebic
5c78e77da5
Fix api checking banned ips ( #9026 )
2023-03-27 20:23:34 -07:00
Nassim Jahnke
9940019ff8
Deprecate public Timings classes for removal ( #8949 )
2023-03-27 19:58:46 -07:00
Ryan
ce2a36dbd6
Fix PluginMeta#getDisplayName ( #9038 )
...
* fix plugin versioning
* fix properly
* fix version command
* ngl idk where my logic was behind this
2023-03-27 19:56:09 -07:00
Jason
bd62f2c2dd
Fix chat messages being logged without formatting to console ( #9058 )
2023-03-27 10:19:23 -07:00
Jake Potrebic
fbf74ba0ac
Updated Upstream (CraftBukkit) ( #9053 )
...
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:
f92c94517 SPIGOT-7310: PlayerToggleSneakEvent is not called when a player sneaks while riding an entity
b5714184d SPIGOT-7316: Cancelling EntityUnmountEvent does not stop the all effects of the unmounting
e237f8c88 SPIGOT-7312: Entity#setVisibleByDefault on player causes skin reset on this player client
2023-03-26 13:29:41 -07:00
Jake Potrebic
a622ebacd4
Fix beehives generating from using bonemeal ( #9052 )
2023-03-26 12:07:32 -07:00
Emily
d5abb94e69
Expose Path to jar file in PluginProviderContext ( #9030 )
...
* Expose Path to jar file in PluginProviderContext
* rename accessor, reword jd
2023-03-24 23:30:48 -07:00
Jake Potrebic
38be4f873b
Updated Upstream (Bukkit/CraftBukkit/Spigot) ( #9018 )
...
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:
2c64d8c4 SPIGOT-7309: Add API for jukebox inventories
a6d7e4ca PR-826: Add Sniffer API
CraftBukkit Changes:
93813509b SPIGOT-7309: Add API for jukebox inventories
2d5209e8d PR-1153: Handle teleport reason in spreadplayers command
f5b61387e SPIGOT-7308: Fix NullPointerException when calling Jukebox#setRecord()
388d458a6 SPIGOT-7306: Fix reset of coords in default teleportTo in EntityPlayer
40b87e1af PR-1150: Add Sniffer API and handle EntityItemDropEvent
Spigot Changes:
6ad4b93c SPIGOT-7298: Fix debug stick always permission left click toggle
2023-03-24 13:38:40 -07:00
Jake Potrebic
a0f548f5ec
Don't warn for deprecated PrepareGrindstoneEvent ( #9036 )
2023-03-24 13:19:17 -07:00
Jake Potrebic
23b0ef524a
[ci skip] rebuild patches
2023-03-23 14:57:03 -07:00
Riley Park
9087a644a3
chore: cleanup annotations in api adventure patch
2023-03-23 10:51:08 -07:00
Nassim Jahnke
92f872c146
Fix bad diff in wandering trader spawn rate patch from .4 update
2023-03-23 14:35:17 +01:00
Jake Potrebic
e8b82590d0
[ci skip] Properly document firing of Entity/BlockExplodeEvent ( #9014 )
2023-03-20 02:11:23 -07:00
Jake Potrebic
7af4cd3647
Updated Upstream (Bukkit/CraftBukkit) ( #9013 )
...
* 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:
150a2861 PR-827: Add BlockData#getPlacementMaterial
58c9c8ce SPIGOT-7301: Prevent creating non-openable inventories
3741079b PR-824: Expand upon PotionEffect API to better accommodate infinite durations
CraftBukkit Changes:
e5a7921f0 PR-1149: Add BlockData#getPlacementMaterial
58504fa61 SPIGOT-7302: Fix more issues with EntityDamageByEntity - Fix Projectile damage by dispenser - Fix cases where only exists a direct entity damager
48394703d Increase outdated build delay
* Improve docs for BlockData#getPlacementMaterial
2023-03-20 01:47:10 -07:00
Jake Potrebic
c7520ec49d
Use class loggers without the fqn for non-debug logging ( #9012 )
2023-03-20 09:23:52 +01:00
JOO200
ff603cb76d
adventure: make calls with generic component lists more usable ( #9008 )
...
This should allow the usage of ItemStack#lore and other methods with a List<TextComponent>
2023-03-20 09:18:06 +01:00
Jake Potrebic
83948f6f59
Fire reload event after everything has been reloaded ( #9003 )
...
This event is going to be more important very shortly (hopefully)
2023-03-19 12:28:28 -07:00
Jake Potrebic
eb0950290d
Fix entity damage event triggers ( #8995 )
2023-03-19 11:58:34 -07:00
Jason
662b85e00e
Use random UUIDs instead of incrementing long for click callback ids ( #9007 )
2023-03-19 11:25:45 -07:00
Emily
510082222b
Re-enable multi-release plugin JARs ( #9001 )
2023-03-19 15:50:13 +01:00
Jake Potrebic
055f7228f0
Add back optimize hoppers ( #8999 )
2023-03-18 12:03:42 -07:00
Nassim Jahnke
2a024870de
Fix setItem with air on chiseled bookshelves
2023-03-18 18:52:24 +01:00
Jake Potrebic
11f5158eaa
Fix SpawnEggMeta#get/setSpawnedType ( #8907 )
2023-03-18 10:32:03 -07:00
Jake Potrebic
5730a94208
Updated Upstream (Bukkit/CraftBukkit) ( #8991 )
...
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:
2b4582fb SPIGOT-5916: getLastColors does not work with the rgb colors
CraftBukkit Changes:
f7707086d SPIGOT-7299: Fix indirect/anvil damage events and minor improvements
2023-03-18 10:05:04 -07:00
Owen
79db3a2a4b
Add Shearable API ( #6796 )
2023-03-17 16:11:08 -05:00
Jake Potrebic
85a67dadf2
Fix certain inventories returning null Locations ( #8985 )
2023-03-16 11:47:05 -07:00
XanderDeKeijzer
646f590779
Fix changeGameModeForPlayer to use gameModeForPlayer MC-259571 ( #8987 )
2023-03-16 17:06:40 +01:00
Nassim Jahnke
5a1e1584aa
Fix text display error on spawn
...
Fixes #8984
2023-03-16 16:28:48 +01:00
Nassim Jahnke
fe881073af
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:
2651717c SPIGOT-7292: Support for alpha channel in Color and a few improvements
CraftBukkit Changes:
dbc32ffa0 SPIGOT-7292: Support alpha channel in Display entities
cef8bd993 SPIGOT-7294: Call EntityDamageEvent for Interaction entity
2023-03-16 10:07:12 +01:00
Jake Potrebic
4f933b2405
Fix structure loading
2023-03-15 18:57:33 -07:00
Jake Potrebic
a2918a5fea
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:
3a54fb16 SPIGOT-7296: Add ItemFlag#HIDE_ARMOR_TRIM
CraftBukkit Changes:
55056ad80 SPIGOT-7295: Fix Sniffer data defined in incorrect position
2023-03-15 12:59:34 -07:00
Nassim Jahnke
9b0e97b75b
Update DataConverter
2023-03-15 20:19:36 +01:00
Owen
eb0232ef09
Camel EntityToggleSitEvent ( #8970 )
2023-03-15 15:37:41 +01:00
Nassim Jahnke
73cf1257ca
Update adventure to 4.13.0
2023-03-15 13:21:52 +01:00
Jake Potrebic
647cf31e61
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:
fdef9473 Correct Material#isFuel for new experimental materials
42811598 SPIGOT-7293: Add Biome#CHERRY_GROVE
CraftBukkit Changes:
968d28df0 Fix availability of experimental datapack features in unit tests
2023-03-15 04:54:45 -07:00
Nassim Jahnke
3bc992d8f2
Updated Upstream (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
CraftBukkit Changes:
e1fc95c50 Fix crash with 1.20 smithing table
04dfb921d Fix crash with juke boxes
1264a6fb5 Fix crash with composters
2023-03-15 10:33:43 +01:00
Jake Potrebic
92a019385d
HIDE_UPGRADES and fixes for sniffer and new smithing table
2023-03-14 20:04:41 -07:00
Jake Potrebic
28d49a1b58
Fix jukeboxes
2023-03-14 19:17:28 -07:00
Jake Potrebic
2c485d1485
Fix composter throwing UOE with new game event
2023-03-14 18:27:20 -07:00
Jake Potrebic
ffab9f2bc1
Add back item entity global player list check
2023-03-14 17:36:12 -07:00
Jake Potrebic
482dfc2db0
make tests work again
2023-03-14 17:21:35 -07:00
Jake Potrebic
b93379bd7f
Add missing annotation
2023-03-14 17:08:41 -07:00
Jake Potrebic
3e54639d9c
readd exploded block state patch
2023-03-14 17:06:28 -07:00
Jake Potrebic
c225146bc9
Add component methods to TextDisplay entity
2023-03-14 16:52:28 -07:00
Jake Potrebic
94604b6474
Fix icon in timings
2023-03-14 16:44:53 -07:00
Jake Potrebic
dbeef458b2
make tests pass
2023-03-14 16:29:38 -07:00
Jake Potrebic
0f17027652
fix more compile errors
2023-03-14 16:10:18 -07:00
Jake Potrebic
72923817d6
fix some compile errors
2023-03-14 15:13:41 -07:00
Nassim Jahnke
7954d96905
One fix
2023-03-14 22:35:03 +01:00
Nassim Jahnke
7d24f2ef06
Applied all patches
2023-03-14 22:29:14 +01:00
Nassim Jahnke
18d51375b8
More more more more more more more more patches
2023-03-14 22:10:53 +01:00
Nassim Jahnke
1295869b43
More more more more more more more patches
2023-03-14 21:58:00 +01:00
Jake Potrebic
bacf389fc3
Use adventure serializer when serializing an adventure component in a codec ( #8967 )
2023-03-14 21:27:18 +01:00
Nassim Jahnke
9dccea73fb
More more more more more more patches
2023-03-14 21:25:13 +01:00
Nassim Jahnke
0f5c422d24
More more more more more patches
2023-03-14 20:54:57 +01:00
Jake Potrebic
f4c92b410c
Add more experimental annotations
2023-03-14 12:53:01 -07:00
Nassim Jahnke
0e2d6d6550
More more more more patches
2023-03-14 20:24:52 +01:00
Nassim Jahnke
bdeb519d1b
More more more patches
2023-03-14 19:59:51 +01:00
Jake Potrebic
562e74263b
update adventure docs link in bungeecord-chat javadocs
2023-03-14 11:59:28 -07:00
Nassim Jahnke
9a731dc325
More more patches
2023-03-14 19:38:47 +01:00
Jake Potrebic
cf4eac0a17
mark experimental api correctly and add missing isFuel
2023-03-14 11:08:41 -07:00
Nassim Jahnke
2b6be6f1b3
More patches
2023-03-14 19:05:23 +01:00
Nassim Jahnke
2cd29ddbb5
API 'done'
2023-03-14 18:21:11 +01:00
Nassim Jahnke
2ed604cf72
Start working on 1.19.4
2023-03-14 18:11:24 +01:00
Jake Potrebic
155aa36d89
Properly handle load before plugins in legacy loading ( #8962 )
2023-03-12 11:00:02 -07:00
Moulberry
18470db17f
Fix getTargetEntity not targeting creative players ( #8960 )
2023-03-12 12:50:02 +00:00
Jake Potrebic
4e994669d3
Updated Upstream (Bukkit/CraftBukkit/Spigot) ( #8874 )
...
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:
6b3c598b PR-814: Add a method to send multiple equipment changes
181a984b Update Maven shade version to align with CraftBukkit
a5a36e32 Revert "Update Maven shade version to align with CraftBukkit"
7a8f4a42 Update Maven shade version to align with CraftBukkit
58327201 Add support for Java 20
CraftBukkit Changes:
b56426c7a PR-1142: Calculate explosion damage separately for each affected EntityComplexPart
fbe3410af PR-1140: Add a method to send multiple equipment changes
8434e3633 Add support for Java 20
c998a1d23 Increase outdated build delay
4a929b5d6 SPIGOT-7267: Fix EntityType#getTranslationKey() and add unit test
086d8dc8a SPIGOT-7268: CraftMetaPotion reads ShowParticles and ShowIcon properties incorrectly
8ba5e399e SPIGOT-7262: Improve visibility API
Spigot Changes:
a2190e30 Rebuild patches
2023-03-10 12:18:50 -08:00
Owen
4d7269e07c
Correctly Remove Classloaders, Avoid Loading Providers in /paper dumpplugins, Fix library lookup ( #8938 )
2023-03-06 18:20:11 -06:00
Owen
bf2053a156
Fix Player#setPlayerProfile ( #8939 )
2023-03-06 17:15:25 -06:00
Jake Potrebic
27c05030e5
Correctly handle ArmorStand invisibility ( #8944 )
2023-03-06 10:17:03 -08:00
Jake Potrebic
5cc78f2b6f
Use configured log prefix for spigot library loading ( #7934 )
2023-03-05 11:02:52 -08:00
Noah van der Aa
6f57163e4a
Add CompostItemEvent and EntityCompostItemEvent ( #6356 )
2023-03-05 11:59:48 -06:00
Noah van der Aa
75280ef51c
Fix cancelling EntityDeathEvent for Armor Stands killed by players ( #6478 )
2023-03-05 11:48:34 -06:00
Jake Potrebic
541753be25
Fix HumanEntity#drop not updating the client inventory ( #6761 )
2023-03-04 14:57:02 -08:00
Lulu13022002
e5e75dd008
Include previous spawn angle in SpawnChangeEvent ( #8606 )
2023-03-04 16:42:10 -06:00
Lulu13022002
f2075c4d3c
Take in account waterlogged block for the event ( #8623 )
...
There's some inconsistencies between the EntityChangeBlockEvent and the BlockDestroyEvent. The destroy event has always the right final type but the change block event has always air even for waterlogged blocks. This fix this behavior only for possible case to avoid a bigger patch.
2023-03-04 16:35:26 -06:00
Lulu13022002
3dcf4e4198
Add EntityFertilizeEggEvent ( #8041 )
2023-03-04 16:23:32 -06:00
Owen
d30cda1273
Add TeleportFlags ( #8855 )
...
Abstracts relative teleport flags and instead makes a generic TeleportFlag option. This has the benefit of being able to easily add new flags in the future.
This adds a new flag, which allows you to keep inventories open when teleporting players (vanilla behavior).
These are breaking changes to the teleport api, however, it's still marked as experimental so I find this a fair change.
2023-03-04 16:07:23 -06:00
Moros
8a815a0eae
Fix rendering for translatable death messages ( #8534 )
2023-03-04 15:56:38 -06:00
Glare
4151f752f1
/paper entity list QOL improvements ( #8876 )
...
This PR implements a QOL feature to /paper entity list <entity> where it will allow a user to teleport to chunk.
2023-03-04 15:35:07 -06:00
Jason Penilla
a172880e7d
Update ForgeFlower to 2.0.627.2, fixes dev bundle not applying with Java 19 runtime
2023-03-04 12:01:07 -07:00
Jake Potrebic
e57441254d
Replace ConfiguredStructure api with Structure ( #8642 )
2023-02-28 08:36:01 -08:00
Viktor Hrekh
f408c253ec
Log message if plugin bootstrap provided external plugin instead of throwing an exception ( #8914 )
2023-02-28 13:17:49 +01:00
Warrior
dead691e8c
Fix MC-157464 Prevent sleeping villagers moving towards food ( #8923 )
2023-02-28 13:14:17 +01:00
Lulu13022002
5170d6f159
Update the flag when a captured block state is outdated ( #8860 )
2023-02-28 13:13:59 +01:00
Emily
b670798876
Close plugin jar file on classloader close and after retrieving name for updating ( #8902 )
2023-02-28 12:34:33 +01:00
Nassim Jahnke
4ae202eb82
Fix getBlockStateIfLoaded world bounds check
...
Closes #8922
2023-02-28 12:27:38 +01:00
Jake Potrebic
08e6622b81
fix runServer tasks
2023-02-27 16:30:33 -08:00
Nassim Jahnke
ad3e1bc121
Don't log or die on cyclic dependencies of Spigot plugins
2023-02-27 12:09:10 +01:00
Jason
16fc1a175e
Make PluginProviderContext#getLogger return ComponentLogger, remove PluginProviderContext#getSLF4JLogger ( #8921 )
2023-02-26 12:13:15 -07:00
Jake Potrebic
fc072c0954
Fix forced respawn with respawn anchor ( #8845 )
2023-02-26 09:38:42 -08:00
SoSeDiK
2f953a8843
Additional ExplosiveMinecart API ( #8896 )
2023-02-26 08:01:43 -08:00
Noah van der Aa
e2b8e6b548
chore: update adventure documentation url in javadocs ( #8912 )
2023-02-26 08:00:55 -08:00
Jake Potrebic
ed44f69c9b
Fix NamespacedKey#equals not accepting other Key types ( #8919 )
2023-02-26 06:59:52 -08:00
Owen
81d7ff6e31
Properly re-add providers when reloading ( #8881 )
2023-02-23 12:58:50 -05:00
Nassim Jahnke
88367398d9
Update adventure doc links
2023-02-23 17:55:36 +01:00
Nassim Jahnke
c7a82c1a50
Clean up hopper optimization patch
2023-02-23 17:37:56 +01:00
Lulu13022002
50eacd3c04
Avoid duplicate game event on initial fill ( #8887 )
2023-02-23 10:37:28 +01:00
Jake Potrebic
6b7764327c
Fix chat messages logged in console ( #8872 )
2023-02-23 10:37:18 +01:00
Jake Potrebic
ce2b6b2bcb
Properly log any Throwable on plugin class creation ( #8897 )
2023-02-23 10:36:45 +01:00
Jakubk15
062028941f
Do not send plugin headers when it is not required ( #8889 )
2023-02-22 17:59:42 -06:00
Bjarne Koll
87bb3e6f4c
Close library classloader and improve PluginDescriptionFile ( #8901 )
2023-02-22 21:54:27 +01:00
Jake Potrebic
a9ab68427c
Fix update folder logging error when no folder exists ( #8891 )
2023-02-22 21:17:58 +01:00
Owen
60b83fee1e
Validate providers when populating load order tree ( #8890 )
2023-02-22 10:59:12 -05:00
Jake Potrebic
bb63a6156d
Fix JavaPlugin static getPlugin methods ( #8888 )
2023-02-21 21:27:49 -06:00
Jake Potrebic
ddc0a99f52
Further clarify functionality of damageItemStack methods ( #8878 )
2023-02-21 09:35:25 -08:00
Space Walker
8b37e9e2aa
update alternate current to v1.5.0 ( #8882 )
2023-02-21 17:58:18 +01:00
Bjarne Koll
d9699b5935
Configure mokitor Server mock as stubOnly ( #8861 )
...
A recent patch moved the internal unit tests to mokito, allowing
deep mocking to easily setup a mocked server instance.
While this change is useful, the server's Server#getItemFactory methods
is one of the hottest paths during unit testing, being called numerous
times by material tests.
As mokito mocks keep track of each invocation to allow for verifications
of invocations down the line, the server mock allocates a huge amount of
memory to keep track of all invocations, ultimately leading to an OOM
exception.
The previous solution solved this by increasing the tests memory to 2 GB,
however as of right now simply configuring the server mock as "stubOnly",
properly prevents the overflow of invocation records as none of the unit
test code relies on invocation verification.
2023-02-21 17:18:49 +01:00
Owen
8427c88987
Redefine Cyclic Dependencies ( #8873 )
2023-02-20 19:09:38 -06:00
Owen
0e4f2cc527
Small paper plugin fixes ( #8866 )
...
Co-authored-by: Bjarne Koll <lynxplay101@gmail.com>
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2023-02-20 13:02:53 -05:00
Nassim Jahnke
8c4e81184b
Update circular dependencies warning, properly crash
...
Also fixes logging errors
2023-02-20 15:20:49 +01:00
Owen
7baf427e90
Fix plugin updater logic, allow null update directory ( #8864 )
2023-02-19 12:17:51 -06:00
Owen
841da90501
Paper Plugins ( #8108 )
2023-02-19 08:57:10 -06:00
Jake Potrebic
f9dc371fd8
Fix calling UnknownCommandEvent ( #8232 )
2023-02-16 18:07:30 -08:00
Shane Freeder
27516ee39e
Temp fix for EntityType.translationKey
...
Upstream improperly used the enum name for looking up the vanilla entity
type to get the translation key; temp patch this until upstream fixes this,
also add some quick validation
2023-02-16 03:22:57 +00:00
Jake Potrebic
5c87711301
Make sure Registry is loaded after Bukkit.setServer() ( #8853 )
2023-02-15 15:00:22 -08:00
Jake Potrebic
03a4e7ac75
Updated Upstream (Bukkit/CraftBukkit) ( #8832 )
...
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:
37262de8 PR-812: Add Registry#match(String)
d6b40162 SPIGOT-4569: Add more BlockData API
f9691891 PR-809: Throw a more clear error for BlockIterators with zero direction, add Vector#isZero()
91e79e19 PR-804: Added methods to get translation keys for materials, itemstacks and more
426b00d3 PR-795: Add new BiomeParameterPoint passed to BiomeProvider#getBiome
0e91ea52 SPIGOT-7224: Add events for brewing stands and campfires starting their actions
CraftBukkit Changes:
a50301aa5 Fix issues with fluid tag conversion and fluid #isTagged
6aeb5e4c3 SPIGOT-4569: Implement more BlockData API
7dbf862c2 PR-1131: Added methods to get translation keys for materials, itemstacks and more
7167588b1 PR-1117: Add new BiomeParameterPoint passed to BiomeProvider#getBiome
7c44152eb SPIGOT-7224: Add events for brewing stands and campfires starting their actions
2023-02-15 14:10:14 -08:00
Jake Potrebic
afe633df08
convert API/server tests to mockito ( #8848 )
...
* convert API tests to mockito
* convert server tests to mockito
* add co-author
2023-02-15 13:27:40 -08:00
brickmonster
f2f9e8cc4d
Remove patch that was made obsolete by vanilla ( #8847 )
2023-02-13 18:52:27 +01:00
TM (Holly)
8d1acf68ed
Call PlayerReadyArrowEvent for when items in the offhand are used ( #8842 )
2023-02-13 10:36:25 +01:00
Jake Potrebic
bb05fcf4ca
Add missing isFuel Material entries ( #8843 )
2023-02-12 13:02:01 -08:00
Lulu13022002
bd77b78e4f
Fix desync of honeycomb when the event is canceled ( #8713 )
2023-02-11 12:14:03 -05:00
Andreas Prues
7e7e6b4bab
More Win Screen API ( #8805 )
...
Adds methods to get and set whether a player has seen the win screen before.
2023-02-11 09:55:45 -06:00
SamB440
de38a45c34
Add projectile hit simulation API ( #8816 )
...
This adds API to force a projectile to hit a provided entity. Example usage could be if you have a player disguised as another entity, you could simulate an arrow colliding with the (fake) entity hitbox.
2023-02-11 09:41:06 -06:00
Matt Artist
afa16e6b64
Modify offline mode warning to include Velocity line ( #8812 )
...
This adds a check to the offline-mode warning to see if Velocity is enabled. If it is enabled then it warns the user to make sure to secure their server and links to the Velocity documentation on that.
2023-02-10 17:10:11 -06:00
Nassim Jahnke
5eca9642e1
[ci skip] Rebuild patches
2023-02-09 18:45:15 +01:00
Drex
0c9ace8f78
Add AntiXray layered obfuscation mode ( #8799 )
2023-02-09 18:38:00 +01:00
Piotr Pasztor
0c3311c3b2
Add Entity Body Yaw API ( #8822 )
2023-02-09 18:31:51 +01:00
Emily
39aef524ee
Fix Tick::addTo
/::between
causing SOE ( #8824 )
2023-02-09 18:30:30 +01:00
Martijn
96fd31b762
Fix chunk sending when the computed time overflows ( #8833 )
2023-02-09 18:27:24 +01:00
Nassim Jahnke
7569191fed
Send disguised chat for vanished players
2023-02-09 18:15:21 +01:00
Jake Potrebic
57f1157871
Updated Upstream (Bukkit/CraftBukkit) ( #8823 )
2023-02-07 07:55:53 -08:00
Jake Potrebic
b9b4c9a314
Deprecate duplicate API for arrow stuck count ( #8829 )
2023-02-07 07:43:20 -08:00
Jake Potrebic
4da844f1e3
Fix force-opening enchantment tables ( #8820 )
2023-01-27 13:01:36 -08:00
Jake Potrebic
9147456fc9
Updated Upstream (CraftBukkit/Spigot) ( #8815 )
...
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:
ab8ace685 SPIGOT-7236: Bone meal doesn't increase use statistic
7dcb59b8e Avoid switch on material in previous commit
Spigot Changes:
19641c75 SPIGOT-7235: World.Spigot#strikeLightningEffect doesn't do anything
2023-01-27 12:52:04 -08:00
Josh Roy
18fabc08d5
Remove CraftItemStack#setAmount null assignment ( #8807 )
...
This creates a problem with Paper's item serialization
api where deserialized items, which are internally
created as a CraftItemStack, will be completely lost if
#setAmount(0) is invoked (since the underlying handle
is set to null), while a regular Bukkit ItemStack
simply sets the amount field to zero, retaining the
item's data.
Vanilla treats items with zero amounts the same as items
with less than zero amounts, so this code doesn't create
a problem with operations on the vanilla ItemStack.
2023-01-24 15:30:51 +01:00
Aya
b1b19b67f2
[ci skip] Fix PiglinBarterEvent JavaDoc ( #8795 )
2023-01-22 19:33:21 +01:00
Andreas Prues
b082d8970b
Win Screen API ( #8802 )
2023-01-22 14:21:45 +01:00
Aya
2eca2a27b0
Add Player#sendEquipmentChange(Map) API ( #8800 )
2023-01-22 14:00:37 +01:00
Bjarne Koll
42fecd0a5f
Correctly shrink items during EntityResurrectEvent ( #8780 )
...
The EntityResurrectEvent logic is supposed to locate a totem of undying
in any of the interaction slots of the player inventory and then, if the
called EntityResurrectEvent is not cancelled, shrink that item by 1,
usually reducing it to zero.
For this, the logic iterates over the items in the interaction slots and
breaks out the loop if a totem of undying was found.
However, even if no totem of undying was found, the iteration item stack
variable remains as a refernce to the last interaction slot probed.
Plugins uncancelling a EntityResurrectEvent, which is published
pre-cancelled to listeners if no totem of undying could be found,
would hence cause the server logic to shrink completely unrelated items
found in, at the writing of this patch, the players off hand slot.
This patch corrects this behaviour by only shrinking the item if a totem
of undying was found and the event was called uncancelled.
2023-01-19 23:09:08 +01:00
Nassim Jahnke
0ed4b9148b
Revert executor in authentication thread pool back to original patch
2023-01-18 17:20:24 +01:00
alex6777
567ff90111
Don't clone location in PreCreatureSpawnEvent ( #8790 )
2023-01-16 16:03:58 +01:00
Nassim Jahnke
ec9dba85db
Update netty to 4.1.87
2023-01-14 19:53:32 +01:00
froobynooby
5aee09dd28
Fix entity types not appearing in timings ( #8786 )
2023-01-14 01:03:13 +00:00
Jake Potrebic
171934562b
Fix some explosion damage not scaling with difficulty ( #8767 )
...
Fixes https://github.com/PaperMC/Paper/issues/8735
2023-01-11 17:10:45 -08:00
Corey Shupe
7a64b85f92
Fix player chat messages from vanished players resulting in kicks ( #8777 )
...
Co-authored-by: Nassim Jahnke <nassim@njahnke.dev>
2023-01-10 14:01:42 +01:00
Jake Potrebic
8e08d9b023
Fix treasure map config for loot tables ( #8739 )
2023-01-10 13:09:19 +01:00
byquanton
92c1a3e392
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:
79e39671 SPIGOT-7034: Add methods for set/get instrument in Goat Horn
CraftBukkit Changes:
4768df736 SPIGOT-7034: Add methods for set/get instrument in Goat Horn
941d7e954 SPIGOT-7225: FireworkMeta#getPower() can throw a NullPointerException for items with no power set
2023-01-09 21:46:23 +00:00
Jake Potrebic
214a8c54a4
Use single player info update packet on join ( #8773 )
2023-01-08 18:46:54 -08:00
Hannes Greule
035f9d7157
Fix items never falling after being on ground ( #8768 )
2023-01-07 13:05:13 +01:00
Nassim Jahnke
b29e07bebd
[ci skip] Fix instrument reference in item specific hide flag docs
2023-01-05 20:28:43 +01:00
Bjarne Koll
f88384efb3
Persist paper lootable on entities ( #8762 )
2023-01-05 11:59:10 +01:00
Nassim Jahnke
940c9a3493
Replace ItemFlag.HIDE_POTION_EFFECTS ( #8765 )
2023-01-05 11:54:21 +01:00
Hannes Greule
de5b1da681
Fix operator precedence bug ( #8756 )
2023-01-03 14:42:58 +01:00
Jake Potrebic
51cfcc88da
Updated Upstream (Bukkit/CraftBukkit) ( #8740 )
...
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:
d352d965 SPIGOT-7221: Add Enemy (Entity) interface
CraftBukkit Changes:
397c5557c SPIGOT-7221: Add Enemy (Entity) interface
a0d3dfaf2 PR-1129: Fix state corruption while handling explosion damage on EntityComplexPart
d67777f8b SPIGOT-7218: Player's outer layer of skin disappears after respawn
2023-01-01 12:17:40 -08:00
Lulu13022002
ddd8745d14
[ci skip] Fix hoglin conversionTime javadoc ( #8734 )
2022-12-30 15:08:02 -05:00
Owen
8d7d92709d
Return 0 if null for FireworkMeta ( #8738 )
2022-12-30 11:33:41 -06:00
Jake Potrebic
90750a6591
Rework filtering spawn egg and tile entity nbt config ( #6613 )
2022-12-27 18:59:15 -08:00
SoSeDiK
fa42c68b73
Expose pre-collision moving velocity to VehicleBlockCollisionEvent ( #8457 )
2022-12-27 16:56:19 -06:00
TreyRuffy
2040c1ec71
Player Flying Fall Damage API ( #5357 )
2022-12-27 14:41:59 -06:00
Jake Potrebic
52718dba10
Updated Upstream (Bukkit/CraftBukkit) ( #8714 )
...
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:
aef9b6d2 PR-800: Add support for NoteBlock sounds in Skulls
CraftBukkit Changes:
ae8f5fc02 PR-1125: Add support for NoteBlock sounds in Skulls
0a1c89e4b SPIGOT-7212: Allow negative firework power
909a246af SPIGOT-7211: generateTree() with Consumer or Predicate is broken
c810c3ed8 Increase outdated build delay
2022-12-26 09:53:35 -08:00
Jake Potrebic
78a91dfb48
Fix (again) Player#getPlayerProfile no such method error ( #8722 )
2022-12-26 13:34:23 +01:00
Owen
1975fbe368
Respect SpigotConfig logCommands & fix stopDancing() NPE ( #8715 )
2022-12-25 22:22:08 -06:00
Jake Potrebic
3331501f8e
Use team display name for quit message ( #7127 )
2022-12-25 08:57:54 -08:00
Owen
f26e9ccdd0
Tadpole lock API ( #8297 )
2022-12-23 14:50:32 -06:00
aerulion
47abd1c50c
Add EntityPushedByEntityEvent ( #7704 )
2022-12-23 13:59:11 -06:00
TehBrian
e6f61f715d
fix ArmorStandMeta not applying false flags ( #8632 )
2022-12-23 11:30:42 -06:00
Noah van der Aa
5717b84708
Add config option for spider worldborder climbing ( #6448 )
...
Co-authored-by: BillyGalbreath <blake.galbreath@gmail.com>
2022-12-23 10:51:24 -06:00
Noah van der Aa
c59922d94e
Expose signed message in chat events ( #8694 )
2022-12-23 09:54:04 -06:00
Jake Potrebic
8e83c3c7b4
Deprecate ProjectileCollideEvent ( #8678 )
...
replaced by ProjectileHitEvent
propagated the cancellation of the legacy event
to the modern one
2022-12-22 21:20:44 -08:00
Lulu13022002
e05ba9866d
Avoid to spam the transform event for hoglin->zoglin conversion ( #8712 )
2022-12-22 14:39:07 -08:00
Jake Potrebic
048ee5872d
Fix OfflinePlayer getPlayerProfile return type ( #8710 )
2022-12-21 20:30:21 -08:00
Nassim Jahnke
7b52db5f61
Fix buffer-joins-to-world patch
2022-12-21 22:55:42 +01:00
Jake Potrebic
94373f0143
Fix OfflinePlayer#getPlayerProfile returning deprecated type ( #8543 )
2022-12-20 10:56:33 -08:00
Jake Potrebic
c1bca9ad34
Add exploded block state to BlockExplodeEvent ( #6818 )
2022-12-19 21:09:51 -08:00
Nassim Jahnke
d5f1ffc2e6
Remove somewhat broken patch
...
With the new chunk system it doesn't hurt too much to (temporarily) remove this until implemented in a safer manner
2022-12-19 11:46:55 +01:00
Lulu13022002
e498ddaa61
Add missing EntityChangeBlockEvent ( #8696 )
...
* Add missing EntityChangeBlockEvent
* Fix duplicate empty bottle when canceled for creative player
* Use native update impl instead of craftbukkit -> nms
2022-12-17 10:20:14 -08:00
Jake Potrebic
f7a13449e2
Improve PortalEvents ( #8679 )
2022-12-17 09:36:02 -08:00
Jason Penilla
f3eb2c70e0
Fix reobf issue in previous commit
2022-12-17 00:46:46 -07:00
Jason
86ed0d596a
ChatProcessor fixes ( #8690 )
...
Fixes handling for `ForwardingAudience.Single` and passes the signed message to non-native `Audience` types
2022-12-16 23:05:48 -07:00
Jake Potrebic
44dc5a4c26
Don't call lock check event if the block entity doesn't exist ( #8687 )
2022-12-16 13:31:51 -08:00
Jake Potrebic
aa9c200ea1
Fix metrics reporting unknown paper version ( #8683 )
...
Co-authored-by: BillyGalbreath <Blake.Galbreath@GMail.com>
2022-12-16 09:37:06 -08:00
Jake Potrebic
39d3a03bff
Fix Player#chat for 1.19.3 ( #8684 )
2022-12-16 09:15:21 -08:00
Jake Potrebic
262c08f64f
Updated Upstream (CraftBukkit) ( #8680 )
...
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:
2ed3e3e6e SPIGOT-7210: Fix structures in custom worlds
585ab5ba1 SPIGOT-7207: WorldCreator creates world as super flat even when normal is specified
2022-12-15 17:16:34 -08:00
Jakub Žáček
28c7d40326
Add Sneaking API for Entities ( #8485 )
2022-12-15 11:43:14 -08:00
Jake Potrebic
0262de0ddb
Deprecate TargetBlock/EntityInfo and assocated methods ( #7381 )
2022-12-15 09:10:03 -08:00
Jake Potrebic
3aec8630bb
Add BlockLockCheckEvent ( #7840 )
2022-12-15 08:49:49 -08:00
Nassim Jahnke
20503beee5
Remove guardian beam render issue workaround
...
Messing with game time sent to the client isn't worth the trouble whenever it may be used by the client now and in the future for such a small issue. Mojang, plz fix
2022-12-15 14:19:09 +01:00
Jake Potrebic
eec64a4e05
Fix explosion yield with new gamerules ( #8674 )
2022-12-14 20:01:31 -08:00
Jake Potrebic
7789bc5afa
Improve some logging and errors ( #8673 )
2022-12-14 19:54:43 -08:00
Jake Potrebic
66437d059f
Add more breakNaturally functionality ( #7379 )
2022-12-14 19:37:16 -08:00
Jake Potrebic
1c535f96ac
Remove deprecated event warning for inventory result event ( #8672 )
2022-12-14 15:09:11 -08:00
Jake Potrebic
c97581978a
Fix inconsistencies in dispense events regarding stack size ( #8653 )
...
* Fix inconsistencies in dispense events regarding stack size
The javadocs for BlockDispenseEvent suggest the ItemStack is a single
item which is being dispensed. Before this fix, sometimes it was the whole
stack before a single item had been taken. This fixes that so the stack size
is always 1.
* Ensure stack size is correct in minecart and armor dispense behaviors
2022-12-14 13:05:11 -08:00
Jake Potrebic
c919e944ff
Updated Upstream (Bukkit/CraftBukkit) ( #8663 )
...
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:
f50ad1f8 PR-798: Add PrepareGrindstoneEvent and refactor related events to use PrepareInventoryResultEvent
0cac7963 SPIGOT-7204: Add TeleportCause#DISMOUNT
b4dd47b0 SPIGOT-7202: Deprecate removed door effects
CraftBukkit Changes:
ab1586c2f PR-1123: Add PrepareGrindstoneEvent
b402824ea SPIGOT-7204: Add TeleportCause#DISMOUNT
06a6a1012 PR-1121: Add unit test for spawn egg meta
c18668be3 SPIGOT-7192: Call PlayerInteractEvent with Action.LEFT_CLICK_AIR if the entity interacted is hidden to the player
47124f639 Increase outdated build delay
645993470 SPIGOT-7201: Spawner ItemMeta not working as expected
2022-12-13 21:03:57 -08:00
Jake Potrebic
adb8e499db
Fix fire charge not being consumed igniting a creeper ( #8652 )
2022-12-13 09:23:05 -08:00
SoSeDiK
0148283131
Fix locateNearestBiome nullability check ( #8662 )
2022-12-13 16:01:54 +01:00
EpicPlayerA10
1845cec507
Fix death message containing empty string ( #8656 )
...
Resolves : #8654
2022-12-13 13:24:59 +01:00
Jake Potrebic
d2cb347f71
Fix items equipped on AbstractHorse losing NBT ( #8647 )
...
* Fix items equipped on AbstractHorse losing NBT
* squash later mc fix into vanilla patch
2022-12-11 15:22:56 -08:00
Jake Potrebic
eeeb8d5adc
Add the non-flammable wood item tag ( #8648 )
2022-12-11 13:01:18 -08:00
Noah van der Aa
a5ecfd6c30
[ci skip] Correct chat preview removal version in javadoc ( #8646 )
2022-12-11 18:34:31 +00:00
Jake Potrebic
d8cf30dfd1
Deprecate isPreview method in decorate events ( #8645 )
2022-12-11 09:55:39 -08:00
Jason Penilla
0bdbcd9d56
[ci skip] Remove non-functioning patch
2022-12-10 21:40:18 -07:00
Jake Potrebic
1143b63663
Add Position ( #7639 )
...
* Add Position
* move Position patch to start
2022-12-10 16:50:32 -08:00
Jake Potrebic
ecfb76a73a
Fix empty effect clouds from lingering potions ( #8641 )
2022-12-10 14:52:37 -08:00
Lulu13022002
7d18c6b4ac
Don't show particles when splash events are canceled ( #8637 )
2022-12-10 13:27:36 -08:00
Jake Potrebic
5bd8e1c191
Fix MapLike Codec missing key 'selector' ( #8634 )
...
* Fix MapLike Codec missing key 'selector'
* Make sure a new instance is created each time
2022-12-10 09:04:27 -08:00
Nassim Jahnke
7ba81b14dd
[ci skip] Fix leaf'd patch names
2022-12-10 17:49:00 +01:00
Nassim Jahnke
be50d5bcc3
Readd BlockBehavior inlining patch
2022-12-10 17:24:01 +01:00
Lulu13022002
812efd3826
Fix chunksnapshot biome getter ( #8639 )
2022-12-10 14:11:39 +01:00
Lulu13022002
075fb67c78
Add eating regain reason for Camels ( #8638 )
2022-12-10 14:07:35 +01:00
Owen
ec772bb8b8
Rabbit API ( #8627 )
2022-12-09 18:56:13 -06:00
Jake Potrebic
5e6ac3c46e
Properly identify golem spawn reason ( #8635 )
2022-12-09 16:37:03 -08:00
Jake Potrebic
f6ffbc2720
Readd improve/fix EntityTargetLivingEntityEvent ( #8630 )
2022-12-09 12:30:55 +01:00
Jake Potrebic
20549ff2d7
Add new 1.19.3 fires of EntityInsideBlockEvent ( #8629 )
2022-12-09 02:46:47 -08:00
Jake Potrebic
b4a8f14a67
last instrument fix, I promise
2022-12-09 02:03:06 -08:00
Jake Potrebic
2ad5f6f66b
couple more instrument/note fixes
2022-12-09 01:49:15 -08:00
Jake Potrebic
9495a33cc9
fix Instruments
2022-12-09 01:34:39 -08:00
Jake Potrebic
c7c3cf1dd7
Mark experimental api as such ( #8628 )
2022-12-09 10:13:22 +01:00
Owen
df1f4ac26d
Update adventure ( #8625 )
2022-12-09 10:11:28 +01:00
Jake Potrebic
f29ab144be
fix method rename issue in Camel
2022-12-08 18:17:06 -08:00
Jason
f97bb11e4b
Account for splash water bottles now extinguishing entities ( #8622 )
...
* Account for splash water bottles now extinguishing entities
* improvements and javadocs
* reorder patches
* rename event to WaterBottleSplashEvent
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2022-12-08 16:33:22 -08:00
Owen
b2043f1c3a
Deprecate PluginLoader and impls ( #8619 )
2022-12-08 22:27:37 +01:00
Jake Potrebic
b8d33f406e
fix a few structure seed configs
2022-12-08 12:15:18 -08:00
Jake Potrebic
244a523df3
readd missing structure set seeds patch
2022-12-08 11:06:54 -08:00
Jake Potrebic
6120bc9206
properly handle xray bypass perm
2022-12-08 10:35:33 -08:00
Jake Potrebic
9bace84b44
check now succeeds
2022-12-08 10:23:12 -08:00
Jake Potrebic
49f57cc170
fix some tests and DoNotUse violations
2022-12-08 09:47:29 -08:00
Nassim Jahnke
93ee9e63c9
Readd fixes for SpawnReason API patch
2022-12-08 17:51:06 +01:00
Jake Potrebic
5256716ffb
fix ChatProcessor
2022-12-08 08:32:29 -08:00
Nassim Jahnke
12fee1cf81
Update Velocity modern forwarding reading
2022-12-08 12:16:44 +01:00
Nassim Jahnke
4074d4ee99
Fix bad AT
2022-12-08 12:00:10 +01:00
Nassim Jahnke
dcc290167f
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:
dea9ce0a SPIGOT-7198: Add Sittable interface to Camel
CraftBukkit Changes:
eecb4c0dc SPIGOT-7196: Exception loading alternate worlds
0ff61e8fa SPIGOT-7198: Add Sittable interface to Camel
676441aac PR-1121: Handle additional missing SpawnEggs in MetaSpawnEgg
e85280e02 Handle missing SpawnEggs in MetaSpawnEgg
Spigot Changes:
d90018e0 SPIGOT-7199: NPE loading or creating world with custom chunk generator
2022-12-08 11:53:14 +01:00
Jake Potrebic
66a288b4f4
fix some startup issues
2022-12-08 00:52:08 -08:00
Jake Potrebic
04801b7982
fix more compile issues
2022-12-07 22:11:20 -08:00
Jason Penilla
4a3753dbb1
more compile fixes
2022-12-07 21:24:59 -07:00
Jason Penilla
0b291cccce
compile fixes
2022-12-07 20:24:00 -07:00
Noah van der Aa
7aa90a8535
More 1.19.3 registry fun ( #8618 )
2022-12-07 23:49:41 +00:00
Owen
e21c1b41a7
Properly resend entities ( #8617 )
2022-12-07 23:11:44 +00:00
Nassim Jahnke
0f275cc228
Fix MCVersions
2022-12-07 23:29:30 +01:00
Noah van der Aa
be9a0677b1
Add missing spawn eggs: Electric Boogaloo ( #8616 )
2022-12-07 23:10:51 +01:00
Nassim Jahnke
93507a8e41
Almost all patches
2022-12-07 23:05:32 +01:00
Nassim Jahnke
f8430d1de7
More patchidy patched patch patches
2022-12-07 22:57:15 +01:00
Noah van der Aa
f207880ec8
Fix a handful of 1.19.3 compile issues ( #8615 )
2022-12-07 22:36:56 +01:00
Nassim Jahnke
4710881e40
More patchidy patched patches
2022-12-07 22:35:34 +01:00
Nassim Jahnke
5b6d903302
More patchy patched patches
2022-12-07 22:05:01 +01:00
Nassim Jahnke
d0620624d7
Patching patched patched patches
2022-12-07 21:16:54 +01:00
Nassim Jahnke
7f3d2ff503
Patching patched patches
2022-12-07 20:22:28 +01:00
Nassim Jahnke
dfab659e53
Moar, fix API
2022-12-07 19:52:24 +01:00
Nassim Jahnke
0edb5458e5
Patching patches
2022-12-07 19:32:25 +01:00
Nassim Jahnke
4d6f28bab3
Patches
2022-12-07 18:53:34 +01:00
Nassim Jahnke
4fbe8d0b9b
First server patches
2022-12-07 18:08:55 +01:00
Nassim Jahnke
fd58a696cb
API patches
2022-12-07 17:46:46 +01:00
Jake Potrebic
476ef25d05
Add missing Fluid type ( #8608 )
2022-12-06 10:41:04 -08:00
Noah van der Aa
b07d5e0aca
Limit pet look distance ( #8612 )
2022-12-06 19:10:58 +01:00
Shane Freeder
407a445aac
Fix dumplisteners missing folder creation
2022-12-06 04:02:44 +00:00
Yannick Lamprecht
96fdafd935
Player Entity Tracking Events ( #4722 )
2022-12-03 16:46:38 -06:00
Jake Potrebic
ec6a9a3e47
Updated Upstream (Bukkit/CraftBukkit) ( #8604 )
...
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:
38866413 SPIGOT-6765: Pass WorldInfo, Random and coordinates to ChunkGenerator should methods
CraftBukkit Changes:
f3dab3a48 SPIGOT-7191: TNT minecart explosions crash the server
b5aa0bed9 SPIGOT-7184: ExplosionPrimeEvent not called for ExplosiveMinecart
e7aab5493 SPIGOT-6765: Pass WorldInfo, Random and coordinates to ChunkGenerator should methods
2022-12-03 10:19:09 -08:00
Bjarne Koll
425baed78f
Fully deserialise persistent anger post async load ( #8560 )
...
The modified patch prevents entity loading off the main thread when
entities are initially loaded.
However, the initial loading of an entity is not the only time the
Entity#readAdditionalSaveData method is called. Commands like /data also
invoke the method (through Entity#load) to update an entities data
without completely re-creating it.
This however breaks with the current patch, as the patch moves parts of
the entity lookup for persistent anger deserialisation into the first
tick of an entity (which obviously is only called once and hence not
re-run when an already ticking entity is modified as laid out above).
This change actively runs the now split logic for deserialisation again
if the entity has already ticked its first tick. This way, initial
deserialisation is still split into one off thread and the first tick
parts, but following main thread deserialisations can happen completely
inside Entity#readAdditionalSaveData is called.
2022-12-02 18:09:41 +01:00
Jake Potrebic
c40f8d59a9
Sync offhand slot in menus ( #7341 )
2022-12-01 13:01:49 -08:00
Jason Penilla
54daefa0ca
Fix whitespace error in recent patch
2022-11-28 11:10:26 -07:00
Lulu13022002
8796175d79
Handle legacy quirk in the console formatter ( #8434 )
2022-11-28 14:41:29 +01:00
Denery
309133e2e1
Fix preemptive connection dropping during shutdown process ( #8546 )
2022-11-27 11:20:31 -06:00
sandtechnology
28b4027d45
Fix packet duplicating at some points ( #8566 )
...
Due to the weakly consistent of ConcurrentLinkedQueue iterator, at some points, packet will be resent twice times or more, causing some weird behaviors (e.g. kicked for illegal movement since the same ClientboundPlayerPositionPacket was sent two times). This changes for the patch add a flag for marking if the packet was consumed to prevent such issue and ensure consistently of the packet queue.
2022-11-27 10:36:35 -06:00
Jason
f1583fcd74
Add /paper dumplisteners tofile
and increase detail of command output ( #8592 )
2022-11-26 10:36:11 -07:00
Ján Villim
21b964af4e
Added ability to control player's insomnia and phantoms spawning ( #6500 )
2022-11-26 10:59:04 -06:00
Owen
f59c802697
Schoolable Fish API ( #7089 )
2022-11-25 20:21:40 -06:00
SoSeDiK
4048d3ec68
Allow using degrees for ArmorStand rotations ( #7847 )
2022-11-25 19:42:30 -06:00
Noah van der Aa
9f7eef81fd
Friction API ( #6611 )
2022-11-25 18:23:12 -06:00
Kezz
44bb5992ce
Add Tick TemporalUnit ( #5445 )
2022-11-25 15:05:42 -06:00
Jake Potrebic
d98c370fb5
Add displayName methods for advancements ( #8584 )
2022-11-24 23:05:48 -08:00
Jake Potrebic
414ea80d74
ItemStack damage API ( #7801 )
2022-11-24 22:52:00 -08:00
Jake Potrebic
f637b1a0a7
Fix async entity add due to fungus trees ( #7626 )
2022-11-24 22:32:29 -08:00
Jake Potrebic
b4beac0c9d
Fixes potential issues arising from optimizing getPlayerByUUID ( #8585 )
2022-11-24 22:22:19 -08:00
Amy
185fa48ac4
Fix chest relooting mechanics ( #8580 )
2022-11-25 00:21:40 +01:00
Warrior
8aff07afb0
Add /paper dumplisteners command ( #8507 )
...
Co-authored-by: Jason Penilla <11360596+jpenilla@users.noreply.github.com>
Co-authored-by: TwoLeggedCat <80929284+TwoLeggedCat@users.noreply.github.com>
2022-11-23 16:28:38 -06:00
Lulu13022002
da230d521c
More vanilla friendly methods to update trades ( #8478 )
2022-11-23 15:38:49 -06:00
Jake Potrebic
e6e37ba5d7
Add api to resolve components ( #7648 )
2022-11-22 20:53:50 -08:00
Shane Freeder
55a16d8581
Fix Varint21FrameDecoder cached length buf usage
2022-11-22 17:50:31 +00:00
Lulu13022002
3ab194e185
Avoid a cubed max search distance for POIs ( #8576 )
...
The max search distance used to get the closest Poi data on X/Z axis is cubed
instead of squared (one time in the parameter and another time in the function)
for almost all search.
Generally this has been hidden by another check that already does a pre
distance check between the poi pos and the source pos for individual
component but the issue still happens for diagonal distance search.
Discovered by Samsuik
2022-11-21 16:02:21 +01:00
Jakub Žáček
a7df847aad
Add Player Warden Warning API ( #8470 )
2022-11-20 12:53:58 -06:00
Jake Potrebic
b95d4b28b8
Moving ATs from the at file to individual patches ( #8573 )
2022-11-19 15:53:20 -08:00
Noah van der Aa
76503f8887
Strip coordinates from lodestone compasses ( #8561 )
2022-11-19 15:41:09 -06:00
Owen
0a6f100a2a
Add more collision code skipping logic ( #7581 )
2022-11-19 15:14:19 -06:00
Lulu13022002
8f498dc19a
Sync chunk load command improvements ( #8554 )
2022-11-19 14:10:13 -05:00
William Blake Galbreath
669fed4b57
Fix MC-179072 ( #8421 )
2022-11-19 12:23:31 -06:00
Melncat
b4c1ae645f
Fix MC-121048 ( #8429 )
...
This moves the setHealth call to below the recordDamage call to prevent
recordDamage from clearing the CombatTracker, since recordDamage will
clear the CombatTracker if the entity is dead. This fixes death messages
such as the "doomed to fall" messages.
2022-11-18 22:04:52 -06:00
Lulu13022002
84b5d4a352
Reorder bukkit damage source entity for explosion ( #8553 )
2022-11-18 20:14:52 -06:00
Jake Potrebic
215111213b
Fix/improve Affects Spawning API ( #7329 )
2022-11-15 11:15:01 -08:00
Jake Potrebic
e22dacf4d2
update yarn param mappings ( #8563 )
2022-11-12 12:57:41 -08:00
braindead
7955bcc87b
fix MC-252817 (green map markers do not dissappear) ( #8545 )
2022-11-12 13:16:25 -06:00
Jake Potrebic
564356d1e0
ensure reset EnderDragon boss event name ( #8562 )
2022-11-12 10:34:14 -08:00
Owen
5f4952fbce
Cleanup reputation API + back with an EnumMap instead of array ( #8258 )
...
Resolves : #7142
2022-11-12 18:41:22 +01:00
Noah van der Aa
112fa18bac
Show exception when headless JRE detection is triggered ( #8559 )
2022-11-12 13:09:54 +01:00
Owen
117579c6bb
Add PrePlayerAttackEntityEvent ( #8369 )
...
Allows you to cancel player event attacking, preventing things like attack sounds from being played.
2022-11-09 22:05:58 -05:00
Jake Potrebic
e6ee4cdffe
Updated Upstream (CraftBukkit) ( #8548 )
2022-11-09 16:05:46 -08:00
Shane Freeder
3ac1a8d708
Cleanup misc import from last commit
2022-11-06 22:46:23 +00:00
Shane Freeder
3e9f39faa2
Prevent compass from loading chunks
2022-11-06 22:37:34 +00:00
Owen
df5fb9475b
Properly resend entities ( #7041 )
2022-11-05 13:50:16 -05:00
Jason
2b47227e38
Update Commodore modifications ( #8542 )
...
* Handle ldc insn for getOriginalOrRewrite in Commodore
* Remove fastutil rewrite
It's no longer relocated upstream
2022-11-04 22:16:57 -07:00
Jake Potrebic
3d15120f7e
Fix Advancement#getDisplay() api break ( #8541 )
2022-11-04 15:59:15 -07:00
Astro Angelfish
8ee344f18e
[ci-skip] Rename Paper stop tp Paper end. ( #8539 )
2022-11-04 16:08:01 +00:00
Jake Potrebic
ab1c072320
Remove old redundant fix ( #8530 )
2022-11-03 14:03:31 -07:00
Lulu13022002
ebc0f6bfb5
Call PlayerLaunchProjectileEvent for trident ( #8027 )
2022-11-03 19:43:50 +01:00
Shane Freeder
e30b082262
Fix setting difficulity inside of API ( Fixes #8533 )
...
Vanilla moved some logic around setting the world difficulty which
was not adopted for inside of upstream properly, this addresses another
such case
2022-11-01 18:29:52 +00:00
Jason Penilla
4a9c9b3fb0
Build updates
2022-10-31 15:25:30 -07:00
Denery
93b2246851
Fix EntityCombustEvent cancellation issues ( #8529 )
2022-10-31 17:31:40 +01:00
Jake Potrebic
b3b04f2ca1
Updated Upstream (Bukkit/CraftBukkit/Spigot) ( #8515 )
...
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:
9a4de097 SPIGOT-7171: Ability to get the IP/hostname players are requesting status of
CraftBukkit Changes:
f43634ae4 SPIGOT-7170: Cannot set slots in custom smithing inventory
48f3a2258 SPIGOT-7171: Ability to get the IP/hostname players are requesting status of
30e31b4d1 SPIGOT-7177: Certain blocks don't call BlockCanBuildEvent
982364797 SPIGOT-7174: Avoid adding air to CraftMetaBundle
Spigot Changes:
6198b5ae PR-122: Add missing parentheses to pumpkin and melon growth modifier
1aec3fc1 Rebuild patches
2022-10-30 19:44:25 -07:00
Noah van der Aa
13cf5461d4
Fix pumpkin growth modifier ( #8517 )
2022-10-30 13:27:37 +01:00
Owen
aaf5e3997f
Deprecate unused VehicleEntityCollisionEvent methods ( #8498 )
2022-10-29 12:18:17 -05:00
William Blake Galbreath
b743144a12
Fix MC-147659 ( #8423 )
2022-10-27 19:53:16 -05:00
Hannes Greule
8a4b752fe2
Fix wrong descriptor in ASMEventExecutorGenerator ( #8506 )
2022-10-27 19:27:33 -05:00
Owen
c26401863e
[ci skip] Undo modification to removed patches in latest commit ( #8512 )
2022-10-27 15:03:11 -05:00
Jason
8acb05d567
Make CommandSyntaxException implement ComponentMessageThrowable ( #8513 )
2022-10-27 10:10:28 -07:00
Jason
0249750b8f
Fix EntityArgument suggestion permissions to align with EntitySelector#checkPermissions ( #8511 )
2022-10-26 18:31:55 -07:00
Jake Potrebic
32d95e9bab
Track projectile source for fireworks from dispensers ( #8044 )
2022-10-26 17:44:28 -07:00
Jake Potrebic
954e6f00f3
Fix a bunch more forceDrops for dropping items ( #8095 )
2022-10-26 17:32:03 -07:00
Noah van der Aa
2432233d24
Add allow server listing & text filtering client options ( #7595 )
2022-10-26 18:09:03 -05:00
Lulu13022002
36869ccd90
Fix new block data in EntityChangeBlockEvent for silverfish when mobGriefing isn't enabled ( #8099 )
2022-10-26 17:05:15 -05:00
Spottedleaf
25cd3eee99
Add dirty flag to chunk tick lists
...
For whatever reason, vanilla does not mark the chunk as
dirty when changing its tick lists.
We also have it return dirty if the time since the last
save has changed, since it would affect the tick offsets
in the ticklist.
2022-10-24 20:51:48 -07:00
Spottedleaf
fc5ae5be82
Fix incorrect handling of mustNotSave
...
CB used the dirty flag to construct the chunk unload event,
but then sets mustNotSave to the inverted value of the event
after calling the event without considering that the chunk may
actually be brought up to loaded status again later. Then, CB
overrides the isUnsaved method of LevelChunk to additionally
use mustNotSave.
Thus, if the chunk is not marked dirty when unloading, the
mustNotSave value will be set to true. Then, once the chunk
is reloaded and edited the dirty flag will be set. However,
when unloading the chunk finally, the isUnsaved method
will return false due to mustNotSave being true. Thus, the
chunk will never be saved.
To fix these issues, no longer make mustNotSave override
isUnsaved and always set the save flag for the chunk unload
event.
This issue started popping up recently due to the recent
change to mark chunks as not dirty after saving them, which
increased the chance of the save issue occurring in the first
place.
2022-10-24 19:34:03 -07:00
Jason
519cb4b214
Move classes added to net.minecraft.server to paper packages ( #8500 )
2022-10-24 12:43:46 -07:00
evan
1c1aeb20e2
Only limit global sounds to same world if limiting radius ( #8499 )
2022-10-23 20:52:40 +02:00
Jake Potrebic
44ce9b3e9c
Updated Upstream (Bukkit/Spigot) ( #8445 )
2022-10-23 10:41:34 -07:00
Spottedleaf
b8131a09b2
Mark chunks as saved after saving them
...
Prevents re-saving them again later.
2022-10-23 09:09:18 -07:00
Owen
05bd9d67b7
Ignore impossible spawn tick ( #8493 )
...
Co-authored-by: dannyball710 <dannyball710@gmail.com>
2022-10-22 23:45:07 -05:00
Owen
0b8f40cf6a
Don't fire EntityToggleSitEvent on deserialization & reorder some api patches ( #8495 )
2022-10-22 21:55:28 -05:00
Owen
6665076342
Add Moving Piston API ( #7019 )
2022-10-22 19:37:37 -05:00
SoSeDiK
d713b47b14
Add EquipmentSlot convenience methods ( #8477 )
2022-10-22 18:50:12 -05:00
uku
4e67c73b03
Add config setting for grindstone overstacking ( #8156 )
2022-10-22 18:25:17 -05:00
vytskalt
58483c1e18
Add fire-tick-delay option ( #8037 )
2022-10-22 17:57:09 -05:00
IEatBeans
6ea5aa37bd
Added EntityToggleSitEvent ( #7579 )
...
* Added EntityToggleSitEvent Patches
* Updated event phrasing, fixed Boolean not being primitive, pandas now fire event, and event is defined and called in 1 line
* Updated event phrasing, fixed Boolean not being primitive, pandas now fire event, and event is defined and called in 1 line
* Added EntityToggleSitEvent Patches
* Added EntityToggleSitEvent Patches
* Added EntityToggleSitEvent Patches
2022-10-22 17:20:52 -05:00
thelooter
3d50709776
Add MaterialTags for the different Types of Tools ( #8049 )
...
* Add MaterialTags for the different Types of Tools
* Add Netherite Tools Tag
2022-10-22 16:51:34 -05:00
Lukas Alt
5cdb5f9585
Optimized dirt and snow spreading ( #5124 )
...
* Optimized dirt and snow spreading
* Add optimization to bukkit event call
* Clarify var names
Co-authored-by: Owen1212055 <23108066+Owen1212055@users.noreply.github.com>
2022-10-22 13:13:59 -05:00
Lukas Alt
60da35e359
fixed entity vehicle collision event not called ( #5053 )
2022-10-22 12:09:45 -05:00
Noah van der Aa
7187cab3b6
Detect headless JREs ( #8491 )
...
Crashes caused by the missing AWT dependency come up in the support channels fairly often.
This patch detects the missing dependency and stops the server with a clear error message,
containing a link to instructions on how to install a non-headless JRE.
2022-10-22 11:57:21 -05:00
Noah van der Aa
a163a96a8d
Load Allay duplication cooldown as a long ( #8410 )
...
It is saved as a long, and the API exposes a long, so loading it as an int may cause issues like overflows.
2022-10-22 16:16:24 +02:00
Jason
3dcfec4499
Add stacktrace deobfuscation in more places ( #8484 )
2022-10-18 19:21:07 -07:00
Spottedleaf
f7da209586
Fix inconsistent isChunkLoaded calls
...
When we update the chunk state to border, it should be
the case that isChunkLoaded returns true and that
getChunkIfLoadedImmediately returns a non-null value.
Now add the chunk to the loaded map before making any
callbacks after updating to border state.
2022-10-18 08:11:23 -07:00
Nassim Jahnke
e1d4b26a62
Fix another case of missing chat headers
2022-10-18 10:20:35 +02:00
Melncat
ed2c88ba89
Add LivingEntity knockback API ( #8479 )
2022-10-18 09:33:58 +02:00
Jakub Žáček
7d64d7ce77
Add converted Slot number to PlayerInventorySlotChangeEvent ( #8482 )
2022-10-18 09:32:22 +02:00
SoSeDiK
236a29623c
Add LivingEntity#swingHand(EquipmentSlot) convenience method ( #8456 )
2022-10-16 13:49:56 +02:00
Jakub Žáček
ec00f991a4
Fix package for PlayerInventorySlotChangeEvent ( #8475 )
...
Co-authored-by: Jakub Zacek <dawon@dawon.eu>
2022-10-16 08:49:47 +01:00
19MisterX98
603df98897
FIx bedrock patterns ( #8474 )
2022-10-16 00:34:10 +02:00
Lexi
b560034488
Avoid usages of RecipeChoice#getItemStack() ( #8453 )
...
Replaces some internal usages of this method with RecipeChoice#test(ItemStack) and deprecates every other method still utilizing this legacy method.
2022-10-15 21:20:12 +02:00
SoSeDiK
eb68bd49a2
Allow changing bed's 'occupied' property ( #8458 )
2022-10-14 10:37:01 +02:00
Lulu13022002
0bdf9973cd
Avoid cycle deprecation ( #8466 )
2022-10-13 13:52:04 +02:00
Lulu13022002
2094011485
Update settings directory path in exceptions ( #7968 )
2022-10-13 13:38:06 +02:00
SoSeDiK
514a60647d
Elder Guardian appearance API ( #8455 )
2022-10-13 12:26:51 +02:00
Shane Freeder
7fe34e9508
Make CraftMinecartTNT public
...
adding the getHandle method causes some issues with things like ProtocolLib
due to the expectation that all classes which provide a getHandle method
are public.
2022-10-12 16:10:52 +01:00
Jake Potrebic
b9cf1ac580
Fix a classloading issue in tests ( #8459 )
2022-10-11 20:05:28 -07:00
Jason Penilla
f7c8d79667
Fix stacktrace in server tests
2022-10-11 16:52:49 -07:00
Jakub Žáček
de2d2d4d94
Add PlayerInventorySlotChangeEvent ( #7321 )
2022-10-11 22:49:10 +01:00
Owen
6b26cfcd31
Add missing Entity + Projectile API ( #7632 )
2022-10-11 22:04:26 +01:00
SoSeDiK
b097a241c0
Expose isUnderWater to Entity ( #8454 )
2022-10-11 14:43:10 +02:00
Jake Potrebic
57555b8c6a
Add missing structure set seed configs ( #8030 )
2022-10-09 22:19:35 +02:00
Jake Potrebic
c389b1c408
Fix configs that relied on outdated min/max y levels ( #6986 )
2022-10-09 08:52:09 +02:00
Jake Potrebic
77a50b95da
Add Unmodifiable annotations to getDrops methods ( #8440 )
2022-10-07 20:51:54 +02:00
Warrior
60c973e461
Exempt players in creative/spectator from nether ceiling damage ( #8427 )
2022-10-07 20:43:26 +02:00
Jake Potrebic
bcb4220b5f
Correctly handle interactions with items on cooldown ( #8008 )
2022-10-07 17:22:45 +02:00
Jake Potrebic
ff67f1fa18
EntityPickupItemEvent fixes ( #8096 )
2022-10-04 21:38:39 -07:00
Jake Potrebic
9d63b070a1
Fix custom piglin interest items ( #8097 )
2022-10-04 20:28:46 -07:00
Nassim Jahnke
ad3d35751a
Remove unnecessary onTrackingStart during nav warning
...
Closes #8396
2022-10-03 20:50:53 +02:00
Gero
15e1748fd5
Avoid resizing of ArrayList in ChunkMap#getPlayers ( #8416 )
2022-10-03 19:22:01 +02:00
Nassim Jahnke
011caa4d8e
[ci skip] Minor patch cleanup
2022-10-03 19:07:03 +02:00
Friwi
616db7118d
Fix nothing mlg ( #8432 )
2022-10-03 18:44:19 +02:00
Nassim Jahnke
928bcc8d3a
Updated Upstream (Bukkit/CraftBukkit) ( #8430 )
...
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:
09943450 Update SnakeYAML version
5515734f SPIGOT-7162: Incorrect description for Entity#getVehicle javadoc
6f82b381 PR-788: Add getHand() to all relevant events
CraftBukkit Changes:
aaf484f6f SPIGOT-7163: CraftMerchantRecipe doesn't copy demand and specialPrice from BukkitMerchantRecipe
5329dd6fd PR-1107: Add getHand() to all relevant events
93061706e SPIGOT-7045: Ocelots never spawn with babies with spawn reason OCELOT_BABY
2022-10-02 09:56:36 +02:00
TetraTheta
ec3cfa9b7f
Only create paper.yml-README.txt on config conversion ( #8334 )
2022-10-02 09:29:09 +02:00
Jake Potrebic
ec76e36a4e
Fix a handful of vanilla bugs ( #8187 )
2022-10-01 19:39:42 +02:00
Melncat
6d1409316e
Add getDrops to BlockState and isPreferredTool to BlockData ( #8284 )
2022-10-01 12:30:00 +02:00
Nassim Jahnke
e9618f8780
Add system property to dump stack on bad plugin class access ( #8417 )
2022-10-01 11:49:27 +02:00
Remynfv
2534e5cbbf
Fix other jigsaw related disconnect bug ( #8414 )
2022-10-01 10:08:07 +02:00
Nassim Jahnke
f5fa69173c
Don't print full packages in new chunk system classes
...
Closes #8391 , #8412
2022-09-30 23:19:51 +02:00
Pasqual Koschmieder
14c32bc43d
Fix wrong yaw and pitch of CommandSourceStack#getBukkitLocation ( #8411 )
2022-09-30 21:03:42 +02:00
Remynfv
c6d737528d
use BlockFormEvent for mud converting into clay ( #8398 )
...
Co-authored-by: Legitimoose <legitimoose@gmail.com>
2022-09-30 20:33:31 +10:00
Ilari Suhonen
8d69cfc6ce
Reduce allocation rate for checkBlock
...
Use ObjectOpenHashSet instead of HashSet
Remove unnecessary chunkToSave modification
2022-09-29 09:04:52 -07:00
Spottedleaf
7d3a882670
Do not log throwable for duplicate entity adds
2022-09-29 08:55:47 -07:00
Bjarne Koll
8a7dd61348
Mark parsed PoiChunks with data as not loaded ( #8405 )
...
Previously, PoiChunk#empty would create a new empty poi chunk with
loaded already set to true, as no data was contained in the chunk.
This allowed the poi chunk to skip expensive trips to the main thread.
However, PoiChunk#parse used #empty to create the initial PoiChunk
instance that is then filled with data.
This leads to PoiChunks returned from #parse to already be marked as
loaded, preventing the then needed trip to the tick thread to update
things like the village distance tracker.
To fix this, this commit now marks the PoiChunks loaded state as false
if the parse logic actually read and parsed any data.
This allows the PoiChunk#load method to properly run its callbacks when
called for the first time.
2022-09-29 08:54:47 -07:00
F1rsi
017af785ff
[ci skip] Added the missing "d" character ( #8267 )
2022-09-29 15:36:01 +01:00
Remynfv
21661a7557
Fix jigsaw block kicking user ( #8404 )
2022-09-29 12:37:56 +01:00
Jason
79f2aa3eed
Update Velocity natives ( #8387 )
2022-09-29 12:18:20 +01:00
Shane Freeder
bd496d0e0d
[ci skip] shuffle patches and rebuild
2022-09-28 04:27:26 +01:00
Nassim Jahnke
1bbd273bbd
Fix user auth thread pool queue
2022-09-27 18:00:46 +02:00
Jake Potrebic
f7d16f656a
Fixes a couple issues with entity spawn reasons ( #8390 )
2022-09-27 01:24:56 +01:00
Nassim Jahnke
b58c0cf14a
Update snekyaml
2022-09-26 19:47:22 +02:00
Spottedleaf
01a13871de
Rewrite chunk system ( #8177 )
...
Patch documentation to come
Issues with the old system that are fixed now:
- World generation does not scale with cpu cores effectively.
- Relies on the main thread for scheduling and maintaining chunk state, dropping chunk load/generate rates at lower tps.
- Unreliable prioritisation of chunk gen/load calls that block the main thread.
- Shutdown logic is utterly unreliable, as it has to wait for all chunks to unload - is it guaranteed that the chunk system is in a state on shutdown that it can reliably do this? Watchdog shutdown also typically failed due to thread checks, which is now resolved.
- Saving of data is not unified (i.e can save chunk data without saving entity data, poses problems for desync if shutdown is really abnormal.
- Entities are not loaded with chunks. This caused quite a bit of headache for Chunk#getEntities API, but now the new chunk system loads entities with chunks so that they are ready whenever the chunk loads in. Effectively brings the behavior back to 1.16 era, but still storing entities in their own separate regionfiles.
The above list is not complete. The patch documentation will complete it.
New chunk system hard relies on starlight and dataconverter, and most importantly the new concurrent utilities in ConcurrentUtil.
Some of the old async chunk i/o interface (i.e the old file io thread reroutes _some_ calls to the new file io thread) is kept for plugin compat reasons. It will be removed in the next major version of minecraft.
The old legacy chunk system patches have been moved to the removed folder in case we need them again.
2022-09-26 01:02:51 -07:00
Bjarne Koll
abe53a7eb4
Fix typos in isTickingWorlds API javadocs ( #8382 )
2022-09-25 01:01:17 +01:00
Lulu13022002
6d630052fd
Fix setEggCount method from TurtleLayEggEvent ( #8385 )
2022-09-24 18:34:20 +02:00
Owen
b4c025b92c
Fix player desync on dimension change ( #8253 )
2022-09-24 06:45:13 +01:00
Lulu13022002
62680d5f83
Avoid item meta usage for itemstack enchantment getter ( #8373 )
2022-09-24 06:19:51 +01:00
willkroboth
4d52f1d247
Add method isTickingWorlds to Bukkit ( #8316 )
...
Co-authored-by: Shane Freeder <theboyetronic@gmail.com>
Also, restores un/loading worlds mid tick. This will not be officially supported API contract that such a routine is safe, and these restrictions may be restored in the future.
2022-09-24 06:19:05 +01:00
Shane Freeder
6736f390a2
Fix mangled patch
2022-09-24 05:48:46 +01:00
willkroboth
d3326235f0
Avoid potential place where the world map could be modified after its iterator is created ( #8315 )
2022-09-24 05:33:20 +01:00
Shane Freeder
3996e6ef29
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:
c7c11188 SPIGOT-2620: Add Player#sendBlockChanges()
f63d2b44 Improve annotation test on parameters
3372e7b4 SPIGOT-1244, SPIGOT-6860, SPIGOT-6874: Various Javadoc and formatting fixes
a1e8a9ab PR-793: Ignore .checkstyle file generated by Eclipse IDE
CraftBukkit Changes:
c2c39089e SPIGOT-2620: Add Player#sendBlockChanges()
8209158db PR-1113: Ignore .checkstyle file generated by Eclipse IDE
Spigot Changes:
4aa5ead2 Rebuild patches
2022-09-24 02:38:12 +01:00
Jake Potrebic
f528f53e81
Correct javadocs on PlayerArmorStandManipulateEvent ( #7719 )
2022-09-23 06:55:02 +01:00
Lulu13022002
ec0c550482
Call BlockPhysicsEvent more often ( #8264 )
2022-09-23 06:35:15 +01:00
Lulu13022002
8681503d10
Call EntityChangeBlockEvent for frogs egg ( #8136 )
2022-09-23 06:32:32 +01:00
Shane Freeder
980c1d1f90
Updated Upstream (Bukkit/CraftBukkit) ( #8378 )
2022-09-23 06:08:43 +01:00
Jake Potrebic
9e614e6f9a
Fix ground pathfinding ( #7683 )
2022-09-20 14:06:11 -07:00
ChristopheG
8db45c4312
Copper clear on lightning strike calls EntityChangeBlockEvent ( #8126 )
2022-09-20 03:35:38 +01:00
Owen
ad3dffe715
Respect preventMovingIntoUnloadedChunks for optimized collision checking ( #8259 )
2022-09-20 03:02:52 +01:00
tahmid-23
f7e68091a0
Fix Pathfinding After World Has Changed ( #8068 )
2022-09-20 02:39:46 +01:00
Nick Hensel
f8742e26cc
Also load resources from LibraryLoader ( #8335 )
2022-09-20 02:07:03 +01:00
Shane Freeder
dbc2d60ce0
Make WorldCreator#keepSpawnLoaded return the WorldCreator ( Fixes #8321 ) ( #8371 )
...
* Make WorldCreator#keepSpawnLoaded return the WorldCreator (Fixes #8321 )
Thought that I fixed this before push/merge, apparently not, hence, fix
the return type and add mitigation for this.
* Fix patch/build
* Rebuild patches
2022-09-20 01:28:22 +01:00
Shane Freeder
470c6388d2
Configurable chat thread limit ( #7878 )
2022-09-20 01:16:23 +01:00
Melncat
ea777c345b
Add a consumer parameter to ProjectileSource#launchProjectile ( #8374 )
...
Co-authored-by: MelnCat <melncatuwu@gmail.com>
2022-09-20 01:03:59 +01:00
Nex
63cb7472ac
Added byte array serialization/deserialization for PersistentDataContainers ( #7505 )
2022-09-18 05:06:53 +01:00
Lulu13022002
dbda887457
Missing some effect cause ( #8307 )
2022-09-18 04:46:20 +01:00
Lulu13022002
34777cdcbe
Missing eating regain reason ( #8244 )
2022-09-18 04:24:28 +01:00
Jake Potrebic
b826065a4b
fire EntityChangeBlockEvent in more places ( #6371 )
...
* fire EntityChangeBlockEvent in more places
* Rebuild patches
Co-authored-by: Shane Freeder <theboyetronic@gmail.com>
2022-09-18 04:03:54 +01:00
elmital
ef670ebafb
EndDragonFight killed statuses should be false for newly created worlds ( #8354 )
2022-09-18 02:44:06 +01:00
Peter Crawley
05f6a5c005
Limit size of Authenticator Cache Thread Pool ( #8360 )
2022-09-17 22:58:51 +01:00
Fruxz
f5f84ff476
Add custom destroyerIdentity parameter to the sendBlockBreak function ( #5840 )
2022-09-17 22:27:46 +01:00
Bjarne Koll
751d092af3
Properly close section storage managed files ( #8364 )
2022-09-17 19:50:01 +01:00
Shane Freeder
36f0c1b3cc
Rebuild patches
2022-09-17 04:35:39 +01:00
Jaren
267dd180b6
Stop large look changes from crashing the server ( #8326 )
2022-09-17 04:30:00 +01:00
karthanistyr
178f035aa7
Restore no-crash behaviour when read-only config file(s) ( #8318 )
2022-09-17 04:22:17 +01:00
Nassim Jahnke
ef0e5a642d
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:
9ae3f10f SPIGOT-3842: Add Player#fireworkBoost() and expand Firework API
48c0c547 PR-786: Add methods to get sounds from entities
CraftBukkit Changes:
5cc9c022a SPIGOT-7152: Handle hand item changing during air interact event
4ffa1acf6 SPIGOT-7154: Players get kicked when interacting with a conversation
4daa21123 SPIGOT-3842: Add Player#fireworkBoost() and expand Firework API
e5d6a9bbf PR-1100: Add methods to get sounds from entities
b7e9f1c8b SPIGOT-7146: Reduce use of Material switch in ItemMeta
Spigot Changes:
4c157bb4 Rebuild patches
2022-09-12 13:31:45 +02:00
Jake Potrebic
51183af967
Fix console completer/highlighter having invalid source stack ( #8346 )
2022-09-09 14:25:54 -07:00
Jake Potrebic
e51401e764
Updated Upstream (Bukkit/CraftBukkit/Spigot) ( #8347 )
2022-09-09 11:54:00 -07:00
okx-code
36a5f150c5
Allow preventing BlockDestroyEvent from dropping items ( #8349 )
2022-09-08 17:13:50 +02:00
Spottedleaf
09904fd780
Re-add legacy getChunkAtAsynchronously to ChunkProviderServer
...
Apparently some plugins use it
2022-09-02 04:42:05 -07:00
Spottedleaf
e8c2c3bfda
Fix World#refreshChunk not working for chunks in no-tick range
...
The chunk would not be marked as ticking in this case, so
retrieving the ticking chunk would not work.
2022-09-01 15:39:24 -07:00
Spottedleaf
046466f3ba
Re-arrange most chunk system patches to front ( #8338 )
...
* Re-arrange most chunk system patches to front
Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>
2022-09-01 09:51:59 -07:00
Spottedleaf
eff22eb054
Ensure players are removed from pendingLogin
...
Looks like they would not have been removed if they disconnected
during the chunk load, preventing the world from being unloaded.
2022-08-29 06:21:45 -07:00
Spottedleaf
aabf676721
Prevent unloading worlds with pending player logins
...
Logging into an unloaded world isn't going to end well.
This may fix the cases of people seeing errors about regionfiles
being closed, as loading chunks in an unloaded world will cause this
as the regionfile cache is closed but not cleared.
2022-08-26 22:20:27 -07:00
Nassim Jahnke
0bf8790c9c
Fix client lag spikes due to client light recalc
2022-08-25 12:59:08 +02:00
José Miguel Moreno
a76998d235
Fix plugin loggers on shutdown ( #5592 )
...
Potentially this should be merged back into the original logging changes patches
2022-08-21 03:57:17 +01:00
Nassim Jahnke
2da891fcfa
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:
0b32cbaa PR-782: ThrownPotion now extends ThrowableProjectile
474238ca SPIGOT-7138: Can't retrieve pixel color from map
CraftBukkit Changes:
cdef8fc72 PR-1097: CraftThrownPotion now extends CraftThrowableProjectile
419010b13 SPIGOT-7112: Mobs added 1.17 and after do not create an EntityTargetEvent properly
e71426201 SPIGOT-7079: Allays don't call EntityTargetEvent on ground items
f80adb8b9 SPIGOT-7138: Can't retrieve pixel color from map
2022-08-17 13:02:35 +02:00
petersv5
4ba43fe02a
Grant temporary immunity to hopper minecarts while actively pulling ( fixes #8281 ) ( #8282 )
...
Reduce the impact from EAR on hopper minecart based unloaders by making them immune to
EAR while pulling objects. The EAR is still active outside misc activation range when
the hopper minecart is idle, keeping lag low.
2022-08-14 19:41:15 +02:00
Nassim Jahnke
4516aedb43
More ThrownPotion API
2022-08-14 19:12:02 +02:00
Josh Roy
5bf259115c
Add NamespacedKey biome methods
...
Co-authored-by: Thonk <30448663+ExcessiveAmountsOfZombies@users.noreply.github.com>
2022-08-14 13:09:10 -04:00
Pedro
db17048325
[ci skip] Show @org.bukkit.UndefinedNullability in javadocs ( #8291 )
2022-08-14 17:18:39 +01:00
Nassim Jahnke
9592da1f84
Add method to get highest anger level of warden
2022-08-14 10:25:28 +02:00
Nassim Jahnke
0ddd20c6f7
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:
ead719a65 SPIGOT-7136: Cancelling PlayerInteractEntityEvent with the Allay desyncs
8468e167e SPIGOT-7137: StructureGrowEvent isFromBonemeal and getPlayer have incorrect values
d45057c59 SPIGOT-7089: Crash when command blocks attempt to load worlds
Spigot Changes:
450dcaa8 Rebuild patches
2022-08-14 10:03:13 +02:00
Shane Freeder
3f0415b453
Use thread safe Random inside of ServerLoginPacketListenerImpl
...
Vanilla uses a Random instance which is not thread safe inside of the
constructor for ServerLoginPacketListenerImpl, this is an issue because
instances of that class are created on the network worker threads, which
means that there is a potential (which we have reports confirming) that
multiple users logging on could trip this
2022-08-11 14:38:45 +01:00
TheTuso
7e11afa426
Fix mad cursor addition via API ( #8276 )
2022-08-11 10:40:19 +02:00
Spottedleaf
2a74071bcb
Simple patch changes for chunk system
...
Major ones soon
2022-08-10 08:07:49 -07:00
Shane Freeder
2cab6963a7
Don't manually send ClientboundPlayerPositionPacket for refreshPlayer
...
in 1.19, mojang made it so that teleporations validate that an awaiting pos was
set in the server when teleporting, thus we need to ensure that this is set when
sending the player pos, otherwise the player will be kicked when the client sends
back the aknowledgement
2022-08-10 15:01:55 +01:00
Nassim Jahnke
954b3fb7d5
Send signature headers when chat event viewers are modified
...
Fixes #8275
2022-08-10 09:59:28 +02:00
Owen
22ad9eedec
Fix command pool submitting on shutdown ( #8272 )
2022-08-09 20:51:17 -07:00
Nassim Jahnke
e6f8284125
Updated Upstream (Bukkit/CraftBukkit) ( #8270 )
...
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:
d43a1e72 SPIGOT-2450: Improve scoreboard criteria API, add missing DisplaySlots
9d6e4847 SPIGOT-7122: New Allay Methods from 1.19.1
CraftBukkit Changes:
c379a6b4e SPIGOT-2450: Improve scoreboard criteria API, add missing DisplaySlots
051fcced1 SPIGOT-7122: New Allay Methods from 1.19.1
2022-08-09 09:18:08 +02:00
FivePB (Xer)
c7e118b394
Update modern forwarding to v3 ( #8219 )
2022-08-08 16:25:41 +01:00
Owen
78b19f89a4
Separate Command Sending to Separate Thread Pool ( #8170 )
2022-08-08 12:32:17 +01:00
Josh Roy
a47301e40f
Fix Player#chat kicking all clients ( #8262 )
2022-08-08 09:31:10 +02:00
Jake Potrebic
3624637a19
Improve documentation of Inventory#removeItem ( #8263 )
2022-08-07 23:17:51 -07:00
Jason
a15152e96a
Allow old behavior for CommandRegisteredEvent ( #8249 )
2022-08-06 16:22:51 -07:00
Jake Potrebic
bef2c9d005
1.19.2 ( #8250 )
2022-08-05 15:58:34 -07:00
Jake Potrebic
02831e3369
Updated Upstream (Bukkit/CraftBukkit) ( #8240 )
...
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:
caa7c486 SPIGOT-7109: Add WorldBorder#setSize using TimeUnit
CraftBukkit Changes:
1e3bf58cd SPIGOT-7109: Add WorldBorder#setSize using TimeUnit
2022-08-05 16:10:44 +02:00
ChristopheG
a311dcecb3
Remove RAW_COPPER and add COPPER_BLOCK in MaterialTags.UNWAXED_COPPER_BLOCKS and MaterialTags.COPPER_BLOCKS ( #8237 )
2022-08-05 11:57:21 +02:00
Owen
69950d5a6a
Block Ticking API ( #7202 )
2022-08-03 23:14:04 +02:00
Jake Potrebic
ef42d2a575
Fix null profile key breaking nullability contracts for PlayerProfile API ( #8233 )
2022-08-03 22:46:33 +02:00
Spottedleaf
a817697e8a
Add async catcher to PlayerConnection internalTeleport
2022-08-03 12:59:54 -07:00
Nassim Jahnke
4a00cee9cc
Readd patch to remove invalid signature on login error
2022-08-03 15:25:11 +02:00
Jake Potrebic
7044a9c538
Leave a paper.yml.txt stub pointing to new location ( #8090 )
2022-08-02 13:24:57 -07:00
Nassim Jahnke
c032050ad8
Fix command preprocess cancelling and command changing
...
When a command with signed arguments is cancelled, message headers need to be sent out. Same thing for when the executed command is changed.
2022-08-02 19:19:16 +02:00
chickeneer
e0486ae2cd
Fix suggest command message for brigadier syntax exceptions ( #8221 )
2022-08-02 09:51:21 +02:00
Nassim Jahnke
ceef4b9c09
Don't call AsyncTabCompleteEvent from netty IO thread ( #8218 )
2022-08-01 21:56:28 +02:00
Jake Potrebic
dd3e4e7bd6
Initial support for signed messages ( #8198 )
2022-08-01 12:34:55 -07:00
Nassim Jahnke
d60497ebf2
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:
ff64962b SPIGOT-7124: MapPalette.getColor(0) returns the wrong color
CraftBukkit Changes:
8f3647242 SPIGOT-7127: /say doesn't work from console
2022-08-01 16:01:20 +02:00
Maddy Miller
babffb5a46
Undeprecate and fix Boat#getBoatMaterial ( #8217 )
2022-08-01 23:02:23 +10:00
Jake Potrebic
fd557b7d51
Undeprecate Bed's tile entity interface ( #7330 )
2022-07-31 11:25:24 -07:00
Jake Potrebic
1f0d70743e
Fix issues with CreeperIgniteEvent ( #7507 )
2022-07-31 10:14:54 -07:00
Owen
307778fc70
Collision API ( #6736 )
2022-07-31 17:30:34 +02:00
Owen
532dc51d5f
Add missing BlockFadeEvents ( #8171 )
2022-07-30 18:58:37 +02:00
Owen
6ecdbc09c2
Use Worldheight for Activation Ranges ( #8061 )
2022-07-30 18:47:35 +02:00
Owen
8a08b86f4b
Custom Chat Completions API ( #8212 )
2022-07-30 18:28:24 +02:00
Owen
65f0b2e2e4
Add more needed BlockStateListPopulator Methods ( #8021 )
2022-07-30 00:28:46 +01:00
Owen
b74c4d4587
Warn on plugins accessing faraway chunks ( #8208 )
2022-07-30 00:16:26 +01:00
Owen
b72eafc04d
Send block entities after destroy prediction ( #8053 )
2022-07-29 23:26:41 +01:00
Jake Potrebic
e5bbb56ac6
Added 1.19 kick event causes ( #8204 )
2022-07-29 09:31:02 -07:00
Nassim Jahnke
3b895f36fd
Updated Upstream (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
CraftBukkit Changes:
401f1ad58 Re-enable outdated build delay
40eaff8a5 SPIGOT-7125: Command execution exceptions are not logged
639814683 SPIGOT-7123: NullPointerException thrown by Player#chat method
2022-07-29 09:11:11 +02:00
stonar96
2acb479b41
[ci skip] Fix xray patch code style ( #8196 )
2022-07-28 10:30:32 +02:00
Jake Potrebic
4a4ee79cd6
Separate out chat and commands sent via API ( #8131 )
2022-07-27 19:07:26 -07:00
Nassim Jahnke
71544ab01f
Readd deobfuscation of chat executor stacktraces
2022-07-28 02:02:40 +02:00
Nassim Jahnke
c488d15359
Don't fire preview event for non-player senders
...
Fixes #8195
2022-07-28 01:59:19 +02:00
Nassim Jahnke
2184cd2252
Fix chat message api using overlay
2022-07-28 00:38:37 +02:00
Nassim Jahnke
d41ecbe5c3
Make it compie
2022-07-28 00:20:14 +02:00
Nassim Jahnke
cb6f029de9
More compile fixed
2022-07-28 00:10:27 +02:00
Nassim Jahnke
063e6b288c
Compile fixes
2022-07-28 00:04:27 +02:00
Jake Potrebic
64cb313386
some compile fixes
2022-07-27 15:00:14 -07:00
Nassim Jahnke
c8f3d9ee8c
More more more more more more more work
2022-07-27 23:50:05 +02:00
Nassim Jahnke
6b80b342d9
More more more more more more work
2022-07-27 23:32:15 +02:00
Nassim Jahnke
c7304035b6
More more more more work
2022-07-27 23:19:52 +02:00
Nassim Jahnke
aab40382a5
More more more more work
2022-07-27 22:55:55 +02:00
Nassim Jahnke
7a133678da
More more more work
2022-07-27 22:46:05 +02:00
Nassim Jahnke
50710fa684
More more work
2022-07-27 22:17:18 +02:00
Nassim Jahnke
08828fde02
More work
2022-07-27 21:49:24 +02:00
Nassim Jahnke
afb9e818fc
Fix timings diff
2022-07-27 21:22:02 +02:00
Nassim Jahnke
faafca851c
New work
2022-07-27 21:18:51 +02:00
Nassim Jahnke
734a43657a
Move patches over, start with first few
2022-07-27 20:52:03 +02:00
Nassim Jahnke
86f87ba400
Fix custom merchant trade event world reference
2022-07-25 19:21:31 +02:00
Nassim Jahnke
345a6a6205
Updated Upstream (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
CraftBukkit Changes:
ef0946409 PR-1091: Fix exit position in entity travel with portals
d12768f75 PR-1090: Remove no longer needed world reference from CraftMerchantCustom
7550f6854 SPIGOT-7115: Support hex color codes in custom merchant inventory titles
2022-07-25 18:44:24 +02:00
Nassim Jahnke
22ac7d6817
Add internal netty pipeline events
2022-07-25 16:13:09 +02:00
Nassim Jahnke
b327e17634
Fix regenerate chunk method
2022-07-24 22:11:35 +02:00
Shane Freeder
44b6869fd2
Fix plugin update IO logic when replacing jars
2022-07-23 05:52:57 +01:00
Shane Freeder
46a9d2a4ac
Cache Component MOTDs
2022-07-23 02:56:50 +01:00
Jake Potrebic
1a8bea734a
Fix wrong world being passed into portal event ( #8174 )
2022-07-22 17:42:34 -07:00
Jake Potrebic
4952c04610
Don't use level random in entity constructors ( #8122 )
2022-07-22 16:42:13 -07:00
Jake Potrebic
0193a9db5d
Add EntityPortalReadyEvent ( #5619 )
2022-07-22 16:23:12 -07:00
Owen
5deafd1969
Teleportation API ( #6562 )
2022-07-22 20:36:43 +01:00
Jake Potrebic
52a60ad946
Updated Upstream (Bukkit/CraftBukkit) ( #8172 )
...
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:
23f557a0 SPIGOT-5380, SPIGOT-6958, PR-772: Add some missing entity API
CraftBukkit Changes:
fc3071161 SPIGOT-5380, SPIGOT-6958, PR-1085: Add some missing entity API
2022-07-22 11:18:00 -07:00
Jake Potrebic
d0e7fa4dc9
Updated Upstream (Bukkit) ( #8158 )
2022-07-21 20:53:04 +01:00
ChristopheG
73dca00ba5
Add yaw and pitch to CommandSourceStack#getBukkitLocation() ( #8167 )
2022-07-21 09:26:36 +02:00
Noah van der Aa
a76a1ab862
Make Biome implement Translatable ( #8161 )
2022-07-20 18:23:26 +02:00
Pedro
16ee379389
Add SpawnReason to Tadpoles spawned by Frogspawn ( #8165 )
2022-07-20 18:18:28 +02:00
Lulu13022002
bebfc79708
Call jump event for the beast ( #8100 )
2022-07-20 18:17:42 +02:00
Emily
10f09b938a
[ci skip] Readd "Use" Javadoc tab ( #8162 )
2022-07-20 18:16:13 +02:00
Jake Potrebic
b7faa655cb
Fix update future return type ( #8120 )
2022-07-18 23:06:59 -07:00
Space Walker
384d63918c
Fix missing redstone event call with Eigencraft redstone ( #8148 )
2022-07-18 13:46:52 +02:00
stonar96
90836d0da6
1.19 Anti-Xray cleanup ( #8104 )
2022-07-18 12:30:31 +02:00
Pedro
fdd910e0cf
Log IOException in plugin update ( #7960 )
2022-07-18 11:31:33 +02:00
Pedro
036a09c300
Fix spigot config not using commands.spam-exclusions ( #8151 )
2022-07-17 18:37:39 +02:00
Space Walker
cd215af6eb
Fix #8138 ( #8139 )
2022-07-13 23:20:26 +02:00
Noah van der Aa
e4f21e3178
Move old user conversion down slightly ( fixes #8050 ) ( #8052 )
2022-07-12 22:13:27 +01:00
Jake Potrebic
b58063a949
Updated Upstream (Bukkit/CraftBukkit/Spigot) ( #8124 )
...
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:
607ce370 SPIGOT-7069: Material.BARREL has Directional data class, should also be Openable
f14cea82 SPIGOT-7070: Material.SCULK_VEIN has Waterlogged data class, should also be MultipleFacing
8e43b278 PR-767: Add support checking/survivability methods for BlockData
b3dee151 SPIGOT-7083: Add Boat.WoodenType, Boat.Status; deprecate TreeSpecies
CraftBukkit Changes:
9a8e08010 SPIGOT-7069: Material.BARREL has Directional data class, should also be Openable
26bd88ccd SPIGOT-7070: Material.SCULK_VEIN has Waterlogged data class, should also be MultipleFacing
7ba06e15b SPIGOT-7095: StructureGrowEvent doesn't fire for mangrove propagules growing to a tree
163e35c91 PR-1079: Add support checking/survivability methods for BlockData
4230f8f0e SPIGOT-7083: Add Boat.WoodenType, Boat.Status; deprecate TreeSpecies
Spigot Changes:
14a2382f Rebuild patches
2022-07-12 10:16:05 -07:00
Jason
e294802977
Refactor paper command ( #8112 )
...
* Refactor paper command
* Improve paper dumpitem output
* Register paper command permissions
Would be nice to add descriptions for these too, but that's an enhancement for another time
* Update MobcapsCommandTest fail message
* Notify on bad radius for fix light
* fixup rebase
2022-07-08 16:01:42 -07:00
Jason Penilla
5ffeb70186
Use getChunkForLighting instead of getChunkAtImmediately in fixlight to properly ignore imposter chunks
...
We need chunks to actually have their light status future done to relight them, an imposter with for example only the empty future complete but with a light status cannot be relit.
getChunkForLighting gives the desired behavior and is the method used by the light engine, so updating fixlight to use it as well fixes #8115
2022-07-08 15:27:37 -07:00
Bjarne Koll
95ac8745f0
Add ZombieVillager conversion without entity event ( #8111 )
...
The ZombieVillager#setConversionTime API method internally calls
startConversion which always broadcasts the entity event responsible for
playing the respective sound at the beginning of a conversion.
This is not always wanted by developers when modifying already
converting zombies in particular.
This commit expands the ZombieVillager interface with another overload
of the setConversionTime method that also takes a simple toggle flag
indicating whether or not the entity event should be published to the
world.
2022-07-07 22:43:28 +01:00
Lulu13022002
c4782f50a3
Add xp orb spawn reason for frogs ( #8045 )
2022-07-07 22:38:12 +01:00
Jake Potrebic
6ea73e7d63
Fix Bee setFlower NPE ( #8107 )
2022-07-06 15:21:56 -07:00
Shane Freeder
a05e69b9fc
Add a bit of extra debugging to chat order/time errors
...
I do wanna add some leeway to the kick, if message was sent within 30-60
seconds of the last message, assume clock drift and just ignore the kick
(send a message? just silently ignore?), but, I'm not 100% on this one
2022-07-06 06:00:16 +01:00
Bjarne Koll
c879064bfe
Call EntityDropItemEvent for goats dropping horns ( #8094 )
2022-07-04 21:26:43 +02:00
Jake Potrebic
fbb11db9a5
Add missing EntityDropItemEvent calls ( #5674 )
2022-07-04 12:01:17 -07:00
Nassim Jahnke
385f313a8b
Updated Upstream (Bukkit/CraftBukkit/Spigot) ( #8092 )
...
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:
d41796de SPIGOT-7071: Add Player#stopSound(SoundCategory category)
61dae5b2 SPIGOT-7011, SPIGOT-7065: Overhaul of structures
CraftBukkit Changes:
991aeda12 SPIGOT-1729, SPIGOT-7090: Keep precision in teleportation between worlds
5c9a5f628 SPIGOT-7071: Add Player#stopSound(SoundCategory category)
68f888ded SPIGOT-7011, SPIGOT-7065: Overhaul of structures
0231a3746 Remove outdated build delay.
Spigot Changes:
475f6008 Rebuild patches
8ce1761f Rebuild patches
2022-07-04 16:38:06 +02:00
Noah van der Aa
1e5d1db2b7
Call StructureGrowEvent for mangrove propagule ( #8023 )
2022-07-04 15:20:43 +01:00
Spottedleaf
d86fde5523
Do not sync load chunk for dynamic game event listener registration
...
These can be called while an entity is being added to the world,
and if the entity is being added from a chunk load context the
sync load will block indefinitely (because the chunk load context
is for completing the chunk to FULL).
This does raise questions about the current system for these
dynamic registrations, as it looks like there is _zero_ logic
to account for the case where the chunk is _not_ currently loaded
and then later loaded.
2022-07-03 22:42:58 -07:00
Spottedleaf
41647af74c
Do not use worldgen executor for api profile completions
...
We cannot put blocking network I/O onto the worldgen threads,
this will crash the server if it stalls
2022-07-03 14:55:56 -07:00
u9g
ed79fc947a
Add Player#getFishHook ( #7988 )
2022-07-03 12:24:29 -07:00
pop4959
9d0650ed60
Don't print component in resource pack rejection message ( #8084 )
2022-07-02 11:19:53 +02:00
Noah van der Aa
c029645443
Don't allow world unloading while ticking worlds ( fixes #8080 ) ( #8081 )
2022-07-01 18:14:50 +02:00
Space Walker
a22eb678af
update eigencraft patch ( #8076 )
2022-06-30 09:20:40 +02:00
Jason
1bd678c494
[ci skip] Scan built jars for bad method usages ( #8051 )
2022-06-27 15:41:59 -07:00
Jake Potrebic
37afe987d9
Fix CCE for SplashPotion and LingeringPotion spawning ( #7758 )
2022-06-25 14:21:47 -07:00
Owen
11bd74bc56
Use safe method for handling Files#createDirectories ( #7997 )
2022-06-25 22:40:28 +02:00
Jake Potrebic
e7036bb2d7
Updated Upstream (Bukkit/CraftBukkit) ( #8042 )
...
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:
d5a777e7 SPIGOT-7078: Add EntityPotionEffectEvent.Cause#WARDEN
CraftBukkit Changes:
82f757467 SPIGOT-7078: Add EntityPotionEffectEvent.Cause#WARDEN
c924fa531 SPIGOT-7072: Call events for stepping on sculk sensors and sculk shriekers
2022-06-25 13:26:00 -07:00
Noah van der Aa
04d080ed82
[ci skip] Fix tiny mistake in adventure javadocs ( #8046 )
2022-06-24 17:39:44 +01:00
Owen
5593f4edd3
Cleanup LivingEntity Hand Raised/Item Use API ( #7995 )
2022-06-24 10:04:02 +02:00
Space Walker
bdb6816960
Update Alternate Current to v1.4.0 ( #8028 )
2022-06-24 09:58:59 +02:00
Jake Potrebic
e52499e41d
Fix Player#loadData and Player#saveData javadocs ( #8039 )
2022-06-22 20:46:13 -07:00
Shane Freeder
147a2b7f54
Parse MOTD as legacy sectioned string ( Fixes #8036 )
...
This is not ideal but this is how MOTDs have been parsed for years,
ensure that this is performed for all things getting the MOTD from
the server
2022-06-22 09:15:20 +01:00
Jake Potrebic
4c9317c9fb
Use non-deprecated super ctor in PaperServerListPingEventImpl ( #8029 )
2022-06-21 17:54:52 +02:00
Nassim Jahnke
fb2c24b36d
Updated Upstream (Bukkit/CraftBukkit) ( #8015 )
...
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:
05ae036c PR-746: Add option to use cached map color palette
57849c1b PR-759: Add preview chat option in ServerListPingEvent
0169e65d PR-758: Add missing server properties methods from 1.19
CraftBukkit Changes:
622dbe6c2 SPIGOT-7068: SKULK and SKULK_VEIN BlockSpreadEvents Still do not reference the correct source (SKULK_CATALYST)
6c61b73f3 PR-1052: Add option to use cached map color palette
c882f38ea SPIGOT-7066: Fix custom END worlds not generating DragonBattle
6866aab59 SPIGOT-2420: Can't set exp drops for EnderDragon death
9dcd46530 PR-1067: Add preview chat option in ServerListPingEvent
36c2681af PR-1066: Add missing server properties methods from 1.19
031eaadd0 Increase outdated build delay
8fda4b12f SPIGOT-7060: SCULK and SCULK_VEIN BlockSpreadEvents do not reference the correct source
2022-06-20 19:12:05 +02:00
Shane Freeder
ed9cf5ca08
Fix missing null check in ChunkGenerator#findNearestMapStructure
2022-06-20 15:01:29 +01:00
Spottedleaf
9797f081c2
Sync Starlight SaveUtil with 1.1.1
...
Code isn't used, but still should be synced
2022-06-18 14:48:08 -07:00
Jake Potrebic
b0eb4e0c74
Fix number parsing ( #8013 )
2022-06-17 11:28:18 -07:00
Shane Freeder
7688112546
[ci skip] restore jd.io
2022-06-17 18:28:43 +01:00
Shane Freeder
b77fe3a42b
Temp: Disable javadoc.io for now
2022-06-17 08:26:11 +01:00
Jake Potrebic
e269a0a00b
Fix incorrect random nextLong to nextInt ( #8009 )
2022-06-17 09:00:17 +02:00
Shane Freeder
81f2eece54
[ci skip] rebuild patches
2022-06-17 06:10:23 +01:00
Jake Potrebic
d1b1c6ffd9
Add missing deprecation to AdvancementDisplayType ( #7876 )
2022-06-16 15:19:47 -07:00
Jake Potrebic
dd613194ed
Couple fixes for command blocks ( #8004 )
2022-06-16 15:03:02 -07:00
Owen
f428887cc1
Prevent empty items from being added to world ( #7998 )
...
The previous solution caused a bunch of bandaid fixes inorder to resolve edge cases where minecraft/the api might spawn items that are air.
Just simply prevent them from being added to the world instead.
2022-06-16 22:31:23 +01:00
Jake Potrebic
0ae78d381a
Fix advancement saving before reloads ( #8003 )
2022-06-16 21:59:53 +01:00
Noah van der Aa
0c1643c02c
Fix MC-252439 ( #7994 )
2022-06-16 20:23:36 +02:00
Owen
2dcfb2b11f
Nameable Banner API ( #7711 )
2022-06-16 04:54:54 +01:00
Owen
94ef34cd0f
Fix incorrect ansi code being used for bold ( #8000 )
...
Co-authored-by: BillyGalbreath <blake.galbreath@gmail.com>
2022-06-16 04:40:14 +01:00
Owen
17c1c6c3e7
Add missing important BlockStateListPopulator methods ( #7952 )
2022-06-15 18:30:58 +02:00
Jake Potrebic
4a48ed306d
Add option for strict advancement dimension checks ( #7954 )
2022-06-14 16:31:20 -07:00
u9g
805423c90e
Add ARMOR tag to MaterialTags (1.19) ( #7987 )
2022-06-15 00:04:19 +01:00
chickeneer
e3042d2506
Fix the growth modifier for glowberries ( #7986 )
2022-06-14 23:37:14 +01:00
Dustin
48f7a1a9ef
Add WardenAngerChangeEvent ( #7943 )
2022-06-14 12:34:41 +02:00
Jake Potrebic
b844286f48
Fix command signs patch update ( #7976 )
2022-06-14 10:51:53 +02:00
Jake Potrebic
3d37b42a89
Couple config fixes ( #7975 )
2022-06-13 15:29:44 -07:00
froobynooby
8bae82db21
Use deserialised row keys in config tables ( #7962 )
2022-06-13 13:50:43 -07:00
Nassim Jahnke
bd097b4323
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:
4d37bf30 PR-762: Add SpawnReason and TransformReason for Tadpole metamorphosis into Frog
788174ae PR-761: Add Hangable interface to MangrovePropagule
CraftBukkit Changes:
3571ca8d1 PR-1070: Add SpawnReason and TransformReason for Tadpole metamorphosis into Frog
8f097b92f PR-1068: Add Hangable interface to MangrovePropagule
Spigot Changes:
56be6a84 Rebuild patches
c6c8886d PR-118: Add config option to disable hopper-chunk-loading
2022-06-13 18:06:25 +02:00
Shane Freeder
e4f5e1c9ab
Bump netty
2022-06-12 23:53:18 +01:00
Josh Roy
90050ffd54
Update Adventure to 4.11.0 and implement ComponentLogger ( #7937 )
2022-06-12 23:07:40 +02:00
Jake Potrebic
4797e3a945
Dont reassign the hiddenConfigs field in TimingsManager ( #7951 )
2022-06-12 10:29:27 -07:00
Nassim Jahnke
8b6f4dd482
Add paper-settings-directory cl argument ( #7949 )
2022-06-12 10:07:43 +02:00
Jake Potrebic
ee4916df7d
Fire kick event for out-of-order chat on main thread ( #7942 )
2022-06-11 18:11:18 -07:00
Shane Freeder
6c52b5e2c8
Ensure that Log4J is shutdown when stopping the server ( Fixes #7932 )
2022-06-12 01:59:24 +01:00
Shane Freeder
c044b14efd
Add support for Velocity forwarding v2
...
This is strictly not needed, however, I wanted to write this in part
to test the new forwarding logic, parsing and advertising the latest
featureset is also not exactly a bad thing
2022-06-12 01:49:04 +01:00
Jake Potrebic
9ad94dcbc4
Adjust config headers
2022-06-11 13:43:59 -07:00
Spottedleaf
dfc10448bb
Fix keep spawn loaded patch
...
Needs to be in blocks
2022-06-11 08:03:56 -07:00
Spottedleaf
46954ee75b
Don't explode on light data in the nether
...
It shouldn't be there but whatever
2022-06-11 08:03:56 -07:00
Jake Potrebic
55201f00e8
Updated Upstream (Bukkit/CraftBukkit) ( #7936 )
...
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:
c1d911a2 Add compat constructor to PlayerAnimationEvent
CraftBukkit Changes:
effea36a2 PR-1065: Add missing calls for BlockSpreadEvent when Sculk spreads
2022-06-11 11:02:57 +02:00
Nassim Jahnke
d7165b0d56
Fix some references to obfuscated code
2022-06-11 11:02:09 +02:00
Owen1212055
1ccff4f5d1
Readd mc-4 fix
2022-06-11 10:41:59 +02:00
Owen
c80df849c2
Readd remove vec allocations diff ( #7930 )
2022-06-11 10:30:20 +02:00
Evan
f8beab5e5e
correct argument check in PlayerHandshakeEvent#setFailMessage(String) ( #7940 )
2022-06-11 00:37:00 -07:00
Spottedleaf
ee7d16111d
Make starlight light read non-fatal if it throws
...
Brings behavior in line with the mod, we shouldn't kill the chunk
if the light data is corrupt, we can regenerate the light data
2022-06-10 21:08:37 -07:00
Spottedleaf
5a2973fd80
Correct dataconverter diff
...
Missed renames + game event listener walker stuff
2022-06-10 20:54:05 -07:00
Jake Potrebic
76f81aec25
Keep default keys in some maps
...
Fixes https://github.com/PaperMC/Paper/issues/7913#issuecomment-1152780671
2022-06-10 17:11:12 -07:00
Jake Potrebic
99aa5f2fa5
Fixes parsing tags in selectors in command functions
...
Fixes #7928
2022-06-10 10:02:09 -07:00
Jake Potrebic
698b3152cf
Improve migration file errors ( #7929 )
2022-06-10 10:01:09 -07:00
Owen1212055
8bca9190a4
Remove unneeded patch
2022-06-10 16:15:38 +02:00
Owen
a8a01bbb52
port Significantly improve performance of the end generation ( #7919 )
2022-06-10 16:11:41 +02:00
Nassim Jahnke
cf384f5269
Don't print stacktrace when client with invalid signature logs in
2022-06-10 16:03:48 +02:00
Nassim Jahnke
9b6fb2fe71
Remove bad warning
2022-06-10 14:58:25 +02:00
Nassim Jahnke
07548192b1
Updated Upstream (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
CraftBukkit Changes:
cc7edd6bc SPIGOT-7051: Worldgen API does not run vanilla noise generation when shouldGenerateNoise is true
2022-06-10 14:45:58 +02:00
Nassim Jahnke
9a75a79edd
Readd PlayerAnimationEvent constructor removed by upstream
2022-06-10 14:44:40 +02:00
Jake Potrebic
8141349df1
improve packet config serializer ( #7920 )
2022-06-10 10:45:41 +02:00
Jake Potrebic
dd6a8e9394
couple more migration issues
2022-06-09 22:03:37 -07:00
Jake Potrebic
02b5ec4c78
fix 2 more migration issues
2022-06-09 18:40:07 -07:00
Jake Potrebic
cfe3ad1b0f
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:
45d9c73c SPIGOT-7043: EnderChest does not implement Lidded
86b95f34 SPIGOT-7047: Add Player#getLastDeathLocation
CraftBukkit Changes:
b2557f6ac SPIGOT-7041: Custom BiomeProvider not used when world set to type FLAT
732c50cab SPIGOT-7043: EnderChest does not implement Lidded
6209029ea SPIGOT-7048: addPassenger() not working when vehicle is player
3aa7836df SPIGOT-7047: Add Player#getLastDeathLocation
7d522cd26 SPIGOT-7050: Enchantment data of items will not be saved correctly when saved in YAML configuration file
Spigot Changes:
1dffefb4 Rebuild patches
2022-06-09 18:20:55 -07:00
Owen
83e2a3582b
Fix light ( #7917 )
2022-06-10 02:09:55 +01:00
Jason Penilla
4a51a54896
Don't use deprecated permission message method
2022-06-09 17:03:05 -07:00
Nassim Jahnke
5ac29fcb93
Fix migration of packet limiter
2022-06-10 01:55:53 +02:00
Owen
d833c0c39a
Update starlight + read null light data ( #7912 )
2022-06-10 01:49:23 +02:00
Jason Penilla
7c55e62abc
Fix tests
2022-06-09 16:19:38 -07:00
Jason Penilla
ade44f39ce
Remove todo
2022-06-09 16:08:23 -07:00
Jason Penilla
0a21166a8b
Update player chunk loader patch, re-add ticket level propagator patch
2022-06-09 16:01:48 -07:00
Noah van der Aa
181a8479b5
Make slime spawn checks use tag again and rename config option ( #7910 )
2022-06-10 00:48:46 +02:00
Jake Potrebic
6249dd5ecb
remove more unused config options
2022-06-09 15:15:01 -07:00
Jake Potrebic
77de07a15d
fix more config migration issues
2022-06-09 15:03:02 -07:00
Jake Potrebic
e5ed99a29a
fix compile issue
2022-06-09 14:50:05 -07:00
Jake Potrebic
3f1c6a45da
move commands out of configuration
2022-06-09 14:44:20 -07:00
Shane Freeder
ad51c406d5
Fix don't lookup profiles for blank names patch
2022-06-09 22:37:33 +01:00
Nassim Jahnke
09c9215b85
Add sendRichMessage and sendPlainMessage methods
2022-06-09 23:34:06 +02:00
Nassim Jahnke
5052a4515e
Minor patch changes
2022-06-09 23:27:06 +02:00
Jake Potrebic
c946526ab1
minimessage conversion
2022-06-09 14:25:16 -07:00
Owen
c34a306393
Remove old config options ( #7908 )
2022-06-09 22:48:35 +02:00
Owen
acd50c5287
Keyed cat Type ( #7901 )
2022-06-09 22:38:59 +02:00
Jake Potrebic
f27aa33aba
catch IAE from empty transformation builder
2022-06-09 13:06:08 -07:00
Owen
d9fcf39f65
Remove locname ( #7909 )
2022-06-09 12:56:21 -07:00
Jake Potrebic
2e68ecc289
more configuration fixes/changes
2022-06-09 12:51:29 -07:00
Owen
e47848f112
Correctly handle ElderGuardianAppearanceEvent canceling ( #7902 )
2022-06-09 21:04:10 +02:00
Noah van der Aa
84434e6ae9
Don't validate chunk before it's been run through DataConverter ( #7907 )
2022-06-09 17:39:02 +01:00
Nassim Jahnke
a3a0390e3b
Fix config migration error preventing server startup
...
There's at least two more, but those are less pressing
2022-06-09 14:27:48 +02:00
Nassim Jahnke
d385af0e01
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:
0a4b84d6 SPIGOT-7003: Add missing PlayerAnimationType
830db7d5 SPIGOT-5984: Add non deprecated / magic value way to set pixel in MapCanvas
20caf8ff PR-754: Add DamageCause.SONIC_BOOM
CraftBukkit Changes:
576a03704 SPIGOT-7003: Add missing PlayerAnimationType
0dcc5fdd0 SPIGOT-5984: Add non deprecated / magic value way to set pixel in MapCanvas
d75aacb43 Update Netty version
3b34c6bea SPIGOT-7044: Modified RandomSourceWrapper to ensure random is not null before setting seed
4b60bfd18 PR-1059: Add DamageCause.SONIC_BOOM
2022-06-09 13:55:33 +02:00
Nassim Jahnke
e1c2939c11
Update configurable feature seed patch
2022-06-09 13:16:00 +02:00
Nassim Jahnke
b26d590d0c
Fixes
...
Co-authored-by: Owen1212055 <23108066+Owen1212055@users.noreply.github.com>
2022-06-09 11:57:19 +02:00
Nassim Jahnke
7be0194157
Readd dummy PaperConfig and PaperWorldConfig classes
2022-06-09 11:46:41 +02:00
Jason
d7cc306336
Update Optimise general POI access ( #7903 )
2022-06-09 11:37:28 +02:00
Jake Potrebic
172d260d67
Move to configurate for paper.yml ( #7609 )
2022-06-09 10:51:45 +02:00
Owen
da8027352c
Deprecate origin for vibrations ( #7898 )
2022-06-08 13:44:59 -07:00
Jake Potrebic
467a16642a
fallback to default locate logic if no API found
2022-06-08 13:42:54 -07:00
Noah van der Aa
9107753202
(1.19) Make timings link clickable ( #7897 )
2022-06-08 13:27:24 -07:00
Owen
cbb47cacdb
Add missing spawn eggs ( #7896 )
2022-06-08 13:25:47 -07:00
Nassim Jahnke
11c2705ac2
Slightly untrash Spigot chat handling
...
Vanilla technically allows chat messages with starting slashes now,
Spigot still accepts them as commands, most likely due to being too
lazy to properly differentiate between chat and command intent in
their implementation. This disallows modified clients to send chat
messages with slashes and makes sure chat validation always happens
on the netty event loop, rather than there and possibly being moved
to the main thread, thus having the delayed handling cause a bad
process order of message ids.
2022-06-08 21:42:49 +02:00
Owen
86c16504d6
Dont resent entity on art update ( #7887 )
2022-06-08 21:25:15 +02:00
Jake Potrebic
29e918948a
Fix structures issues/api ( #7895 )
2022-06-08 21:00:19 +02:00
Owen
a93aa05bf8
Wrap NBTOps in RegistryOps ( #7892 )
2022-06-08 20:25:39 +02:00
Jake Potrebic
e24a25097a
correct patch description
2022-06-08 11:06:52 -07:00
Nassim Jahnke
897cc27c8b
Remove no longer needed patch
2022-06-08 20:06:04 +02:00
Nassim Jahnke
d1e1217a01
Only send empty chunk when player is dead
...
Currently not needed at all with chunk rewrites not yet updated, but considering it's only actually needed for dead players, no need to fuck up a chunk without the future applied patch
2022-06-08 19:50:57 +02:00
Noah van der Aa
44ccc15a30
Port Fix missing chunks due to integer overflow to 1.19 ( #7891 )
2022-06-08 19:39:07 +02:00
Nassim Jahnke
4c1b338e0f
Remove level propagator patch for now
2022-06-08 19:33:07 +02:00
Space Walker
bd134f856b
Update Alternate Current patch ( #7890 )
2022-06-08 19:29:34 +02:00
Owen
222391f809
Check if is light status or above / isLightOn / starlight version fits ( #7888 )
2022-06-08 18:32:49 +02:00
Nassim Jahnke
b3b63d3a02
Fix tests (again?)
2022-06-08 18:18:49 +02:00
Nassim Jahnke
57dfcdf4eb
Reorder some patches
2022-06-08 18:13:02 +02:00
Owen
a02874e014
Remove painting desync ( #7886 )
2022-06-08 17:45:54 +02:00
MiniDigger | Martin
8399e10c43
fix reobf issues around randomsource impls
...
prolly should be fixed in a mapping patch instead but I don't wanna
2022-06-08 17:43:25 +02:00
Nassim Jahnke
02804a49a2
Fix tests
2022-06-08 17:31:27 +02:00
Jake Potrebic
7a165c9c5d
Add back fix swamp hut deadlock patch
2022-06-08 07:58:57 -07:00
Nassim Jahnke
a6bc17b8bb
IT COMPILES BOIS
2022-06-08 16:51:37 +02:00
Nassim Jahnke
913d2ae0b8
Fix
2022-06-08 16:46:39 +02:00
Jake Potrebic
9ab6893183
Add back Fix locateNearestStructure patch
2022-06-08 07:46:01 -07:00
Jake Potrebic
d5216d8588
Add back Fix NotePlayEvent patch
2022-06-08 07:36:43 -07:00
Jake Potrebic
af4b5ee4f0
add back removed kelp modifier patch
2022-06-08 07:29:32 -07:00
Nassim Jahnke
1d5b298c19
More compilation error fixes
2022-06-08 16:24:55 +02:00
Nassim Jahnke
b561fd8b25
Compilation error fixes
2022-06-08 15:59:48 +02:00
Owen
7ece9454f7
Use biome source method to prevent loading chunks ( #7885 )
2022-06-08 15:57:04 +02:00
Noah van der Aa
b1f5e70075
Moar 1.19 fixes ( #7884 )
2022-06-08 15:38:56 +02:00
Nassim Jahnke
55d7f562b8
More more more more more more more more more more more patches
2022-06-08 15:36:56 +02:00
Nassim Jahnke
beab8a32c1
More more more more more more more more more more patches
2022-06-08 15:12:28 +02:00
Owen
2259098789
Misc fixes ( #7883 )
2022-06-08 15:03:33 +02:00
Nassim Jahnke
301cf577c2
More more more more more more more more more patches
2022-06-08 14:33:46 +02:00
MiniDigger | Martin
391e65f1af
more misc compile fixes
2022-06-08 14:19:54 +02:00
MiniDigger | Martin
2f0b2b93df
Add missing DataConverter and fix some imports
...
not fully sure those imports (or well, those classes being outside of the mc package) are right, but who cares 🤷
2022-06-08 14:01:30 +02:00
Nassim Jahnke
d28b20944b
Things, and Starlight (maybe)
2022-06-08 13:44:30 +02:00
Nassim Jahnke
8d5407b16f
Things, and DataConverter (maybe)
2022-06-08 13:12:14 +02:00
Nassim Jahnke
82f712c096
More more more more more more more more patches
2022-06-08 12:40:44 +02:00
Nassim Jahnke
f0e575f445
More more more more more more more patches
2022-06-08 12:20:57 +02:00
Nassim Jahnke
0e06c77264
More more more more more more patches
2022-06-08 11:31:06 +02:00
Noah van der Aa
b464e02ba4
Misc. 1.19 fixes ( #7881 )
2022-06-08 10:45:59 +02:00
Jake Potrebic
cc7979a6e0
bale o' patches
2022-06-08 01:00:56 -07:00
Jake Potrebic
aabbfcdf8d
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:
4b08dbc5 PR-752: Make Leaves Waterlogged
de323fc9 Downgrade dependency version
CraftBukkit Changes:
c3f219edb Fix missing abstract in CraftLeaves
886e6d8c8 SPIGOT-7038: Setting title or subtitle to empty string causes the player to disconnect
6c302a5e3 Make Leaves Waterlogged
53b681be5 Downgrade dependency version
Spigot Changes:
ee737122 Fixed system messages shown in action bar
f343df82 SPIGOT-7036: Don't use CHAT message type
63a06049 SPIGOT-7035: Actionbar Sending in Main Chat
2022-06-08 00:49:02 -07:00
Jake Potrebic
a1d0432c2c
batch o' patches
2022-06-08 00:40:34 -07:00
Jake Potrebic
89c3c31af9
bag o' patches
2022-06-08 00:30:41 -07:00
Jake Potrebic
feca8d248c
bouquet o' patches
2022-06-07 23:25:32 -07:00
Jake Potrebic
2304bb3d6f
bundle o' patches
2022-06-07 23:06:17 -07:00
Jake Potrebic
0745f97bb5
bunch o' patches
2022-06-07 22:46:52 -07:00
Jake Potrebic
dc12a6e9fe
a bunch more patches done
2022-06-07 22:02:19 -07:00
Jake Potrebic
c3fc3de622
even moar patches
2022-06-07 21:39:43 -07:00
Jake Potrebic
f04e64dfc6
moar patches
2022-06-07 21:22:42 -07:00
Spottedleaf
f371b4e374
<3 jmp
2022-06-07 21:07:14 -07:00
Jake Potrebic
c5db5371bf
Fix more issues
2022-06-07 20:59:40 -07:00
Spottedleaf
7bbeef26ba
i really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really hate jmp
2022-06-07 20:42:55 -07:00
Jake Potrebic
d41a026555
few more server decompile fixes
2022-06-07 20:12:24 -07:00
Spottedleaf
26ea0402d8
i really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really love jmp
2022-06-07 19:25:49 -07:00
Spottedleaf
a27b508dea
i really really really really really really really really really really really really really really really really really really really really really really really really really really really really really really love jmp
2022-06-07 18:34:11 -07:00
Jake Potrebic
68b585fba7
Fix cook speed patch
2022-06-07 18:19:35 -07:00
Jake Potrebic
a16970ac1b
Fix CanPlaceOn/CanDestroy API issues
2022-06-07 18:13:05 -07:00
Spottedleaf
c515eb9a08
rebuild after rebase
2022-06-07 17:43:52 -07:00
Spottedleaf
32c195bd4f
i love jmp
2022-06-07 17:43:03 -07:00
Spottedleaf
87ca0fa790
hate jmp and his gradle
2022-06-07 17:43:03 -07:00
Jake Potrebic
3a0b9487d4
temporary fixes for adventure chat
2022-06-07 16:49:14 -07:00
Owen1212055
58133bdfdf
Update PreCreatureSpawnEvent patch
2022-06-07 23:54:21 +02:00
Jake Potrebic
4e13355af1
some server compile fixes
2022-06-07 14:48:14 -07:00
Nassim Jahnke
addf9c9155
More more more more more patches
2022-06-07 23:45:11 +02:00
Jake Potrebic
7d7779a667
Fix even more errors
2022-06-07 14:15:14 -07:00
Jake Potrebic
3773770230
Fix more errors
2022-06-07 14:01:17 -07:00
Nassim Jahnke
aac58bb772
More more more more patches
2022-06-07 22:45:38 +02:00
Jake Potrebic
c321ca57db
fix unmerged diff
2022-06-07 13:43:05 -07:00
Jake Potrebic
13fe88643e
API now compiles successfully
2022-06-07 13:31:10 -07:00
Jake Potrebic
88f74d1bac
Fix some api compilation errors
2022-06-07 13:23:21 -07:00
Nassim Jahnke
cac4deb882
More more more patches
2022-06-07 22:12:48 +02:00
Nassim Jahnke
1669c6b097
More more patches
2022-06-07 21:55:39 +02:00
Nassim Jahnke
2710efc693
More patches
2022-06-07 21:15:06 +02:00
Nassim Jahnke
a9c507310b
First server patches
2022-06-07 20:43:28 +02:00
Nassim Jahnke
028e2d9f00
API patches
2022-06-07 19:20:30 +02:00
Nassim Jahnke
56e64243ed
Patch cleanup
2022-06-07 19:03:07 +02:00
Nassim Jahnke
cb05aa6b8b
Prepare for 1.19 dev
2022-06-07 18:52:56 +02:00
Joseph Burton
276d830d22
Fix campfire walker in V1920
2022-06-06 17:51:12 -07:00
Jake Potrebic
4b27254e6a
Fix treasure maps discovered settings ( #7627 )
2022-06-05 17:17:27 -07:00
Joseph Burton
d8ef841114
[DataConverter] Fix generator options parsing
2022-06-05 22:49:42 +01:00
Jake Potrebic
b3deb2589e
Move some methods to RegionAccessor ( #7635 )
2022-06-05 13:51:44 -07:00
Nassim Jahnke
5befb5586e
Updated Upstream (Bukkit/CraftBukkit) ( #7875 )
...
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:
6a039faf PR-745: Expose more information about advancements
52148c47 PR-749: Various javadoc improvements
23c2d841 PR-748: Remove permissible recalculation from Permission constructor
CraftBukkit Changes:
a59dc59e SPIGOT-7025: Use existing item in hand for ranged Drowned attack
e4cca0ca PR-1050: Expose more information about advancements
2022-06-05 10:43:06 +02:00
froobynooby
5b6397af2c
Make leave messages for kicks the same as for quitting ( #7874 )
2022-06-05 08:43:35 +01:00
Jake Potrebic
071a4a2444
throw exception if worlds are created while being ticked ( #7653 )
2022-06-04 14:48:24 -07:00
Nassim Jahnke
bed5cb2b81
Limit resolved selectors when enabled
2022-06-03 16:06:05 +02:00
Jake Potrebic
fd069dd5af
Remove incorrect throws javadoc in Team ( #7869 )
2022-06-02 22:05:42 -07:00
Jake Potrebic
8fc0999b09
Fix some nullability things ( #7275 )
2022-06-02 21:42:00 -07:00
Jake Potrebic
a3ad720749
Remove ChatColor usages ( #7543 )
2022-06-02 21:26:56 -07:00
Nassim Jahnke
1d08ce8583
Disable book selector resolving by default
2022-06-02 20:40:24 +02:00
Owen
b1ac25fdb8
Respect x-ray permission in World#refreshChunk ( #7214 )
...
Co-authored-by: stonar96 <minecraft.stonar96@gmail.com>
2022-06-02 03:08:51 +01:00
Emily
71fe3c64f0
Add numeric string completion suggestions as int suggestions ( #6360 )
2022-06-02 02:56:24 +01:00
Owen
c5caee307e
Prevent entity loading causing async lookups ( #7553 )
2022-06-02 02:35:57 +01:00
Jake Potrebic
2d17a50b8b
Add translation keys to GameMode enum ( #7081 )
2022-06-01 18:30:29 -07:00
Owen
7602dd2014
Sanitize Sent BlockEntity NBT ( #7010 )
2022-06-02 02:27:36 +01:00
Jake Potrebic
00c6ae8419
Implement Translatable on CreativeCategory ( #7587 )
2022-06-01 17:07:10 -07:00
PureGero
04e1b070ef
Check HAProxyMessage type is PROXY ( #7864 )
2022-06-01 22:58:22 +01:00
Jake Potrebic
78e6431008
Add default kick msg component ( #6886 )
2022-05-31 23:20:12 -07:00
Jake Potrebic
3f7111d4e1
Fix EntityEquipment and related javadocs ( #7380 )
2022-05-31 13:40:21 -07:00
Jake Potrebic
f210f67c4a
Update the rewriteForIde for new cb package version ( #7242 )
2022-05-30 22:18:45 -07:00
Jake Potrebic
6b035fd9a1
Update default vanilla command perms ( #7386 )
2022-05-30 21:57:32 -07:00
Jake Potrebic
f7382f5f4b
Remove unneeded UOE when copying biome sources ( #7629 )
2022-05-30 19:35:46 -07:00
Jake Potrebic
c123915afc
Fix FurnaceInventory for smokers and blast furnaces ( #7249 )
2022-05-30 19:03:18 -07:00
Jake Potrebic
9667181d1d
Fix OfflinePlayer#getBedSpawnLocation ( #7861 )
2022-05-30 18:42:51 -07:00
Jason
af3b3778f6
Update ForgeFlower ( #7857 )
2022-05-29 12:54:25 -07:00
Jake Potrebic
3f7fbe316d
Fix cb's janky level name in WorldCreator ( #7851 )
2022-05-27 16:42:36 +01:00
Jake Potrebic
b6a6544ad1
Provide ComponentSerializer services ( #7527 )
2022-05-26 12:12:14 -07:00
Jake Potrebic
182a609b85
Fix duplicate world keys via createWorld ( #7614 )
2022-05-26 10:59:53 -07:00
Jake Potrebic
79e07f34ac
Fix addPassenger for Marker ( #7762 )
2022-05-25 18:00:47 -07:00
Jake Potrebic
a90092e758
Updated Upstream (CraftBukkit/Spigot) ( #7848 )
...
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:
95d233dc SPIGOT-1807: PlayerTeleportEvent is called twice
Spigot Changes:
b0819150 PR-116: Slightly reduce item merge radius in Y-direction
ef2aa765 PR-119: Fix off-by-one and allow disabling max-tnt-per-tick option
2022-05-25 21:21:51 +02:00
PanSzelescik
31ccc579b5
Add support for Proxy Protocol ( #7710 )
2022-05-24 05:56:58 +01:00
rgnter
d8108b5416
team color parameter may be null, causing NPE
2022-05-24 05:27:24 +01:00
Jake Potrebic
123cad5d3e
Remove incorrect parent perm from debugstick.always ( #7846 )
2022-05-24 05:09:20 +01:00
Jake Potrebic
fc1752ff15
Fix more upstream javadocs ( #7837 )
2022-05-20 09:57:07 -07:00
Noah van der Aa
ed4e9163ef
[ci-skip] Update repository and API urls ( #7835 )
2022-05-20 08:12:30 -07:00
Owen
9b492cff36
Deprecate set/doesBounce from Projectile ( #7800 )
2022-05-19 01:46:01 +01:00
Noah van der Aa
ca623865b0
Hide ores with deepslate at Y=4 and below ( #7792 )
...
Fixes #7771
Co-authored-by: stonar96 <minecraft.stonar96@gmail.com>
2022-05-18 22:16:12 +02:00
Nassim Jahnke
73bd35d076
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:
218294b1 PR-743: Support setting individual Wither head targets
CraftBukkit Changes:
d48f2d1a PR-1047: Support setting individual Wither head targets
518f1bee SPIGOT-6948: Motion from Explosion after Respawn
f3c7a6ac SPIGOT-7019: Add yaw in World#getSpawnLocation
2022-05-17 11:51:46 +02:00
Peter Crawley
0116751101
List world on tile entity placement exception ( #7709 )
2022-05-16 11:38:14 +01:00
Jake Potrebic
8d1de8de8d
deprecate old MaterialData api ( #7585 )
2022-05-15 19:33:03 -07:00
Jake Potrebic
9fd870db0b
Fix cancelling PlayerItemFrameChangeEvent ( #7761 )
2022-05-09 17:22:57 -07:00
Jake Potrebic
5928327f90
Remove unneeded patch ( #7806 )
2022-05-09 20:22:43 +02:00
Nassim Jahnke
18f0f8d1ca
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:
312281ea PR-742: Make World implement Keyed
CraftBukkit Changes:
2ac7fa7a SPIGOT-7014: getLootTable API should not persistently update loot table
7fdd7941 PR-1046: Make World implement Keyed
7bc728a6 PR-1045: Revert changes to persistence required checks
Spigot Changes:
b6d12d17 Rebuild patches
2022-05-09 11:03:07 +02:00
Jason Penilla
268476bba3
Fix whitespace error in Alternate Current patch
2022-05-08 09:25:34 -07:00
Spottedleaf
e399754320
Do not accept invalid client settings
2022-05-07 14:59:20 -07:00
Jake Potrebic
87d2eb2d3b
Fix door breaking difficulty defaults for vindicator ( #7795 )
2022-05-07 11:38:15 -07:00
Nassim Jahnke
1a17a83f8a
Move redstone config changes to Eigencraft patch
2022-05-07 19:52:32 +02:00
Space Walker
7a6163b41d
Add Alternate Current's redstone implementation as an alternative to Vanilla and Eigencraft's. ( #7701 )
2022-05-07 18:47:28 +02:00
Spottedleaf
b831784aed
Only log for passenger / vehicle world mismatch
...
Exception thrown may corrupt passenger/vehicle state
2022-05-07 08:48:29 -07:00
Pedro
8c9d98e100
Clean unused field for Configurable door breaking difficulty ( #7793 )
2022-05-07 06:57:41 +01:00
Pedro
2515bc4751
Improve configurable door difficulty ( #6985 )
2022-05-06 17:52:14 +02:00
Noah van der Aa
421938915c
Don't tick markers ( #7299 )
2022-05-06 17:33:07 +02:00
Owen
f3a8a0b953
FallingBlock auto expire setting ( #7037 )
2022-05-06 17:21:24 +02:00
u9g
a117da6b26
Add PlayerStopUsingItemEvent ( #7787 )
2022-05-06 17:14:06 +02:00
HexedHero
f6a69dedb9
Undeprecate getOfflinePlayer ( #7773 )
2022-05-06 14:21:58 +02:00
Noah van der Aa
2ab0258b5a
Use mojang item ids for alternative item despawn rate ( #6997 )
2022-05-04 23:29:15 +01:00
Jake Potrebic
e5da93a608
Deprecate duplicate SoundGroup API ( #7509 )
2022-04-30 13:44:22 -07:00
Jake Potrebic
e564110f9e
Couple fixes/improvements to PlayerSetSpawnEvent ( #6754 )
2022-04-30 13:24:47 -07:00
Shane Freeder
4166632333
Updated Upstream (Bukkit/CraftBukkit) ( #7776 )
2022-04-30 17:27:41 +01:00
Shane Freeder
608482d512
cleanup filtered sign text ( #7777 )
2022-04-30 16:49:57 +01:00
Jason Penilla
6f5e6c60d3
Use setMessage instead of arraycopy
...
setMessage affects messages, filteredMessage, and renderMessages, we were only doing an arraycopy for messages
fixes #7774
2022-04-28 20:08:08 -07:00
Joseph Burton
ce059b4f99
Fix V1451 dataconverter stat types
2022-04-25 18:06:04 +02:00
Jake Potrebic
d70ac039e8
fix powder snow cauldrons not turning to water ( #7229 )
2022-04-24 11:35:24 -07:00
Jake Potrebic
0bf7c95c8d
Fix opening inv in PlayerRecipeBookClickEvent handler ( #7552 )
2022-04-23 18:48:00 -07:00
Jake Potrebic
4dc78ae8b9
Fix some team color docs and added hasColor ( #7602 )
2022-04-23 18:37:10 -07:00
Jake Potrebic
5b85ee37e2
Fire CauldronLevelChange on initial fill ( #7678 )
2022-04-23 13:40:34 -07:00
Jake Potrebic
fbbc03a740
Add EntityDyeEvent and CollarColorable interface ( #7625 )
2022-04-23 12:38:42 -07:00
Jake Potrebic
47f43da438
Add missing javadoc deprecation msgs for PlayerProfile ( #7688 )
2022-04-23 07:40:37 -07:00
Nassim Jahnke
caf4a6f0d6
Remove or replace a few dumb deprecations ( #7760 )
2022-04-23 11:25:30 +02:00
Jake Potrebic
16f224a79a
Trigger bee_nest_destroyed trigger in the correct place ( #7436 )
2022-04-22 18:17:14 -07:00
Jake Potrebic
0f8aa4e6fd
Fix NPE for BlockDataMeta#getBlockData ( #7670 )
2022-04-22 17:21:38 -07:00
Bjarne Koll
ef6a1a5f99
Revert to old createProfile(UUID, String) logic ( #7723 )
2022-04-22 19:54:08 +01:00
Jason
567fce6c76
Don't apply previous potion when item is potion ( fixes #7756 ) ( #7757 )
2022-04-21 17:07:56 -07:00
petersv5
76ed156764
Grant temporary immunity from EAR to moving entities ( Fixes #7637 ) ( #7644 )
...
Co-authored-by: Peter Svensson <petersv@psv.nu>
2022-04-20 10:34:00 +01:00
Owen
873bfa6000
Remove World#refreshChunk deprecation ( #7684 )
2022-04-20 10:28:53 +01:00
Shane Freeder
4ecc338e09
WorldCreator#keepSpawnLoaded ( #7673 )
2022-04-20 10:26:09 +01:00
Shane Freeder
c7d4c0188e
Ignore invalid jars inside of the updates folder ( Fixes #7751 )
...
This really needs a deeper look here, the way updates are handled is
fairly immature, but, this wasn't ever intended to be a large scale thing
Ideally, imho, we'd collect the list of update files into some form of Map,
that way we just have a reference of Name > File refs, and can filter out
cases where there are two versions of a plugin in there and warn expectidely,
but, that creates some complications, you would need to fall back to a dir
scan in the case of a plugin calling loadPlugin, but, it would at least
give us more defined behavior, as well as improve performance here vs
repeatidely trying to deserialise the plugin.yml defs for every file
in there on every load
2022-04-20 10:11:35 +01:00
Xemor
c642d25f63
Improve update folder behavior ( #7687 )
...
Closes #6570
2022-04-18 18:12:39 +02:00
Noah van der Aa
86fb3d201d
Don't send itemmeta for books with the hide option enabled ( #7734 )
2022-04-18 12:23:37 +02:00
HexedHero
c66b0f99f2
Add pre-unbreaking amount to PlayerItemDamageEvent ( #7724 )
2022-04-18 11:51:45 +02:00
Owen
8bfb1d22f8
Pass ServerLevel for gamerule callbacks ( #7668 )
2022-04-18 11:46:21 +02:00
Nassim Jahnke
6b9f7a073e
Don't fire worldborder events for virtual borders ( #7749 )
...
Fixes #7748
2022-04-18 11:26:18 +02:00
Jake Potrebic
af943641e2
Fix slime spawners not spawning outside slime chunks ( #7741 )
2022-04-16 11:32:20 -07:00
Nassim Jahnke
1cfd363d32
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:
fc460d1b PR-735: Add Villager#zombify
c8c8331e PR-690: Add method to read ItemStack input
62845f2f SPIGOT-6829: Add per-player world border API
CraftBukkit Changes:
a459f4d4 PR-1033: Add Villager#zombify
d65d1430 PR-975: Add method to read ItemStack input
b5559f8c SPIGOT-6990: Fix setRepairCost(0) in Anvil
6c308e1b SPIGOT-6829: Add per-player world border API
Spigot Changes:
42b61526 SPIGOT-7000: Generation and /locate issues when using custom structure seeds
2022-04-16 10:29:50 +02:00
Pedro
c6e631aacb
Use username instead of display name in PlayerList#getPlayerStats ( #7740 )
2022-04-15 15:23:10 -07:00
Jason
a9f252e56a
Replace third party repos with Paper repo ( #7733 )
...
we now mirror Fabric, Forge, and Mojang
2022-04-13 19:58:48 -07:00