StonecutterDamage | Deal damage when standing on a Stonecutter [1.14 – 1.21.11] icon

StonecutterDamage | Deal damage when standing on a Stonecutter [1.14 – 1.21.11] -----

Stonecutter inflicts damage to creature walks on it




* Changed key task-period to task-interval (#11)
* Prevented memory leaks during entity cleanup (#12)
Replaced hard references from LivingEntity to UUID. This allows
the garbage collector to properly clear entities when chunks unload.
Improved validation logic during removal to ensure all tracking
caches are safely cleared.
* Implemented tick slicing for entity damage processing (#13)
Replaced the synchronous global entity iteration in DamageTask
with a chunked processing system (Tick Slicing). Entities are
now processed in batches of 50 per tick to distribute server load.
Added fast-fail UUID validity checks before block location lookups.
This eliminates massive TPS drops on servers with large mob farms.
* Removed player from contacts on disconnect (#14)
Add onPlayerQuit method in StonecutterListener class to instantly clear redundant player data from StonecutterContacts when a player leaves the server, preventing minor memory overhead.
* Added gradle wrapper scripts
* Created .releaserc.json for semantic release setup
Add configuration for semantic release with plugins.
* Created GitHub Actions workflow for development build
* Added PR check and build workflow
This workflow checks and builds pull requests to the 'dev' branch, setting up JDK 17 and uploading the built artifact.
* Added GitHub Actions workflow for release automation
* Added gradle-wrapper.jar to fix actions
* Added sound and particle effect configurations (#15)
- Added customizable sound and particle effects (type, volume, pitch, offset) via config.yml.
- Implemented safe particle spawning to prevent BlockData-related crashes.
- Improved performance and validation in DamageTask (added fast-fail checks for gamemodes, invulnerability, and invalid entities).
* Enhanced PR workflow with name extraction and permissions
Added permissions and steps to extract version and name from Gradle files for PR builds.
* Extracted project name from settings.gradle
* Fixed extraction of project name in build-dev.yml
* Fixed extraction of project name in PR check workflow
* Extracted project name and update release metadata
* Optimized global entity iteration in DamageTask to prevent TPS drops (#17)
- Replaced Player objects with UUIDs in cache to prevent memory leaks.
- Implemented dynamic tick slicing in DamageTask to distribute CPU load evenly.
- Cached configuration values to eliminate redundant Bukkit API calls and GC spikes.
* Added artifact upload step in PR workflow to fix download link
* Modified PR comment to include build details
Update PR comment message to include version and name.
* Added step to get last commit message in workflow
Added a step to retrieve the last commit message and store it in the environment for use in the publish step to show in modrinth and curseforge.
* Included changelog in release.yml
Add changelog to release metadata in workflow
* Added changelog generation step to release workflow
* Improved particle effect handling in DamageTask (#21)
----------, Mar 22, 2026

Resource Information
Author:
----------
Total Downloads: 32
First Release: Dec 14, 2025
Last Update: Mar 22, 2026
Category: ---------------
All-Time Rating:
3 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings