aboutsummaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2022-09-28fix annotations, convert to recordfeat/WorldUnloadResultShane Freeder
2022-09-28Preliminary example of WorldUnloadEventShane Freeder
needs organisating, commentry, and actually exposing in the API
2022-09-28[ci skip] shuffle patches and rebuildShane Freeder
2022-09-27Fix user auth thread pool queueNassim Jahnke
2022-09-27Fixes a couple issues with entity spawn reasons (#8390)Jake Potrebic
2022-09-26Update snekyamlNassim Jahnke
2022-09-26Rewrite chunk system (#8177)Spottedleaf
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-25Fix typos in isTickingWorlds API javadocs (#8382)Bjarne Koll
2022-09-24Fix setEggCount method from TurtleLayEggEvent (#8385)Lulu13022002
2022-09-24Fix player desync on dimension change (#8253)Owen
2022-09-24Avoid item meta usage for itemstack enchantment getter (#8373)Lulu13022002
2022-09-24Add method isTickingWorlds to Bukkit (#8316)willkroboth
Co-authored-by: Shane Freeder <[email protected]> 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-24Fix mangled patchShane Freeder
2022-09-24Avoid potential place where the world map could be modified after its ↵willkroboth
iterator is created (#8315)
2022-09-24Updated Upstream (Bukkit/CraftBukkit/Spigot)Shane Freeder
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-23Correct javadocs on PlayerArmorStandManipulateEvent (#7719)Jake Potrebic
2022-09-23Call BlockPhysicsEvent more often (#8264)Lulu13022002
2022-09-23Call EntityChangeBlockEvent for frogs egg (#8136)Lulu13022002
2022-09-23Updated Upstream (Bukkit/CraftBukkit) (#8378)Shane Freeder
2022-09-22Updated Upstream (CraftBukkit) (#8376)Jake Potrebic
2022-09-20Fix ground pathfinding (#7683)Jake Potrebic
2022-09-20Copper clear on lightning strike calls EntityChangeBlockEvent (#8126)ChristopheG
2022-09-20Respect preventMovingIntoUnloadedChunks for optimized collision checking (#8259)Owen
2022-09-20Fix Pathfinding After World Has Changed (#8068)tahmid-23
2022-09-20Also load resources from LibraryLoader (#8335)Nick Hensel
2022-09-20Make WorldCreator#keepSpawnLoaded return the WorldCreator (Fixes #8321) (#8371)Shane Freeder
* 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-20Configurable chat thread limit (#7878)Shane Freeder
2022-09-20Add a consumer parameter to ProjectileSource#launchProjectile (#8374)Melncat
Co-authored-by: MelnCat <[email protected]>
2022-09-18Added byte array serialization/deserialization for PersistentDataContainers ↵Nex
(#7505)
2022-09-18Missing some effect cause (#8307)Lulu13022002
2022-09-18Missing eating regain reason (#8244)Lulu13022002
2022-09-18fire EntityChangeBlockEvent in more places (#6371)Jake Potrebic
* fire EntityChangeBlockEvent in more places * Rebuild patches Co-authored-by: Shane Freeder <[email protected]>
2022-09-18EndDragonFight killed statuses should be false for newly created worlds (#8354)elmital
2022-09-17Limit size of Authenticator Cache Thread Pool (#8360)Peter Crawley
2022-09-17Add custom destroyerIdentity parameter to the sendBlockBreak function (#5840)Fruxz
2022-09-17Properly close section storage managed files (#8364)Bjarne Koll
2022-09-17Rebuild patchesShane Freeder
2022-09-17Stop large look changes from crashing the server (#8326)Jaren
2022-09-17Restore no-crash behaviour when read-only config file(s) (#8318)karthanistyr
2022-09-12Updated Upstream (Bukkit/CraftBukkit/Spigot)Nassim Jahnke
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-09Fix console completer/highlighter having invalid source stack (#8346)Jake Potrebic
2022-09-09Updated Upstream (Bukkit/CraftBukkit/Spigot) (#8347)Jake Potrebic
2022-09-08Allow preventing BlockDestroyEvent from dropping items (#8349)okx-code
2022-09-02Re-add legacy getChunkAtAsynchronously to ChunkProviderServerSpottedleaf
Apparently some plugins use it
2022-09-01Fix World#refreshChunk not working for chunks in no-tick rangeSpottedleaf
The chunk would not be marked as ticking in this case, so retrieving the ticking chunk would not work.
2022-09-01Re-arrange most chunk system patches to front (#8338)Spottedleaf
* Re-arrange most chunk system patches to front Co-authored-by: Spottedleaf <[email protected]>
2022-08-29Ensure players are removed from pendingLoginSpottedleaf
Looks like they would not have been removed if they disconnected during the chunk load, preventing the world from being unloaded.
2022-08-26Prevent unloading worlds with pending player loginsSpottedleaf
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-25Fix client lag spikes due to client light recalcNassim Jahnke
2022-08-21Fix plugin loggers on shutdown (#5592)José Miguel Moreno
Potentially this should be merged back into the original logging changes patches