TL;DR Drop in the jar → set
delay→ choose a mode. The plugin adjusts entity invulnerability (no-damage ticks) safely on modern servers and Folia.
- Highlights
- Platforms & Requirements
- Installation
- Quick Start
- Configuration
- Commands & Permissions
- How It Works
- Troubleshooting & FAQ
- Building from Source
- Contributing & License
- Set entity invulnerability ticks (no-damage ticks) to your preference.
- Nine modes:
pvp,evp,pvp-evp,any,player-only,crystal,anchor,crystal-anchor,custom. - Crystal PvP support for end crystals and respawn anchors.
- Custom entity and block target lists for server-specific combat setups.
- Optional knockback multiplier.
- Safe on Folia via region scheduling (no cross-thread access).
- Works back to 1.8; Java 8 compatible.
Server platforms
- Spigot
- Paper
- Folia
Minecraft: 1.8 → Latest
Java: 8+
Note: Folia is a separate server platform. This plugin detects and uses Folia's region scheduler when present.
- Download the latest
.jarfrom Spigot or GitHub Releases. - Place it into your server’s
plugins/directory. - Start the server to generate
config.yml.
-
Set your delay (ticks):
/nohitdelay setdelay 2 -
Choose a mode:
/nohitdelay setmode pvp(orevp,pvp-evp,any,player-only,crystal,anchor,crystal-anchor,custom) -
Optional: tweak knockback in
config.yml.
Default config.yml:
# Delay value
delay: 2 # in ticks
# Default delay in Minecraft is 20 ticks
# Experimental
knockback-multiplier: 1.0 # Set to 1.0 to disable knockback changes
# Mode options:
# pvp - No hit delay only applies in player versus player combat.
# evp - No hit delay only applies when entities attack players.
# pvp-evp - No hit delay applies to both PvP and EvP interactions as long as a player is involved.
# any - No hit delay applies to any entity interactions.
# player-only - No hit delay applies when players attack any entity, but entities do not have no hit delay when attacking.
# crystal - No hit delay applies only to end crystal explosion damage.
# anchor - No hit delay applies only to respawn anchor explosion damage.
# crystal-anchor - No hit delay applies to end crystal and respawn anchor explosion damage.
# custom - No hit delay applies only when the damaging entity or block is listed in custom-targets.
mode: any
custom-targets:
# EntityType or Material names are accepted. Names are case-insensitive, and minecraft: namespaces are allowed.
entities:
- ENDER_CRYSTAL
blocks:
- RESPAWN_ANCHOR
# When true, custom mode ignores matching targets unless the damage cause is an explosion.
explosions-only: false
messages:
prefix: "&f[NoHitDelay] "
use-prefix: true
delay-set: "&aDelay set to: &e%value%&a."
invalid-delay: "&cInvalid delay value. Please enter a number."
usage-setdelay: "&cUsage: /nohitdelay setdelay <delay>"
current-delay: "&aDelay is currently set to: &e%value%"
mode-set: "&aMode set to: &e%value%&a."
invalid-mode: "&cInvalid mode value. Please use: &e%modes%&c."
usage-setmode: "&cUsage: /nohitdelay setmode <mode>"
current-mode: "&aMode is currently set to: &e%value%"
config-reloaded: "&aConfiguration reloaded."
command-list:
- "%prefix% command list"
- "&f"
- "&f/nohitdelay setdelay <amount> &7(~~~)"
- "&f/nohitdelay getdelay &7(~~~)"
- "&f/nohitdelay setmode <mode> &7(~~~)"
- "&7Modes: pvp, evp, pvp-evp, any, player-only, crystal, anchor, crystal-anchor, custom"
- "&f/nohitdelay getmode &7(~~~)"
- "&f/nohitdelay reloadconfig &7(~~~)"Notes:
- Hex colors
&#RRGGBBare converted on 1.16+. - Use
crystal-anchorfor crystal PvP servers that want only end crystal and respawn anchor explosion damage to use the configured hit delay. - Use
customwhen you want a specific list of BukkitEntityTypeorMaterialnames. Values such asENDER_CRYSTAL,minecraft:respawn_anchor, andrespawn-anchorare accepted.
Commands
/nohitdelay- Help/nohitdelay setdelay <ticks>- Set invulnerability ticks/nohitdelay getdelay- Show current delay/nohitdelay setmode <mode>- Set mode/nohitdelay getmode- Show current mode/nohitdelay reloadconfig- Reload configuration
Permission
nohitdelay.manage- Access to all subcommands (default: OP)
The plugin listens for damage events and briefly schedules an update to the damaged entity:
- Optionally scales knockback by a configurable multiplier.
- Sets the entity’s
noDamageTicksto the configured value.
On Folia, tasks run on the entity’s region scheduler. On Spigot/Paper, they run on the Bukkit scheduler.
Does this remove the 1.9+ attack cooldown?
No. This controls entity invulnerability (noDamageTicks). The 1.9+ attack cooldown is a separate mechanic.
No change in-game?
Check that your mode matches the situation (e.g., pvp vs any). Other plugins may modify velocity or damage behavior.
Knockback multiplier seems subtle.
It scales the entity’s current velocity on the next tick. Some servers or plugins clamp or alter knockback.
Requirements: JDK 8+, Maven.
mvn -DskipTests packageThe jar is produced under target/.
Issues and PRs are welcome: https://github.com/NewAmazingPVP/NoHitDelay/issues
License: MIT - see LICENSE.