Changelog
[Update] the rtp system to handle world names wich spaces correctly
[Fix] the AFK Title not getting removed on quit
[Added] a new /enchant config option:
# Enchant
#
# Settings for the /enchant command.
enchant:
# Should the /enchant command be able bypass the vanilla limit ?
allow-unsafe: false
[Add] a bypass permission for the enchant config option:
essentialsc.enchant.unsafe:
description: Allows bypassing the vanilla enchant limit ( config option ignored )
default: op
[Fix] rtp worlds reappearing when deleted from the config.yml
[Add] a /trash confirmation GUI
[Update] the motd system to send configurable messages on join
[Update] Join/Leave messages to no longer fall back to vanilla j/l messages when disabled in the config.yml
[Fix] broken member kit cooldown
[Add] a new essentialsc.home.mount permission which allows you to teleported to your home when mounted on other entities
[Update] /home + /homes messages and added a new config option
# The home name to teleport to when typing /home with no arguments.
# Set to "" (empty) to show the home list instead.
# This overrides GUI mode — players will teleport directly.
default-teleport-name: ""
[Update] /playerlist with cleaner messages + pagination System
[Update] the command help system
[Fix] /invsee not working on offline players
[Fix] AFK Move detection logic
[Fix] NullPointerException when using the auction house while the economy is disabled
Changelog
[Add] cooldown: and cooldown-bypass: option for commands.yml
worth:
enabled: true
priority: normal
aliases: []
cooldown: 10 # 10 Seconds
cooldown-bypass: essentialsc.worth.bypass-cooldown
[Add] a Kit GUI mode option
kits:
# How players interact with the kit list.
# "command" — players type /kits to see a chat list.
# "gui" — /kits opens an inventory GUI showing all available kits.
mode: gui
# Play sounds when opening, claiming, turning pages, or closing the GUI.
sounds: true
- The GUI is configurable in
guis/kit_list.yml - Kits now also have two new options:
gui-slot: 10
gui-icon: "CHEST"
[Fix] /balance not updating
[Update] SellGUI to be Non-Italic
[Fix] default Shop categories + items not loading
Changelog
[Fix] Punishments not getting saved properly when shutting down the server
[Fix] Join/Leave Message not beeing broadcasted to the Console
[Add] /suicide command
[Add] new isCurrencyBeforeAmount config option ( under economy )
[Add] a new kit claim cooldown bypass permission
essentialsc.kits.cooldown.bypass( all )essentialsc.kits.cooldown.bypass.<kit>( per-kit )
[Add] new essentialsc.baltop.exempt permission
[Fix] missing name placeholder in /kits
[Add] new nick permissions
essentialsc.nick.color`essentialsc.nick.format``
[Add] PlaceholderAPI Support to Join / Leave Messages
[Add] potion-type option to Kits
[Add] new essentialsc.home.bed permission
[Add] /trash
Changelog
Added proper shutdown to all managers
Added way better config migration
Updated the scoreboard and fly manager to store data in the user database
Replaced all remaining hardcoded messages with language keys
Fix using plugin.getServer().getScheduler() instead of the EssScheduler
Fixed the kit.list.entry language key
Updated /essc placeholders with pagination support
Optimized and reworked the Chat System
Fixed the Shop Spawners not working in Survival
Added new bstats charts
Fixed shop delay
Fixed shift clicking items into the Shop GUI
Changelog
Added a lot of new placeholders (/essc placeholders)
Note: You need to have PlaceholderAPI installed to use placeholders.
Added a help tab completer to every command, which sends a help menu when triggered.
Made the Home GUI items non-italic.
Made the Auction GUI items non-italic.
Added kit notifications (toggle with /kits notifications toggle).
Added offline player support to all moderation commands (/ban, /unmute, etc.).
Made the Auction and Shop GUIs fully configurable in /plugins/EssentialsC/guis.
Added better crash handling to the plugin.
Added a new user system. All user data is now stored in a users.db database. This update also includes a one-time YAML-to-database migrator for migrating data from versions earlier than 4.1.6.
Added /essc dump.
Fixed duplicate /realname registration.
Note: For this update, I recommend backing up the EssentialsC Folder.
Changelog
This Version adds full Folia Support !
Fixed the ChatManager
**Fixed the FlyManager
Fixed the Spawn Manager
Fixed the Tpa Particles
Removed Invalid permissions
Added null check to the /invsee command
Fixed the TAB Manager throwing an Exception if Luckperms hasnt finished loading
Added /dback ( Teleports you back to your last death Location )
Fixed the nick validation check
Changelog
Fixed the broken heal language key
Added Home Tab completion ( Command Mode ) + fixed the broken Placeholders
Made Kit Lorelines, Names, etc. Non-Italic
Added a SellGUI:
/worth <hand/Inventory>to check how much an Item is worth/quicksell <hand/Inventory>to quickly sell Items/sellto open the SellGUI
Fixed the duplicated displaynames when using TAB ➚
Fixed DiscordSRV messages being sent twice
Made the auction house translatable
Added a fallback language:
# The fallback language used if a message is missing in the selected language file.
# Must match a file in the lang/ folder (e.g. en_US -> lang/en_US.json).
fallback-language: en_US
Updated the default join/leave Messages and added other options:
# Whether vanished players should be hidden from other players.
hide-vanished: true
# Message broadcast when a player joins the server for the first time.
# Supports MiniMessage formatting (e.g. <yellow>, <player>).
first-join: "<#F5CF27><b>Welcome!<reset> <#F8DC63><player> just joined for the first time!"
Fixed the config migration
Removed the Chat Seperator config option
Fixed the isBackupEnabled config option
Fixed the economy + tpa config options
Added new /fly config options:
# Whether a player's fly status should be saved and persist between sessions.
persistent: true
# Whether to automatically restore fly mode when the player rejoins the server.
restore-on-join: true
Added /broadcast config options:
broadcast:
# Prefix prepended to all broadcast messages. Supports MiniMessage.
prefix: "<#333333>[<#F55E27>Broadcast<#333333>] <white>"
Added new /spawn config options:
# Whether players should be teleported to the configured spawn on respawn.
teleport-on-respawn: true
# Whether beds can override the spawn location.
# If false, players will always respawn at the configured spawn.
allow-beds-to-override: true
Added new Chat config options:
chat:
slow-mode:
# Whether chat slow mode is enabled.
enabled: false
# Delay (in seconds) players must wait between sending messages.
delay-seconds: 3
# Caps lock prevention - converts messages with too many uppercase letters to lowercase.
# Threshold is the ratio of uppercase letters (0.0 to 1.0, e.g. 0.7 = 70%).
capslock-threshold: 0.7
# Whether to strip MiniMessage color formatting from console output.
strip-colors-from-console: true
mention:
# Whether player mentions in chat are enabled.
enabled: true
# Format used when a player is mentioned.
# Available placeholder: <player>
# Supports MiniMessage formatting.
format: "<#4BA8DE><player><reset>"
Added new Auction house config options:
# Whether enchanted books are allowed to be sold.
allow-enchanted-books: false
# List of materials that cannot be sold.
# Use Bukkit material names (e.g. DIAMOND, NETHERITE_INGOT).
blacklisted-materials:
- DRAGON_EGG
- BEACON
- NETHER_STAR
# Whether to notify the player when they successfully sell items.
notify-on-sale: true
Added* new /nick config options:
# Whether to show the player's real username when hovering over their nickname in chat.
show-realname-on-hover: true
# Format for the hover text when hovering a nickname in chat.
# Available placeholders: <realname>, <nick>, <prefix>, <suffix>
hover-format: "<gray>Real name: <white><realname>"
# Whether clicking a nickname in chat suggests the /msg <player> command.
click-suggest-msg: true
Changelog
Read me! All databases ( except warps ) are now located in the EssentialsC/database folder. The data is NOT lost, it just moved !
Added commands.yml to manage all EssentialsC related commands:
ping:
enabled: true
priority: normal
aliases: []
playtime:
enabled: true
priority: normal
aliases: []
vanish:
enabled: true
priority: normal
aliases: []
Added a MOTD System ( Change the MOTD in the motd.txt file )
Info --> Your current MOTD will be replaced with "
Change this in the motd.txt file"
Added a schedule system that allows you to run commands, play sounds, etc. at a specific time. Example:
restart-warning:
enabled: false
time: "23:50"
actions:
- type: broadcast
message: "<#FF4444><b>⚠ <reset><#FFCCCC>The server will restart in <#FF4444><b>10 minutes<reset><#FFCCCC>. Please find a safe spot and log off!"
- type: title
title: "<#FF4444><b>Restart in 10 min"
subtitle: "<#AAAAAA>Find a safe spot and log off"
fade-in: 10
stay: 120
fade-out: 20
- type: actionbar
message: "<#FF4444>⚠ <#FFCCCC>Server restarting in <#FF4444>10 minutes"
- type: sound
sound: BLOCK_NOTE_BLOCK_BASS
volume: 1.0
pitch: 0.5
Added a Backup system that allows you to backup all EssentialsC files. /essc backup
backup:
# Set to false to disable the backup system entirely.
enabled: true
# Maximum number of backups to keep in the backups/ folder.
# Once this limit is exceeded, the oldest backup is deleted automatically.
# Set to -1 to keep all backups and never delete any.
keep-last: 10
# Create a backup automatically when the server shuts down.
on-shutdown: true
Added /banip
Added /banlist
Added /tpoffline
Change essentialsc.heal default to false
Changelog
Added a /rules command
Fixed the Nether RTP
Added a /spawnentity command with a configurable spawn limit:
spawnentity:
max-amount: 10
Fixed the config.yml and all language files ( /lang/ ) not updating after installing the latest Version
Players with the essentialsc.vanish.see can now see vanished players in the TAB and ingame
Added offline Player support for /invsee
Added a /playerlist command with configurable options:
playerlist:
show-luckperms-prefix: true
players-per-line: 10
Added a /tphereall command
Changelog
Added a home GUI:
- Manage offline and online players
- Modify other players' homes
- Rename, remove, delete, or set any player's homes
- Switch between
commandandguimode in theconfig.yml
Fixed the vanish system and added 2 new permissions:
- essentialsc.vanish.onjoin – Automatically toggles vanish when the player joins the server
- essentialsc.vanish.see – Allows the player to see other vanished players
Added a /tphere command
Added an /itemid command
Added custom bStats economy charts
Changelog
Bump plugin.yml version to 4.1.1
Changelog
Bedrock users can no longer use Nicknames
Added a configurable nick indicator:
indicator: "~"
Added custom world support for /rtp
Added support for TAB ➚
Added nick placeholders:
%essc_nick_name%
%essc_nick_plain%
e%essc_nick_formatted%
%essc_nick_has_nick%
Fixed the shop GUI bugging and overriding other GUIs
EssentialsCEconomy now uses public void onLoad() instead of public void onEnable()
Added a configurable chat format:
chat-format: '<DISPLAYNAME> &7» &f<MESSAGE>
Improved the EssentialsX migration tool
Fixed the DiscordSRV hook not sending messages

Fixed the messages getting send twice in the console
Enjoy :) Join ;D
Changelog
Have suggestions, ideas, or want to request a new language? Join the Discord: https://discord.gg/SMGGrHbbEW
It is recommended to regenerate your config.yml to get all the latest changes. If you'd rather not, visit the GitHub to view the new config and manually copy over only the new options: Click
Added
- Legacy Color Support - Added legacy color code support for the scoreboard
- RTP System - Brand new
/rtp(Random Teleport) command with full configuration - LuckPerms TAB Integration - Added support for LuckPerms prefixes in the TAB list
- Luxembourgish Language - Added
LU_lb.jsonas a supported language file - New DiscordSRV Events - Extended DiscordSRV integration with new message hooks
- Mute events
- SetHome events
- DelHome events
- Kit claim events
- Auction House Rework - Completely overhauled the auction house system
- Sell history
- Buy history
- Sound effects
- Refresh button
- General improvements & polish
- (also added the missing language keys)
Changed
- Config Migration - Moved
chat.luckperms-enabled→luckperms.chat-formatting - Message Files - Updated all message files with new colors and improved prefixes
- Scoreboard Layout - Updated the default scoreboard layout
- Shop - Added config option to completely disable the shop
Fixed
- Fixed
/nick resetcommand not working correctly - Fixed custom nicknames not showing in the TAB list
- Fixed shop items retaining lore lines and display names from the shop config after purchase
- Fixed shop
config.ymlentries for currency name (singular & plural) and main menu title
New & Updated Configuration Options (config.yml)
luckperms:
chat-formatting: true # Moved from 'chat.luckperms-enabled'
tab-formatting: true # New option
shop:
enabled: true # Set to false to fully disable the shop
rtp:
# Completely disable the /rtp command (will unregister from command map)
register-command: true
enabled: true
# Teleport settings
cooldown: 60 # seconds
warmup: 5 # seconds, 0 to disable
cancel-on-movement: true
particles: true
max-attempts: 10
min-y: 64
max-y: 128
use-world-border: true
# Global defaults (used if per-world settings are not specified)
global:
min-radius: 1000
max-radius: 10000
blocked-biomes:
- ocean
- deep_ocean
- river
# Per-world settings
worlds:
world:
enabled: true
min-radius: 1000
max-radius: 10000
blocked-biomes: []
world_nether:
enabled: true
min-radius: 500
max-radius: 5000
blocked-biomes: []
world_the_end:
enabled: true
min-radius: 1000
max-radius: 8000
blocked-biomes: []
discordsrv:
enabled: true
# Channel configuration
# The 'name' field references a channel name defined in DiscordSRV's config.yml
channels:
punishments:
name: "punishments" # Must match a key in DiscordSRV's Channels section
# Event-specific settings
events:
ban:
enabled: true
color: "#E74C3C"
kick:
enabled: true
color: "#F39C12"
mute:
enabled: true
color: "#9B59B6"
kit:
enabled: true
color: "#3498DB"
home:
enabled: true
color: "#2ECC71"
home_delete:
enabled: true
color: "#E74C3C"
# Avatar settings
show-avatar: true
avatar-url: "https://crafthead.net/helm/{uuid}"
Changelog
Added
- DiscordSRV Integration - Full support for DiscordSRV
- Automatic hook registration with DiscordSRV API
New Configuration Options (config.yml)
discordsrv:
enabled: true
channels:
punishments:
name: "punishments" # References DiscordSRV Channels section
events:
ban:
enabled: true
color: "#E74C3C"
kick:
enabled: true
color: "#F39C12"
show-avatar: true
avatar-url: "https://crafthead.net/helm/{uuid}"
Example

Changelog
Fixed the /kits command
Added Luckperms support:
The prefix + suffix now get formatted in the chat Toggable in the
config.ymlfile:
chat:
luckperms-enabled: true
Removed the invalid config.yml option:
migration:
enabled: true
Changelog
Added EssentialsX → EssentialsC migration system
Added /migration status command to detect existing EssentialsX data and verify manager availability
Added /migration essentialsx --dry-run preview mode to simulate migration without writing data
Added validation phase that checks worlds, counts files, detects missing data, and ensures required managers are loaded
Added configurable migration flags:
--no-economy,--no-homes,--no-warps,--no-nicks,--no-mutes,--no-bans--only-warps,--only-bans,--only-mutes--overwrite,--rename-conflicts,--abort-on-conflict
Added full warp migration support:
- Transfers location (
world,x,y,z,yaw,pitch) - Preserves permission, cost, and hidden status
- Migrates description and category metadata
Added user data migration from userdata/*.yml:
- Economy balances with automatic UUID-based account creation
- Homes for all players (including offline players)
- Nickname conversion from legacy color codes to MiniMessage format
- Active mute data including reason, source, and expiration
- Back/last location when available
Added ban migration from banned-players.json:
- Transfers UUID, name, reason, source, and expiration
- Automatically skips expired or revoked bans
Added offline player migration support:
- Homes inserted directly into the database (no Player object required)
- Economy handled via UUID lookups
- Nicknames stored and applied on next join
Added structured multi-phase migration workflow:
- Validation — checks worlds, detects issues, verifies managers
- Warps — transfers warp data and metadata
- Users — migrates economy, homes, nicknames, and mutes
- Bans — imports and filters ban records
Added advanced conflict handling options to prevent accidental overwrites
Added progress tracking with percentage and ETA during migration
Added detailed post-migration report:
- Migrated / skipped / failed counts
- Warning list for partial failures
- Clear visibility into what changed
Improved large dataset handling using direct database insertion for faster and safer migrations
Changelog
Added @everyone / * to the /eco command | #536f63d
Example:
/eco give @everyone 100
Changed /eco command permissions | #536f63d
/eco give - ---> essentialsc.eco.give
/eco take - ---> essentialsc.eco.take
/eco reset - ---> essentialsc.eco.reset
/eco set - ---> essentialsc.eco.set
/eco - @everyone ---> essentialsc.eco.everyone
Fixed the afk broadtcast message | #f51a272
Fixed the auction config.yml checks | #29761ec

![EssentialsC [1.17-1.26.+ | Folia Support ]](https://cdn.modrinth.com/data/K7HZMVgx/0b642a0b40514221680fa711dbcddb47cc7255ad_96.webp)
