Sueta

FireFreeze 2.0 | Titles and GUI Support | Fully Configurable

2.3

Freeze plugin with cool features, such as Titles and GUI Support

·Plugin

Disclaimer: This plugin is NOT Compatible with 1.13.x-1.14.x-1.15x servers!


FireFreeze is the best freeze plugin! It has several new features, such as anydesk-task, freezehistory, freeze glowing, titles support, and more...


  • Quick and easy to use.
  • All data stored on MySQL/SQLite
  • Settable config file.
  • Efficient player freeze method.
  • On screen titles and subtitles.
  • GUI Support.
  • (Only for 1.9+) Glowing effect while frozen.
  • 100% Configurable messages.
  • Performance friendly.
  • Easy to configure Teleport system.
  • Freeze scoreboard.
  • Freeze chat.
  • Tags system with NametagEdit hook.
  • NEW! FreezeHistory
  • NEW! Possibility to merge /freeze with /unfreeze
  • NEW! Anydesk Task!


/freeze <player> - Freeze a player
/unfreeze <player> - Unfreeze a player

/firefreeze <argument> - Management for fFreeze


  • firefreeze.freeze - With this permission, staff members can freeze a player
  • firefreeze.unfreeze - With this permission, staff members can unfreeze a player
  • firefreeze.exempt - With this permission, players can bypass the freeze
  • firefreeze.staff - With this permission, staff members can see when another staff member freezes a player, and can see when a player left the server while frozen
  • firefreeze.freezehistory - With this permission, players can use the /freezehistory command
  • firefreeze.admin - With this permission, staff members can access /firefreeze command

config.yml
#This is the main configuration file for FireFreeze!

# Choose the database system:
#
# mysql -> The plugin connects to mysql at start (needs to configure)
# sqlite -> The plugin uses a .db file (No requirements)
storage_type: sqlite

# Configuration for MySQL
# Edit these values only if you are using mysql as storage type
mysql_configuration:
  host: 127.0.0.1
  port: 3306
  user: firefreeze
  password: isthebest
  database: firefreeze

command_settings:
  # If you set this on true, the /freeze will merge with /unfreeze
  # So, if you need to unfreeze a player, you can do /freeze <player> to unfreeze him
  # And, yes, the /unfreeze will work as well
  merge_freeze_with_unfreeeze: false


freeze_methods:
  # If this is set to true, firefreeze will use titles
  # The frozen player will see a title and a subtitle when he gets frozen and unfrozen
  titles:
    enable: false
    freeze_title: "&4You have been frozen"
    freeze_subtitle: "&7Do not log out"
    unfreeze_title: "&aYou have been unfrozen"
    unfreeze_subtitle: "&fYou can play again"


  # When a player gets frozen, he will have (by default) 45 seconds to give
  # his anydesk id to the staff. If not, the plugin will send a message to all the staff
  anydesk_task:
    enable: true
    minutes_to_give: 1

  # If this is set to true, firefreeze will use gui
  # The frozen player will see a non-closable gui until he gets unfrozen
  gui:
    enable: false
    # Number of rows
    rows: 2
    name: "Freeeze GUI"
    item:
      #DON'T USE ITEM IDs !!!
      material: PAPER
      slot: 4
      name: "&cYou have been frozen"
      enable_lore: true
      lore:
        - "&7&m-------------------------------------"
        - "&cYou have been frozen by a staff member"
        - "&cPlease join ts.server.com to accept the ss"
        - ""
        - "&6Do not log out or you will be banned"
        - "&7&m-------------------------------------"


  # If this is set to true, firefreeze will use a chat message
  # The frozen player will see a normal chat message until he gets unfrozen
  normal_chat:
    enable: true
    froze_message:
      - "&7&m-------------------------------------"
      - "&cYou have been frozen by a staff member"
      - "&cPlease join ts.server.com to accept the ss"
      - ""
      - "&6Do not log out or you will be banned"
      - "&7&m-------------------------------------"
    unfroze_message:
        - "&7&m-----------------------"
        - "&aYou have been unfrozen!"
        - "&aYou can now play again!"
        - "&7&m-----------------------"

  # The frozen player and the executor will be teleported to a specified location
  # /firefreeze setPos to set the positions
  enable_freeze_teleport: false

  # The server will give glowing effect to the frozen player
  enable_freeze_glowing: false

  # If you set this to true, the server will set an effect when a player gets frozen
  freeze_effect:
    enable: true
    name: BLINDNESS
    power: 255

freeze_settings:
  # You can disable movements when a player is frozen
  # Ex. disable_chat: true will allow the player to chat
  onFreeze:
    disable_movements: true
    disable_chat: false
    disable_commands: false
    disable_drop: true
    disable_interaction: true
    disable_attack: true

  # When a player gets frozen, the console will execute a command
  # Use console_freeze_command: [] to disable
  # If you want to terminate a strikepractice match, type 'sprac cancel {PLAYER} reason'
  console_freeze_command:
    - "placeHereYourCommands"

  # When a player gets unfrozen, the console will execute a command
  # Use console_unfreeze_command: [] to disable
  # WARNING: This will not work if the unfreeze is forced (plugin unloaded or /firefreeze unfreezeall)
  console_unfreeze_command:
    - "placeHereYourCommands"

  # When a frozen player left the server, the console will execute a command
  # Use console_quit_command: [] to disable
  console_quit_command:
    - "ban {PLAYER} Cheating"

other_settings:
  enable_bstats: true
  enable_autoupdater: true
  time_set: "yyyy-mm-dd HH:mm:ss"
messages.yml
#This is the main messages file for FireFreeze!

#Set to "" to remove prefix
prefix: "&c&lFire&4&lFreeze &7| "

errors:
  not_permission: "&cYou don't have permissions to execute this command."
  incorrect_usage: "&cCorrect Syntax: /freeze <player>"
  only_players: "&cYou can't execute this command from console"
  player_not_found: "&cThat player is not online."
  player_already_frozen: "&cThat player is already frozen!"
  player_already_unfrozen: "&cThis player is already unfrozen!"
  cannot_attack: "&cYou can't attack this player because he's frozen."
  cannot_attack_others: "&cYou can't attack other players when you are frozen."
  cannot_freeze_player: "&cYou can't freeze/unfreeze that player!"
  cannot_freeze_yourself: "&cYou can't freeze/unfreeze yourself!"

unfreeze:
  player_unfrozen: "&aSuccessfully unfroze {PLAYER}."

freeze:
  player_frozen: "&aSuccessfully froze {PLAYER}. All staff members have been notified."

anydesk_task:
  accepted: "&a{PLAYER} has accepted the screenshare! &6ID: {ID}"
  refused: "&c{PLAYER} has refused the screenshare! &c[Ban?]"

#The global prefix will not be applied in these messages
freeze_history:
  has_history: "&a{PLAYER} has {ENTRIES} entries"
  no_history: "&c{PLAYER} doesn't have any freeze history."
  header:
    - "&7&m---------------------------------"
    - ""
  history: "&a> by {STAFF} at {TIME}"
  footer:
    - ""
    - "&7&m---------------------------------"

#The global prefix will not be applied in these messages
staff_broadcast:
  froze: "&7[&aFreeze&7] &7{STAFF} &ahas froze &7{PLAYER}."
  unfroze: "&7[&aFreeze&7] &7{STAFF} &ahas unfroze &7{PLAYER}."
  quit: "&7[&cFreeze&7] {PLAYER} &chas quit the server while frozen."






  1. Download the plugin
  2. Copy it in the "plugins/" folder
  3. Start your server
  4. Configure as you like
  5. Enjoy!




Q: How can I set up the teleportation System?
A: It's really simple!
Go to the position where you want to set the spawn point:
First, you need to set up the "hacker zone" by typing /firefreeze setpos target.
Later, you need to set up the "staffer zone" by typing /firefreeze setpos staff.
Finally, type /firefreeze setpos final to set up the end point.

Q: How can I use Titles?
A: Set "use_titles" on true in the config and set "use_gui" on false.

Q: How can I Remove all the positions?
A: Simply, type /firefreeze resetpos.

Q: The glowing effect won't work, why?
A: To use the glowing effect, you need to have a 1.9+ NATIVE minecraft server version.
So, if you use a 1.8 spigot server, but with ViaVersion in order to support newer minecraft versions,
the glowing effect will not work!

Q: I found a bug, where can I report it?
A: Contact me on SpigotMC or on Discord (ImOnlyFire#2929).
Please DO NOT POST REVIEWS ABOUT BUGS!!!

Usage of the Developer API

Developer API

There are 3 events in the plugin: PlayerFreezeAddEvent, PlayerFreezeRemoveEvent, PlayerFreezeQuitEvent

  • PlayerFreezeAddEvent is called when the players gets frozen. You can get the staff and the frozen player
  • PlayerFreezeRemoveEvent is called when the players get unfrozen. You can get the staff and the unfrozen player
  • PlayerFreezeQuitEvent is called when the player quits the server while frozen. You can get only the frozen player

FreezeProfile Class:
The FreezeProfile class is the custom player object. You can freeze/unfreeze the player and/or teleport him to the freeze location

FreezeProfile profile = new FreezeProfile(player);

profile.freeze(); //To freeze the player
profile.unfreeze(); //To unfreeze the player
profile.forceUnfreeze(); //It's just a normal unfreeze but with the EntryType set to FORCED
profile.getWhoFroze(); //Returns the staff member who froze the player

You can report bugs by using the github page of Firefreeze and making an Issue thread

Similar projects

Plugin →