EssentialsX 2.19.3 - The Otherside Update Part 3
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:
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.1and1.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, and1.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,/stonecutterare only supported on Paper.
CraftBukkit and Spigot do not support the API needed for these./recipeon 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:
- π "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.10or below.
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: falseConfig 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: falseConfig 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: trueNew 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.localallows players to send messages in local chatessentials.chat.receive.shoutallows players to receive shout chat messagesessentials.chat.receive.questionallows players to receive question chat messagesessentials.chat.receive.localallows 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
/nearis now translatable. (#4740) - You can now use decimal places in
/tppos. (#4729) - The
/ess dumpcommand can now include the settings files for random teleports (tpr.yml),/sellvalues (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-limitsetting (defaults to300) inconfig.ymlto limit how far away/treeand/bigtreecan 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)
/tpacceptwithout 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-policyandbinding-items-policyconfig 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 executor used on Paper now works on the latest Paper versions and uses Paper's command forwarding API where available. (#4791, #4794)
- Discord: Advancement notifications now work on 1.12.2. (#4826)
Regressions fixed from 2.19.3 dev builds
There are no known regressions in 2.19.3 dev builds.
Changes for developers
EssentialsX now builds with Gradle 7.4
The build script has been updated to Gradle 7.4. Various build plugins have also been updated, including an update to run-paper to fix the runServer tasks which broke following an update to Paper's download API in late 2021. (The runServer tasks will be updated to use Paper 1.18.2 during the 2.20.x development cycle.)
For a full commit log, click here.


