EssentialsX 2.22.0 - The Tiny Copper Mayhem Update #6552
mdcfe
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
🎉 At long last, EssentialsX 2.22.0 is here! This release brings support for content from The Copper Age, Mounts of Mayhem and Tiny Takeover drops on servers running Minecraft 26.1.2 and 1.21.11, as well as a healthy handful of new features, bug fixes and new API for developers!
EssentialsX 2.22.0 fixes several item duplication and server crash exploits. All users should upgrade to this release.
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, @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:
Supported server versions
EssentialsX officially supports the Paper server software. Specifically, EssentialsX is designed to work on the following Minecraft versions:
26.1.2- 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,1.20.6and1.21.11- 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:
CraftBukkit and Spigot do not support async chunk loading from plugins.
/anvil,/grindstone,/cartographytable,/loom,/smithingtable, and/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.EssentialsX does not support the following Minecraft versions or server software:
Do not attempt to use current versions of EssentialsX on Folia, nor on forks of Folia - you may lose userdata.
These often perform non-standard behaviour and can break your worlds and installed plugins.
We cannot guarantee the safety or functionality of unofficial builds of EssentialsX; you should avoid using Mohist where possible.
For modded servers running Minecraft Forge, NeoForge or Fabric, you should use FTB Essentials.
1.7.10or below.Upgrading to 2.22.0
If you're upgrading from 2.21.1 or 2.21.2, you can keep your current EssentialsX config file. However, 2.22.0 adds new options that you may want to configure. You can add these options to the existing config files, or rename your current config files in order to generate a fresh one. Read on for details on the new config options.
Upgrading from 2.21.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-anchordue to an unfixed bug in CraftBukkit. This bug has been patched in Paper.Fly mode is reset when teleporting between worlds on Spigot
On Spigot 1.17.1 and greater, player's fly mode will be reset regardless of the
world-change-fly-resetsetting due to behavior change in vanilla. A fix for this is in place for Paper servers. (#6012)New features
EssentialsX now supports 26.1.2 and 1.21.11 (#6299, #6364, #6473, #6534)
EssentialsX now officially supports Paper 26.1.2 and 1.21.11, including all the new blocks, items, mobs and enchantments added in Minecraft's latest feature drops.
New config.yml option:
afk-timeout-command(#6169)You can now specify one or more commands to run after the AFK timeout expires. This replaces the classic
auto-afk-kickconfig option.If you want to maintain the classic behaviour that kicks players with a standard message, you can continue to set a timeout duration under
auto-afk-timeoutbut leave theafk-timeout-commandslist empty.New command:
/powertoollist(#6096)You can now list all commands assigned to tools via
/powertoolby running the/powertoollistcommand:New permission:
essentials.whitelist.bypass(#6232)You can now grant the
essentials.whitelist.bypassto allow a player to bypass the whitelist when enabled. This works even if the player is not in the whitelist.New config.yml option:
gamemode-change-preserve-flyingYou can now choose whether EssentialsX will preserve a player's flight mode if they change from a flying gamemode (spectator or creative) to a non-flying gamemode (survival or adventure) while flying.
New config.yml option:
baltop-entry-limit(#6300, #6306)You can now limit the number of entries stored by
/balancetopto reduce memory usage on servers with high lifetime playercounts.Kits now support placing items in specific slots (#5794)
You can now add
slot:<id>to the start of an item definition in a kit to place the item in a specific inventory slot.This works when using
/createkit, both when using NBT serialization and classic ItemMeta syntax. You can also add it to an existing kit.New command:
/unmute(#6491)Previously, to unmute a player, you had to run
/mute <player>again. This was a problem for scripting as it would toggle the player's mute status, potentially unintentionally muting the player.You can now run
/unmute <player>which will never mute them by mistake.New command:
/jailedplayers(#6517)The new
/jailedplayerscommand shows a full list of currently-jailed players.New config option:
reset-nick-on-name-change(#6470)You can now have a player's nickname on your server reset when they log in after changing their Minecraft username.
Other additions
/potioncommand now allows applying potion effects to tipped arrows. (Add tipped arrow support to /potion #6191)/healcommand now restores your oxygen levels. (Reset oxygen with /heal #6201)economy-log-uuidssetting now allows you to print UUIDs to thetrade.logfile rather than usernames. (Add option to use UUIDs over usernames in trade.log #6252)essentials.seen.firstloginpermission now allows the/seencommand to show the date a player first joined the server. (Add first login date to /seen #6258)@sand@pselectors in EssentialsX commands to refer to the player executing the command. (Add @s and @p selector support #6110)/give,/itemand kit metadata. (Adds support for armor trims inside kits #6155)/recipecommand can now show recipes forcrafting_transmuterecipes, such as recolouring bundles with dye. (Add support for transmute recipes in /recipe #6302)log-console-commandsconfig option. (Add config option for logging console/RCON commands #6337)/essentialscommand has been significantly refactored to improve code quality. (Command Trees v2 #6230, Add alias "ver" for the "version" subcommand #6481)/gccommand is now faster to call on Paper servers. (Improve gc command performance #6439)cancel-afk-on-fishconfig option. (Add option to allow fishing when afk #6465)socialSpyCmdFormatkey in your locale file. (Add socialSpyCmdFormat message key for command social spy #6489)/vanishmode by granting theessentials.vanish.pickuppermission. (Add permission cache system + permission for vanish item pickup #6488)avatar-urlconfig option. (Discord: Add PAPI support to avatar-url #6189)http-proxy-serverconfig option. (Discord: Add setting to configure an HTTP Proxy for JDA #6275)protect.prevent.windcharge-explosionto false. (Add wind charge explosion protect config #6183)Bug fixes
Bugs fixed from 2.21.2 and older versions
/backare no longer overwritten when another plugin has cancelled the death event. (Ignore cancelled PlayerDeathEvents #6179)/invsee, preventing potential item loss. (Prevent dragging items outside of invsee #5902)/invseeaccess will no longer degrade to full modify permissions after heavy garbage collection. (Able to manipulate /invsee without modify permissions #6241, Maintain strong reference for online users #6247)/potioncommand now properly parses-1as an infinite duration for potion effects. (Fix potion command not supporting infinite durations #6236)/tprcommand now correctly resets its cached location list after/settprhas run and changed the/tprsettings. (Fixes stale cached locations after using /settpr #6305)/healcommand no longer sends a duplicate message when running it on yourself. (Fix double messages when running /heal on self #6347)/helpopcommand now correctly shows messages when run from the console. (Messages /helpop not visible if the sender console. #6342)/balanceno longer reveals when players are vanished. (Vanished players matched by nickname/online only commands #6085)PermissionsHandler#getGroups(OfflinePlayer)#6398)/nickcommand now correctly shows the appropriate message when a players' nickname is removed. (Fixed unreachable nickNoMore Message in /nick command. Not a huge change. #6442)/givecommand can no longer be used to freeze the server. (Fix server freezing with /give #6449)/burnand/morecommands are now more resilient against integer overflow exploits. (Fix integer overflow with /burn + /more & fix % in chat formats #6452)/thundercommand now correctly displays MiniMessage in its output. (Add MiniMessage support for thunder enabled / disabled #6454)/recipecommand can no longer be used while the player is asleep to spawn in infinite diamonds. (Prevent running recipe command while sleeping #6455)/setwarpcommand no longer allows players to hang or crash servers running on Windows by trying to print their warp coordinates to a printer connected to the server machine. (Reject Windows reserved filenames in /setwarp #6487)/walkspeedand/flyspeed(and similar aliases) now always modify walking or flight speed specifically. (Make /flyspeed and /walkspeed force the correct speed type #6485)/ecocommand now respects locale-specific decimal separators, including per-player locales if enabled. (Fix /eco ignoring locale-specific decimal separators #6511)/timecommand no longer overrides a player's own/ptimesetting. (Fix /time overriding player's /ptime setting #6509)/helpand usage messages using the player's locale. (Fix command descriptions not using player's locale #6508)consoleNametranslation key properly. (Fix consoleName translation key not working #6506)/home bednow correctly ensures the player has theessentials.home.bedpermission before teleporting the player. (Fix essentials.home.bed permission being ignored #6516)essentials.jailpermission has been removed fromplugin.yml. (Remove unused essentials.jail perm #6539)%symbols will no longer cause chat processing to throw exceptions. (Fix integer overflow with /burn + /more & fix % in chat formats #6452)announceAdvancementsgamerule is set to false. (Discord: Respect game rule for advancement message type #6195)Regressions fixed from 2.22.0 dev builds
The following bugs from 2.22.0 development builds have been fixed:
afk-timeout-commandsare no longer forcibly lowercased. (Do not lowercase afk timeout commands #6255)essentials.powertoollistis no longer omitted fromplugin.yml. (Fix missing powertoollist permission #6250)TeleportWarmupCancelledEventnow tracks the thread it was called from to prevent throwing an exception every time it fires. (Fix event thread assignment in TeleportWarmupCancelledEvent #6371)essentials.joinfullserverpermission are no longer kicked even when the server isn't full. (Fix preventing joins when server isn't actually full #6426)/ess reloadcommand is available once more. (Fix /ess reload #6444)/essentialscommand. (fix(commands): propagate Essentials and module to tree nodes #6445)/listcommand now parses MiniMessage tags in players' displaynames. (Fix minimessage parsing in playerlist keyword replacement #6505)emoji-javalibrary is now correctly included in the plugin once more. (Fix stale shadow include group ID for emoji-java in EssentialsDiscord #6467)Changes for developers
New API: custom item transformers (#4871)
At long last, you can now register custom item metadata types from external plugins. These metadata types will be recognised in
/give,/itemand kits. SeeMetaItemStack#registerItemTransformerfor more information.EssentialsX catches the
PlayerDeathEventlater and ignores cancelled events (#6179)EssentialsX now listens to the
PlayerDeathEventonEventPriority.HIGHand ignores cancelled events. This means it will no longer set a death message for death events that have been cancelled.It is still possible to cancel or modify the event after EssentialsX has modified them using
EventPriority.HIGHEST.New event:
TeleportWarmupCancelledEvent(#6351, #6371)The new
TeleportWarmupCancelledEventfires when a teleport warmup has been cancelled (ie by a player moving during the warmup period).New event:
PreTransactionEvent(#6370)The new
PreTransactionEventfires before a transaction takes place between players. You can modify the value of the transaction or cancel the event to block the transaction using the event. See the original pull request for an example of how to use this event.Notice: Wrong parameters in
VanishStatusChangeEvent(#6510)The value of
VanishStatusChangeEvent#getControllerandVanishStatusChangeEvent#getAffectedhave always been incorrectly swapped.To preserve compatibility with existing plugins that use these functions, we have not changed their return values. Instead, this incorrect behaviour is now documented on the class itself for reference.
Since correcting this mistake would be a breaking change, it will only be corrected after a major API increment.
For a full commit log, click here.
This discussion was created from the release EssentialsX 2.22.0 - The Tiny Copper Mayhem Update.
Beta Was this translation helpful? Give feedback.
All reactions