Simple Freeze icon

Simple Freeze -----

A useful plugin for punishing players




Changelog
  • Fixed Essentials /banip command causing major lag
  • Fixed /unfreeze not properly reporting a player as not frozen
  • Updated to latest BanManager support
----------, Mar 9, 2023

Changelog
  • Fixed bug where even with MySQL disabled, it would attempt to close the MySQL connection upon plugin shutdown
Thanks to @BlazeVortex66666 for reporting this bug
----------, Nov 25, 2019

Changelog
  • Fixed bug where even with MySQL disabled, it would attempt to make a SQL connection

Thanks to @ACrispyCookie for reporting this bug
----------, Nov 1, 2019

Changelog
  • Added cooldowns to GUI actions
To add a cooldown just add a cooldown key under the gui-actions section
Code (YAML):
gui-actions :
  # Number of seconds before the action can be run again
  cooldown
: 3
Thanks to @Total4Tune for the suggestion
----------, Mar 11, 2018

Changelog
  • You can now define gui actions (events that run upon a frozen player clicking an item in the frozen gui)
    • There are two types of actions as of right now (if you want more types send me a message)
      • MessageFreezerAction
      • CommandsAction
    • NOTE: Events will run in the order that they are defined
Heres how you define these actions:
Code (YAML):
freeze-gui:
  items
:
    item-name
:
      # Actions that run on click
      gui-actions
:
        # Messages freezer when player clicks item
        message-freezer
:
          message
: '&b {PLAYER } &7has clicked the item'
        # Run commands when player clicks item
        run-commands
:
          commands
:
           - 'broadcast &b {PLAYER } &7who was frozen by &b {FREEZER } &7clicked the item'
Thanks to @Total4Tune, for the suggestion
----------, Feb 16, 2018

Changelog
  • Removed debug message sent every second while players were temp-frozen
  • Fixed a bug where the freeze GUI wouldn't open if a player was teleported to a freeze-location which was in an unloaded chunk
Thanks to @Twonox and @JakM44 for reporting these bugs
----------, Sep 7, 2017

Yes I'm still alive, summer has just been quite busy

Changelog

  • You can now choose whether temp-freeze time will be counted offline or only online
  • Time units are now configurable (seconds, minutes, hours, etc.)
  • Fixed a bug where an error was thrown upon a frozen player leaving the game with a freeze gui open
  • Fixed a bug where the time placeholder was sometimes cut off
  • Fixed a bug where an error was thrown when a player was unfrozen with a gui open
  • Fixed a bug where clear-playerdata only worked on MySQL enabled servers
Add this anywhere in your config (by default its at the end of the preferences section)
Code (YAML):
# Should temp-freeze time be counted when player is offline?
count-time-offline
: true

# Change the words for each unit of time
time-formats
:
  second
: 'second'
  seconds
: 'seconds'
  minute
: 'minute'
  minutes
: 'minutes'
  hour
: 'hour'
  hours
: 'hours'
  day
: 'day'
  days
: 'days'
  week
: 'week'
  weeks
: 'weeks'
  month
: 'month'
  months
: 'months'
  year
: 'year'
  years
: 'years'
Thanks to @Chris_GSPvP, @Twonox, @futurmaster and @Snadja for reporting bugs
Thanks to @Twonox for the suggestions
----------, Aug 24, 2017

To configure the new features, reset your config or add the following:
Code (YAML):
freeze-gui:
  enabled
: true
  # Should the gui be enabled on freezeall?
  enabled-on-freezeall
: false
  title
: '&b&lYou''re frozen'
  rows
: 3
  # Should players be able to close the GUI?
  # WARNING: If allow-close is false players will not be able to disconnect from the server, instead they'll have to close their client
  allow-close
: true
  items
:
    ts-item
:
      material
: BEDROCK
      # Data is optional in this case (By default data is 0)
      #data: 0
      # Amount is also optional (By default amount is 1)
      #amount: 1
      name
: '&cYou''re frozen'
      lore
:
       - '&7You''ve been frozen for hacking'
        - '&7Join our teamspeak server and you will talk to a staff'
        - '&7IP
: ts.teamspeak.com'
      x-cord
: 4
      y-cord
: 2
    freeze-info-item
:
      material
: WOOL
      data
: 14
      amount
: 1
      name
: '&bFreeze Info'
      lore
:
        - '&aFrozen by
: &7{FREEZER}'
        - '&aLength
: &7{TIME}'
        - '&aLocation
: &7{LOCATION}'
        - '&aReason
: &7{REASON}'
      x-cord
: 6
      y-cord
: 2

# If no servers are provided these servers will be used (location can never be used)
# Remember you can always use /freeze <player> * to freeze them on ALL servers using SimpleFreeze
# If you don't want any default servers set this to [] (ex. default-servers: [])
default-servers
: [ ]

# Commands ran when a player that is frozen leaves (If you don't want any logout-command change the below to logout-commands: [])
logout-commands
:
  freeze
:
   - '/broadcast &b {PLAYER } &7left while frozen'
  tempfreeze
:
   - '/broadcast &b {PLAYER } &7left while frozen with &b {TIME } &7left in their freeze'
  # Don't want any commands to run? Instead of putting a list of commands put []
  freezeall
: [ ]


# Message sent to command sender of /freezeall
freezeall-success
:
 - ' {PREFIX }Server frozen successfully'

# Message sent to command sender of /freezeall
unfreezeall-success
:
 - ' {PREFIX }Server unfrozen successfully'

Changelog

  • A customizable GUI may now appear on a frozen players screen
  • You can now set default servers in the config (If no servers are provided when freezing those servers will be used)
  • You can now perform a global freeze by providing * as the server argument (Or just add every server to your default-servers in the config)
  • Logout commands can now be set for each specific type of frozen player
  • Successful freezeall/unfreezeall messages are now configurable in the config
  • Fixed a bug where sometimes freezing/unfreezing a player on a SQL sever caused an error or did nothing at all
  • Fixed a bug where sounds would break after /sf reload
  • Fixed a bug where unfreeze notify messages would sent on servers that the player wasnt even frozen on
  • Fixed a bug where console name wouldn't change to the config set one for the freezeall-message
  • EssentialsHook now causes way less lag
  • LiteBans hook is now fixed
  • Lots of code cleanup
Thanks to Chris_GSPvP for the bug reports and suggestions
Thanks to soldier711, MarieteHD, Swiftlicious, ButtNaked & NightWalkerZed for the suggestions
----------, May 3, 2017

(If updating from lower than 3.0.0)
LISTEN: DO NOT DELETE YOUR PLAYERDATA.TXT FILE, DATA WILL BE CONVERTED AND MAY BE DELETED AFTER INITIAL STARTUP

Make sure you delete your config before updating to this version since alot of features and messages were added to the config

Changelog

  • ALL messages are now customizable (delete your config)
  • Name of Console ("CONSOLE") can now be edited in the config
  • Reason can now be forced by enabling "force-reason" in the config
  • Players can now all be unfrozen on /sf reload or restart by enabling "clear-playerdata" in the config
  • Fixed a bug where unfreezing did nothing on MySQL enabled servers
  • Fixed a bug where a debug message was broadcasted on a player join
  • Fixed a bug where falling players sometimes still took fall damage if they were unfrozen while offline
  • Fixed a bug where a invalid time argument sometimes resulted in an error
Thanks to @Elijah, @Chris_GSPvP and @SovietSquirrel for reporting these bugs
Thanks to @Elijah, @IDontTrollYou and @Chris_GSPvP for the suggestions
----------, Apr 22, 2017

(If updating from lower than 3.0.0)
LISTEN: DO NOT DELETE YOUR PLAYERDATA.TXT FILE, DATA WILL BE CONVERTED AND MAY BE DELETED AFTER INITIAL STARTUP
Delete your config

(If updating from 3.0.0)
If you update add enabled under your "mysql" section:
Code (YAML):
mysql :
  # Should MySQL be enabled?
  enabled
: false
(If updating from 3.0.1 or 3.0.0)
Add this to your config
Code (YAML):
# Message sent when a location is set
location-set
:
 - ' {PREFIX }Set location &b {LOCATION } &7successfully'

# Message sent when a location that is already set is updated (set at a new location)
location-updated
:
 - ' {PREFIX }Location &b {LOCATION } &7updated successfully'

# Message sent when a location is removed
location-removed
:
 - ' {PREFIX }Location &b {LOCATION } &7removed successfully'

no-location-set
:
 - ' {PREFIX }Location &b {LOCATION } &7doesn''t exist'

Changelog

  • Fixed a bug where helmets were not reset after a un-freezeall
  • Fixed a bug where the default-location was not accounted for during a freezeall without a location
  • Fixed a bug where the reason placeholder wasn't replaced in freezeall messages
  • Fixed a bug where the freezeall-message and the join-on-freezeall messages both send on join
  • Fixed a bug where the freezeall-message failed to be sent on any interval
  • Fixed a bug where the freezeall-messages were displayed in console
Thank you to @Elijah for reporting these bugs
----------, Apr 22, 2017

(If updating from lower than 3.0.0)
LISTEN: DO NOT DELETE YOUR PLAYERDATA.TXT FILE, DATA WILL BE CONVERTED AND MAY BE DELETED AFTER INITIAL STARTUP
Delete your config

(If updating from 3.0.0)
If you update add enabled under your "mysql" section:
Code (YAML):
mysql :
  # Should MySQL be enabled?
  enabled
: false
(If updating from 3.0.1 or 3.0.0)
Add this to your config
Code (YAML):
# Message sent when a location is set
location-set
:
 - ' {PREFIX }Set location &b {LOCATION } &7successfully'

# Message sent when a location that is already set is updated (set at a new location)
location-updated
:
 - ' {PREFIX }Location &b {LOCATION } &7updated successfully'

# Message sent when a location is removed
location-removed
:
 - ' {PREFIX }Location &b {LOCATION } &7removed successfully'

no-location-set
:
 - ' {PREFIX }Location &b {LOCATION } &7doesn''t exist'

Changelog

  • Locations are now managed in game (/sf locations)
  • Added new permissions for location management
    • sf.locations.set
    • sf.locations.remove
  • Fixed a bug where sometimes a location argument was mistaken as a reason argument
  • Fixed a bug where empty lines were not displayed in messages
  • Fixed a bug where frozen players could still chat with block-chat enabled
  • Fixed a bug where messages were spammed even if the interval was 0 (default)
  • (Hopefully) Fixed a bug where the EssentialsHook caused unnecessary lag upon a command process
Thanks to @Elijah and @SwiftSwamp for reporting these bugs
----------, Apr 20, 2017

(If updating from lower than 3.0.0)
LISTEN: DO NOT DELETE YOUR PLAYERDATA.TXT FILE, DATA WILL BE CONVERTED AND MAY BE DELETED AFTER INITIAL STARTUP

Make sure you delete your config though
Let me know if you made a suggestion and I didn't implement it.
If you are confused or have any questions about the update, message me or post to the discussion
Also, please post a review if you're happy about this long-awaited recode

(If updating from 3.0.0)
If you update add enabled under your "mysql" section:
Code (YAML):
mysql :
  # Should MySQL be enabled?
  enabled
: false
It's likely that there are going to be more bugs so make sure to report them to me right away

Changelog

  • Fixed error sent in console upon startup if MySQL failed to connect (added a enabled option to MySQL)
  • Fixed an error thrown from /freeze and /freezeall
  • Fixed a bug where helmets wouldn't display {REASON} or {SERVERS} placeholders
Thanks to @Elijah and @IDontTrollYou for reporting these bugs
----------, Apr 18, 2017

HUGE Thank you to everyone who's been waiting for this update. I am very excited for you guys to test it out.

LISTEN: DO NOT DELETE YOUR PLAYERDATA.TXT FILE, DATA WILL BE CONVERTED AND MAY BE DELETED AFTER INITIAL STARTUP
Make sure you delete your config though
Let me know if you made a suggestion and I didn't implement it.
If you are confused or have any questions about the update, message me or post to the discussion
Also, please post a review if you're happy about this long-awaited recode
Changelog
  • Temporary freezing
  • SQL freezing
  • Offline freezing/unfreezing
  • /unfreeze command
  • Players are unfrozen when banned (By LiteBans, BanManager, or Essentials)
  • Replaced the old .txt format with a new cleaner and faster .yml format
  • Freeze messages can now be sent on an interval
  • Particles change on /sf reload
  • Players may now edit their inventory while frozen (except their helmet)
  • Head-block has more options, can be any item/block, placeholders, itemflags, enchants, lore, name
  • Head-block also will be put on a players head even if they already have a helmet and their inventory is full
  • /sf reload updates sounds/particles/helmets
  • Customizable /frozenlist format
  • On join data will convert per play so don't delete until/unless the file is empty
  • Distance check now optionally includes y-cord
  • Teleport-up replaced with teleport-to-ground
  • Blocked nether portal and end portal teleportation while frozen
  • Blocked book changing
  • Added book editing block (optional)
  • Enable fly on freeze so players aren't kicked for flying
  • Properly blocked projectile shooting (ex. bow shooting, eggs, snowballs, fishing rod, splash potions, exp bottles)
  • Added optional reason parameter to /freeze, /tempfreeze and /freezeall
  • Players are unfreezed on ban
  • Movement handled more efficiently
  • Added freeze reasons
  • Frozenlist now has multiple pages
  • Helmet item is now fully customizable
  • A ton of other changes that I forgot to document along the way
----------, Apr 18, 2017

Changelog
  • Metrics changed to bStats (MCStats is basically completely unfunctional at this point)
PLEASE READ BELOW

Update on the re-code: In a few days I'll have completed all the items in my to-do list. After that I'm going to search through my past conversations and the discussion tab and find all the features I promised to implement and implement them. The only thing left to do after that will be the long post-poned (and to me scary) implementation of MySQL. The MySQL requests can potentially be very ram-inducing on the servers so I will have to go a bit of research. That being said I think I can actually finish the re-code by the 2nd week of April at the latest. I know that I've been working on this re-code for 6 months (it's ridiculous I know) and that's why I'm going to try my hardest to finish this long awaited project. I won't lie I did slack off due to a loss in motivation but that;s hit me hard and I'm back on my feet again. I have even more plans to come after the re-code is released that I'm sure you guys will all be pleased to have implemented. Thank you all for your patience and continued support, this project would be nothing if it weren't for all of you who use it.
----------, Mar 10, 2017

Changelog
  • Fixed a bug where players sometimes weren't teleported to the highest y location
  • Players who are teleported to a location in the air that is higher than 3 blocks from where they were frozen will not take fall damage once they land back down on the ground
Thanks to @BlazeVortex66666 for reporting this bug!
----------, Mar 2, 2017

Changelog
  • Fixed a bug where no matter what, frozen or not, a message would be sent upon a player leaving the game
Guys please don't be afraid to notify me about bugs, only two of the 34 people who downloaded this told me about it, I will fix them as fast as possible and am more than happy to fix them.

Thanks to @Twonox and @Chris_GSPvP for reporting this bug,
----------, Dec 10, 2016

Changelog
  • Fixed a bug where players would keep their head-item if they left during freezeall and joined back after freezeall ended
  • Fixed a bug where players frozen by freezeall would not unfreeze upon freezeall ending (How did nobody notice this before now :p)
  • Fixed a bug where player's particles from freezeall would persist on logout
Thank you @Twonox for reporting these bugs

UPDATE: Re-code progress is about 50% complete I'd say, keep checking GitHub for more info.
----------, Dec 9, 2016

Changelog
  • Fixed a bug where frozen players could damage players by shooting them with a bow (or throwing a projectile)
NOTE: This is a temporary fix that just makes it so you cannot right click the air, in the re-code it will handle the damage and cancel it properly

Thanks to @Twonox for reporting this bug.
----------, Nov 30, 2016

Changelog
  • Fixed a bug where all commands would be blocked while frozen and chat would be spammed with multiple messages instead of one
Thanks to @_Krono for reporting this bug
----------, Nov 4, 2016

NOTICE: I highly recommend everyone to update to this version as you will be notified if you are behind, and the next update (if it isn't a bug fix) will be a major update since I plan to re-code SimpleFreeze over the next few weeks so you're going to want to know when it comes out.

If you have any suggestions for this re-code make sure to make a post in the discussion section. If you have made a suggestion in the past and I have told you to remind me for when I re-code the plugin please make a post in the discussion section aswell.

I'd also like to take this time to thank everyone who has downloaded SimpleFreeze, I never thought I would even pass 100 downloads, not to mention 750.

Changelog
  • Added Metrics
  • Added update notifier
----------, Sep 11, 2016

Changelog
  • Fixed a bug where the playerdata.txt file would clear sometimes upon a frozen player joining
Thanks to @BluueJay for reporting this bug
----------, Sep 10, 2016

Changelog
  • Fixed a bug where /frozen sometimes resulted in an error
----------, Sep 1, 2016

Changelog
  • Fixed a bug where the message sent to a freezer upon freezing a player did not match the notify message in the config
----------, Jul 9, 2016

Changelog
  • Fixed the EntityDamageByEntityEvent
----------, Jul 4, 2016

Changelog
  • Fixed a bug where messages wouldn't send upon frozen players modifying their inventory
----------, Jul 4, 2016

Changelog
  • Fixed the errors upon messages being sent (wrong import)
----------, Jul 4, 2016

Just a simple update which allows you to use java escape unicode codes for unicode (ex. "\u00BB" will become »)

Changelog
  • Added Unicode support for messages
----------, Jul 4, 2016

Changelog
  • Added config option for commands run when a frozen player leaves
  • Added config option for message sent to players with the permission sf.notify.leave when a frozen player leaves
NOTE: You should reset your config after updating or add:

Code (Text):
# Notify staff if a player leaves during freezeall?
leave-message-during-freezeall: false

# Message sent when a player leave while frozen
notify-on-leave-message:
  - ''

# Should logout commands be ran if somebody leaves during freezeall?
freezeall-logout-commands: false

# Commands ran when a player that is frozen leaves (If you don't want any logout-command change the below to logout-commands: [])
logout-commands:
  - '/broadcast &c&l{PLAYER} &cleft while frozen'
Thanks to @Notifyz and @TabZ for the suggestions
----------, Jul 4, 2016

  • Added Java 7 support
----------, Jul 2, 2016

  • Added 1.10 support
----------, Jun 14, 2016

NOTE: You should reset your config after updating or add:
Code (Text):
freeze-radius: 0

freeze-distance-fail:
  - '{PREFIX}You can''t freeze {PLAYER} because they are too far away'
If freeze-radius is 0 it will be disabled

Added a new permission:
  • sf.exempt.distance - exempt from the reuiqrement to be within a distance of whoever you're freezing
Thanks to _Krono for the suggestion

Upcoming: I'm going to be re-coding SimpleFreeze again and making the plugin 1.8 and 1.9 compatible
No need to update to add this just see the config section on the plugin page for 1.8 sounds if you aren't using 1.9
----------, Mar 12, 2016

  • Fixed blocked-commands
----------, Feb 18, 2016

In this update I have completely re-coded Simple Freeze. There wont seem like much change, but now the code is completely reorganized and is a lot smoother. A lot of the config values have been changed and after updating you should delete it or some functions wont work.

Change your config or add:
Code (Text):
ADD:

frozen-notify-message:
  - '{PREFIX}{PLAYER} was frozen by {FREEZER}'
unfrozen-notify-message:
  - '{PREFIX}{PLAYER} was unfrozen by {FREEZER}'
sf-exempt-message:
  - '{PREFIX}You cannot freeze &l{PLAYER} &9because they are exempt'
no-permission-message:
  - '&cYou don''t have permission for this command'

CHANGE:

freeze-sound:
  sound: NOTE_PLING
  volume: 1.0
  pitch: 1.0
unfreeze-sound:
  sound: NOTE_PLING
  volume: 1.0
  pitch: 1.0

frozen-particles:
  particle: SNOWBALL_BREAK
  radius: 10

locations:
  example-location:
    x: 0.5
    y: 100.0
    z: 0.5
    yaw: 0.0
    pitch: 0.0
  freezeall-location:
    worldname: 'world'
    x: 10.5
    y: 100.0
    z: 10.5
    yaw: 0.0
    pitch: 0.0
  • Removed the "You were teleported to... " message and added a {LOCATION} placeholder
  • Instead of having only one permission sf.notify, it is now split into two permissions, sf.notify.frozen and sf.notify.unfrozen
  • When players log out particles are removed until they join back
  • Changed how messages are sent, now messages that aren't defined in the config expect prefix to contain a space at the end instead of adding one in and possibly making two spaces
  • Added config option to set the world that a custom location is in (If not given it will get the players current world)
  • Added config option to set the message sent to a player when they don't have permission to run a command (no-permission-message)
  • Added config option to set the message sent to a player when they fail to freeze a player because they are exempt (sf-exempt-message)
  • Added config option for the visibility radius of the particles above a frozen players head (radius)
  • Added config option for the message sent to players with sf.notify.unfrozen when a player is unfrozen (unfrozen-notify-message)
  • Added config option for volume and pitch of the freeze and unfreeze sounds (volume & pitch)
  • Added config option for what {LOCATION} will represent when there is no given location (location)

  • Bug Fixes
  • Players that froze a player that had sf.notify would be sent a message telling them the player had been frozen twice
  • You could freeze/unfreeze during freezeall
  • Sounds were played to all players on the server during freezeall even those with sf.exempt
----------, Feb 18, 2016

IMPORTANT: You must delete playerdata.txt in your SimpleFreeze folder after updating or the plugin will not load up properly

NOTE: You should reset your config after updating or add:
Code (Text):
frozen-particles: SNOWBALL_BREAK
Make sure to define your particles as listed here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Effect.html
  • Finally particles are here! For now it will be single particles above a players head but if enough people request more customization I might look into it.
  • Bug Fixes
  • Prefix would not update upon /sf reload
  • Even if you commented out freeze-sound or unfreeze-sound, sounds would still play

Thanks to MeGysssTaa, for the particles suggestion and ToXiCHaZe541, for the bug find

Sorry for the wait I have been busy with school lately
----------, Feb 10, 2016

  • Bug Fixes - Sounds
  • Sounds would sometimes not play upon a player unfreezing

Thanks to ToXiCHaZe541, for finding the bug
----------, Feb 8, 2016

NOTE: You should reset your config after updating or add:
Code (Text):
freeze-sound: NOTE_PLING
unfreeze-sound: NOTE_PLING
  • A sound will now play when a player freezes
  • A sound will now play when a player unfreezes
Make sure to define your sounds as listed here: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Sound.html

Thanks to MeGysssTaa, for the suggestion
----------, Feb 7, 2016

NOTE: You should reset your config.yml after updating or add:
Code (Text):
join-on-freezeall-message:
  - '&4&m--------------------------------------------------'
  - '&cYou have joined while freezeall is active'
  - '&4&m--------------------------------------------------'
  • Players that join during an active freezeall will now be frozen.
  • Added a new message in the config for players that join during /freezeall
----------, Feb 6, 2016

Resource Information
Author:
----------
Total Downloads: 31,450
First Release: Feb 6, 2016
Last Update: Mar 9, 2023
Category: ---------------
All-Time Rating:
39 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings