* SparklyPaper: Parallel world ticking
* per world mspt (/leaf mspt)
* fix chunk loading off-main violations
* rebase and make tpsbar per world
* temp fix for async chunk sending crash
* add /leaf mspt compact and more cleanup
* TCRF SparklyPaper (Pathothingi): Fix Nether and End portals for non-player entities
* fix Potothingi's name
* change thread name
* fix plugin related async ticks (hopefully)
* Revert "fix plugin related async ticks (hopefully)"
This reverts commit 7a9b79adc538989ecbec162dd377245706522a87.
* Add more config guards
* rebase on upstream
* actually add the paper patches
* fix villagers failing to release poi
* rebase
* make async chunk send work with parallel world ticking again
---------
Co-authored-by: Taiyou06 <kaandindar21@gmail.com>
* perf: SpatialPlayerIndex for isChunkNearPlayer
* perf: ensureCapacity with collectTickingChunks
* perf: optimize getSlopeDistance
* perf: optimize AABB Intersections
* perf: implement custom arrays for regions and caches
* perf: Improve SortedArraySet sorting (needs testing)
* rebase 1.21.4
* perf: optimize ClientBoundLightUpdatePacketData
* perf: O(1) Array Writes during Chunk Loading
* perf: Optimize LinearPalette (no not the linear format)
* perf: Rewrite ConcurrentLongHashSet
* rebase 1.21.4
* Fix Multithreaded Tracker (#236)
* duke gonna arrest me
* i hate git v2
* rebase
* dont worry ill change the name of this patch
* perf: Rewrite ConcurrentLongHashSet again
* perf: Optimize sendChunk
* [ci skip]
* cleanup
* aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
* cleanup
* remove streams on LinearPalette and SerializableChunkData
* actually commit them lmao
* actually commit them lmao 2
* fix
* rebase
* perf: clone less (could help with skyblocks)
* perf: more unload stuff
* perf: manual loop unrolling and bulk copy
* initial size for SerializeableChunkData
* perf: async chunkSend
* cleanup asyncChunkSend
* remove experimental tag
* rebase
---------
Co-authored-by: Creeam <102713261+HaHaWTH@users.noreply.github.com>
Co-authored-by: Dreeam <61569423+Dreeam-qwq@users.noreply.github.com>
* All threads are core thread
* Drop later submitted pathfinding tasks if task before is not started yet
* Auto-resize is gone
* Refine error handling
* Handle rejected execution
* Limit size and schedule on EntityScheduler
* Allow pr to build
* Remove duplicate path handling
Since it's a very rare case and Kaiiju has already done something to handle this
* Update thread and logger name format
* Core pool to 1
* Revert entity scheduler changes
* Expose queue size to config
* Add reject policy config to pathfinding
* [ci/skip] To uppercase
* [ci/skip] Add co-authors
---------
Co-authored-by: Taiyou06 <kaandindar21@gmail.com>
Co-authored-by: Altiami <yoshimo.kristin@gmail.com>
* Cleanup sort
* auto resize
* Limit queue size and add RejectedExecutionHandler
* Flush queue on task rejection
* Move to inner class
* Math.max to choose higher one