9
0
mirror of https://github.com/Winds-Studio/Leaf.git synced 2025-12-25 18:09:17 +00:00
Commit Graph

37 Commits

Author SHA1 Message Date
Dreeam
c276c2ba48 [ci skip] cleanup 2025-03-21 08:54:57 -04:00
Dreeam
e77896f346 Add config post load & Fix 2025-03-17 23:07:42 -04:00
Dreeam
40fa45ef8d Refactor Improve Purpur AFK system
* Move Leaf config init before Minecraft commands register
* Fix broken afk command cooldown
* Cleanup code
2025-03-17 20:54:15 -04:00
Dreeam
52477a91ae Updated Upstream (Paper/Gale)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@f4f27551 [ci/skip] Clarify BlockFadeEvent#getNewState javadocs (#12250)
PaperMC/Paper@102c8bbc Add config for updating equipment on player actions (#12275)
PaperMC/Paper@f0388e2f Call EntityPushedByEntityAttackEvent for Mace AoE (#12257)
PaperMC/Paper@c37b890c More deferred requireNonNull message creation
PaperMC/Paper@310f5229 Add unsupported config option and internal API to simplify remote item matching
PaperMC/Paper@6ea42025 Send all attributes on respawn (#12274)
PaperMC/Paper@2d3a1385 [ci/skip] Refine recipe management API documentation. (#12287)
PaperMC/Paper@aaaeb4e1 [ci/skip] Make compilation logs actually readable (#12276)
PaperMC/Paper@bb1beda6 feat: add event to wind charge explode (#12248)

Gale Changes:
Dreeam-qwq/Gale@43bfa513 Updated Upstream (Paper)
Dreeam-qwq/Gale@ab0a7189 Updated Upstream ()
Dreeam-qwq/Gale@27ddb2fa [ci/skip] Added merge announcement
Dreeam-qwq/Gale@523e7745 [ci/skip] Fix announcement format
Dreeam-qwq/Gale@d91ed070 [ci/skip] Update annocement
2025-03-17 14:30:27 -04:00
Altiami
2d6e6b28f3 SparklyPaper: Parallel world ticking (#246)
* 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>
2025-03-17 17:54:12 +03:00
Dreeam
f6aa7635f3 [ci skip] cleanup (14/14) 2025-03-14 15:54:02 -04:00
Taiyou
2a6eda6d32 Configurable spawner block settings (#251)
* custom SpawnerSettings

* [ci/skip] cleanup

* [ci/skip] cleanup

* Use vanilla min/max spawn delay as default values

* Move config to gameplay
2025-03-10 06:10:28 -04:00
HaHaWTH
77759079e1 Add experimental comment to AsyncChunkSend 2025-03-09 19:29:50 +14:00
Dreeam
efc9314dd9 [ci skip] cleanup (1/14) 2025-03-07 15:18:16 -05:00
Dreeam
ab4fe8ea44 [ci skip] cleanup 2025-03-07 15:02:52 -05:00
Taiyou
cd7689b16f Chunk improvements (#231)
* 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>
2025-03-05 22:45:26 +03:00
Taiyou06
ae5cd82c12 add a toggle 2025-03-05 15:37:38 +01:00
Creeam
2e5ea6957e Fix async entity tracker (#241)
* Fix Multithreaded Tracker

* [ci skip] Add comments
2025-02-27 15:11:28 -05:00
Taiyou06
ab0e8da1dc swap to the guava's Interners.weakInterner() 2025-02-22 19:55:50 +01:00
Dreeam
04500614b2 [ci skip] cleanup 2025-02-22 04:28:10 -05:00
Dreeam
77119bec4a Get correct class name 2025-02-22 04:07:36 -05:00
Dreeam
01fa6ac227 Add Leaf Commands (WIP)
* Added Leaf Commands base
* Added WIP /leaf reload
* Added /leaf version
* Change /gale permission to OP as default
2025-02-22 03:15:42 -05:00
Dreeam
69ece108dd Update config comment 2025-02-22 02:28:43 -05:00
Kaan D.
502385840d Bunch of side perf improvements (#217)
* Fix TE Lag

* Sepals Rearrange the attackable conditions

* Cache ItemStack max stack size

* fix build

* extra: Skip dirty stats copy when requesting player stats

* extra: Reset dirty flag when loading maps from the disk

* extra: Supporting block cache

* extra: Avoid useless deque clear on - credit: @MachineBreaker

* experimental/draft: Optimize SortedArraySet

* experimental/draft: Simplify SortedArraySet - sometime complex stuff doesnt mean faster.

* extra: Change maps/sets in brain + remove streams from villagers

* extra: Remove 'copyOf' from Baby Villager Sensor

* experimental: Rewrite trigger in SimpleCriterionTrigger

* [ci/skip] fix comments

* Faster setter for SimpleCriterionTrigger

* extra: Cache and optimize fluidOnEyes

* Sync changes

* [ci/skip] cleanup

* extra: QuadTree implementation for isChunkNearPlayer

* [ci/skip] cleanup

* [ci/skip] cleanup

* [ci/skip] clean up

* [ci/skip] cleanup

* Only player pushable

* Store chunkPos with keys

* [ci/skip] cleanup

* [ci/skip] cleanup

* cleanup

* rebuild patches

* cache some more stuff

* extra: optimize collectTickingChunks

* remove quadTree optimization for now (will open a new PR just for that)

* temp: Lazily optimize isChunkNearPlayer

* Inline filter & merge as a single loop

* [ci/skip] Add diff on change

* extra: optimize everything but the testing itself on getEntities

* [ci/skip] cleanup

* Optimize chunkUnloadQueue

* Remove iterators from inventory

* [ci/skip] Add TODOs

* i hate programming

* remove forEach

* extra: Alternative Brain Behaviour

* remove: opt getEntities + cache fluidOnEyes

* extra: Improve checkDespawn - credits: @kidofcubes

* extra: Improve pushEntity and getEntities

* yeet this

* VERY EXPERIMENTAL: getEntities Optimization

* fix bunch of issues from getEntities patch

* extra: slightly optimize getNearestPlayer - credits: @kidofcubes

* drop a patch for now (will open a new pr)

* move these to a new branch

* fix and optimize checkDespawn patches

* Rebuild Patches

* [ci/skip] Update benchmark

* [ci/skip] cleanup

* Drop

* [ci/skip] Drop

* Rebuild

* [ci/skip]

* Add configurable brain running behavior cache update interval

* Move to new pr

* [ci/skip] Update benchmark

---------

Co-authored-by: MachineBreaker <saltspigotpp@gmail.com>
Co-authored-by: kidofcubes <kidofcubes@gmail.com>
Co-authored-by: Dreeam <61569423+Dreeam-qwq@users.noreply.github.com>
2025-02-22 02:23:53 -05:00
Dreeam
329bc97960 [ci skip] Update LeafConfig 2025-02-20 17:30:35 -05:00
Creeam
1b09a2169d Fix DAB entity blacklist & Fix config modules (#227) 2025-02-14 12:44:48 -05:00
Creeam
b3276615b5 Adjust default config values (#226)
* Adjust default config values

* Adjust
2025-02-12 15:37:47 -05:00
Creeam
bdccf345b7 Thread safety fixes (#224) 2025-02-11 16:12:47 -05:00
Creeam
3b6ce17b1f Dont throw in async thread & Clean up (#222)
* Dont throw in async thread

* Fix typo
2025-02-11 11:03:00 -05:00
蛟龙
37b9455c00 Reimplement Hide specified item components (#215)
* [Reimplement] Hide specified item components

* cleanup
2025-02-08 09:55:50 -05:00
Dreeam
81be1d35dd Updated Upstream (Gale/Leaves)
Upstream has released updates that appear to apply and compile correctly

Gale Changes:
Dreeam-qwq/Gale@9c48e95c Update LithiumHashPalette

Leaves Changes:
LeavesMC/Leaves@74cb952f Fix some protocol
LeavesMC/Leaves@99b3aafc Fix bot action, and entity tickCount
2025-02-07 15:50:02 -05:00
Dreeam
387597f347 Updated Upstream (Leaves)
Upstream has released updates that appear to apply and compile correctly

Leaves Changes:
LeavesMC/Leaves@88819fe8 Add mc-old hopper suck-in behavior (#395)
LeavesMC/Leaves@7394e8dd Fix papermc repo
LeavesMC/Leaves@85c7bf11 Remove cache-world-generator-sea-level (#392)
LeavesMC/Leaves@00798036 init 1.21.4, and boom!
LeavesMC/Leaves@91fc24da build change, but weight not work
LeavesMC/Leaves@4ccdf459 just work
LeavesMC/Leaves@05ee2e36 Build changes, and delete timings
LeavesMC/Leaves@fcc859dc Fix API patches (#406)
LeavesMC/Leaves@6a1259df 0006/0129
LeavesMC/Leaves@3e3b05df 0009/0129
LeavesMC/Leaves@c3255c4f 0011/0129
LeavesMC/Leaves@6284c7b6 0018/0129
LeavesMC/Leaves@7abdc88c 0030/0129
LeavesMC/Leaves@4d119ff9 0035/0129
LeavesMC/Leaves@60baed99 0043/0129
LeavesMC/Leaves@dc319d5b 0048/0129
LeavesMC/Leaves@73a505d5 0049/0129
LeavesMC/Leaves@016b29dd 0057/0129
LeavesMC/Leaves@c9cf5af8 0065/0129
LeavesMC/Leaves@330b79ff 0086/0129 (#408)
LeavesMC/Leaves@06c1d946 0087/0129
LeavesMC/Leaves@bf4bc284 0091/0129
LeavesMC/Leaves@102a3b70 0097/0129
LeavesMC/Leaves@53b43fed 0101/0129
LeavesMC/Leaves@892f3925 102/129
LeavesMC/Leaves@08c3043a 0107/0129
LeavesMC/Leaves@48764d8e 0112/0129
LeavesMC/Leaves@8380feff 0118/0129
LeavesMC/Leaves@e51603db 0129/0129, 100% patched
LeavesMC/Leaves@ef851152 fix some
LeavesMC/Leaves@9b7c6e88 server work
LeavesMC/Leaves@272b7dcb Protocol... (#409)
LeavesMC/Leaves@7be1bc97 Make jade better
LeavesMC/Leaves@5350f6ea Make action work
LeavesMC/Leaves@f07c26c8 fix action jar
2025-02-06 23:28:14 -05:00
Creeam
c963bb3315 Async task handling improvement (#209)
* 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>
2025-02-06 15:12:44 -08:00
Dreeam
75eb088cc3 [ci skip] cleanup work finished 2025-02-03 20:45:19 -05:00
Dreeam
47847ebd51 [ci skip] cleanup 2025-01-30 16:03:24 -05:00
Dreeam
0b2da17697 Cleanup MultithreadedTracker deeper 2025-01-29 21:02:42 -05:00
Creeam
58cf07704c Auto resize tracker thread pool (#208)
* 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
2025-01-29 17:58:47 -08:00
Dreeam
26565ea357 [ci skip] cleanup 2025-01-24 04:51:24 -05:00
Dreeam
b9e1eac3a0 [ci skip] cleanup 2025-01-23 17:13:35 -05:00
Dreeam
ffd718f6bf [ci skip] cleanup 2025-01-21 07:14:02 -05:00
Dreeam
2ad76ae0a5 Fix incorrect Minecraft -> Bukkit entity type cache obtain and update & Remove removed patches source 2025-01-19 04:17:14 -05:00
Dreeam
97c4794444 Move directory 2025-01-18 10:44:55 -05:00