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

105 Commits

Author SHA1 Message Date
Taiyou06
68c5449f61 potentially fix the portal issue (unsure how it can be reproduced) 2025-03-18 12:21:59 +01: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
d3640fe0a4 Fix build 2025-03-17 15:23:34 -04:00
Dreeam
f6a422f273 Bump dependencies 2025-03-17 14:31:25 -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
Taiyou06
e2331e0d71 [ci skip] rebuild patches 2025-03-17 14:18:43 +01:00
Taiyou06
472a1c5c19 [ci skip] benchmark numbers part. 2 2025-03-16 22:04:12 +01:00
Taiyou06
adcdd3948a [ci skip] benchmark numbers part. 1 2025-03-16 21:54:33 +01:00
Taiyou06
7e3022e313 [ci skip] small cleanup 2025-03-16 20:37:49 +01:00
Dreeam
f6aa7635f3 [ci skip] cleanup (14/14) 2025-03-14 15:54:02 -04:00
Dreeam
b3e3802517 Bump dependencies 2025-03-13 06:48:10 -04:00
Dreeam
daacfd136e Exclude outdated protobuf version from mysql connector
Able to use custom / latest protobuf  version in plugin side
2025-03-13 06:42:50 -04:00
Taiyou06
c5d2643826 Merge branch 'ver/1.21.4' of https://github.com/Winds-Studio/Leaf into ver/1.21.4 2025-03-13 10:31:47 +01:00
Taiyou06
b8ce03b0b4 fix paper anti xray on async chunk send 2025-03-13 10:30:54 +01:00
Dreeam
87dc993caf [ci skip] cleanup (8/14) 2025-03-12 18:16:10 -04:00
Dreeam
84d71fb533 [ci skip] cleanup (8/14) 2025-03-12 16:08:10 -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
Taiyou
3509e736d5 Fix async chunk send (#252)
If a chunk is already in the sentChunks set, we simply return early instead of throwing an exception.

Made moonrise$addReceivedChunk call to gracefully handle the case where a chunk is already marked as received.

If the chunk was already received, we remove the chunk from our sent list and return early.
2025-03-09 16:18:21 -04: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
Taiyou06
c23e385f25 potentially fix async mob spawning cap calculation 2025-03-09 19:04:53 +01:00
HaHaWTH
77759079e1 Add experimental comment to AsyncChunkSend 2025-03-09 19:29:50 +14:00
Creeam
4e00b55022 Fix structure locate issue related to faster random generator (#248) 2025-03-08 14:07:31 -05:00
Dreeam
0d57b02c40 Updated Upstream (Paper/Gale)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@45198578 Set old position / rotation for newly created entities

Gale Changes:
Dreeam-qwq/Gale@e007f34a Updated Upstream (Paper)
2025-03-08 10:05:31 -05: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
Dreeam
e38a717f8a [ci skip] cleanup (6/14) 2025-03-07 15:49:01 -05: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
Taiyou06
bf437d81b1 temp: remove BFS on getSlopeDistance in fluids 2025-03-06 10:06:30 +01:00
Taiyou06
2d54fdea9b fixed a small concurrency issue on flushQueue(?) 2025-03-05 22:24:28 +01: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
Taiyou06
62d81685c1 Merge remote-tracking branch 'refs/remotes/origin/ver/1.21.4' into networking 2025-03-03 17:33:35 +01:00
Creeam
2e5ea6957e Fix async entity tracker (#241)
* Fix Multithreaded Tracker

* [ci skip] Add comments
2025-02-27 15:11:28 -05:00
Dreeam
ae05e90944 ShreddedPaper: Don't block main thread in Connection#syncAfterConfigurationChange 2025-02-27 06:25:34 -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
d2417540ee Update workflow
* Separate build and pr build workflows
* Expose build number env var to Leaf
2025-02-26 16:30:33 -05:00
Dreeam
6185246a78 [ci skip] cleanup 2025-02-24 13:56:27 -05:00
Dreeam
be4bee9a10 Add back configurable tripwire dupe 2025-02-24 03:25:32 -05:00
Taiyou06
ab0e8da1dc swap to the guava's Interners.weakInterner() 2025-02-22 19:55:50 +01:00
Taiyou06
dc2f706b67 fix inventory updates 2025-02-22 19:08:36 +01:00
Dreeam
61754c8ffd [ci skip] cleanup 2025-02-22 04:49:13 -05:00
Dreeam
04500614b2 [ci skip] cleanup 2025-02-22 04:28:10 -05:00
Taiyou06
d5f3cba67c rebase 1.21.4 2025-02-22 10:17:03 +01:00
Taiyou06
5da371a215 Merge remote-tracking branch 'refs/remotes/origin/ver/1.21.4' into networking 2025-02-22 10:14:25 +01: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