What is "ZeDistance"
ZeDistance is a plugin providing a lightweight solution to let your players detect cheater who use reach by sending them a message with the distance from which the cheater attacked him and giving to your player the possibility to report him.
Features
Permissions
(if you want your server listed here, feel free to ask for it)
To Do List
Feel free to rate the plugin and send feedbacks !
And don't forget to leave a like
ZeDistance is a plugin providing a lightweight solution to let your players detect cheater who use reach by sending them a message with the distance from which the cheater attacked him and giving to your player the possibility to report him.
Features
- Enabling/Disabling the checker for each player (/pvpd on/off)
- Cancel the hit if over the max hit distance
- Player and Staff alert when a player is over the max hit distance
- Execute a command when the distance is exceeded
- Mini database feature to save the activated players
- Fully customisable with configs and messages files
- Download the latest version of the plugin
- Place the downloaded .jar file in your server plugin folder
- Start your server
- Enjoy !
- /zedistance » Enable/Disable the hit distance checker
- /zedistance on » Enable the hit distance checker
- /zedistance off » Disable the hit distance checker
- /zedistance help » Display help page of the plugin
- /zedistance reload » Reload the plugin
Spoiler: Messages.yml
Code (YAML):
prefix
:
"&c[&aOpsyDistance&c] "
hit-checker-enabled :
- "&2You &denabled &2the hit distance checker!"
hit-checker-disabled :
- "&2You &cdisabled &2the hit distance checker!"
plugin-help :
- "&2/pvpd &4» &dToggle OpsyDistance"
- "&2/pvpd on &4» &dEnable OpsyDistance"
- "&2/pvpd off &4» &dDisable OpsyDistance"
- "&2/pvpd help &4» &dShow the help page"
- "&2/pvpd reload &4» &dReload the plugin"
plugin-reloaded :
- "&2Plugin reloaded successfully!"
alert:
over-max :
- "&2The player \"&b {attacker }&2\ " hurt you."
- "&2Distance of the attack &c» &4&l{distance} &cblocks."
- "&4Cheat &c&o(Probably)&4 ? Bug ? Lag ? &c» &2Contact a staff member!"
under-max :
- "&2The player \"&b {attacker }&2\ " hurt you."
- "&2Distance of the attack &c» &a&l{distance} &eblocks."
staff-alert :
- "&2The player \"&b {attacker }&2\ " hurt \"&b {victim }&2\ "."
- "&2Distance of the attack &c» &4&l{distance} &cblocks."
- "&4Cheat &c&o(Probably)&4 ? Bug ? Lag ?"
errors:
not-a-player :
- "&cYou must be a player to use this command!"
already-enabled :
- "&cYou already enabled the hit distance checker!"
already-disabled :
- "&cYou already disabled the hit distance checker!"
command-distance-under-max :
- "&cYou set the command distance under the max distance!"
- "&cPlease, change it to be more or equal to it!"
kick-distance-under-max :
- "&cYou set the kick distance under the max distance!"
- "&cPlease, change it to be more or equal to it!"
not-enough-permissions :
- "&cSorry, you don't have enough permissions to do that!"
hit-checker-enabled :
- "&2You &denabled &2the hit distance checker!"
hit-checker-disabled :
- "&2You &cdisabled &2the hit distance checker!"
plugin-help :
- "&2/pvpd &4» &dToggle OpsyDistance"
- "&2/pvpd on &4» &dEnable OpsyDistance"
- "&2/pvpd off &4» &dDisable OpsyDistance"
- "&2/pvpd help &4» &dShow the help page"
- "&2/pvpd reload &4» &dReload the plugin"
plugin-reloaded :
- "&2Plugin reloaded successfully!"
alert:
over-max :
- "&2The player \"&b {attacker }&2\ " hurt you."
- "&2Distance of the attack &c» &4&l{distance} &cblocks."
- "&4Cheat &c&o(Probably)&4 ? Bug ? Lag ? &c» &2Contact a staff member!"
under-max :
- "&2The player \"&b {attacker }&2\ " hurt you."
- "&2Distance of the attack &c» &a&l{distance} &eblocks."
staff-alert :
- "&2The player \"&b {attacker }&2\ " hurt \"&b {victim }&2\ "."
- "&2Distance of the attack &c» &4&l{distance} &cblocks."
- "&4Cheat &c&o(Probably)&4 ? Bug ? Lag ?"
errors:
not-a-player :
- "&cYou must be a player to use this command!"
already-enabled :
- "&cYou already enabled the hit distance checker!"
already-disabled :
- "&cYou already disabled the hit distance checker!"
command-distance-under-max :
- "&cYou set the command distance under the max distance!"
- "&cPlease, change it to be more or equal to it!"
kick-distance-under-max :
- "&cYou set the kick distance under the max distance!"
- "&cPlease, change it to be more or equal to it!"
not-enough-permissions :
- "&cSorry, you don't have enough permissions to do that!"
Spoiler: Config.yml
Code (YAML):
# Max distance in blocks for a legit hit
max-distance : 5.00
kick :
# Enable/Disable kick when the attacker is over the kick distance
enabled : true
# Kick distance in blocks to trigger it (need to be over the max-distance value)
distance : 5.8
# Player ping threshold to avoid player lag false positives (in ms)
ping-treshold : 80
# Server TPS threshold to avoid server lag false positives (in tps value up to 20)
tps-threshold : 18.0
# Kick message
message : "&cReach is not authorized on this server!"
command :
# Enable/Disable command when the attacker is over the kick distance
enabled : true
# Command distance in blocks to trigger it (need to be over the max-distance value)
distance : 5.2
# Player ping threshold to avoid player lag false positives (in ms)
ping-threshold : 80
# Server TPS threshold to avoid server lag false positives (in tps value up to 20)
tps-threshold : 18.0
# Commands to execute on trigger
execute :
- "broadcast {attacker} has attacked {victim} from {distance} blocks!"
# Cancel the damage if the attack is over the maximum distance
cancel-damage : true
# Enable the pvp-distance checker on join
on-join-enable : false
# Disable the pvp-distance checker on leave
on-leave-disable : false
# Send an alert to a staff member with "pvpdistance.alert" permission while a player exceed the max hit distance
staff-alert : true
max-distance : 5.00
kick :
# Enable/Disable kick when the attacker is over the kick distance
enabled : true
# Kick distance in blocks to trigger it (need to be over the max-distance value)
distance : 5.8
# Player ping threshold to avoid player lag false positives (in ms)
ping-treshold : 80
# Server TPS threshold to avoid server lag false positives (in tps value up to 20)
tps-threshold : 18.0
# Kick message
message : "&cReach is not authorized on this server!"
command :
# Enable/Disable command when the attacker is over the kick distance
enabled : true
# Command distance in blocks to trigger it (need to be over the max-distance value)
distance : 5.2
# Player ping threshold to avoid player lag false positives (in ms)
ping-threshold : 80
# Server TPS threshold to avoid server lag false positives (in tps value up to 20)
tps-threshold : 18.0
# Commands to execute on trigger
execute :
- "broadcast {attacker} has attacked {victim} from {distance} blocks!"
# Cancel the damage if the attack is over the maximum distance
cancel-damage : true
# Enable the pvp-distance checker on join
on-join-enable : false
# Disable the pvp-distance checker on leave
on-leave-disable : false
# Send an alert to a staff member with "pvpdistance.alert" permission while a player exceed the max hit distance
staff-alert : true
Permissions
- zedistance.use (/zedistance on)
- zedistance.use (/zedistance off)
- zedistance.reload (/zedistance reload)
- pvpdistance.alert (receive over-hit distance alert)
(if you want your server listed here, feel free to ask for it)
To Do List
- Add an auto-kick with tps/lag check
Feel free to rate the plugin and send feedbacks !
And don't forget to leave a like

Quick facts
- Edition: Minecraft Java
- File type: .jar
- Minecraft versions listed: 1.17, 1.18, 1.19
- How to install: Install the matching mod loader (Forge, Fabric or NeoForge) for your Minecraft version. → Download the .jar. → Put it in the .minecraft/mods folder and launch that loader profile.
- Where to get it: Opens on Spigot — not every file is mirrored on our own servers.
Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.
ZeDistance | Hit Distance Checker (Anti-Reach) [1.17.x - 1.21.x] is a free Minecraft Java mod. Compatible with Minecraft 1.17, 1.18, 1.19. Downloaded 1,198 times (via Spigot). Download it and open it directly in the game.