Skip to content

Prepare 1.0.2 Update - #3

Merged
CrebsTheCoder merged 4 commits into
mainfrom
dev
Nov 11, 2026
Merged

CrebsTheCoder merged 4 commits into
mainfrom
dev

Conversation

@CrebsTheCoder

@CrebsTheCoder CrebsTheCoder commented Nov 10, 2026 •

Copy link
Copy Markdown
Owner

This PR focuses on the following improvements:

  • Improve packet field support
  • Add Vector2 support
  • Implement an update checker
  • Improve performance and optimizations
  • Reduce reflection usage

@github-actions

github-actions Bot commented Nov 10, 2026 •

Copy link
Copy Markdown

Qodana for JVM

7 new problems were found

Inspection name Severity Problems
Constant values 🔶 Warning 7

☁️ View the detailed Qodana report

Detected 28 dependencies

Third-party software list

This page lists the third-party software dependencies used in skPackets

Dependency Version Licenses
adventure-api 5.2.0 MIT
adventure-key 5.2.0 MIT
adventure-nbt 5.2.0 MIT
adventure-text-logger-slf4j 5.2.0 MIT
adventure-text-minimessage 5.2.0 MIT
adventure-text-serializer-gson 5.2.0 MIT
adventure-text-serializer-json 5.2.0 MIT
adventure-text-serializer-legacy 5.2.0 MIT
adventure-text-serializer-plain 5.2.0 MIT
annotations 26.1.0 Apache-2.0
auto-service-annotations 1.1.1 Apache-2.0
bstats-base 3.2.1 MIT
bstats-bukkit 3.2.1 MIT
checker-qual 4.2.3 MIT
error_prone_annotations 2.48.0 Apache-2.0
examination-api 1.3.0 MIT
examination-string 1.3.0 MIT
failureaccess 1.0.3 Apache-2.0
fastutil 8.5.18 Apache-2.0
gson 2.14.0 Apache-2.0
guava 33.6.0-jre Apache-2.0
j2objc-annotations 3.1 Apache-2.0
joml 1.10.9 MIT
jspecify 1.0.0 Apache-2.0
listenablefuture 9999.0-empty-to-avoid-conflict-with-guava Apache-2.0
option 1.1.0 MIT
slf4j-api 2.0.17 MIT
snakeyaml 2.2 Apache-2.0
Contact Qodana team

Contact us at qodana-support@jetbrains.com

Removed reflect invocation from the normal packet field access and construction.
Added direct keep-alive registration.
Replaced SkBee and debug metadata reflection with direct API calls.

Performance/Optimisations:
Instead of cloning Bukkit BlockData per position it now use integer blockstate id and persistence flag + shared immutable value within a batch also the persistence tracking updates only affected positions in concurrent sets(used to rebuild position after every change) they are now handled in bulk instead of seperately, also checks if the chunks is visible (if its sent to the player yet or naw), also it sends multiblock change packet in a 16×16×16 section

Similar thing is done for fake entity but im to lazy to write just read the changes sonion.

@CrebsTheCoder CrebsTheCoder left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good

@CrebsTheCoder CrebsTheCoder left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

seen

@DRAGNIL68

Copy link
Copy Markdown

crebs stop talking to your self

@CrebsTheCoder

Copy link
Copy Markdown
Owner Author

crebs stop talking to your self

never

@CrebsTheCoder CrebsTheCoder left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good enough

image

@CrebsTheCoder
CrebsTheCoder merged commit f5c6039 into main Nov 11, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants