Commit graph

4189 commits

Author SHA1 Message Date
Zach Brown
61524adbca [CI-SKIP] Fix regression with scripts in directories with spaces
Regression introduced with the ability to apply patches directly to
upstream patches in 0e0501c9df
2019-08-10 09:59:43 -05:00
Shane Freeder
7a48375926 Fix java cross-version compilation
(Also, rebuild patches)
2019-08-08 16:12:57 +01:00
Omer Uddin
cb0e46c2df Implement alternative item-despawn-rate (#2128) 2019-08-08 02:06:08 +05:00
Omer Uddin
9fee8541d0 Reimplement hopper optimization patch (#2388)
Co-authored-by: Shane Freeder <theboyetronic@gmail.com>
2019-08-07 23:08:22 +05:00
TheGreatKetchup
caa6847ac0 MC-156852 fix (#2396) 2019-08-06 23:12:15 -04:00
Spottedleaf
02105ddde6 Fix recursion in EntityFox (#2418)
I changed a method call without looking at the implications.
super.processDeath would re-invoke the unmapped method, whereas super.d
would call the super method.
2019-08-05 20:31:38 -07:00
Spottedleaf
e6c3d60574 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#2415)
* fixup patch and rebuild

* Updated Upstream (Bukkit/CraftBukkit/Spigot)

Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
bde198c9 SPIGOT-5246: PlayerQuitEvent.get/setQuitMessage() is incorrectly marked as NotNull
24ad5a79 SPIGOT-5240: Vector.angle not valid for angles very close to each other
a143db9a SPIGOT-5231: ShotAtAngle API for Fireworks
10db5c3d SPIGOT-5226: Update Javadoc of PlayerDeathEvent

CraftBukkit Changes:
1ec1b05e SPIGOT-5245: Unneeded cast to WorldNBTStorage in CraftWorld#getWorldFolder
e5e8eec2 SPIGOT-5241: setAttributeModifiers does not work on untouched stack
803eaa31 SPIGOT-5231: ShotAtAngle API for Fireworks
7881d2ae SPIGOT-5237: Horses, pigs do not drop their inventory
06efc9ec Don't accept connections until all plugins have enabled
da62a66a SPIGOT-5225: World handle isn't closed if world is unloaded without saving
104b3831 SPIGOT-5222: Cannot get Long values from Entity memory
f0b3fe43 SPIGOT-5220: Server CPU usage reaches 100% when stdin is null

Spigot Changes:
e5b1b5db SPIGOT-5235: Destroy expired area effect clouds / fireworks that are inactive
cbcc8e87 Make region files more reliable to write to
8887c5f4 Remove redundant late-bind option
dac29063 Rebuild patches

* Preserve old flush on save flag for reliable regionfiles

Originally this patch was in paper

* Fix some issues with the death event

- Entities potentially entering a glitched state to the client where
they appear to be falling over
- Donkeys losing their chest if the event was cancelled (only an
issue since the upstream merge)
- Some wither death logic running for an entity killed by a wither
2019-08-05 09:35:40 -07:00
BillyGalbreath
36a04c3729 Fix enderpearl item use cooldown (fix #2412) (#2413) 2019-08-04 21:15:53 -05:00
Spottedleaf
066f9c0345 Fix chest logic being weird for coordinates that sum to 0 or a… (#2364)
We were previously calling what looks like a legacy check for distance
away for the inventory. Unfortunately, with our logic, we called the
open logic before the active container was set. So the legacy check
would register 0 viewers and the logic would become bugged.
2019-08-02 10:48:22 -07:00
Omer Uddin
e7f327502f Offset Itemframe ticking (#2385) 2019-08-02 22:31:24 +05:00
Nassim Jahnke
55e2ef9d9c Fix server crash with piercing shots through vanished players (#2390) 2019-08-01 00:04:45 +02:00
Shane Freeder
c88648f4f1 Updated Upstream (Bukkit/CraftBukkit)
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
3d9d2efc SPIGOT-5202: WorldCreator#copy does not copy all options

CraftBukkit Changes:
3e7b3862 SPIGOT-5195 (#2): Player loot table does not drop when keepInventory is on
c88867e4 SPIGOT-5208: Reset state on cancelled EntityTransformEvent to prevent event spam
f744c09c SPIGOT-5214: setCooldown not working
860b3540 SPIGOT-5204: Typo in deprecated enchantment name
2019-07-28 15:32:14 +01:00
Shane Freeder
03b5be5bf0 Seperate out incremental saving
This fixes multiple issues, mainly cleaning up the patch as well as making save-all
actually save all. (Worth noting, that you should probably be using save-all flush if
you're relying on this for backups)
2019-07-28 01:38:29 +01:00
Shane Freeder
445870186c Mark entities as being ticked when notifying navigation 2019-07-28 00:52:13 +01:00
Spottedleaf
ae53ee9e96 use getChunkImmediately for vehicles 2019-07-28 00:38:49 +01:00
Spottedleaf
e170ab7fce Do not schedule to main for getChunkImmediately type calls (#2362)
They are MT-Safe already. These changes reduce deadlock chances
given these calls are used in Entity#isValid(), and plugins
check this in packet handling...
2019-07-25 18:36:26 -07:00
Spottedleaf
405dd2640c Peek the unload queue for chunk generation checks (#2332) 2019-07-23 20:41:26 -07:00
Spottedleaf
6d4ae38bae Bring task execution into server tick timings (#2357) 2019-07-23 20:20:14 -07:00
Jacob Andersen
68a4cc5c06 Amend PlayerInteractAtEntityEvent javadoc for ArmorStands (#2309) 2019-07-23 20:18:14 -07:00
Black Hole
aead01a615 Set spawning entity for fireworks spawned by a crossbow (#2358)
Fixes #2327
2019-07-24 05:12:40 +02:00
Lucavon
ec2b9d17b4 Add option to disable relative projectile velocity
Allows server owners to use 1.8 (and prior)'s projectile behavior
(ignored shooter's velocity when calculating projectile's velocity).

This patch adds an option "disable relative projectile velocity", which, when
enabled, will cause projectiles to ignore the shooter's current velocity,
like they did in Minecraft 1.8 and prior.
If a player is falling, for example, their shooting range will be drastically
reduced, as a downwards velocity is applied to the projectile. This prevents
players from saving themselves from falling off floating islands, for example,
as a thrown ender pearl will not make it back to the island, while it would
have in 1.8.

While this could easily be done with plugins, too, there are multiple problems:
1) If multiple plugins cancel the velocity by subtracting the shooter's velocity
   from the projectile's velocity, the projectile's velocity would be different.
   As there's no way to detect whether the projectile's velocity has already been
   adjusted to ignore the player's velocity, plugins can't not do it if it's not
   necessary.
2) I've noticed some inconsistencies, e.g. weird velocity when shooting while
   using an elytra. Checking for those inconsistencies is possible, but not as
   efficient as just not applying the velocity in the first place.
3) Solutions for 1) and especially 2) might not be future-proof, while this
   server-internal fix makes this change future-proof.
2019-07-23 20:30:36 -05:00
Minecrell
a4734db50b Update TerminalConsoleAppender + JLine, use Jansi instead of JNA (#2299)
Remove dependency on JNA since it is no longer needed.
2019-07-24 02:25:05 +02:00
Shane Freeder
bed0039737 Updated Upstream (Bukkit/CraftBukkit/Spigot)
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
c987938a SPIGOT-5180: Add Villager#sleep() and #wakeup() methods

CraftBukkit Changes:
7f33c6a2 SPIGOT-5196: Restore previous version behaviour regarding cancelled BlockBreakEvent
6a5fc902 Improve diff in EntityHanging
c98d61bf SPIGOT-4712: Allow spawning of upwards or downwards facing item frames
db971477 SPIGOT-5199: Fix NPE if setting the book of the ItemMeta of a lectern
b0ef3996 SPIGOT-4679 Fix black lines after book paragraphs
1215188f SPIGOT-5180: Add Villager#sleep() and #wakeup() methods
c03b2bef SPIGOT-4975: NPE on WorldGenStronghold When Using Multiple Worlds
65ea162c Ensure Bukkit data pack is always up to date
0b107b8d MC-157395, SPIGOT-5193: Small armor stands do not drop loot
6da0abca SPIGOT-5195: Player loot table does not drop when keepInventory is on
8b09d983 SPIGOT-5190: Superfluous EntityCombustEvent called when using fire aspect sword

Spigot Changes:
1981d553 SPIGOT-5198: Catch more bad async operations
6a14ca46 Rebuild patches
2019-07-23 20:17:32 +01:00
Spottedleaf
561f77a904 Ensure xray does not perform non MT-Safe operations (#2361) 2019-07-23 02:59:48 -07:00
Spottedleaf
61b8600730 Only write to cached header in RegionFile if write potentially succeeds (#2294) 2019-07-21 14:36:27 -07:00
Andreas Troelsen
6b80069cbe SPIGOT-5190: Do not call superfluous EntityCombustEvent 2019-07-20 19:14:06 -05:00
Spottedleaf
f01c2b2b7c Update to 1.14.4 (#2333) 2019-07-19 21:01:24 -07:00
Shane Freeder
e1fb590ee6 ServerExceptionEvent can be fired off main 2019-07-18 08:58:23 +01:00
Spottedleaf
22e3d2d3a7 Use getChunkIfLoadedImmediately in places (#2297)
* Use getChunkIfLoadedImmediately in places

This prevents us from hitting chunk loads for chunks at or less-than
ticket level 33 (yes getChunkIfLoaded will actually perform a chunk
load in that case).

* Resolve issue #2301

* Also target World#getChunkIfLoaded
2019-07-17 21:41:24 -07:00
Shane Freeder
61c0f2d99e Updated Upstream (CraftBukkit/Spigot)
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

CraftBukkit Changes:
eb2e6578 SPIGOT-5116: Fix concurrent modification exception inside ChunkMapDistance
989f9b3d SPIGOT-4849: Fix server crash when accessing chunks during chunk load/unload/populate events
f554183c SPIGOT-5171: Don't fire PlayerTeleportEvent if not actually moving
2349feb8 SPIGOT-5163: Cancelling PlayerBucketFillEvent visually removes the targeted block

Spigot Changes:
9a643a6a Remove DataWatcher Locking
2019-07-16 23:09:32 +01:00
Riley Park
ac4eba122a Merge pull request #2174 from kickash32/Only-count-Natural-Spawned-mobs 2019-07-13 13:41:14 -07:00
Riley Park
bf5ad877a2 Merge pull request #2296 from Spottedleaf/fix-loadchunk-again 2019-07-13 13:19:48 -07:00
Shane Freeder
55844cd88e Improve timings around chunk loading
Timers such as syncChunkLoad are hit persistently due to changes in how
this mechanism works which impacts the usablity of timings
2019-07-12 05:04:38 +01:00
Shane Freeder
dd07f4de85 Updated Upstream (Bukkit/CraftBukkit/Spigot)
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
e99c9444 Add Plugin Chunk Ticket API
6a235f06 Fix incorrect nullability annotations for PlayerJoinEvent's join message

CraftBukkit Changes:
5f889388 Tweak build expiration to 7 days
572c02b0 MC-155077, SPIGOT-5113: EntityTracker desync
7ad3a1f4 SPIGOT-5146: BlockDataMeta does not work
60860983 SPIGOT-5155: Setting EntityExplodeEvent yield to 0 still causes blocks to drop
087a2cf4 Print number of force loaded chunks per plugin in crash reports
07b5b06d Add Plugin Chunk Ticket API
7ffb2a27 SPIGOT-5149: resetRecipes does nothing
a2275f19 SPIGOT-5141: World.generateTree() causes ClassCastException with huge mushrooms
31d4a777 SPIGOT-5142: Ignore invalid firework effects

Spigot Changes:
5e4e7f32 BUILDTOOLS-471: Rebuild patches
6e944739 SPIGOT-5159: Raider activation range overridden by Monster range
2019-07-11 17:59:21 +01:00
Riley Park
d9f670f940 Merge pull request #2240 from Spottedleaf/anti-xray
Re-Add Anti-Xray
2019-07-09 18:11:34 -07:00
Spottedleaf
f06dcdb847 Fix entity count in timings graph (#2293) 2019-07-08 06:29:22 -07:00
Spottedleaf
9e4bffef00 Fix loadChunk(x, z, false)
I was not correctly checking if the status was even cached.

Actually fix it this time

Do not forget about the async chunk placeholder

Actually fix it this time I hope

No plugin tickets for getChunkAtGen(x, z, boolean)

Change ChunkStatus ABI

This is required for asynchronous IO. async io will require
calls to getChunkStatusIfCached to return the chunk status for a
chunk currently queued to save - this cannot be reasonably done
with current ABI
2019-07-07 23:52:08 -07:00
Shane Freeder
88377b6fdf Fix more issues with timings
- fixed usage of timings IDs (fixes region view)
- fixed more duplicated tick handlers
2019-07-08 03:54:40 +01:00
Shane Freeder
93dacdccc5 Cleanup ChunkMapDistance patch 2019-07-05 03:23:33 +01:00
Shane Freeder
443dad0d3c Updated Upstream (Bukkit/CraftBukkit/Spigot)
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
c2d72c82 SPIGOT-3102: Add EXPLOSION SpawnReason

CraftBukkit Changes:
fca41573 SPIGOT-5136: EntityPortalEvent getting called on interdimensional entity teleports
604c8bf0 SPIGOT-3102: Add EXPLOSION SpawnReason
375969a6 Re-add chunk GC for plugin chunk loads
58151368 SPIGOT-5123: Snapshot tile entities can end up with a non-null world
491c8482 SPIGOT-5130: PersistentDataContainer not removing values on TileEntities

Spigot Changes:
d05d3c1f Rebuild patches
2019-07-05 03:13:38 +01:00
Jonathan Frederick
0827bcd007 Remove unused fire-physics-event-for-redstone config option (#2277) 2019-07-03 13:44:07 -07:00
Shane Freeder
c204872eb4 use a Queue in ChunkMapDistance
An oversight in this patch may be to blame for several issues in certain
cases, we'll opt to using a queue as this will fall in line with what is
expected and may help some issues where chunks remain loaded or fail to
load
2019-07-02 19:50:03 +01:00
Spottedleaf
ef1951f4b0 Merge branch 'ver/1.14' of github.com:PaperMC/Paper into anti-xray 2019-07-01 22:24:09 -07:00
Zach Brown
63edda8ed6 Update upstream B/CB/S
--- work/Bukkit
Submodule work/Bukkit aba2aaaf..949124e0:
  > SPIGOT-5121: Method to set PierceLevel of arrows

--- work/CraftBukkit
Submodule work/CraftBukkit c6997924..bf329334:
  > SPIGOT-5133: Throwing items into secondary end world portal causes crash
  > SPIGOT-5121: Method to set PierceLevel of arrows
  > SPIGOT-5122: Skip world#notify if sign has no world.
  > SPIGOT-5105: The EntityTag nbt tag disappears from preset armor_stand items.
  > SPIGOT-5106: Config option to prevent plugins with incompatible API's from loading

--- work/Spigot
Submodule work/Spigot 595711b0..935adb34:
  > SPIGOT-5088: Additional growth modifiers
2019-07-01 23:51:06 -05:00
Spottedleaf
d575c87c82 Config migrations 2019-07-01 14:53:51 -07:00
Spottedleaf
698001f796 Resolve crash issue by shoving chunk loads onto the next tick 2019-07-01 14:36:31 -07:00
Spottedleaf
5efeb3be4a Merge branch 'ver/1.14' of github.com:PaperMC/Paper into anti-xray 2019-07-01 12:53:51 -07:00
Shane Freeder
8cd854bce5 Don't double-start the tickEntities Timing 2019-06-30 21:18:04 +01:00
Riley Park
ff21d8de17 Merge pull request #2262 from Spottedleaf/fix-logging0
Actually use our log full policy
2019-06-29 21:10:00 -07:00
Spottedleaf
807b8a4c50 Actually use our log full policy 2019-06-29 20:38:27 -07:00