Commit Graph

4171 Commits

Author SHA1 Message Date
Spottedleaf
768b46ed63 Optimize protochunk saving (#2218)
Use a chunk status cache to check if we could potentially overwrite
a levelchunk.
The check could be entirely elided at the risk of overwriting chunk data,
however most protochunks should have their corresponding regionfile loaded
with their chunk status.
2019-06-22 15:17:40 -05:00
Spottedleaf
405d146f57 Fix verified-loaded-count being off for chunk debug command (#2219)
We need to bypass ticket checks when counting
2019-06-22 15:07:31 -05:00
Spottedleaf
693102cce7 Fix performance regression in loadChunk(x, z, false) (#2211)
Resolve a regression where calling loadChunk(x, z, false) would
potentially double-load chunk data
2019-06-22 15:04:26 -05:00
Zach Brown
31891d1916 Rebuild patches 2019-06-22 14:09:20 -05:00
Byteflux
1a15d8213c Add support for OpenJ9 heap dumps in /paper heap 2019-06-22 14:09:20 -05:00
Zach Brown
eee4bcaec2
[CI-SKIP] Delete handled removed patches 2019-06-22 13:19:26 -05:00
Zach Brown
729551d7e0 Rebuild patches 2019-06-22 13:11:19 -05:00
Spottedleaf
fe38ae401a Fix vanished players don't have rights patch 2019-06-22 13:11:19 -05:00
Omer Uddin
2715be9fef Rework bed dismount mechanics (#2145)
Fixes #1726
2019-06-22 12:59:47 -05:00
kashike
886808148f
Merge pull request #2216 from Spottedleaf/better-datapalette-lock-fail
Log other thread in DataPaletteBlock lock failure
2019-06-21 15:44:02 -07:00
Spottedleaf
e3a3cb7b94 Log other thread in DataPaletteBlock lock failure 2019-06-21 14:45:20 -07:00
Spottedleaf
55aa29c700 Fix MC-154214 (#2195)
This should resolve unloading issues.
2019-06-19 17:48:48 -05:00
Shane Freeder
d9c4f8f67b
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:
fd317e44 Fix javadoc mistakes in previous commit
70e4c23d SPIGOT-5061: Add explode and ignite methods to Creeper

CraftBukkit Changes:
efd8a2b5 SPIGOT-5089: UnsupportedOperationException on setting villager memory to null
8003ced5 SPIGOT-5061: Add explode and ignite methods to Creeper
2019-06-19 12:55:03 +01:00
kashike
da401a6d10
Merge pull request #2200 from Spottedleaf/patch-1
Add world name to blockstate location if we fail to read it
2019-06-18 12:24:02 -07:00
Spottedleaf
f3203b14d1
Better format 2019-06-17 17:43:18 -07:00
Spottedleaf
72894a6d54
Add WorldName to blockstate location 2019-06-17 17:41:53 -07:00
Spottedleaf
7fc60e411a Fix chunks refusing to save (#2196)
We should only set hasBeenLoaded to false potentially after saving a chunk
other wise we will not save it. The method to do this is
PlayerChunk#l(), which we were potentially calling for chunks we were not saving.
2019-06-17 08:47:51 +01:00
Zach Brown
34855078f9
Update paperclip for fix 2019-06-16 23:14:52 -05:00
Spottedleaf
c319922ab1 Fix World#isChunkGenerated calls (#2186)
* Fix World#isChunkGenerated calls

Optimize World#loadChunk() too
This patch also adds a chunk status cache on region files (note that
its only purpose is to cache the status on DISK)

* Ensure correct regionfile usage

This also bumps the minimum region file cache to 4 files given
readChunkData can load potentially 4 files.

* Fix closed check

* Better checks for invalid regionfile usage
2019-06-16 22:52:34 -05:00
Zach Brown
9bdce9f499
[CI-SKIP] Update paperclip for minor change
--- work/Paperclip
Submodule work/Paperclip a92582a3..df42da27:
  > Remove Java 6 reference in assembly file
2019-06-16 16:18:08 -05:00
Zach Brown
c682358624
Move presource patches out of work/
I forgot we had a clean command in the paper util
2019-06-16 14:34:36 -05:00
Zach Brown
8742efd44b
Update Paperclip
--- work/Paperclip
Submodule work/Paperclip d4ceaa74..a92582a3:
  > Remove Java 6 support (#15)
2019-06-16 13:19:49 -05:00
Shane Freeder
84d6850443
Fix out of bounds falling block removal (#2188) 2019-06-16 15:13:14 +01:00
Shane Freeder
edaba19eb0
Fix enderchests not playing close sound (#2190) 2019-06-16 14:14:20 +01:00
Shane Freeder
637a5bcfec
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:
04405534 SPIGOT-5034: FoodLevelChangeEvent add getItem method
8154c64c SPIGOT-4984: EnchantmentOffer.getCost() documentation is misleading

CraftBukkit Changes:
f2757f95 SPIGOT-5071: Player loot tables not triggered
f4242226 Optimize getEntitiesByClasses slightly
e81013d7 SPIGOT-5072: Process phantom, cat and patrol spawning in CustomChunkGenerator
30a63379 SPIGOT-5010: World#getEntitiesByClass/es also return entities in border chunks.
43431ba6 SPIGOT-5034: FoodLevelChangeEvent add getItem method
2019-06-16 11:15:21 +01:00
kashike
41c864ab7a
Merge pull request #2187 from Spottedleaf/better-blockstate-failure
Show blockstate location if we failed to read it
2019-06-15 11:07:41 -07:00
Spottedleaf
fcb4d9ab28
fix exception message 2019-06-15 11:07:03 -07:00
Spottedleaf
9a5ec7f21d Proper paper commenting 2019-06-15 10:36:09 -07:00
Spottedleaf
61a6d011d9 Show blockstate location if we failed to read it 2019-06-15 10:30:43 -07:00
kashike
667c8901f0
Merge pull request #2183 from BillyGalbreath/WizFix
Fix Pre SpawnEvents not firing (by wizjany)
2019-06-14 22:13:41 -07:00
wizjany
3213b6b1e4 Use the entity registry id instead of translation key when posting PreCreatureSpawnEvent and PreSpawnerSpawnEvent 2019-06-14 22:06:36 -07:00
kashike
8c710f789a
Merge pull request #2181 from Spottedleaf/more-chunk-info
Add chunkinfo command
2019-06-14 21:28:52 -07:00
Spottedleaf
e23dceab07
Change format 2019-06-14 21:21:39 -07:00
Spottedleaf
cde2399145 Add chunkinfo command
Used so that server owners can tell what types of chunks are loaded
without requiring to use a tool to analyse a debug report
2019-06-13 22:51:37 -07:00
Spottedleaf
5c7081fecc Update upstream & fix some chunk related issues (#2177)
* 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:
45690fe9 SPIGOT-5047: Correct slot types for 1.14 inventories

CraftBukkit Changes:
4090d01f SPIGOT-5047: Correct slot types for 1.14 inventories
e8c08362 SPIGOT-5046: World#getLoadedChunks returning inaccessible cached chunks.
d445af3b SPIGOT-5067: Add item meta for 1.14 spawn eggs

* Bring Chunk load checks in-line with spigot

As of the last upstream merge spigot now checks ticket level status
when returning loaded chunks for a world from api. Now our checks
will respect that decision.

* Fix spawn ticket levels

Vanilla would keep the inner chunks of spawn available for ticking,
however my changes made all chunks non-ticking. Resolve by changing
ticket levels for spawn chunks inside the border to respect this
behavior.


* Make World#getChunkIfLoadedImmediately return only entity ticking chunks

Mojang appears to be using chunks with level > 33 (non-ticking chunks)
as cached chunks and not actually loaded chunks.

* Bring all loaded checks in line with spigot

Loaded chunks must be at least border  chunks, or level <= 33
2019-06-14 03:27:40 +01:00
Omer Uddin
68c6699ce9 Stop natural spawning after limit has been reached (#2127) 2019-06-12 21:34:18 -05:00
Shane Freeder
89182676ed
Updated Upstream (CraftBukkit)
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

CraftBukkit Changes:
9e95da12 SPIGOT-5052: PlayerPortalEvent not called when nether is disabled
28ea3fd1 SPIGOT-5062: end_portal on an non-default end world crashes the server
4a07dc69 SPIGOT-5058: ClassCastException when getting InventoryHolder of lectern when it's destroyed
2019-06-12 09:45:30 +01:00
Shane Freeder
ec405a6bea
Fix async calls to getChunkAtIfLoadedImmediately 2019-06-11 04:17:39 +01:00
Shane Freeder
16909a3637
Fix PlayerNaturallySpawnCreaturesEvent
Trivia: Did you know that events need to be called to work?
2019-06-11 02:45:46 +01:00
Spottedleaf
1c68c72b1f Improve chunk loaded checks 2019-06-11 02:37:37 +01:00
Shane Freeder
7a3054158d
Only fire WorldSaveEvent on full chunk saves (Fixes #2161) 2019-06-10 21:45:22 +01:00
Shane Freeder
d578467027
Updated Upstream (CraftBukkit)
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

CraftBukkit Changes:
411609dc SPIGOT-5053: Initialize beacon with stored levels where available
b1c5fd68 SPIGOT-5054: Prevent issue with invalid hanging entities
2019-06-10 12:24:33 +01:00
Shane Freeder
ae153a18f9
Merge branch 'master' into ver/1.14 2019-06-10 10:11:29 +01:00
Shane Freeder
a0a6ab18b7
Catch exceptions from dispenser entity spawns 2019-06-10 09:53:10 +01:00
Shane Freeder
eba1fb2247
Improve autosave
- don't trip manual save warning
- respect world#isSavingDisabled
2019-06-10 06:43:28 +01:00
Shane Freeder
60aa918c76
Updated Upstream (CraftBukkit)
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

CraftBukkit Changes:
0309d17d Rebuild patches
2019-06-10 01:29:19 +01:00
Shane Freeder
6f2c8a6449
Incremental chunk saving 2019-06-09 20:48:13 +01:00
Zach Brown
4be36f8d94
[CI-SKIP] Update README.md 2019-06-08 16:06:07 -05:00
Zach Brown
7d6e745d13
Hey vscode, get your files outta my repo 2019-06-08 15:38:10 -05:00
Zach Brown
ef170ee659
Update upstream B/CB/S
--- work/Bukkit
Submodule work/Bukkit 6eac6d70..1ef8b9d9:
  > Add Player#openBook(ItemStack) method

--- work/CraftBukkit
Submodule work/CraftBukkit 17543ecf..649921e5:
  > Add Player#openBook(ItemStack) method
  > SPIGOT-2000: Picking up items to shield slot working inconsistently when inventory is full
  > SPIGOT-5037: Player.openMerchant does not show merchant level
  > SPIGOT-5038: Inventory.getHolder returns null for wandering traders

--- work/Spigot
Submodule work/Spigot baafee91..df0eb250:
  > SPIGOT-5043: Desync if world is changed in PlayerSpawnLocationEvent
  > Rebuild patches

Implementation developer note:
This patch adds a "pre-source" patch system for fixing malformed patches
from upstream directly. This seems to keep happening so it's best we
have some way to deal with them. This system brings those issues into
our domain rather than needing to wait for upstream to fix their
malformed files.
2019-06-08 15:33:05 -05:00