
StonecutterDamage
Lightweight Minecraft plugin that adds a subtle survival mechanic by dealing damage to any entity standing on a stonecutter.
5022обновлён 22 мар. 2026 г.
ПриключенияМеханики игрыУтилиты
Описание
Overview
Stonecutter Damage adds a gameplay mechanic where players and living entities take damage when standing on a stonecutter block. The plugin efficiently tracks entities that step onto stonecutters and applies configurable damage at a fixed interval. The system is optimized to minimize unnecessary checks by only processing relevant worlds, entities, and block-position changes.
Features
- Configurable damage amount dealt by stonecutters
- Supports players and all LivingEntity types
- World whitelist support
- Entity blacklist support (e.g. bats or other excluded mobs)
- Optimized tracking using cached block positions
- Configurable task delay and period
- Enable or disable the plugin via config
- Lightweight and safe for large servers
Spoiler
# Enable or disable Stonecutter damage handling
# Default: true
enabled: true
# Permission that allows players to ignore stonecutter damage
# Default: stonecutter.bypass
permission: stonecutter.bypass
# Amount of damage dealt per hit (in half-hearts)
# 1 = 0.5 heart
# Default: 1.0
damage-amount: 1.0
# Initial delay before the damage task starts (in ticks)
# 20 ticks = 1 second
# Default: 20
task-delay: 20
# Interval between damage checks (in ticks)
# 20 ticks = 1 second
# Default: 20
task-period: 20
# List of worlds where StonecutterDamage is active
# Only entities/players in these worlds will be checked
# Default: ["world", "world_nether", "world_the_end"]
allowed-worlds:
- world
- world_nether
- world_the_end
# List of entity types that are excluded from StonecutterDamage
# Use Bukkit entity type names, e.g., ZOMBIE, CREEPER, ARMOR_STAND
# Default: ["ARMOR_STAND", "ITEM_FRAME"]
blacklisted-entities:
- ARMOR_STAND
- ITEM_FRAME
# Help command output
# {0} replaces with the command label
# /stonecutter help
help-messages:
- "§7=== §aStonecutterDamage Commands §7==="
- "§e/{0} help §8- §fShows this help message."
- "§e/{0} reload §8- §fReloads the config."
# Message shown after successful config reload
# /stonecutter reload
reload-message: "§8[§aStonecutter§8] §fSuccessfully reloaded the config."
Permissions
stonecutter.bypass - Allows a player to stand on stonecutters without taking damage.
Commands
/stonecutter help - Displays all available commands. /stonecutter reload - Reloads the plugin configuration.
bStats
Последние версии
Все версии →alpha
StonecutterDamage v1.0.0 (Dev 24)
1.0.0-alpha.2422 мар. 2026 г.55Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Что нового
ci: update build name format in workflow file
alpha
StonecutterDamage 1.0.0 (Dev 23)
1.0.0-alpha.2322 мар. 2026 г.11Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Что нового
ci: change release deletion from 'dev-build' to 'dev-latest'
alpha
StonecutterDamage 1.0.0 (Dev 22)
1.0.0-alpha.2222 мар. 2026 г.15Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Что нового
ci: refactor .releaserc.json for semantic-release plugins
alpha
StonecutterDamage 1.0.0 (Dev 21)
1.0.0-alpha.2122 мар. 2026 г.16Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Что нового
chore: sync dev with master (#24)
alpha
StonecutterDamage v1.0.0 (Dev 20)
1.0.0-alpha.2022 мар. 2026 г.13Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Что нового
ci: update game version range in release workflow
alpha
StonecutterDamage v1.0.0 (Dev 19)
1.0.0-alpha.1922 мар. 2026 г.10Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Что нового
ci: update game version range in build-dev.yml
release
StonecutterDamage v1.1.0
1.1.022 мар. 2026 г.66Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Что нового
* 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)
alpha
StonecutterDamage v1.0.0 (Dev 18)
1.0.0-alpha.1822 мар. 2026 г.15Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Что нового
ci: update release workflow to fetch changelog from GitHub
alpha
StonecutterDamage v1.0.0 (Dev 17)
1.0.0-alpha.1722 мар. 2026 г.13Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Что нового
fix: improve particle effect handling in DamageTask (#21)
alpha
StonecutterDamage v1.0.0 (Dev 16)
1.0.0-alpha.1622 мар. 2026 г.18Minecraft: 1.14, 1.14.1, 1.14.2, 1.14.3, 1.14.4, 1.15, 1.15.1, 1.15.2, 1.16, 1.16.1, 1.16.2, 1.16.3, 1.16.4, 1.16.5, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.20, 1.20.1, 1.20.2, 1.20.3, 1.20.4, 1.20.5, 1.20.6, 1.21, 1.21.1, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7, 1.21.8, 1.21.9, 1.21.10, 1.21.11bukkit, paper, purpur, spigot
Что нового
chore: add changelog generation step to release workflow