Commit Graph
100 Commits
Author SHA1 Message Date
Spottedleaf e42c200583 wor 2021-06-12 21:25:07 -07:00
Spottedleaf 09721118a4 even even even even more work 2021-06-12 21:03:02 -07:00
Spottedleaf 6690975133 wowe 2021-06-12 19:16:10 -07:00
Spottedleaf 6d2c131449 even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even even
more work
2021-06-12 02:17:20 -07:00
Spottedleaf 1c0fdc2824 even even even even even even even even even even even
even even even even even even even even even even
even even even even even even even even even even
even even even even even even even even even even
even even even even even even even even even even
even even even even even even even even even even
even even even even even even even even even even

more work
2021-06-12 02:01:04 -07:00
Spottedleaf 0891c7ab48 even even even even even even even even even more changes 2021-06-12 00:24:28 -07:00
Spottedleaf 4257a725ae even even even even even even even more work 2021-06-11 23:24:50 -07:00
Spottedleaf 4b66e6c02d even even more progress 2021-06-11 23:02:49 -07:00
Spottedleaf c6393c4571 even more progress 2021-06-11 22:20:08 -07:00
Spottedleaf 4edc9d91ac some patches 2021-06-11 21:38:04 -07:00
Spottedleaf e877697d29 Do not schedule poi task for each block write on chunk gen
Most of the time optional == optional1, so we shouldn't
schedule a task for each write.
2021-04-21 20:04:42 +01:00
Spottedleaf 0336df461a Make sure to remove correct TE during TE tick
See Hydra, March 29th 2021.
2021-03-29 09:08:29 +02:00
Spottedleaf d84c3d0036 [CI-SKIP] Removal from the MIT list (#5345)
Any future work I do will be under GPLv3. This doesn't affect current patches.
2021-03-11 16:36:30 -08:00
Spottedleaf c5ee34df0e Fix missing chunks on client (View distance issue) 2020-06-28 00:58:25 -04:00
Spottedleaf 9e1ccb01be Hide sync chunk writes behind flag 2020-06-26 22:37:38 -07:00
Spottedleaf ce8c91600b 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:
3284612a SPIGOT-5853: Add DragonBattle#generateEndPortal()
e4db04ae SPIGOT-5841: New map colours broken

CraftBukkit Changes:
d4243510 SPIGOT-5853: DragonBattle#getEndPortalLocation() throws NPE on new world
1601ec31 SPIGOT-5845: ChatColor.RESET does not work in ItemMeta to reset italics
4d92db6f CraftChatMessageTest does not need AbstractTestingBase
71045d3d SPIGOT-5828: Unlock worlds on unload
dbc347b9 SPIGOT-5841: New map colours broken
14053c70 SPIGOT-5847: BlockFadeEvent cannot be triggered asynchronously from another thread

Spigot Changes:
6f4ff1b6 SPIGOT-5851: ChatColor (HEX) doesn't appear correctly in the ActionBar
d94a518a SPIGOT-5848: PlayerSpawnLocationEvent throws NPE when setting a location of another world
2020-06-26 22:12:11 -07:00
Spottedleaf a8624a2d1a Re-Add per player mob spawning 2020-06-26 21:57:36 -07:00
Spottedleaf 0f7c022cbc Merge branch 'ver/1.16' of https://github.com/stonar96/Paper into ver/1.16 2020-06-26 20:34:31 -07:00
Spottedleaf faf7dda51c fix async chunk loading disregardling light data 2020-06-26 20:05:12 -07:00
Spottedleaf a4f75b1ae0 fix recursion for leashing an abstract horse 2020-06-26 15:54:39 -07:00
Spottedleaf cd6b64113f Fix the piston duplication option when it is on 2020-06-26 14:36:48 -07:00
Spottedleaf 9b3bb0cf51 Pass predicate from default get hard colliding entities method 2020-06-26 14:33:49 -07:00
Spottedleaf 6e59ab0eb5 Fix the entity knockback by entity patch 2020-06-26 14:31:38 -07:00
Spottedleaf 002d3ab1b5 Fix packed data reading in anti-xray 2020-06-26 14:11:08 -07:00
Spottedleaf cfd598512a even even even even even even more work 2020-06-25 18:53:21 -07:00
Spottedleaf ec7bd6a7c6 even even even even more work 2020-06-25 16:38:24 -07:00
Spottedleaf 4aa7955818 even even more work 2020-06-25 06:11:48 -07:00
Spottedleaf d30edc35eb even more work 2020-06-25 05:04:34 -07:00
Spottedleaf fbbf45ec42 more progress 2020-06-25 04:00:35 -07:00
Spottedleaf 7c419073e4 Fix not running level updates for light if no pre/post task 2020-06-22 21:17:28 -04:00
Spottedleaf 2005255c62 Fix enderdragon exp dupe
Properly track death stage when unloading/loading in the dragon
2020-06-20 15:04:50 -04:00
Spottedleaf a993a5d1fd Prevent position desync in teleporting during movement
Caused the server to revert to the player's overworld coordinates
after teleporting into the end.

Sidenote: The underlying issue is that the move call can teleport
entities and do other things like kill the entity. In the future,
to fix all exploits derieved from this usually unexpected
behaviour, we need to move all of this dangerous logic outside
of the move call and into an appropriate place in the tick method.
2020-06-20 14:59:49 -04:00
Spottedleaf 66039d1eb3 Fix sand not dying correctly
If the falling block dies during teleportation (entity#move), then we need
to detect that by placing a check after the move.
2020-06-20 14:58:35 -04:00
Spottedleaf 53b2b9f391 Fix carpet and rail duping by pistons under same TNT duping config
This renames the config from enable tnt duping to enable piston duping

Normally we would not have a config for rails and carpet duping, but
the fix for TNT is the same fix for rails and carpet, so they are
having to be covered under that same config.
2020-06-20 14:56:08 -04:00
Spottedleaf 06cf33bf4f Fix more cases of Bedrock breaking
This is still covered under the setting to re-enable this.
2020-06-20 14:53:15 -04:00
Spottedleaf aba7b389ab Allow server startup for those poor people running <1G Xmx
Clamp logic for poolsize so we dont pass zero
2020-05-16 21:06:19 -07:00
Spottedleaf ab609796e6 Fix cases where no-tick < tick view distance 2020-05-16 20:53:09 -07:00
Spottedleaf 459f6194e8 Reduce MutableInt and Vec3d allocations, use ArrayDeque 2020-05-16 22:05:14 -04:00
Spottedleaf 4e7644ce04 Handle CraftPlayer#setSpectatorTarget better
Use a proper teleport for teleporting to entities in different
worlds.

Validate that the target entity is valid and deny spectate
requests from frozen players.

Also, make sure the entity is spawned to the client before
sending the camera packet. If the entity isn't spawned clientside
when it receives the camera packet, then the client will not
spectate the target entity.
2020-05-14 18:05:00 -05:00
Spottedleaf 584c2fbe18 No-Tick view distance implementation - Closes #3196
Implements world view distance getters/setters

Per-Player is absent due to difficulty of maintaining
the diff required to make it happen.
2020-05-06 03:49:52 -04:00
Spottedleaf fbaa9ae1f3 Stop copy-on-write operations for updating light data
Causes huge memory allocations + gc issues
2020-05-06 03:48:56 -04:00
Spottedleaf 7307189ab2 Optimize isOutsideRange to use distance maps
Use a distance map to find the players in range quickly
2020-05-06 03:48:18 -04:00
Spottedleaf fbe8958237 Use distance map to optimise entity tracker / Misc Utils
Use the distance map to find candidate players for tracking.

This also ports a few utility changes from Tuinity
2020-05-06 03:44:47 -04:00
Spottedleaf 444dd5a0c6 Optimize Entity Ticking to Loaded Chunks only
We retain a list of loaded entities specifically for this usage
2020-05-06 03:43:11 -04:00
Spottedleaf 89e22765be Improved oversized chunk data packet handling
Now target all TE data, except for TE's that do not have
update packets.
2020-05-01 23:18:33 -04:00
Spottedleaf 0e3875914c Improve random ticking behaviour - Fixes #3181 2020-04-19 06:07:57 -07:00
Spottedleaf dc66fe2c49 Make sure the chunk conversion task is executed immediately
Appending to the tail of the chunk tasks leaves a
window for the chunk to be moved to a
non-ticking status.

Additionally, use CB's callback executor so we
can ensure that we are not incorrectly
scheduling.
2020-04-18 08:41:02 -07:00
Spottedleaf c1fdcae86a Optimize entity list iteration requiring entities be in
loaded chunks

We retain a list of loaded entities specifically for this usage
2020-04-16 16:53:45 -07:00
Spottedleaf e7f799903e Fix incorect timing of mspt
Move oversleep and all task execution back into the timed area...
2020-04-15 18:48:07 -07:00
Spottedleaf 70131f31d3 Optimise entity hard collision checking
Very few entities actually hard collide, so store them in their own
entity slices and provide a special getEntites type call just for them.
This reduces entity collision checking impact (in my testing) by 25%
for crammed entities (shove 130 cows into an 8x6 area in one chunk).
Less crammed entities are likely to show significantly less benefit.
Effectively, this patch optimises crammed entity situations.
2020-04-16 00:40:47 -04:00
Spottedleaf 1b58ca2161 Don't run entity collision code if not needed
Will not run if max entity craming is disabled and
the max collisions per entity is less than or equal to 0
2020-04-16 00:40:34 -04:00
Spottedleaf 25d0fbed10 Optimise ArraySetSorted#removeIf
Remove iterator allocation and ensure the call is always O(n)
2020-04-15 18:24:39 -07:00
Spottedleaf b4124adee3 Fix getChunkAtIfCachedImmediately (#2915) 2020-01-28 17:26:07 -08:00
Spottedleaf 6745971d4e Performance patches prerequisite (#2802)
Prereq changes for the coming storm of performance patches.
Includes optimising incremental saving
2020-01-27 16:16:53 -08:00
Spottedleaf 9774f1ff47 1.15.2 update (#2887)
Functional GUI fix added by billygalbreath
2020-01-21 18:02:07 -08:00
Spottedleaf 5c206c7b04 Full chunk debug on incremental watchdog (#2868) 2020-01-18 09:50:23 -08:00
Spottedleaf 7bd813abb0 Fix last firework in stack not having effects when dispensed - #2871 (#2876)
CB used the resulting item in the dispenser rather than the item
dispensed. The resulting item would have size == 0 and therefore
be convertered to air, hence why the effects disappeared.
2020-01-18 09:31:05 -08:00
Spottedleaf d6efbad797 Ensure portal search radius is used when teleporting players (#2877)
Also add the create search radius mojang recently introduced
to config
2020-01-18 09:28:32 -08:00
Spottedleaf 026b28b171 Add more chunk debug to watchdog (#2851)
print chunk holder status, useful for indicating what steps the
server has gone through after loading chunks from disk

Also rebuild patches (cat...)
2020-01-12 13:06:05 -08:00
Spottedleaf 1c169a0ed6 Optimise IEntityAccess#getPlayerByUUID (#2842)
Use the world entity map instead of iterating over all players
2020-01-11 22:36:31 -08:00
Spottedleaf 624e6bcce3 Guard against serializing mismatching chunk coordinate (#2844)
Should help if something dumb happens
2020-01-11 22:32:44 -08:00
Spottedleaf 724664fc5f Fix race condition with regionfile being closed right after getting one (#2812)
Occurs when 1 thread retrieves a regionfile, and then the
regionfile is closed due to it being thrown out of cache.
2020-01-09 17:42:33 -08:00
Spottedleaf d118fdd5b3 Shift chunk key location in the correct direction (#2710) 2019-12-01 05:33:57 -08:00
Spottedleaf 829b622eea Fix racey NextTickListEntry creation. (#2683)
The counter is used to distinguish entries from each other, however
since we can concurrently increment the counter we could totally
screw over the comparision of entries (see a() in NextTickListEntry),
as it compares only the time when the entry will tick, the priority
at which it will tick, and the counter. The block is not compared.

Async loading loads the chunk asynchronously which creates these
entries asynchronously.
2019-11-10 10:00:16 -08:00
Spottedleaf 5ea1d44339 Fix server deadlock when loading some chunks (#2647)
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:
7554e08e Add UUID support to CraftProfileBanList
3fe37460 SPIGOT-5378: Fix TileEntity fixer deadlock
12386dd4 SPIGOT-5375: Add spaces to coordinates from tile fixer
606c19e2 SPIGOT-5373: Simultaneous left+right click in creative mode does not work
13caf848 SPIGOT-5370: Fix Block#rayTrace considering other blocks.
2019-10-20 02:03:39 -07:00
Spottedleaf eacc91f30d Use getIfLoadedImmediately and not cached immediately for isLoa… (#2641) 2019-10-18 08:05:45 -07:00
Spottedleaf b0601574e0 Improve spawn loading and debug output for waiting on a chunk (#2595)
Spawn loading has been changed to use getChunkAt calls to manually
load chunks since watchdog can watch these calls and so we guard
against plugins/players changing the radius of a spawn while it's
loading

Debug output has been improved to note the status of the currently
waiting chunk
2019-09-29 18:23:09 -07:00
Spottedleaf fe0c5d9dc6 Remove debug logging for incremental saves (#2600) 2019-09-29 18:14:40 -07:00
Spottedleaf 0a5408a7d0 Add more timings to chunk provider tick (#2549)
- Misc mob spawning
- Chunk range checks
2019-09-29 14:06:03 -07:00
Spottedleaf 98854cdf4d Add server oversleep to timings (#2509)
Now everything except waiting for the next tick should be included
in timings
2019-09-29 13:49:38 -07:00
Spottedleaf 13d4dd046d Check if there are workers before trying to notify them (#2593)
* Fix #2591

We need to check if there are workers before trying to notify
them...
2019-09-29 13:29:56 -07:00
Spottedleaf 4d484708ad Drop Optimize-GameRules-to-use-LinkedHashMap (#2594)
Mojang has since replicated the logic
2019-09-29 13:01:21 -07:00
Spottedleaf ed4f937103 Check horse entity validity in container interactions (#2584)
Fixes #2580
2019-09-24 16:16:16 -07:00
Spottedleaf 02382b01b2 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#2576)
* 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:
6527cb58 SPIGOT-5329: Clarify isGlowing documentation
5ddb414f Make Lantern extend BlockData
cb888903 Fix typos in previous commits
2a5e0ca2 Bring EnchantItemEvent documentation in line with EnchantmentOffer
3c5fcea2 SPIGOT-5317: Create accessors for player absorption hearts
c6e0d625 SPIGOT-5320: Clarify scope of ExactChoice

CraftBukkit Changes:
a3fdef8c SPIGOT-5331: Add support for Java 13
6ddeb980 SPIGOT-5317: Create accessors for player absorption hearts
5d335e96 SPIGOT-5315: Cannot serialize armor stand ItemMeta

Spigot Changes:
94af569b SPIGOT-5319: Async catcher for getNearbyEntities
2019-09-21 21:12:45 -07:00
Spottedleaf 7b3f64a452 Fix race conditions in flush allowing for previously scheduled tasks to execute later than the flush call (#2548) 2019-09-15 21:02:13 -07:00
Spottedleaf 859d398ff8 Improve save logic (#2485)
Only wait for IO at the end of the save
we also were not force flushing async saves with /save-all flush
2019-09-15 20:39:30 -07:00
Spottedleaf f636e0083c Improve POI data saving logic (#2475)
- Do not unload data if world saving is disabled
- Aggressively target unloading
2019-09-01 18:49:09 -07:00
Spottedleaf 76e4a9a0f6 Fix #2499 (#2500)
Proper scheduling if async chunks is disabled, we would execute
a task that is cancelled without setting its run status
2019-09-01 18:30:25 -07:00
Spottedleaf e5f584cf6b Target more sync loads (#2476) 2019-09-01 15:17:51 -07:00
Spottedleaf 45ed30b235 Fix #2511 (#2519)
Did not double-flush the file io thread if async = false
2019-09-01 14:18:40 -07:00
Spottedleaf 7f4d6050fd Async chunk api/io/loading (#2308) 2019-08-18 16:40:04 -07:00
Spottedleaf 38dc65720e Fix some API and commands usage of inactive chunks (#2457)
* /paper entity will no longer report entities in inactive chunks
* World#getEntityCount and World#getChunkCount will report only
in active chunks
2019-08-14 19:47:38 -07:00
Spottedleaf ada657bafd Print entity debug stacktrace on entity double add (#2438) 2019-08-14 19:37:07 -07:00
Spottedleaf 2ecd461296 Fix MC-158900 (#2458)
The problem was we were checking isExpired() on the entry, but if it
was expired at that point, then it would be null.
2019-08-14 19:32:25 -07: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
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
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
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
Spottedleaf f01c2b2b7c Update to 1.14.4 (#2333) 2019-07-19 21:01:24 -07: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
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
Spottedleaf ef1951f4b0 Merge branch 'ver/1.14' of github.com:PaperMC/Paper into anti-xray 2019-07-01 22:24:09 -07: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