Sueta

ZeFreeze | Freeze all these nasty players [Lag Free] [26.X]

1.6.3

Freeze players with a fully customizable plugin!

·Plugin

ZeFreeze
Reliable freeze checks for modern staff teams

What is ZeFreeze?
ZeFreeze is a moderation plugin that freezes players in place for staff checks, events, or investigations, with strong config control and offline-player support.

Why server owners pick it

  • Fast freeze/unfreeze workflow with toggle support
  • Target one player, the whole server (@a / all), or nearby players (radius)
  • Freeze offline players who have joined before
  • Optional bypass permission for trusted ranks
  • Control location workflow for cleaner investigations
  • Built-in anti-disconnect GUI and command blocking options
  • Highly configurable messages and behavior

Feature Breakdown

  • Freeze restrictions: movement, interaction, damage, block place/break, optional chat
  • Configurable freeze/unfreeze sounds
  • Configurable potion effects while frozen
  • Disconnect actions with console command placeholders
  • Optional auto-unfreeze on disconnect
  • Whitelist support for blocked commands
  • Live reload support for config.yml and messages.yml

Requirements

  • Spigot/Paper 1.21+
  • Java 21+

Installation

  • Download the latest release jar
  • Place it in your server plugins/ folder
  • Start or restart the server
  • (Optional) Edit config.yml and messages.yml
  • Run /zefreeze reload after edits

Commands

  • /zefreeze - Show help page
  • /zefreeze help - Show help page
  • /zefreeze <player|@a|all> - Freeze/Unfreeze target(s)
  • /zeunfreeze <player|@a|all> - Unfreeze command alias
  • /zefreeze radius <radius> - Freeze/Unfreeze nearby players
  • /zefreeze control set - Set control location
  • /zefreeze control <player> - Teleport frozen player (and you) to control location
  • /zefreeze info <player> - Show freeze info (freezer, reason, location)
  • /zefreeze reload - Reload plugin files

Permissions

  • zefreeze.freeze
  • zefreeze.unfreeze
  • zefreeze.info
  • zefreeze.control
  • zefreeze.control.set
  • zefreeze.reload
  • zefreeze.bypass
  • zefreeze.disconnect.alert

Messages and Configs Files

Messages
prefix: "&c[&dZe&bFreeze&c] "

no-reason: "&aNo reason"

player-frozen:
  - "&2You have &cfrozen &b{player}&2!"
  - "&2Reason: {reason}"
  - "&2He can't move &canymore!"

player-unfrozen:
  - "&2You have &cunfrozen &b{player}&2!"
  - "&2He can now move &cfreely!"
 
target-frozen:
  - "&2You have been &cfrozen by &b{freezer}&2!"
  - "&2Reason: {reason}"
  - "&2You can't move &canymore!"

target-unfrozen:
  - "&2You have been &cunfrozen by &b{freezer}&2!"
  - "&2You can now move &cfreely!"
 
target-freeze-info:
  - "&2&m=====&r &dZe&bFreeze &c- &d&lInfo &2&m=====&r"
  - "&6Freezer &c» &b{freezer}"
  - "&6Reason &c» &2{reason}"
  - "&6Location &c» &2X: &e{loc_x}&2, Y: &e{loc_y}&2, Z: &e{loc_z}"
  - "&2&m=====&r &dZe&bFreeze &c- &d&lInfo &2&m=====&r"

plugin-reload:
  - "&2Plugin reloaded!"

unfreeze-disconnect:
  - "&b{player} &2has been unfrozen because he left the server."
 
staff-disconnect-alert:
  - "&b{player} &chas left the server while being frozen!"

help-page:
  - "&2&m=====&r &dZe&bFreeze &c- &d&lInfo &2&m=====&r"
  - "&d/zefreeze &c» &2Show the help page"
  - "&d/zefreeze &b<player> &c» &2Freeze a player in place"
  - "&d/zefreeze control &b<player> &c» &2Teleport a frozen player to the control point"
  - "&d/zefreeze control set &c» &2Set the control point location"
  - "&d/zefreeze info &b<player> &c» &2Info about why a player is frozen"
  - "&d/zefreeze &bhelp &c» &2Show the help page"
  - "&d/zefreeze &breload &c» &2Reload the plugin"
  - " "
  - "&d/zeunfreeze &b<player> &c» &2Unfreeze a frozen player"
  - "&2&m=====&r &dZe&bFreeze &c- &d&lInfo &2&m=====&r"
 
errors:
  cant-freeze-player:
    - "&cYou can't freeze &b{player}&c! He is too powerful for you!"
  self-freeze:
    - "&cYou can't freeze yourself!"
  close-anti-disconnection-gui:
    - "&cYou can't close thi GUI because you are frozen!"
  player-not-played-before:
    - "&b{player} &chas never played on this server before! You can't freeze him!"
  player-already-frozen:
    - "&b{player} &cis already frozen!"
  player-not-frozen:
    - "&b{player} &cis not frozen!"
  damaged-a-frozen-player:
    - "&cThis player is frozen, you can't damage him!"
  chat-while-frozen:
    - "&cYou can't chat while frozen!"
  damage-while-frozen:
    - "&cYou can't damage an entity while being frozen!"
  place-while-frozen:
    - "&cYou can't place blocks while frozen!"
  break-while-frozen:
    - "&cYou can't break block while frozen!"
  move-while-frozen:
    - "&cSorry, but you can't move because you have been &4FROZEN &cby &b{freezer}!"
    - "&cIf you think that's a mistake, feel free to contact a staff member!"
  not-enough-permissions:
    - "&cSorry, but you don't have enough permissions to do that!"
  invalid-sound:
    - "The sound {sound} doesn't exist! Please change it in the config file!"
  control-location-not-set:
    - "&cYou haven't set any control location yet!"
  blocked-command:
    - "&cSince &b{freezer} &chas frozen you for &2{reason}&c, you can't use &d{command}&c!"
  player-only:
    - "&cYou need to be a player to perform that action!"
Configs
# Allow the console to make a command when a player leave the server while he is frozen
disconnect-action:
  enabled: true
  commands:
    - "money set {player} 0"
    - "ban {player} {reason}"

# Block the player from making commands when he is frozen
block-commands:
  enabled: true
  whitelist: []

# Unfreeze the player if he disconnect while being frozen
unfreeze-on-disconnect: true

# Enable the toggle function so when you type /freeze or /unfreeze it can freeze and unfreeze the player
freeze-toggle: true

# Block the Y axe of movement while frozen avoiding players to jump or flying up and down
block-y-axis: true

# Set the freeze message cooldown in seconds to not spam the player chat while the player moves
freeze-message-cooldown: 5

# You can find all the available sound here https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Sound.html
# Sound played when the target is freezed
freeze-sound: ENTITY_GHAST_SCREAM

# Sound played when the target is unfreezed
unfreeze-sound: ENTITY_PIG_DEATH

# Disable the interaction of a frozen player
disable-interaction: true

# Disable the damages of a frozen player
disable-damages: true

# Disable the possibility to place blocks from a frozen player
disable-block-place: true

# Disable the possibility to break block from a frozen player
disable-block-break: true

# Disable the possibility to chat of a frozen player
disable-chat: false

# You can find all the available effects here https://hub.spigotmc.org/javadocs/spigot/org/bukkit/potion/PotionEffectType.html
# Effects given to the player when frozen
freeze-effects:
  - BLINDNESS

anti-disconnection-gui:
  enabled: true
  size: 27
  title: "&c&lYou are frozen!"
  background:
    enabled: true
    material: BARRIER
    name: "&c&lYou are frozen!"
    lore: []
    model: 0
  border:
    enabled: true
    material: BLACK_STAINED_GLASS_PANE
    name: "&c&lYou are frozen!"
    lore: []
    model: 0
  items:
    first-item:
      slot: 11
      material: REDSTONE_BLOCK
      name: "&c&lYou are frozen!"
      lore: []
      model: 0
    second-item:
      slot: 15
      material: REDSTONE_BLOCK
      name: "&c&lYou are frozen!"
      lore: []
      model: 0


control-location:

Support
Join the Discord

If ZeFreeze helps your moderation workflow, please consider leaving a review.

Similar projects

Plugin →