-
-
Notifications
You must be signed in to change notification settings - Fork 163
Client side mining animations #1959
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Client side mining animations #1959
Conversation
710fd5d to
b213d95
Compare
viciscat
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Use a LOGGER instead of printStackTrace()
src/main/java/de/hysky/skyblocker/mixins/LevelRendererMixin.java
Outdated
Show resolved
Hide resolved
src/main/java/de/hysky/skyblocker/skyblock/dwarven/BlockBreakPrediction.java
Outdated
Show resolved
Hide resolved
src/main/java/de/hysky/skyblocker/skyblock/dwarven/BlockBreakPrediction.java
Outdated
Show resolved
Hide resolved
src/main/java/de/hysky/skyblocker/skyblock/dwarven/BlockBreakPrediction.java
Outdated
Show resolved
Hide resolved
src/main/java/de/hysky/skyblocker/skyblock/dwarven/BlockBreakPrediction.java
Outdated
Show resolved
Hide resolved
src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java
Outdated
Show resolved
Hide resolved
src/main/java/de/hysky/skyblocker/skyblock/dwarven/BlockBreakPrediction.java
Show resolved
Hide resolved
src/main/java/de/hysky/skyblocker/skyblock/dwarven/BlockBreakPrediction.java
Outdated
Show resolved
Hide resolved
src/main/java/de/hysky/skyblocker/mixins/LevelRendererMixin.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds client-side block breaking animations for mining in Hypixel Skyblock. The feature predicts how long it will take to mine a block based on the player's mining speed stat and the block's properties, then animates the break progress locally to eliminate ping-related delays. An optional sound effect can play when the block should break.
Key changes:
- Implements client-side mining animation prediction using mining speed from tab list and block strength data from NEU repo
- Adds configuration options to enable/disable the feature and toggle sound effects
- Integrates block strength data loading from NEU repository with legacy block ID mappings
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 14 comments.
Show a summary per file
| File | Description |
|---|---|
src/main/resources/assets/skyblocker/lang/en_us.json |
Adds translation keys for configuration options and warning message |
src/main/java/de/hysky/skyblocker/utils/NEURepoManager.java |
Adds tree() method to access NEU repository file trees |
src/main/java/de/hysky/skyblocker/skyblock/dwarven/BlockBreakPrediction.java |
Core implementation: calculates break time, loads block data, handles legacy block mappings |
src/main/java/de/hysky/skyblocker/mixins/LevelRendererMixin.java |
Injects custom block breaking progress into rendering pipeline |
src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java |
Adds BlockBreakPrediction configuration class with enabled and playSound options |
src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java |
Adds UI configuration options for block break prediction feature |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
src/main/java/de/hysky/skyblocker/skyblock/dwarven/BlockBreakPrediction.java
Outdated
Show resolved
Hide resolved
src/main/java/de/hysky/skyblocker/skyblock/dwarven/BlockBreakPrediction.java
Show resolved
Hide resolved
src/main/java/de/hysky/skyblocker/skyblock/dwarven/BlockBreakPrediction.java
Show resolved
Hide resolved
src/main/java/de/hysky/skyblocker/skyblock/dwarven/BlockBreakPrediction.java
Show resolved
Hide resolved
src/main/java/de/hysky/skyblocker/mixins/LevelRendererMixin.java
Outdated
Show resolved
Hide resolved
src/main/java/de/hysky/skyblocker/skyblock/dwarven/BlockBreakPrediction.java
Show resolved
Hide resolved
kevinthegreat1
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also copilot seemed to have two good comments, which I’ve left.
src/main/java/de/hysky/skyblocker/mixins/LevelRendererMixin.java
Outdated
Show resolved
Hide resolved
src/main/java/de/hysky/skyblocker/skyblock/dwarven/BlockBreakPrediction.java
Outdated
Show resolved
Hide resolved
src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java
Outdated
Show resolved
Hide resolved
Co-authored-by: viciscat <[email protected]>
Co-authored-by: Kevin <[email protected]>
Co-authored-by: Kevin <[email protected]>
0dc12d2 to
f6b302b
Compare
kevinthegreat1
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I personally couldn't notice any difference when testing, but lgtm.
works out how long it is going to take to mine a block and animate this client side so there is no ping in the animation.
there is also an sound effect option.
suggested here: https://discord.com/channels/879732108745125969/1441061868939640982.
I will take any suggesting to get rid of
LegacyLookup/ combine this block list with with the pickaxe ability.