Note: Looking for addons? See the full EssentialsX collection on Modrinth!
🎉 EssentialsX 2.21.1 is here, bringing with it 1.21.5 support and several bug fixes.
Thanks to everyone who has contributed code to this release (many of whom are listed at the bottom of this release), as well as to everyone who has contributed to translations on Crowdin!
In addition, a massive thanks to our community members who have assisted countless people with using EssentialsX across GitHub and MOSS, including @Evidentsinger14, @JasonHorkles, @ImDarkLaw, @Chew and many others.
The EssentialsX project is powered by the community. If you want to help us out, you can contribute by;
Finally, a shoutout to our supporters on Patreon and GitHub Sponsors!
A special thanks goes to our Hero tier supporters:
Your support helps us to continue spending hours of our free time working on and improving EssentialsX for everyone. If you've got any spare change, you can click one of the buttons below to support the EssentialsX project with a one-off or monthly pledge:
EssentialsX officially supports the Paper server software. Specifically, EssentialsX is designed to work on the following Minecraft versions:
1.21.5 - EssentialsX actively develops for and supports this version.1.8.8, 1.9.4, 1.10.2, 1.11.2, 1.12.2, 1.13.2, 1.14.4, 1.15.2, 1.16.5, 1.17.1, 1.18.2, 1.19.4, and 1.20.6 - these versions are still supported, but are not a priority for us, and may be dropped in a future release.We recommend using the latest version of Paper. EssentialsX includes significant improvements that require Paper, including:
/anvil, /grindstone, /cartographytable, /loom, /smithingtable, and /stonecutter are only supported on Paper./recipe on 1.12+ requires Paper to avoid a dupe bug introduced by CraftBukkit and Spigot.EssentialsX does not support the following Minecraft versions or server software:
1.7.10 or below.If you're upgrading from 2.21.0, you can keep your current EssentialsX config file. However, 2.21.1 adds new options that you may want to configure, and reorganises the config file with improved comments for clarity. You can add these options to the existing config files, or rename your current config files in order to generate a fresh one.
Upgrading from 2.20.0 or older versions of EssentialsX? See the previous update changelogs.
On CraftBukkit and Spigot, anchor charges will deplete regardless of the respawn-at-anchor due to an unfixed bug in CraftBukkit. This bug has been patched in Paper.
On Spigot 1.17.1 and greater, player's fly mode will be reset regardless of the world-change-fly-reset setting due to behavior change in vanilla. A fix for this is in place for Paper servers. (#6012)
EssentialsX now officially supports Paper and Spigot 1.21.5.
allowed-nicks-regex setting (#5200)You can now change the regex pattern which determines which nicknames are allowed. The essentials.nick.allowunsafe permission
can still be used to bypass this check.
# The regex pattern used to determine if a requested nickname should be allowed for use.
# If the a request nickname does not matched this pattern, the nickname will be rejected.
# Users with essentials.nick.allowunsafe will be able to bypass this check.
allowed-nicks-regex: '^[a-zA-Z_0-9§]+$'
private-chat message type (#5620)You can now relay SocialSpy messages to Discord using the new private-chat message type.
This is sent whenever a user sends a private message on the Minecraft server, unless they also have the essentials.chat.spy.exempt permission.
# Configure which Discord channels different messages will be sent to.
# You can either use the names of the channels listed above or just the id of a channel.
# If an invalid channel is used, the primary channel will be used instead.
#
# To disable a message from showing, use 'none' as the channel name.
message-types:
...
# Message sent when a private message (/msg, /whisper, etc.) is sent on the Minecraft Server.
private-chat: none
# The following entries allow you to customize the formatting of messages sent by the plugin.
# Each message has a description of how it is used along with placeholders that can be used.
messages:
...
# This is the message that is used to relay minecraft private messages in Discord.
# The following placeholders can be used here:
# - {sender-username}: The username of the player sending the message
# - {sender-displayname}: The display name of the player sending the message (This would be their nickname)
# - {receiver-username}: The username of the player receiving the message
# - {receiver-displayname}: The display name of the player receiving the message (This would be their nickname)
# - {message}: The content of the message being sent
pms-to-discord: "[SocialSpy] {sender-username} -> {receiver-username}: {message}"
/baltop command works again on versions 1.15.2 and below. (#6115)/delhome no longer sends an extra message when deleting a home that doesn't exist. (#6150)The following bugs from 2.21.1 development builds have been fixed:
/spawnmob command works again on versions 1.21.5 and below. (#6121)essentials.sethome.bed or not. (#6151)EssentialsX 2.21.1 introduces a new event:
SignTransactionEvent is fired when a player is about to use a buy or sell sign. (#6071)IUser#getLastActivityTime. (#6101)GlobalChatEvent is now fired for every chat message that EssentialsX Chat processes regardless of whether a chat radius has been set. (#6113)TranslatableException#getMessage now returns plaintext once again, not unparsed MiniMessage tags. (#6134)For a full commit log, click here.

The essential plugin suite for Paper and Spigot servers.