9
0
mirror of https://github.com/Winds-Studio/Leaf.git synced 2025-12-28 03:19:21 +00:00
Commit Graph

66 Commits

Author SHA1 Message Date
Taiyou
bec3d4c63b Async Data Read for Parallel World Ticking (#333)
* initial

* improve compat further

* cleanup and shit

* more cleanup

* rebase :3

* increase task queue size

* [ci skip] rebuild patches

* Optimise BlockEntity tickersInLevel

* rebase

* [ci skip] cleanup

* cleanup

* cleanup

* clear the buffer at shutdown

---------

Co-authored-by: Dreeam <61569423+Dreeam-qwq@users.noreply.github.com>
Co-authored-by: hayanesuru <hayanesuru@outlook.jp>
2025-06-02 20:18:29 +03:00
Taiyou06
2fd5e7bc12 optimise player movement further 2025-06-01 21:21:21 +02:00
hayanesuru
a33f10a17a fix attribute crash server 2025-05-31 17:59:41 +09:00
Dreeam
42a2c8d2f6 Cleanup version fetcher 2025-05-28 01:19:57 +08:00
Dreeam
ccefbcfa8d Update input sanitization for purpur config 2025-05-26 18:24:50 +08:00
Dreeam
da18026680 Remove stream in CraftBlockData toString() 2025-05-24 22:51:55 +08:00
hayanesuru
2deb6989f2 Revert "optimize GoalSelector update order"
This reverts commit 1c6aa60769.
2025-05-23 23:54:41 +09:00
hayanesuru
1c6aa60769 optimize GoalSelector update order 2025-05-23 15:57:30 +09:00
Dreeam
efc2a39479 [ci skip] Cleanup 2025-05-21 18:30:32 +08:00
hayanesuru
ff9e4f506b optimize tracker (#323)
* optimize tracker

* optimize scaledRange

* cleanup

* fix loop

* fix loop

* optimize AttributeMap

* optimize TrackedEntity#seenBy

* revert packDirty

* cleanup
2025-05-17 15:10:27 +03:00
Dreeam
c823590b66 Updated Upstream (Paper/Gale)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@76753219 Allow Server#getDefaultGameMode before worlds are initialized (#12491)
PaperMC/Paper@c2bb144f Properly save level data async (#12530)
PaperMC/Paper@e2ca4773 Remove simplify remote item matching option for now
PaperMC/Paper@af71568b Update mache

Gale Changes:
Dreeam-qwq/Gale@00ce862b Updated Upstream (Paper)
2025-05-13 20:51:11 -04:00
Taiyou06
37ebb20d7e had to commit here, right 2025-05-11 00:55:25 +02:00
hayanesuru
a53ddc7f8c update async chunk send (#307)
* cleanup

* Async Chunk Send

---------

Co-authored-by: Taiyou06 <kaandindar21@gmail.com>
2025-05-06 20:28:16 +03:00
Dreeam
3f20ea5c71 Cleanup 2025-05-02 22:22:53 -04:00
Dreeam
f1df5351ca Update PlayerInventoryOverflowEvent (#304)
* Add configurable option in config for PlayerInventoryOverflowEvent and able to define the class name of listener
* Update checking method for overflow items handling logic, only fire event when actual listener is listening to it.
2025-05-02 16:13:19 -04:00
Taiyou06
1ae641bb76 [ci skip] rebuild patches 2025-05-01 22:09:41 +02:00
Taiyou06
38a433852a Revert "fix async chunk sending buffer (#301)"
This reverts commit bd3eb337d0.
2025-05-01 21:32:38 +02:00
Dreeam
4586961036 Back port some Paper patches
* PaperPR: Add ticket on player join to avoid chunk
* PaperPR: Fix save/load NaN Entity Motion
* PaperPR: Fix unnecessary map data saves
2025-05-01 15:05:05 -04:00
Dreeam-qwq
2b13b38801 Updated Upstream (Gale)
Upstream has released updates that appear to apply and compile correctly

Gale Changes:
Dreeam-qwq/Gale@d5d63524 Updated Upstream (Paper)
2025-05-01 01:41:29 +00:00
hayanesuru
bd3eb337d0 fix async chunk sending buffer (#301)
* fix Async chunk sending buffer size

* cleanup

* synchronized write nonEmptyBlockCount

* increase buffer initial capacity

* fix block entity map data race

---------

Co-authored-by: Taiyou06 <kaandindar21@gmail.com>
2025-05-01 03:53:32 +03:00
HaHaWTH
97f0017519 Use a dedicated thread pool for PWT event rescheduling 2025-04-26 07:32:35 +14:00
Dreeam
68b642a7f8 Fix race condition in IteratorSafeOrderedReferenceSet (#278)
* Fix race condition in IteratorSafeOrderedReferenceSet

* Use cached firstInvalidIndex at the beginning of the method
2025-04-17 18:44:13 -04:00
Dreeam
dff5b11bd9 cleanup 2025-04-17 02:45:56 -04:00
Dreeam
d5d6ac4a44 Updated Upstream (Purpur)
Upstream has released updates that appear to apply and compile correctly

Purpur Changes:
PurpurMC/Purpur@d4af7947 Add configurable smooth snow accumulation (#1651)
PurpurMC/Purpur@51aafbc7 Final 1.21.4 Upstream (Paper)
2025-04-13 19:43:38 -04:00
Dreeam
caf961ac08 Updated Upstream (Purpur)
Upstream has released updates that appear to apply and compile correctly

Purpur Changes:
PurpurMC/Purpur@135e2c41 Updated Upstream (Paper)
PurpurMC/Purpur@e19b6707 Updated Upstream (Paper)
PurpurMC/Purpur@304174ec Updated Upstream (Paper)
PurpurMC/Purpur@4a3b139f Updated Upstream (Paper)
PurpurMC/Purpur@a14011f4 Updated Upstream (Paper)
PurpurMC/Purpur@3a1b29a9 [ci/skip] Updated Upstream (Paper)
PurpurMC/Purpur@5d1df704 Updated Upstream (Paper)
PurpurMC/Purpur@bc8c597b Updated Upstream (Paper)
PurpurMC/Purpur@ca56b414 Updated Upstream (Paper)
PurpurMC/Purpur@75efb975 Updated Upstream (Paper)
PurpurMC/Purpur@9249a2ca Updated Upstream (Paper)
PurpurMC/Purpur@8c293626 [ci/skip] ignore deprecation or removal warnings
PurpurMC/Purpur@65b1288b Updated Upstream (Paper)
PurpurMC/Purpur@96f0ee1e Add check for max growth age special case (#1652)
2025-04-12 16:47:06 -04:00
Dreeam
339bff6a8a Fix plugin compatibility
Fix checking whether inventory owner is player in calling PlayerInventoryOverflowEvent
2025-04-08 14:39:30 -04:00
hayanesuru
f1a31d88c8 Add timeout to AsyncPlayerDataSaving (#275)
* Add timeout to AsyncPlayerDataSaving

* dump thread if failed to save playerdata

* PlayerDataStorage#lockFor break loop after cancel
2025-03-31 18:34:44 +03:00
Dreeam
2f8915ce2b cleanup 2025-03-28 16:22:53 -04:00
hayanesuru
233da80a87 Update async playerdata saving (#269) 2025-03-28 17:25:23 +03:00
Dreeam
c36c34cf85 Updated Upstream (Paper/Gale)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@9b1798d6 Simplify custom payload handling (#12347)

Gale Changes:
Dreeam-qwq/Gale@ffc98037 Updated Upstream (Paper)
2025-03-27 16:24:19 -04:00
Taiyou06
89b317a1b0 PWT Fix: potentially fix BlockSpreadEvent 2025-03-26 18:46:06 +01:00
Dreeam
a7515a3918 Updated Upstream (Paper/Gale)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@9f004614 Update a whole lot of deprecated annotations
PaperMC/Paper@72f13f8b [ci/skip] Mention API Checks for CONTRIBUTING.md (#12315)
PaperMC/Paper@7cc6cb50 Check for trailing input in ItemFactory#createItemStack (#12312)
PaperMC/Paper@f49d18df Add get/set customName to Skull block (#12302)
PaperMC/Paper@894631f0 Make advancement ordering predictable (#12292)
PaperMC/Paper@2aad131e Add config option for command spam whitelist
PaperMC/Paper@bb3b7e69 Fix annotation mistakes
PaperMC/Paper@058455e4 InventoryView QOL open method (#12282)
PaperMC/Paper@f2258582 Fix firework entity not being removed when FireworkExplodeEvent is cancelled (#12268)
PaperMC/Paper@7819df10 Add getHeight method to ChunkData (#12311)
PaperMC/Paper@37b9ca1f Add flush parameter to World#save (#12330)
PaperMC/Paper@515e12ca Check if BUNDLE_CONTENTS is present in InventoryClickEvent (#12321)
PaperMC/Paper@5a6ab97b Add config to remove player as vehicle restriction in /ride (#12327)
PaperMC/Paper@c467df95 Add ItemStack#copyDataFrom (#12224)

Gale Changes:
Dreeam-qwq/Gale@d5143ee0 Updated Upstream (Paper)
Dreeam-qwq/Gale@63c396e7 Updated Upstream (Paper)
Dreeam-qwq/Gale@5c2147b4 Updated Upstream (Paper)
Dreeam-qwq/Gale@804ecea0 Rebuild patches
2025-03-25 03:09:21 -04:00
Creeam
dab3ca7e0d Band-aid fix for async events (#266) 2025-03-23 21:43:45 +03:00
Taiyou06
4c947f92ce add temporary compatibility for plugins to PWT 2025-03-22 14:20:34 +01:00
Dreeam
c276c2ba48 [ci skip] cleanup 2025-03-21 08:54:57 -04:00
Altiami
5afb65758c fix plugin interference with portal handling + fix missing thread local modification substitution for handling block spread (#262) 2025-03-20 13:12:19 +03:00
Taiyou06
b2c93c55a9 Fix skip EntityScheduler's executeTick checks if there isn't any tasks to be run 2025-03-20 08:56:52 +01:00
Dreeam
e34228f143 Readd Paper PR: Throttle failed spawn attempts 2025-03-19 13:52:03 -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
5603fe2984 Updated Upstream (Paper/Gale)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@8e69d981 Player - Expose player score (#12243)
PaperMC/Paper@2526fe06 Add type to represent unimplemented data component types (#12222)
PaperMC/Paper@20df25d3 Don't resync all attributes when updating scaled health (#12232)
PaperMC/Paper@43f37b1b Remove ItemFactory#enchantWithLevels range check for vanilla parity (#12209)
PaperMC/Paper@a2b0ff06 Fix cancelling PlayerInteractEvent at (0, 0, 0) (#12215)
PaperMC/Paper@df96f8a0 Correctly handle events for end portal (#12246)
PaperMC/Paper@25654978 Cancel PlayerLaunchProjectileEvent properly for enderpearls (#12223)
PaperMC/Paper@34c794dc ServerTickManager#requestGameToSprint - Silence command like feedback (#12220)
PaperMC/Paper@3d13b115 fix: switch back to using a snapshot for velocity-natives
PaperMC/Paper@7afae7f4 Add client tick end event (#12199)
PaperMC/Paper@e5d988df Revert "Fix cancelling PlayerInteractEvent at (0, 0, 0) (#12215)"
PaperMC/Paper@743346a5 Force update attributes
PaperMC/Paper@1a7288aa Adjust unloaded chunk check for block digging

Gale Changes:
Dreeam-qwq/Gale@7fa44170 Updated Upstream (Paper)
Dreeam-qwq/Gale@071288bc Updated Upstream (Paper)
Dreeam-qwq/Gale@52645592 Updated Upstream (Paper)
2025-03-09 15:30:21 -04:00
Dreeam
8c1ad8d658 Updated Upstream (Paper/Gale)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@b5066268 Remove unused light queue size option (#12201)
PaperMC/Paper@1d5e5a57 Document replacement for Skull owner profile methods (#12195)
PaperMC/Paper@8de7e356 Add null check to level ref in Entity constructor (#12218)
PaperMC/Paper@a866e366 Fix MenuType.SMITHING JavaDocs (#12226)
PaperMC/Paper@5538d24d Fix "DEFAULT" SpawnReason of fish spawned by bucket (#12227)
PaperMC/Paper@0a4eb8f3 Send the pong response packet immediately. This packet is similar to the keep alive packet and is processed async. (#12242)
PaperMC/Paper@7a3d0c4e Fix recipe being always null in PrepareItemCraftEvent from the api (#12237)
PaperMC/Paper@a6ce734f Fix zombie villager not dropping item once cured (#12230)
PaperMC/Paper@ce300162 Skip alpha channel for custom model data component (#12205)

Gale Changes:
Dreeam-qwq/Gale@ef499e4c Updated Upstream (Paper)
2025-03-08 01:31:44 -05:00
Creeam
2e5ea6957e Fix async entity tracker (#241)
* Fix Multithreaded Tracker

* [ci skip] Add comments
2025-02-27 15:11:28 -05:00
Dreeam
d801e88a2a Updated Upstream (Paper/Gale/Purpur)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@5e2a3bc0 Call EntityChangeBlockEvent with correct block when waxing (#12154)
PaperMC/Paper@ab984a07 Always pass event block to damage source (#12158)
PaperMC/Paper@7b4d44f5 Revert "Always pass event block to damage source (#12158)"
PaperMC/Paper@e5a8ee84 Hide soul speed particles for vanished players (#12152)
PaperMC/Paper@fcb2e815 Clear lastSection on game event listener removal
PaperMC/Paper@636ae0cd Add missing Paper comments to player movement patch
PaperMC/Paper@9be4e07a Pin snapshot dependencies (#12185)
PaperMC/Paper@f12d33f0 Track codec writing
PaperMC/Paper@1d9b3994 Add config option for failed beehive release cooldowns (#12186)
PaperMC/Paper@5f2ee83e Fix first execution of async delayed/repeating tasks being sync (#12166)
PaperMC/Paper@b00875f8 Add a method on Registry to get the size (#12182)
PaperMC/Paper@ca261090 Don't process empty rcon commands (#12188)
PaperMC/Paper@a501c459 Deprecate server config getters (#12189)
PaperMC/Paper@7f3d3591 Use MiniMessage#deserialize(String, Pointered) in sendRichMessage for send messages (#12177)
PaperMC/Paper@9b9f046f Remove broken code (#12171)
PaperMC/Paper@fc56c728 Add methods for Creaking (#12094)
PaperMC/Paper@f63dbeaf Fix cancelled HangingPlaceEvent inventory desync (#12161)
PaperMC/Paper@9421f223 Make CustomArgumentType use parse(reader,source) (#12191)
PaperMC/Paper@0a6e7435 Fix invulnerability damage and armour (#12190)

Gale Changes:
Dreeam-qwq/Gale@b2c11564 Updated Upstream (Paper)
Dreeam-qwq/Gale@a9e4baae Updated Upstream (Paper)
Dreeam-qwq/Gale@32a291bc [ci/skip] Update comment

Purpur Changes:
PurpurMC/Purpur@62cbd47a Updated Upstream (Paper)
PurpurMC/Purpur@d41aaca1 Updated Upstream (Paper)
PurpurMC/Purpur@3f8e6134 Fix EntityTameEvent not being called when `always-tame-in-creative` option is enabled (#1645)
PurpurMC/Purpur@b34d675f fix `zombie_horse.spawn-chance` option not working
2025-02-27 06:03:30 -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
5e3428c1a7 Add PlayerInventoryOverflowEvent (#232)
* Add PlayerInventoryOverflowEvent

* Add missing toggle

* Move to correct package

* Use handlerList to check instead of using explicit enable / isEnabled
2025-02-19 19:21:15 -05:00
Dreeam
86564bf6ce Updated Upstream (Paper/Gale/Purpur)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@fd69140d Fix `disable-tripwire-updates` option not cancelling tripwire hook updates (#12129)
PaperMC/Paper@3b9106c7 Readd dead redirect recovery (#12136)
PaperMC/Paper@d26a9e90 Fix plugin commands (#12144)
PaperMC/Paper@142695eb Default minecraft alias to redirect (#12146)
PaperMC/Paper@e494f289 Correctly call BlockFadeEvents (#12141)
PaperMC/Paper@b386a8f5 Add simpler JavaPlugin command registration (#12142)
PaperMC/Paper@f0700818 Remove Experimental from TypedKey (#12134)
PaperMC/Paper@09f1f88f Fix getForwards/SidewaysMovement for players (#12140)
PaperMC/Paper@edda0db1 Fix server crash when no enchantments are present (#12149)

Gale Changes:
Dreeam-qwq/Gale@55793e9d Updated Upstream (Paper)
Dreeam-qwq/Gale@8372ff60 Updated Upstream (Paper)

Purpur Changes:
PurpurMC/Purpur@b0d36cae Updated Upstream (Paper)
PurpurMC/Purpur@97dcff40 set DamageCause to `SUICIDE` for scissor's DamageSource
PurpurMC/Purpur@a9862d7e Updated Upstream (Paper)
PurpurMC/Purpur@196c1768 Updated Upstream (Paper)
2025-02-19 15:28:34 -05:00
Dreeam
d0f5bd99cb Update plugins command behavior
follow same in previous
2025-02-17 14:45:19 -05:00
Dreeam
d877167e16 [ci skip] Improve output of plugins command back 2025-02-17 12:33:58 -05:00
Dreeam
17ea36ff6b Updated Upstream (Paper/Gale/Purpur)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@13c80a5e [ci/skip] Fix PlayerShearBlockEvent javadoc typos (#12101)
PaperMC/Paper@db2aa180 [ci/skip] Fix incomplete example in javadocs for PreFlattenTagRegistrar (#12102)
PaperMC/Paper@cf7c6c74 [ci/skip] Fix incomplete example in javadocs for PostFlattenTagRegistrar (#12103)
PaperMC/Paper@072a8317 Add proper attached blocks API to AbstractArrow (#12099)
PaperMC/Paper@1be2e5f3 Fix vanilla map decorations sending when not dirty (#12098)
PaperMC/Paper@a06179a0 Update entity effect (#12104)
PaperMC/Paper@e616498e Add Vault block API (#12068)
PaperMC/Paper@0a04c3fe Fix some NPEs (#12105)
PaperMC/Paper@06804850 Expand TrialSpawner API (#12025)
PaperMC/Paper@46f4fdaa Add support for rotation argument handling (#12090)
PaperMC/Paper@6cfa2f7f [ci/skip] Add missing nullability annotation to sendEquipmentChange method (#12112)
PaperMC/Paper@9b9de827 Update Alternate Current patch to v1.9.1 (#12115)
PaperMC/Paper@c62252e1 Add lore content guard (#12116)
PaperMC/Paper@40416784 [ci/skip] Mention missing World#regenerateChunk implementation in jd (#12109)
PaperMC/Paper@a6e82d90 [ci/skip] Clarify getChunkAtAsyncUrgently javadocs (#12125)
PaperMC/Paper@cb25c0cf [ci/skip] Fix annotation fields used in NMS getBukkitEntity (#12120)
PaperMC/Paper@00701267 [ci/skip] improvement example in javadoc for DatapackRegistrar (#12122)
PaperMC/Paper@608f004a add method on ItemStack to edit pdc (#12022)
PaperMC/Paper@7bee9971 Cleanup damage source a bit (#12106)
PaperMC/Paper@b9023b5d Add EntityAttemptSmashAttackEvent (#12113)
PaperMC/Paper@a3781ff3 Separate tick count to ensure vanilla parity (#12077)
PaperMC/Paper@2a4a1154 Add EntityEquipmentChangedEvent (#12011)
PaperMC/Paper@06f96dd6 Improvement in /plugins command (#12121)
PaperMC/Paper@28d07dc5 use correct spigot plugin count
PaperMC/Paper@60394c5b Fix PlayerReadyArrowEvent cancellation desync (#12111)
PaperMC/Paper@b27e11cc Fix bad world to chunk coordinate example in javadocs (#12131)
PaperMC/Paper@88cdd220 Fixup luck and random implementation in CB loot-tables (#11926)
PaperMC/Paper@84609dc0 Don't auto-create any brig redirects (#11954)
PaperMC/Paper@8eb8e44a Allow For Default Titles in InventoryView Builders (#12013)

Gale Changes:
Dreeam-qwq/Gale@a224af13 Updated Upstream (Paper)
Dreeam-qwq/Gale@82f1e30e Updated Upstream (Paper)
Dreeam-qwq/Gale@a41cd227 Updated Upstream (Paper)
Dreeam-qwq/Gale@73519d55 Updated Upstream (Paper)

Purpur Changes:
PurpurMC/Purpur@9b046f36 Updated Upstream (Paper)
PurpurMC/Purpur@22bd4186 Updated Upstream (Paper)
2025-02-17 10:49:50 -05:00