FREE | FreezeMelon | Freeze in combat icon

FREE | FreezeMelon | Freeze in combat -----

Freeze in combat for protect you self with melon!



[​IMG]

[​IMG] FreezeMelon — Self-Freeze, Glass Prison & Full Invulnerability

FreezeMelon is a small but brutal little utility plugin:

right–click a special melon → get teleported into a 2-block glass pillar → become completely invulnerable for a few seconds → then pop back out like nothing happened.

Perfect as a fun survival toy, a “panic button” in PvP, or a cosmetic perk on hubs and minigame servers.

No extra dependencies, no setup pain – just drop it in, configure the timings and visuals, give out melons, done.


⚠ Early Version – Actively Improved (v0.0.1) ⚠

FreezeMelon is a fresh 0.0.1 release.

The core is already stable and version-safe (1.8–1.21.10 in one jar), but small tweaks and quality-of-life upgrades are still being added based on real server use.

If you spot weird edge cases (odd glass behaviour, movement quirks, etc.), they’re meant to be fixed fast – not ignored.


[​IMG] Core Concept & Safety

FreezeMelon is built around a simple idea:

“Right-click melon = temporary god mode inside a glass pillar.”

When a player uses the Freeze Melon:

  • They are snapped to block center and teleported into a 2-block tall glass column.
    • 1 glass block at their feet
    • 1 glass block at their head
    • No full cage, just a clean vertical prism with the player trapped inside.
  • The plugin remembers the original blocks and restores them after the freeze ends.
  • The glass cannot be broken by anyone while the player is frozen.
  • The player becomes fully invulnerable:
    • No damage from players, mobs, fall, lava, fire, explosions…
    • No drowning
    • Harmful splash potions are ignored.
  • Fire ticks and air are constantly reset during the freeze.
Result: a safe, clean, visually obvious “frozen” state you can trust.


[​IMG] Actionbar Timer & Feedback

FreezeMelon gives the player clear feedback:

  • On use:
    • Chat message with prefix:
      FreezeMelon » You froze yourself for X seconds!
    • Optional actionbar:
      You froze yourself for Xs!
  • During the freeze:
    • Actionbar countdown every second:
      Frozen – 2s remaining
  • On exit:
    • Chat message with prefix:
      FreezeMelon » You are no longer frozen.
    • Optional “Freeze ended!” actionbar flash.
The actionbar is implemented with a version-aware NMS helper so it works across 1.8–1.21.x without requiring extra libraries or Bungee.

If your server somehow doesn’t support actionbars correctly, the plugin just stops trying instead of spamming errors.


[​IMG] Sounds & Visual Effects

Freeze is not just mechanical – it looks and sounds good:

  • On freeze start:
    • Configurable sound(legacy + modern names)
      • Example: CLICK on 1.8, BLOCK_GLASS_PLACE on modern versions
    • Configurable visual effect(Bukkit Effect) at feet + head
      • Example: MOBSPAWNER_FLAMES around the pillar
  • On freeze end:
    • Separate end sound
      • Example: ORB_PICKUP / ENTITY_EXPERIENCE_ORB_PICKUP
    • Separate end effect
      • Example: FIREWORKS_SPARK around the player
Everything is editable in config.yml:

  • Enable/disable global effects
  • Start vs end settings
  • Legacy and modern sound tokens so it behaves on 1.8 and 1.21+
If a sound or effect name is invalid on your version, it’s ignored safely – no server crash, no spam.


Simple YAML Configuration

FreezeMelon only needs one config file: config.yml.

Key options:

Global settings

  • settings.enabled – master on/off switch
  • settings.freeze-seconds – how long a freeze lasts
  • settings.allow-head-move – allow head rotation while frozen (no position change)
  • settings.use-actionbar – enable/disable actionbar messages
  • settings.consume-melon – should the melon item be consumed on use?
    • true → each use removes 1 from the stack
    • false → infinite-use melon
  • settings.disabled-worlds – list of world names where FreezeMelon cannot be used
Item definition

  • item.legacy-material / item.modern-material
    • MELON vs MELON_SLICE support, 1.8–1.21 safe
  • item.name – custom display name (supports & colours)
  • item.lore[] – lore lines, supports {seconds} placeholder
  • item.glow – adds hidden enchant for a glow effect
Glass pillar

  • cage.legacy-material / cage.legacy-data – 1.8–1.12 glass type & colour (e.g. STAINED_GLASS + data 14 for red)
  • cage.modern-material – 1.13+ material name (e.g. RED_STAINED_GLASS)
The plugin automatically picks the right material for your server version and falls back safely if something is misconfigured.


⚙ Command & Permission

There’s a single admin command:

/freezemelon give <player> [amount]

  • Gives the configured Freeze Melon item to a player.
  • Amount defaults to 1 if omitted.
Permission:

  • freezemelon.give – required to use /freezemelon give (default: OP)
This keeps the plugin simple:

you decide who gets melons (donor ranks, staff, minigame rewards, etc.), the plugin just makes sure the freeze mechanic is solid.


[​IMG] Integration Ideas

FreezeMelon is easy to drop into existing setups:

  • Survival & SMP
    • “Panic melon” during dangerous situations
    • Special crate reward or event item
  • PvP & Duels
    • Limited-use defensive item
    • Tournament perk for certain ranks
  • Minigames / events
    • Freeze phases in parkour races
    • Last-second save during boss fights
  • Hubs & lobbies
    • Cosmetic “freeze yourself” emote for donors
    • Screenshot moments inside a glass pillar
Because everything is driven from YAML and a single small jar, you don’t have to restructure anything – just wire it into your existing economy, crates or rank system.


[​IMG] Summary

FreezeMelon gives your players:

  • A clean, visual self-freeze ability inside a 2-block glass pillar
  • True invulnerability during the freeze (no damage, no drowning, no potions)
  • Actionbar feedback and countdown
  • Customisable sounds and visual effects
  • Simple, version-safe config for 1.8 – 1.21.10 in one jar
And it gives you:

  • Minimal setup
  • Single config.yml
  • No dependency hell
  • Early-but-focused 0.0.1 plugin that is easy to extend and theme for your server.
[​IMG]

[​IMG]

[​IMG]

LostDev discord server:

https://discord.gg/6S6jxC5h67

(Join for more info, or plugins!)

[​IMG]

Code (YAML):
################################################################################

#                               FreezeMelon - config                           #

################################################################################

# This plugin lets players right-click a special melon to:

# - Freeze themselves for a configurable amount of seconds

# - Get teleported into a 2-block glass "pillar"

# - Become fully invulnerable while frozen (no damage from anything)

# - Show messages in chat and in the actionbar

# - Play configurable sounds and visual effects

################################################################################


settings
:

  enabled
: true


  # How many seconds the player stays frozen.

  freeze-seconds
: 10


  # If true, the player can move their head but cannot move their position.

  allow-head-move
: true


  # If true, actionbar messages will be used.

  use-actionbar
: true


  # If true, each use of the Freeze Melon will consume 1 item.

  # If false, the melon will never decrease in amount.

  consume-melon
: true


  # List of world names where the Freeze Melon is disabled.

  disabled-worlds
:

    - world_nether

    - world_the_end


item
:

  # Legacy (1.8-1.12) material name of the melon item.

  legacy-material
: MELON


  # Modern (1.13+) material name of the melon item.

  modern-material
: MELON_SLICE


  # Display name of the Freeze Melon.

  name
: "&cFreeze Melon"


  # Lore of the Freeze Melon.

  # {seconds} will be replaced with the configured freeze-seconds value.

  lore
:

    - "&7Right-click to freeze yourself."

    - "&7Duration
: &c{seconds} &7seconds. "


  # If true, the melon will glow with an enchantment effect.

  glow: true


cage:

  # Legacy (1.8-1.12) cage block material name.

  legacy-material: STAINED_GLASS


  # Legacy data value for the glass color (14 = red).

  legacy-data: 14


  # Modern (1.13+) cage block material name (string-based, no enum dependency).

  modern-material: RED_STAINED_GLASS


  # Note: current implementation uses exactly 2 glass blocks:

  # one at the player's feet and one at the player's head.

  # The player is inside those 2 glass blocks.


messages:

  # Prefix added before all messages.

  prefix: "
&6FreezeMelon &8» &7 "


  # Message sent when the player successfully freezes themselves.

  self-frozen: "
&aYou froze yourself for &c {seconds } &aseconds! "


  # Message sent if the player is already frozen.

  already-frozen: "
&cYou are already frozen! "


  # Message sent when the freeze expires.

  expired: "
&aYou are no longer frozen. "


  # Message sent if the world is blocked in the blacklist.

  disabled-world: "
&cYou cannot use the Freeze Melon in this world. "


  # Command messages for /freezemelon.

  no-permission: "
&cYou don't have permission. "

  usage: "
&cUsage : &e/freezemelon give <player> [amount ] "

  player-not-found: "
&cPlayer not found. "

  gave-melon: "
&aGave &ex {amount } &aFreeze Melon (s ) to &e {player }&a. "

  received-melon: "
&aYou received &ex {amount } &aFreeze Melon (s )! "


actionbar:

  # Actionbar message shown when the player becomes frozen.

  start: "
&cYou froze yourself for &e {seconds }s&c! "


  # Actionbar message shown each second during the freeze.

  # {time} will be replaced with remaining seconds.

  countdown: "
&cFrozen &7- &e {time }s &7remaining "


  # Actionbar message shown when the freeze expires.

  expired: "
&aFreeze ended! "


effects:

  # Master toggle for all sound/effect logic.

  enabled: true


  # Effects when the player becomes frozen.

  start:

    # Sound settings for the start event.

    sound-enabled: true

    # Legacy (1.8-1.12) sound name.

    sound-legacy: "
CLICK "

    # Modern (1.13+) sound name.

    sound-modern: "
BLOCK_GLASS_PLACE "

    sound-volume: 1.0

    sound-pitch: 1.0


    # Visual effect when the freeze starts.

    # Uses org.bukkit.Effect for maximum version compatibility.

    effect-enabled: true

    effect-name: "
MOBSPAWNER_FLAMES "

    effect-data: 0


  # Effects when the freeze expires.

  end:

    sound-enabled: true

    sound-legacy: "
ORB_PICKUP "

    sound-modern: "
ENTITY_EXPERIENCE_ORB_PICKUP "

    sound-volume: 1.0

    sound-pitch: 1.0


    effect-enabled: true

    effect-name: "
FIREWORKS_SPARK "

    effect-data: 0

[​IMG]
Resource Information
Author:
----------
Total Downloads: 2
First Release: Yesterday at 3:39 AM
Last Update: Yesterday at 3:39 AM
Category: ---------------
All-Time Rating:
0 ratings
Find more info at discord.gg...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings