Skip to content

Releases: EssentialsX/Essentials

EssentialsX 2.20.1 - The Trails and Tales Update

05 Aug 18:12
Compare
Choose a tag to compare

🎉 EssentialsX 2.20.1 is here, bringing with it 1.20.1 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 @triagonal, @JasonHorkles, @Evidentsinger14, @ImDarkLaw, @Chew, @Laarryy and many others.

The EssentialsX project is powered by the community. If you want to help us out, you can contribute by;

  • Updating or reviewing translations on Crowdin
  • Help users in our support channel on Discord
  • Fixing bugs or offering new features on GitHub

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:

Patreon GitHub Sponsors

Supported server versions

EssentialsX officially supports the CraftBukkit, Spigot, and Paper server software. Specifically, EssentialsX is designed to work on the following Minecraft versions:

  • 1.19.4 and 1.20.1 - EssentialsX actively develops against and supports these versions.
  • ⚠️ 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, and 1.18.2 - 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:

  • Paper's async chunk loading reduces lag spikes during player teleports.
    CraftBukkit and Spigot do not support async chunk loading from plugins.
  • /anvil, /grindstone, /cartographytable, /loom, /smithingtable, and /stonecutter are only supported on Paper.
    CraftBukkit and Spigot do not support the API needed for these.
  • /recipe on 1.12+ requires Paper to avoid a dupe bug introduced by CraftBukkit and Spigot.
  • Paper contains countless overall performance optimisations over CraftBukkit and Spigot.

EssentialsX does not support the following Minecraft versions or server software:

  • ℹ️ Folia is not supported yet. We are working on proper Folia support.
    Do not attempt to use current versions of EssentialsX on Folia or forks of it - you may lose userdata.
  • 🛑 "Ultra-performance" Paper forks including Akarin, Yatopia, and similar projects.
    These often perform non-standard behaviour and can break your worlds and installed plugins.
  • 🛑 Mohist - The Mohist project is known to be sketchy, and has, in the past, tricked users into deleting official EssentialsX jars and installing an unofficial build.
    We cannot guarantee the safety or functionality of unofficial builds of EssentialsX; you should avoid using Mohist where possible.
  • 🛑 Other Forge/Bukkit hybrid servers including Cauldron, Thermos, Magma, CatServer - EssentialsX is built for the Bukkit API, which does not properly support mods.
    For modded servers, use SpongeForge and Nucleus, or an alternative mod for Forge or Fabric.
  • 🛑 1.7.10 or below.

Upgrading to 2.20.1

If you're upgrading from 2.20.0, you can keep your current EssentialsX config file. There are no new changes to configuration files in this release.

Upgrading from 2.19.7 or older versions of EssentialsX? See the previous update changelogs.

Known issues

Anchor charges deplete on Spigot even when EssentialsX Spawn overrides the spawn location

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.

Fly mode is reset when teleporting between worlds. (#4325)

On Minecraft 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. This will be fixed in a future version of Essentials.

New features

EssentialsX now supports 1.20.1 (#5389)

EssentialsX now officially supports Paper, Spigot, and CraftBukkit 1.20.1.

Other additions

  • Translations have been updated with the latest community contributions from Crowdin.
  • Our dependencies and build tools have been updated to their latest versions. (#5383)
  • Added the ability to get the recipe of the item you're holding with /recipe hand. (#5346)

Bug fixes

Bugs fixed from 2.20.0 and older versions

  • An exception is no longer raised during new joins when using LuckPerms contexts. (#5364)
  • Shout and question prefixes now work when using the /toggleshout command. (#5367)
  • Underscores in kit placeholders no longer are removed upon receiving the kit. (#5366)
  • Invalid decimal values provided in configuration files now return proper default values. (#5373)
  • An exception is no longer raised when doing operations on some offline players. (#5375, #5466)
  • Invalid material names in /unlimited user data values no longer prevent user data from loading. (#5438)
  • Trade signs no longer break when setting currency-symbol-suffix to true in the config. (#5441)
  • The enchant command now supports items held in the offhand. (#5449)
  • The book command now works properly with other items held in the offhand. (#5449)
  • Various issues related to offline player lookups have been fixed. (#5462)
  • AntiBuild: AntiBuild checks are no longer ran for NPCs. (#5365)
  • Discord: Console messages and webhook messages should no longer spam console or die out after spam. (#4786)
  • Discord: The quit message online player count placeholder is no longer off by one. (#5440)
  • Discord: The console relay now properly filters all formatting codes. (#5454)
  • Discord Link: Player link data is no longer saved to disk when no data has changed. (#5388)
  • Discord Link: Discord roles and minecraft groups are now removed instantly upon unlink. (#5388)

Regressions fixed from 2.20.1 dev builds

The following bugs from 2.20.1 development builds have been fixed:

  • Commands in kits no longer replace spaces with underscores. (#5377)
  • Empty lines in kits no longer raise an exception. (#5378)
  • Kits no longer only replace spaces with underscores in commands. (#5379)

Changes for developers

New events

EssentialsX 2.20.1 introduces a new event:

  • KitPreExpandItemsEvent is fired before players are about to receive kit items. (#5407)

For a full commit log, click here.

EssentialsX 2.20.0 - The Better Together Update

23 May 15:54
14cdde0
Compare
Choose a tag to compare

After months of hard work from our contributors, EssentialsX 2.20.0 is here! 🎉

This release contains a new Discord Link addon, 1.19.4 support, a few new features, bug fixes and internal improvements. Keep reading to see all the new additions!

Thanks to all our contributors who contributed to this release (all 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 @triagonal, @JasonHorkles, @Evidentsinger14, @ImDarkLaw, @Chew, @Laarryy and many others.

The EssentialsX project is powered by the community. If you want to help us out, you can contribute by;

  • Updating or reviewing translations on Crowdin
  • Help users in our support channel on Discord
  • Fixing bugs or offering new features on GitHub

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:

Patreon GitHub Sponsors

Supported server versions

EssentialsX officially supports the CraftBukkit, Spigot, and Paper server software. Specifically, EssentialsX is designed to work on the following Minecraft versions:

  • 1.18.2 and 1.19.4 - EssentialsX actively develops against and supports these versions.
  • ⚠️ 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, and 1.17.1 - 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:

  • Paper's async chunk loading reduces lag spikes during player teleports.
    CraftBukkit and Spigot do not support async chunk loading from plugins.
  • /anvil, /grindstone, /cartographytable, /loom, /smithingtable, /stonecutter are only supported on Paper.
    CraftBukkit and Spigot do not support the API needed for these.
  • /recipe on 1.12+ requires Paper to avoid a dupe bug introduced by CraftBukkit and Spigot.
  • Paper contains countless overall performance optimisations over CraftBukkit and Spigot.

EssentialsX does not support the following Minecraft versions or server software:

Upgrading to 2.20.0

If you're upgrading from 2.19.3 or above, you can keep your current EssentialsX config file. However, 2.20.0 adds several new options that you may want to configure, and to do so you'll need to either update your config or add the new settings to your existing config. Read on for a list of changes and new config options.

Upgrading from 2.19.2 or older versions of EssentialsX? See the previous update changelogs.

New module: EssentialsX Discord Link! (#4155) 🎉

EssentialsX Discord now has the Discord Link addon, which lets your users easily link their Discord and Minecraft accounts! You can synchronize Discord roles with Vault groups, as well as optionally requiring players to link to Discord before playing, all with a bloat-free and easy-to-understand configuration!

kick link message

link command in game

link command in discord

You can read more about EssentialsX Discord Link and see how to get started here.

Known issues

Anchor charges deplete on Spigot even when EssentialsX Spawn overrides the spawn location

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.

Minecraft: Trails and Tales content not yet supported in commands

EssentialsX 2.20.0 doesn't yet support blocks, items and mobs from Minecraft: Trails and Tales in 1.19.x or 1.20. As a result, some commands and features (including /give, /spawnmob and /editsign) won't recognise the new content yet.

We plan to release a 2.20.1 update once Minecraft 1.20 has released, which will add support for the new content.

Important changes

Usermap storage and cache changes (#4581, #5125)

EssentialsX 2.20 overhauls the user caching system, fixing issues with third-party plugins such as Towny.

Due to a large overhaul in data format, once you upgrade to 2.20.0, you will not be able to downgrade your userdata to older versions. We strongly recommend taking a full backup of your plugins/Essentials/usermap.csv file before you update from 2.19.7 to 2.20.0 if you ever wish to downgrade in the future.

New features

EssentialsX now supports 1.19.4 (#5179, #5273)

EssentialsX now officially supports CraftBukkit, Spigot and Paper for 1.19.4.

New /renamehome command (#5121)

You can now use /renamehome to change the name of your existing home. If you have the essentials.renamehome.others permission, you can rename the homes of other players.

New /bottom command (#5292)

You can now use /bottom to teleport to the lowest safe location in their current position.

Discord: New first-join message type (#5160)

A new Minecraft -> Discord message type, sent when a player joins the server for the first time.

# 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:
  ...

  # Join messages sent when a player joins the Minecraft server for the first time. This type is sent instead of the join type.
  first-join: primary
# 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 sent to Discord when a player joins the minecraft server for the first time.
  # The following placeholders can be used here:
  # - {username}: The name of the user joining
  # - {displayname}: The display name of the user joining
  # - {joinmessage}: The full default join message used in game
  # - {online}: The amount of players online
  # - {unique}: The amount of unique players to ever join the server
  # ... PlaceholderAPI placeholders are also supported here too!
  first-join: ":arrow_right: :first_place: {displayname} has joined the server for the first time!"

Discord: New local, question, and shout message types (#4684)

A few new Minecraft -> Discord message types and configuration options have been added in order to support local, question and shout chat.

# Whether to use Essentials Chat events instead of normal chat event.
# This allows you to filter chat by its type (local, question, shout).
use-essentials-events: false
# 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 player talks in local chat.
  # use-essentials-events must be set to "true" for this to work.
  local: none

  # Message sent when a player asks a question in global chat.
  # use-essentials-events must be set to "true" for this to work.
  question: primary

  # Message...
Read more

EssentialsX 2.19.7 - The (Even Less) Wild Update

22 Aug 14:19
f176893
Compare
Choose a tag to compare

EssentialsX 2.19.7 is here! 🎉 This release has several bug fixes for chat and other issues. Keep reading to see all the changes!

Thanks to all our contributors who contributed to this release (all of whom are listed at the bottom of this release), as well as to everyone who has contributed to translations on Crowdin!

Finally, a massive thanks to our community members who have assisted countless people on GitHub and MOSS, including @triagonal, @JasonHorkles, @Evidentsinger14, @Chew, @Laarryy and many others.

In addition, a shoutout to our supporters on Patreon, GitHub Sponsors and Ko-fi. A special thanks goes to our Hero tier supporters:

Want to be listed here? You can join our Hero tier on Patreon or GitHub at the links above!

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:

Patreon Ko-fi GitHub Sponsors

Supported server versions

EssentialsX officially supports the CraftBukkit, Spigot, and Paper server software. Specifically, EssentialsX is designed to work on the following Minecraft versions:

  • 1.18.2 and 1.19.2 - EssentialsX actively develops against and supports these versions.
  • ⚠️ 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, and 1.17.1 - 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:

  • Paper's async chunk loading reduces lag spikes during player teleports.
    CraftBukkit and Spigot do not support async chunk loading from plugins.
  • /anvil, /grindstone, /cartographytable, /loom, /smithingtable, /stonecutter are only supported on Paper.
    CraftBukkit and Spigot do not support the API needed for these.
  • /recipe on 1.12+ requires Paper to avoid a dupe bug introduced by CraftBukkit and Spigot.
  • Paper properly shows colours in EssentialsX's console log messages, including EssentialsX Chat messages.
  • Paper contains countless overall performance optimisations over CraftBukkit and Spigot.
  • Paper supports all properly-written plugins for CraftBukkit and Spigot.

EssentialsX does not support the following Minecraft versions or server software:

Upgrading to 2.19.7

If you're upgrading from 2.19.3 or above, you can keep your current EssentialsX config file. There have been no changes to the configuration since that release.

Upgrading from 2.19.2 or older versions of EssentialsX? See the previous update changelogs.

Known issues

Anchor charges deplete on Spigot even when EssentialsX Spawn overrides the spawn location

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.

Vanilla signed chat commands may show EssentialsX formatting on 1.19.1+

If you use any vanilla commands that send secure chat messages (including /minecraft:msg or /minecraft:me), you may see formatting from EssentialsX Chat in these messages. This is due to an implementation quirk in Spigot, which forces plugins to handle all secure previews for vanilla chat commands as if they were public chat messages. There is no known workaround for this at this time, but you can continue to use unsigned commands from EssentialsX and other plugins as normal.

Bug fixes

Bugs fixed from 2.19.6 and older versions

  • Using /sudo to send a chat message as another user will no longer send their previewed message. (#5062)
  • To prevent item loss, users can no longer use /invsee on themselves. (#5061)
  • The /ess dump command no longer errors on 1.8.8. (#5067)
  • Various notifications (including bans/kicks/mutes and /helpop) now show colors properly in the console. (#5075)
  • Users with RGB permissions but without color permissions can now use RGB color codes properly. (#5076)
  • Backup scripts now properly log errors again. (#5077)
  • The /baltop command now works in command blocks. (#5078)
  • Chat: Local chat messages are no longer sent globaly. (#5062)

Regressions fixed from 2.19.7 dev builds

There are no known regressions in 2.19.7 dev builds.

Changes for developers

There are no API changes in this release!


For a full commit log, click here.

EssentialsX 2.19.6 - The (Not Too) Wild Update

12 Aug 21:22
8f7b7d0
Compare
Choose a tag to compare

EssentialsX 2.19.6 is here! 🎉 This release features slight additions, support for Minecraft 1.19.2, and several bug fixes. Keep reading to see all the changes!

Thanks to all our contributors who contributed to this release (all of whom are listed at the bottom of this release), as well as to everyone who has contributed to translations on Crowdin!

Finally, a massive thanks to our community members who have assisted countless people on GitHub and MOSS, including @triagonal, @JasonHorkles, @Evidentsinger14, @Chew, @Laarryy and many others.

In addition, a shoutout to our supporters on Patreon, GitHub Sponsors and Ko-fi. A special thanks goes to our Hero tier supporters:

Want to be listed here? You can join our Hero tier on Patreon or GitHub at the links above!

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:

Patreon Ko-fi GitHub Sponsors

Supported server versions

EssentialsX officially supports the CraftBukkit, Spigot, and Paper server software. Specifically, EssentialsX is designed to work on the following Minecraft versions:

  • 1.18.2 and 1.19.2 - EssentialsX actively develops against and supports these versions.
  • ⚠️ 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, and 1.17.1 - 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:

  • Paper's async chunk loading reduces lag spikes during player teleports.
    CraftBukkit and Spigot do not support async chunk loading from plugins.
  • /anvil, /grindstone, /cartographytable, /loom, /smithingtable, /stonecutter are only supported on Paper.
    CraftBukkit and Spigot do not support the API needed for these.
  • /recipe on 1.12+ requires Paper to avoid a dupe bug introduced by CraftBukkit and Spigot.
  • Paper properly shows colours in EssentialsX's console log messages, including EssentialsX Chat messages.
  • Paper contains countless overall performance optimisations over CraftBukkit and Spigot.
  • Paper supports all properly-written plugins for CraftBukkit and Spigot.

EssentialsX does not support the following Minecraft versions or server software:

Upgrading to 2.19.6

If you're upgrading from 2.19.3 or above, you can keep your current EssentialsX config file. There have been no changes to the configuration since that release.

Upgrading from 2.19.2 or older versions of EssentialsX? See the previous update changelogs.

Important change: EssentialsX Chat now supports secure chat (#5030)

Minecraft 1.19.1 introduced a new Player Reporting feature on the client, allowing players to report chat messages to Mojang in-game. The server now has a secure chat system which allows players to preview and "sign" their chat messages, which ensures players can't use client mods to fabricate reports with fake messages. If the game can't verify a message, it will show a yellow warning indicator.

As of 2.19.6, EssentialsX Chat supports chat previews. Once you enable chat previews in your server.properties file, EssentialsX Chat will send back previews to players so they can send secure "signed" messages without the yellow warning indicator.

Players will need to accept previews when they join the server. They will also need to wait a second between finishing their message and pressing Enter to ensure their message gets previewed and signed.

Known issues

Anchor charges deplete on Spigot even when EssentialsX Spawn overrides the spawn location

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.

Vanilla signed chat commands may show EssentialsX formatting on 1.19.1+

If you use any vanilla commands that send secure chat messages (including /minecraft:msg or /minecraft:me), you may see formatting from EssentialsX Chat in these messages. This is due to an implementation quirk in Spigot, which forces plugins to handle all secure previews for vanilla chat commands as if they were public chat messages. There is no known workaround for this at this time, but you can continue to use unsigned commands from EssentialsX and other plugins as normal.

New features

EssentialsX now supports 1.19.2 (#4932, #4966, #5026, #5027, #5035)

EssentialsX now has full support for Minecraft 1.19.2, including support for the new Wild Update items in /give, /item and kits, new mobs, and new NMS/OBC mappings for accessing internal CraftBukkit code.

EssentialsX also no longer warns when installed on 1.19.2 servers.

Other additions

  • Translations have been updated with the latest community contributions on Crowdin. (#4823)
  • Console colors are once supported again on Paper. (#4941)
  • Reduced the amount of user lookups during LuckPerms context calculations. (#4869)
  • The /playtime command will now no longer appear to progress for vanished users. (#4918)

Bug fixes

Bugs fixed from 2.19.4 and older versions

  • The /tpa command no longer double charges a user with /tpauto on. (#4862)
  • The /nick off command can now be used by users with only essentials.nick.changecolors permissions. (#4876)
  • The TeleportWarmupEvent event now has the correct teleporter. (#4913)
  • Users who are flying while afk while freeze-afk-players is set to true will no longer be teleported to the ground. (#4944)
  • Path and farmland blocks are no longer considered solid blocks. (#4915)
  • The minecraft: namespace no longer gives an error in the /give command. (#4960)
  • The /unlimited command no longer floods user's inventory when changing stack sizes. (#4877)
  • Users who stop being afk no longer fail to count towards the sleep count in some cases. (#4985)
  • The /nick command now shows your nickname even with change-displayname disabled in the config. (#4980)
  • /ess dump no longer reports offline mode for servers behind Velocity on Paper 1.19 and above. (#5052)
  • Discord: Console messages in Paper 1.18.2+ properly filter ANSI color codes once again. (#4942)
  • Discord: Numerous discord formatting issues have been fixed in relation to slash commands. (#4945)
  • Discord: Roles defined in the allowed-roles section of the config will no longer resolve to roles with the same name as another role's id. (#4983)
  • Discord: Leave messages are no longer sent to discord when the user was vanished. (#5009)

Regressions fixed from 2.19.5 and 2.19.6 dev builds

  • Essentials no longer fails to load on versions 1.8.8 through 1.12.2. (#4975)
  • Local chat allows you to send messages that are 1 character long without sending in public chat. (#5041)

Changes for developers

There are no API changes in this release!


Note: 2.19.5 had an issue with proxy detection on Paper. 2.19.6 has been released to address this issue.

For a full commit log, click here.

EssentialsX 2.19.4 - important fix for Trade signs

13 Mar 00:21
Compare
Choose a tag to compare

⚠️ EssentialsX 2.19.4 fixes a critical issue with [Trade] signs from 2.19.3. You should upgrade to this release as soon as possible.

A massive thanks to our community members who have assisted countless people on GitHub and MOSS, including @triagonal, @JasonHorkles, @Evidentsinger14, @Chew, and many others.

Finally, a shoutout to all our supporters on Patreon, GitHub Sponsors and Ko-fi, including:

  • AKP
  • madscientist032
  • @aternosorg
  • @pebblehost
  • ...and 26 more supporters! (Want to see your name here? You can join our Hero tier on Patreon or GitHub Sponsors!)

Your support helps us to continue spending hours of our free time working on and improving EssentialsX for everyone. You can click one of the buttons below to support the EssentialsX project:

Patreon Ko-fi GitHub Sponsors

Supported server versions

EssentialsX officially supports the CraftBukkit, Spigot, and Paper server software.

EssentialsX is designed to work on the following Minecraft versions:

  • 1.17.1 and 1.18.2 - EssentialsX actively develops against and supports these versions.
  • ⚠️ 1.8.8, 1.9.4, 1.10.2, 1.11.2, 1.12.2, 1.13.2, 1.14.4, 1.15.2, and 1.16.5 - 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:

  • Paper's async chunk loading reduces lag spikes during player teleports.
    CraftBukkit and Spigot do not support async chunk loading from plugins.
  • /anvil, /grindstone, /cartographytable, /loom, /smithingtable, /stonecutter are only supported on Paper.
    CraftBukkit and Spigot do not support the API needed for these.
  • /recipe on 1.12+ requires Paper to avoid a dupe bug introduced by CraftBukkit and Spigot.
  • Paper contains countless overall performance optimisations over CraftBukkit and Spigot.
  • Paper supports all properly-written plugins for CraftBukkit and Spigot.

EssentialsX does not support the following Minecraft versions or server software:

Upgrading to 2.19.4

2.19.4 is a drop-in replacement for 2.19.3.

If you're upgrading from 2.19.2, you can keep your current EssentialsX config file. However, 2.19.4 adds some new options that you may want to configure, and to do so you'll need to either update your config or add the new settings to your existing config. See the 2.19.3 changelog for more details.

Upgrading from 2.19.2 or older versions of EssentialsX? See the previous update changelogs.

Known issues

Anchor charges deplete on Spigot even when EssentialsX Spawn overrides the spawn location

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.

EssentialsX Discord hangs on single core systems on outdated versions of JDK 17

Due to a known bug in OpenJDK 17.0.1, EssentialsX Discord may hang during startup when running in a single-core environment. Due to the nature of the JDK bug, there is nothing EssentialsX can do directly to fix this.

You can fix this by updating your Java version to 17.0.2 or later. If you are unable to change your Java version, please contact your server host for help.

(You can alternatively add -Djava.util.concurrent.ForkJoinPool.common.parallelism=1 to your startup flags to attempt to mitigate the issue. However, this should be used as a last resort only. OpenJDK 17.0.2 fixes this issue and should be used instead of this workaround.)

Bug fixes

Bugs fixed from 2.19.3 and older versions

These bugs existed in 2.19.3 and have been fixed in this release.

  • IMPORTANT: after upgrading to 2.19.3, [Trade] signs would change owner when used. This has been fixed. (#4835)
  • EssentialsX no longer spits out errors if the plugin shuts down while an update check is running. (#4839)

Regressions fixed from 2.19.4 dev builds

There are no known regressions in 2.19.4 dev builds.


For a full commit log, click here.

EssentialsX 2.19.3 - The Otherside Update Part 3

04 Mar 12:12
Compare
Choose a tag to compare

EssentialsX 2.19.3 is here! 🎉 This release features new chat features, support for Minecraft 1.18.2 and several bug fixes. Keep reading to see all the new additions!

Thanks to all our contributors who contributed to this release (all 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 on GitHub and MOSS, including @triagonal, @JasonHorkles, @Evidentsinger14, @Chew, and many others.

Finally, a shoutout to all our supporters on Patreon, GitHub Sponsors and Ko-fi, including:

  • AKP
  • madscientist032
  • @aternosorg
  • @pebblehost
  • ...and 26 more supporters! (Want to see your name here? You can join our Hero tier on Patreon or GitHub Sponsors!)

Your support helps us to continue spending hours of our free time working on and improving EssentialsX for everyone. You can click one of the buttons below to support the EssentialsX project:

Patreon Ko-fi GitHub Sponsors

Supported server versions

EssentialsX officially supports the CraftBukkit, Spigot, and Paper server software. EssentialsX is designed to work on the following Minecraft versions:

  • 1.17.1 and 1.18.2 - EssentialsX actively develops against and supports these versions.
  • ⚠️ 1.8.8, 1.9.4, 1.10.2, 1.11.2, 1.12.2, 1.13.2, 1.14.4, 1.15.2, and 1.16.5 - 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:

  • Paper's async chunk loading reduces lag spikes during player teleports.
    CraftBukkit and Spigot do not support async chunk loading from plugins.
  • /anvil, /grindstone, /cartographytable, /loom, /smithingtable, /stonecutter are only supported on Paper.
    CraftBukkit and Spigot do not support the API needed for these.
  • /recipe on 1.12+ requires Paper to avoid a dupe bug introduced by CraftBukkit and Spigot.
  • Paper contains countless overall performance optimisations over CraftBukkit and Spigot.
  • Paper supports all properly-written plugins for CraftBukkit and Spigot.

EssentialsX does not support the following Minecraft versions or server software:

Upgrading to 2.19.3

If you're upgrading from 2.19.2, you can keep your current EssentialsX config file. However, 2.19.3 adds some new options that you may want to configure, and to do so you'll need to either update your config or add the new settings to your existing config. Read on for a list of changes and new config options.

Upgrading from 2.19.0 or older versions of EssentialsX? See the previous update changelogs.

Known issues

Anchor charges deplete on Spigot even when EssentialsX Spawn overrides the spawn location

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.

EssentialsX Discord hangs on single core systems on outdated versions of JDK 17

Due to a known bug in OpenJDK 17.0.1, EssentialsX Discord may hang during startup when running in a single-core environment. Due to the nature of the JDK bug, there is nothing EssentialsX can do directly to fix this.

You can fix this by updating your Java version to 17.0.2 or later. If you are unable to change your Java version, please contact your server host for help.

(You can alternatively add -Djava.util.concurrent.ForkJoinPool.common.parallelism=1 to your startup flags to attempt to mitigate the issue. However, this should be used as a last resort only. OpenJDK 17.0.2 fixes this issue and should be used instead of this workaround.)

New features

EssentialsX now supports 1.18.2 (#4821)

EssentialsX now officially supports CraftBukkit, Spigot and Paper for 1.18.2.

/nick can now be used even when change-displayname is disabled (#4758)

You can now allow /nick without letting EssentialsX take over displayname formatting. This may be useful if you want to use a third-party chat formatting plugin while still letting EssentialsX handle nicknames.

EssentialsX Chat: Enhanced local and global chat features (#4535)

This release builds on both Essentials' legacy chat features and the new /toggleshout command introduced in 2.19.0, adding several new config.yml options and more permissions to control local and global chat modes!

Config option to control whether players default to local or shout chat

You can now toggle whether players default to local chat mode or shout mode when they log in using the chat.shout-default option:

chat:
  ...
  # Whether players should be placed into shout mode by default.
  shout-default: false

Config option to control whether /toggleshout should persist across server restarts

You can now let players keep their /toggleshout setting when the server restarts using the chat.persist-shout option:

chat:
  ...
  # Whether a player's shout mode should persist restarts.
  persist-shout: false

Config option to enable or disable question chat mode

You can now control whether questions (by default, messages starting with ? and sent in a unique chat channel) are enabled or disabled on your server using the chat.question-enabled option:

chat:
  ...
  # Whether chat questions should be enabled or not.
  question-enabled: true

New permissions for sending and receiving chats

Essentials previously had essentials.chat.shout and essentials.chat.question permissions, which let you control whether or not players can send shout or question messages respectively.

You can now enable or disable the following new permissions (all of which default to true):

  • essentials.chat.local allows players to send messages in local chat
  • essentials.chat.receive.shout allows players to receive shout chat messages
  • essentials.chat.receive.question allows players to receive question chat messages
  • essentials.chat.receive.local allows players to receive local chat messages

Local chat prefix when in shout mode

If a player enables shout mode with /toggleshout, any messages they send with the shout prefix (! by default) will now be sent to local chat.

Other additions

  • The output of /near is now translatable. (#4740)
  • You can now use decimal places in /tppos. (#4729)
  • The /ess dump command can now include the settings files for random teleports (tpr.yml), /sell values (worth.yml) and EssentialsX Spawn (spawn.yml). (#4785)
  • [trade] (and deprecated [protection]) signs now save their owners' UUIDs on Minecraft 1.14 and above, and should no longer break when the owner changes their username. (#4713)
  • You can now change the tree-command-range-limit setting (defaults to 300) in config.yml to limit how far away /tree and /bigtree can place trees. (#4728)

Bug fixes

Bugs fixed from 2.19.2 and older versions

These bugs existed in 2.19.2 and have been fixed in this release.

  • Unused legacy data storage code has been removed. (#4707)
  • EssentialsX no longer uses deprecated Paper methods for chat component serialisation. (#4706)
  • Safe teleports on older versions of Minecraft no longer break. (#4708)
  • Safe teleports now use the world's true minimum height instead of hardcoding y=0. (#4715)
  • The update checker no longer spams the console when a GitHub ratelimit is encountered. (#4731)
  • /tpaccept without any arguments now accepts the most recent teleport request when multiple are queued. (#4755)
  • EssentialsX and EssentialsX AntiBuild no longer cause Spigot to load legacy material support. (#4697)
  • The vanishing-items-policy and binding-items-policy config options now apply to the offhand. (#4725)
  • Trade signs can no longer be used to dupe items when players have nearly-full inventories. (#4748)
  • The update checker now falls back to a proxy provided by EssentialsX in the event that GitHub is unresponsive. (#4816)
  • Discord: The command ...
Read more

EssentialsX 2.19.2 - hotfix for Discord module

15 Dec 21:17
Compare
Choose a tag to compare

This release is a hotfix for an issue in the Discord module. All other changes can be found in the 2.19.1 changelog - please read the linked changelog for important changes since 2.19.0 or older versions.

Bug fixes

  • Discord: Command responses no longer fail when they are shorter than Discord's maximum message length. (#4690)

EssentialsX 2.19.1 - The Otherside Update Part 2

14 Dec 19:29
0b7e780
Compare
Choose a tag to compare

After months of hard work from our contributors, EssentialsX 2.19.1 is here! 🎉

This release adds 1.18.1 support, and contains countless new features and bug fixes. Keep reading to see all the new additions!

Thanks to all our contributors who contributed to this release (all of whom are listed at the bottom of this release), as well as to everyone who has contributed to translations on Crowdin!

Finally, a massive thanks to our community members who have assisted countless people on GitHub and MOSS, including @triagonal, @JasonHorkles, @Evidentsinger14, @Chew, @Laarryy and many others.

In addition, a shoutout to our dozens of supporters on Patreon, GitHub Sponsors and Ko-fi, including:

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:

Patreon Ko-fi GitHub Sponsors

Supported server versions

EssentialsX officially supports the CraftBukkit, Spigot, and Paper server software. Specifically, EssentialsX is designed to work on the following Minecraft versions:

  • 1.17.1 and 1.18.1 - EssentialsX actively develops against and supports these versions.
  • ⚠️ 1.8.8, 1.9.4, 1.10.2, 1.11.2, 1.12.2, 1.13.2, 1.14.4, 1.15.2, and 1.16.5 - 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:

  • Paper's async chunk loading reduces lag spikes during player teleports.
    CraftBukkit and Spigot do not support async chunk loading from plugins.
  • /anvil, /grindstone, /cartographytable, /loom, /smithingtable, /stonecutter are only supported on Paper.
    CraftBukkit and Spigot do not support the API needed for these.
  • /recipe on 1.12+ requires Paper to avoid a dupe bug introduced by CraftBukkit and Spigot.
  • Paper contains countless overall performance optimisations over CraftBukkit and Spigot.
  • Paper supports all properly-written plugins for CraftBukkit and Spigot.

EssentialsX does not support the following Minecraft versions or server software:

Upgrading to 2.19.1

If you're upgrading from 2.19.0, you can keep your current EssentialsX config file. However, 2.19.1 adds several new options that you may want to configure, and to do so you'll need to either update your config or add the new settings to your existing config. Read on for a list of changes and new config options.

Upgrading from 2.18.2 or older versions of EssentialsX? See the previous update changelogs.

Known issues

Anchor charges deplete on Spigot even when EssentialsX Spawn overrides the spawn location

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.

Important changes

Teleport safety world height changes (#4641, #4667)

The world height is now properly taken into account when determining if a location is safe. EssentialsX should now take into account y-levels of 0 to 255, -64 to 319, and any custom y-level defined by a datapack.

New features

EssentialsX now supports 1.18.1 (#4640, #4667)

EssentialsX now has full support for Minecraft 1.18.1, including support for the new items in /give, /item and kits, new 1.18 world height changes, and new NMS/OBC mappings for accessing internal CraftBukkit code.

EssentialsX also no longer warns when installed on 1.18.1 servers.

New support for multiple TPA requests (#3801)

You can now receive and accept/deny TPA requests from multiple players at a time.

You can edit the maximum amount of TPA requests a player can have at once by changing tpa-max-amount in the config:

# The maximum amount of simultaneous TPA requests that can be pending for any given user.
# Once at this threshold, any new TPA requests will bump the oldest TPA requests out of queue.
# Defaults to 5.
tpa-max-amount: 5

New Discord module features (#4520, #4541, #4620, #4534)

New action message type

A Minecraft -> Discord message type, sent when a player uses the /me or /action commands.

# 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:
  ...
  # Action messages sent when a player runs the /me or /action commands.
  action: primary
# 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 sent to Discord when a player runs the /me or /action command.
  # The following placeholders can be used here:
  # - {username}: The name of the user who ran the command
  # - {displayname}: The display name of the user who ran the command
  # - {action}: The action (message) the user used in the command.
  # ... PlaceholderAPI placeholders are also supported here too!
  action: ":person_biking: {displayname} *{action}*"

New /discordbroadcast command

Allows you to send one off messages from Minecraft to Discord. Supports markdown and tab completes server emotes.

gCn04at9cG.mp4.mp4

image

New /discord command

Sends a configured Discord invite link.

# The Discord invite URL that will be shown when a player when using the /discord command or in other areas.
discord-url: "https://discord.gg/invite-code"

New console regex filters

Allows you to filter certain console lines if they match a regex pattern.

# Console relay settings
# The console relay sends every message shown in the console to a Discord channel.
console:
  ...
  # A regex pattern which will not sending matching console messages to Discord.
  console-filter: ""

New /mail sendtempall command (#4561)

Allows you to send a temporary mail to all users on the server with /mail sendtempall <expire time> <message>. Requires the essentials.mail.sendtempall permission.

New /playtime command (#4562, #4619)

You can now run /playtime to view your time in game. If you have the essentials.playtime.others permission, you can also view the playtime of other players.

Jail notifications (#4576)

Players with the essentials.jail.notify permission will now be notified if someone is jailed.

Kits subfolder and multiple kit files (#4407)

You can now optionally create a plugins/Essentials/kits/ folder (in addition to the default kits.yml file) and organise your kits into multiple files within that folder. Kit files in this folder use the same structure as the normal kits.yml file.

For example, you could have a structure like this:

plugins/Essentials/
|--- kits/ (optional)
    |--- cosmetics.yml
    |--- rewards.yml
    |--- staff.yml
|--- kits.yml (required)

All kits will have the same name in-game as they do in the file where they are defined. Kits with the same name in different files will be ignored.

If you set pastebin-createkit: false in your config.yml and use /createkit, it will always place new kits in the default plugins/Essentials/kits.yml. If you want to place your /createkit kits into separate files, we recommend setting pastebin-createkit: true and manually adding the kit to the correct file as desired.

Other additions

  • Translations have been updated with the latest community contributions on Crowdin.
  • Command filtering is now asynchronous on Paper. (#4460)
  • Added the alias /ess dump all for /ess dump *. (#4517)
  • Added UUI...
Read more

EssentialsX 2.19.0 - The Otherside Update Part 1

31 Aug 21:10
Compare
Choose a tag to compare

After months of hard work from our contributors, EssentialsX 2.19.0 is here! 🎉

This release contains a new Discord addon, countless new features, bug fixes and internal improvements. Keep reading to see all the new additions!

Thanks to @JRoy, @triagonal, @pop4959, @jpenilla and all our other contributors who contributed to this release, as well as to everyone who has contributed to translations on Crowdin!

Finally, a massive thanks to our community members who have assisted countless people on GitHub and MOSS, including @triagonal, @JasonHorkles, @Evidentsinger14, @Chew, @Laarryy and many others.

In addition, a shoutout to our dozens of supporters on Patreon, GitHub Sponsors and Ko-fi!
A particular shoutout goes to our Hero tier supporters, including:

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:

Patreon Ko-fi GitHub Sponsors

Supported server versions

EssentialsX officially supports the CraftBukkit, Spigot, and Paper server software. Specifically, EssentialsX is designed to work on the following Minecraft versions:

  • 1.16.5 and 1.17.1 - EssentialsX actively develops against and supports these versions.
  • ⚠️ 1.8.8, 1.9.4, 1.10.2, 1.11.2, 1.12.2, 1.13.2, 1.14.4, and 1.15.2 - 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:

  • Paper's async chunk loading reduces lag spikes during player teleports.
    CraftBukkit and Spigot do not support async chunk loading from plugins.
  • /anvil, /grindstone, /cartographytable, /loom, /smithingtable, /stonecutter are only supported on Paper.
    CraftBukkit and Spigot do not support the API needed for these.
  • /recipe on 1.12+ requires Paper to avoid a dupe bug introduced by CraftBukkit and Spigot.
  • Paper contains countless overall performance optimisations over CraftBukkit and Spigot.

EssentialsX does not support the following Minecraft versions or server software:

Upgrading to 2.19.0

If you're upgrading from 2.18.2, you can keep your current EssentialsX config file. However, 2.19.0 adds several new options that you may want to configure, and to do so you'll need to either update your config or add the new settings to your existing config. Read on for a list of changes and new config options.

Upgrading from 2.18.1 or older versions of EssentialsX? See the previous update changelogs.

New module: EssentialsX Discord! (#3844) 🎉

EssentialsX now has a Discord addon, which lets you easily bridge your Minecraft server with Discord with a bloat free and easy to understand configuration! You can read more about EssentialsX Discord and see how to get started here.

execute command

msg command

bridge

Known issues

Anchor charges deplete on Spigot even when EssentialsX Spawn overrides the spawn location

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.

Teleport requests can be dropped in rare cases

Due to a long-standing bug with teleport requests, in very rare cases teleport requests (/tpa, /tpahere, /tpaall) may expire instantly. We're working on an overhaul of the teleport request system with new features. If you encounter this bug on your server, it should be fixed in a future release.

Important changes

Userdata format changes (#4072)

Due to a few changes in data format, once you upgrade to 2.19.0, you will not be able to downgrade your userdata to older versions. We strongly recommend taking a full backup of your plugins/Essentials/userdata/ folder and plugins/Essentials/usermap.csv file before you update from 2.18.2 to 2.19.0 if you ever wish to downgrade in the future.

Currency symbol handling improvements (#3628, #3946, #3987)

Some handling of currency symbols has been improved to be more consistent. If you encounter issues with kits.yml or currency on signs after updating to 2.19.0, you may need to update them to match the format set in your config (or simply change them to $123.45, which should always work).

You can also now set the currency symbol to empty and use translation keys to handle currency formatting, if you prefer.

New features

EssentialsX now supports 1.17.1 (#4211, #4324)

EssentialsX now has full support for Minecraft 1.17.1, including support for the new items in /give, /item and kits, new 1.17 mobs in /spawnmob and new NMS/OBC mappings for accessing internal CraftBukkit code.

EssentialsX also no longer warns when installed on 1.16.5 servers.

New mail features (#3710)

The entire mail system has been rewritten to add support for temporary mails, read status, and the abiltiy to clear individual mails.

You can use /mail sendtemp <player> <expire time> <message> to send message which will expire at the given time or /mail clear <number> to clear the mail at the given position.

New /warpinfo command (#3820)

You can now use /warpinfo to view information about a warp:

warpinfo

New cancel-afk-on-chat setting (#3863)

You can now control whether chat cancels AFK for players separate to other types of interaction:

# Should we automatically remove afk status when a player sends a chat message?
cancel-afk-on-chat: true

New kit-auto-equip setting to auto equip armor from kits (#3704)

You can now set kit-auto-equip to true in config.yml to automatically equip armor when players redeem kits.

# When enabled, armor from kits will automatically be equipped as long as the player's armor slots are empty.
kit-auto-equip: false

New jail-online-time setting (#3705)

You can now set jail-online-time to true in config.yml to only count down time for jailed players while they're online.

# Whether or not jail time should only be counted while the user is online.
# If true, a jailed player's time will only decrement when they are online.
jail-online-time: false

Option to disable EssentialsX's custom full server message (#3899)

You can now disable EssentialsX's custom "This server is full!" message and restore the vanilla message by setting use-custom-server-full-message to false in config.yml:

# Should Essentials override the vanilla "Server Full" message with its own from the language file?
# Set to false to keep the vanilla message.
use-custom-server-full-message: true

Option to disable message social spy (#3910)

You can now disable private messages showing in social spy by setting socialspy-messages to false in config.yml:

# Whether social spy should spy on private messages or just the commands from the list above.
# If false, social spy will only monitor commands from the list above.
socialspy-messages: true

This is useful if you only want to monitor specific commands in social spy.

New /kitreset command to reset kit cooldowns (#3909)

You can now run /kitreset <kit> to reset the cooldown for a kit. If you have the essentials.kitreset.others permission, you can also reset kits for other players with /kitreset <kit> [player].

You can combine this command with single-use kits to more precisely control when players are allowed to claim kits.

EssentialsX Chat: world aliases (#3912...

Read more

EssentialsX 2.18.2 - The 1.16.4 Update

16 Nov 11:37
Compare
Choose a tag to compare

EssentialsX 2.18.2 is here! 🎉 This release features full 1.16.4 support, as well as a few bug fixes and quality-of-life improvements.

Thanks to @JRoy, @pop4959, @Chew, and all our other contributors who contributed to this release!

In addition, thanks to our donors, in particular our Hero tier supporters on Patreon:

  • AKP
  • Wasted Ticks

If you'd like to support the hard work that goes into EssentialsX, you can join our Patreon to support on a monthly basis, or make a one-off donation on Ko-fi. We'd appreciate any donations, especially if your server makes money - all donations enable us to continue spending hours of our free time working on and improving EssentialsX for everyone.

Patreon

Supported server versions

EssentialsX officially supports the CraftBukkit, Spigot, and Paper server software. Specifically, EssentialsX is designed to work on the following Minecraft versions:

  • 1.15.2 and 1.16.4 - EssentialsX actively develops against and supports these versions.
  • ⚠️ 1.8.8, 1.9.4, 1.10.2, 1.11.2, 1.12.2, 1.13.2, and 1.14.4 - these versions are still supported, but are not a priority for us, and may be dropped in a future release.

EssentialsX does not support the following Minecraft versions or server software:

  • 🛑 1.7.x or below - we do not provide support for these versions.
  • 🛑 Cauldron, Thermos, Magma, CatServer, or any other Forge/Bukkit hybrid server software - EssentialsX is built for the Bukkit API, which does not properly support mods. For modded servers, use SpongeForge and Nucleus, or an alternative mod for Forge or Fabric.

We recommend using the latest version of Paper, as it includes several performance enhancements over Spigot. EssentialsX 2.18+ includes significant improvements that are only effective on Paper, most notably asynchronous chunk loading which reduces lag spikes during player teleports.

Upgrading to 2.18.2

If you're upgrading from 2.18.1, you don't need to update your EssentialsX config. However, 2.18.2 adds a couple of new options that you may want to configure, and to do so you'll need to either update your config or add the new settings to your existing config. Read on for a list of changes and new config options.

Upgrading from older versions of EssentialsX? See the previous update changelogs.

Known issues

Anchor charges deplete on Spigot even when EssentialsX Spawn overrides the spawn location

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.

Important changes

New option to prevent players from responding to vanished players (#3703)

In previous versions, the /reply command would allow you to reply to a player even after they vanished, exposing that the player was still on the server. A new option to the config has been added to configure this behavior, last-message-reply-vanished. This will default to allowing users to reply to vanished players (true) for old configs, but will be set to block replying to vanished players for new configs (false). So make sure to add last-message-reply-vanished to your config if you're updating from 2.18.1 and you'd like to configure this.

# Changes the default /reply functionality.
# If true, /reply will not check if the person you're replying to has vanished.
# If false, players will not be able to /reply to players who they can no longer see due to vanish.
last-message-reply-vanished: false

New features

New virtual inventory commands (#3704)

There are new commands to let you open virtual anvils (/anvil), cartography tables (/cartographytable), grindstones (/grindstone), looms (/loom), smithing tables (/smithingtable), and stone cutters (/stonecutter).

Note: due to technical limitations, this is only available on Paper and on 1.15.2 or higher.

Other additions

  • Internal codestyle has been standardized and is now enforced. (#3701)
  • Internal tab-completion code for various commands has been minimized.
  • Added ability to customize balancetop lines via translation files. (#3626)
  • Added plugin names in tab-completion and improve command discovery /help. (#3713, #3675)
  • Improved the unsupported platform messages to make them more specific.
  • Changed console /sell logging messages to use usernames instead of nicknames (#3693)

Bug fixes

Bugs fixed from 2.18.1 and older versions

  • Fixed commands like /editsign not always targeting the correct block when looking below your head-level (#3763)
  • Fixed users tablist name getting reset after their AFK status changed. (#3624)
  • Fixed /paytoggle displaying the opposite message than the action being taken.
  • Fixed /time throwing an exception when used in console. (#3622)
  • Fixed debug messages showing sometimes when a user tab completed in certain commands. (#3739)
  • Fixed spaces in backup commands not being properly handled. (#3762)
  • Fixed color codes appearing in the trade.log file. (#3699)
  • Fixed /clear <player> <item> not clearing matched items from offhand. (#3715)
  • Fixed some /sell and /worth messages displaying {1} instead of the item's actual value. (#3656)
  • Fixed /sethome preventing modifying homes when surpassed set-home limit. (#3776)

Regressions fixed from 2.18.1.x dev builds

  • Fixed an ABI breakage in IEssentials#getOnlineUsers.
  • Fixed multiple regressions in /clearinventory that caused unexpected behavior than previously expected.
  • Fixed a regression in /lightning where attempting to smite another player wouldn't run the essentials.lightning.others permission check (#3671)
  • Fixed a regression in /delhome where tab completing would not show user homes properly and/or throw a NPE. (#3775)

For a full commit log, click here.