ModsJava
FREE | FreezeMelon | Freeze in combat
FreezeMelon — Self-Freeze, Glass Prison & Full Invulnerability FreezeMelon is a small but brutal little utility plugin: right–click a special melon → get…
⬇ Download on SpigotFreezeMelon 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.
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.
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!
- Chat message with prefix:
- During the freeze:
- Actionbar countdown every second:
Frozen – 2s remaining
- Actionbar countdown every second:
- On exit:
- Chat message with prefix:
FreezeMelon » You are no longer frozen. - Optional “Freeze ended!” actionbar flash.
- Chat message with prefix:
If your server somehow doesn’t support actionbars correctly, the plugin just stops trying instead of spamming errors.
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
- Configurable sound(legacy + modern names)
- On freeze end:
- Separate end sound
- Example: ORB_PICKUP / ENTITY_EXPERIENCE_ORB_PICKUP
- Separate end effect
- Example: FIREWORKS_SPARK around the player
- Separate end sound
- Enable/disable global effects
- Start vs end settings
- Legacy and modern sound tokens so it behaves on 1.8 and 1.21+
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.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
- 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)
⚙ 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.
- freezemelon.give – required to use /freezemelon give (default: OP)
you decide who gets melons (donor ranks, staff, minigame rewards, etc.), the plugin just makes sure the freeze mechanic is solid.
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
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
- 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.
LostDev discord server:
✱ https://discord.gg/6S6jxC5h67
(Join for more info, or plugins!)
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
# 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
Quick facts
- Edition: Minecraft Java
- File type: .jar
- Minecraft versions listed: 1.8, 1.9, 1.10
- 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.
FREE | FreezeMelon | Freeze in combat is a free Minecraft Java mod. Compatible with Minecraft 1.8, 1.9, 1.10, 1.11 and newer. Downloaded 47 times (via Spigot). Download it and open it directly in the game.