Skip to content

Releases: EssentialsX/Essentials

EssentialsX 2.16-pre4 - The (next) 1.13 Prerelease

31 Dec 13:03

Choose a tag to compare

EssentialsX with 1.13 support is finally nearly here! (Scroll to the bottom for changes between pre3 and pre4.)

Important changes since 2.15.0

  • Support is currently only guaranteed for 1.13 and above.
    • The plugin may work on 1.12.2 and below, but 2.16-pre3 has not been extensively tested on these versions.
  • In several places, item IDs have been removed!
    • On 1.12.2 and below, you can still use item IDs as before, but you will need to update your configs to use material names.
    • On 1.13+, item IDs will not work anywhere, including permissions, item lookups or configs.
      • One exception is that you can set allow-old-id-signs: true in your config to allow players to retrieve items stored in [trade] signs that use IDs. You cannot create new signs with IDs, however.
  • On 1.13+, EssentialsX now uses items.json, a new item database format.
    • Plugins can now manually load in additional items into EssentialsX's database.
    • Some plugins that used to rely on EssentialsX's item database may require updates to continue working properly.
    • The items.csv file is ignored on 1.13+.
  • EssentialsX now requires Java 8 and will not run on older versions.
  • Deprecated economy plugins are no longer supported - these are BOSEconomy, iConomy 5/6 and MultiCurrency
    • This allows you to finally add EssentialsX as a dependency in your plugin without cloning and building it first.

Bug fixes

  • 16b2c3d: Clear any pending unconfirmed commands when a player logs in
  • de57a8c: EssentialsX Protect now disables emergency mode if Essentials somehow loads after it
  • 8aa764f: Allow /nick off for players who can only change their username's colours
  • a44775c: Prevent usernames being duplicated in the /ignore list
    • This fixes issues with plugins that added users to player's ignore lists without removing them, which meant removing them from the list wouldn't work properly.
  • 52d814f: Playtime is now accurately reported in /whois in 1.13
  • 3ef0f20: Tipped arrows are supported by the old item database
  • 37acdc1: Fix typo in comment above milk-bucket-easter-egg
  • 3c6a869: Only spawn mobs with iron armour if specified
  • f569b89: Round down an account's balancec when converting to a double
    • This works around a money duplication exploit in outdated versions of ChestShop, but you should still update ChestShop as the problem was properly mitigated across all economy plugins
  • bad0272: Allow /eco take to subtract a player's exact balance
  • 935b5cf: Use the Bukkit setUnbreakable method where available instead of the Spigot one
  • 575a11b: createKitSuccess messages now correctly refer to kits.yml instead of config.yml
  • 9576ea2: Use reflection to detect which item pickup listener to use
    • EssentialsX should now start up on Glowstone, though support is not guaranteed - please report any issues with EssentialsX on Glowstone on our issue tracker
  • ba95958: Use internal method for setting/updating the currency format
    • The plugin should now run on Java 9 and above.
  • 7dd52da: Add a Bukkit version utility class
    • This can be used to replace the inconsistent usages of ReflUtil which break on Glowstone.
  • ec83a5f: Add support for newer EntityPickupItemEvent in AntiBuild
  • 7b67b3b: Don't send empty line join/quit messages
    • Finally, you can now set custom-join-message/custom-quit-message to "" and EssentialsX won't send any message at all!
  • a18ce40: Add hide-displayname-in-vanish config option to hide nicknames of vanished users
    • This avoids revealing when players are in vanish rather than offline.
  • 579f554: Fix nickname not being set properly when disabling AFK mode

Other features added since 2.15

  • b29f98c: Add world-specific /back permissions
    • You can revoke essentials.back.into.<world> from players to prevent them using /back to teleport into the specific world.
    • This permission defaults to true, meaning by default all players can teleport into all worlds.
  • 030eb33: Block ignite only for PvP, not for PvE
    • Players in god mode can now ignite mobs with bows, which was not previously possible.
  • 2ff29da: Add a message when trying to jail someone in a jail that doesn't exist
    • This shows the message jailNotExist from your messages.properties or equivalent localised file.
  • 817caf2: When a player uses /setwarp, store the player's UUID as lastowner
    • 967bb44: Expose this in the API as getLastOwner
  • 7298393: Add essentials.msgtoggle.bypass
    • This permission allows you to send private messages to users that have disabled them with /msgtoggle.
  • 4873beb: Add config option to require a permission before updating a player's compass direction
    • If compass-towards-home-perm is enabled in the EssentialsX config, then the permission essentials.home.compass is checked before changing the player's compass target.
  • aa622f8: Teleport safety is disabled in spectator mode
  • 504a7ae: 1.13 mobs are now supported
  • ed72d11: Add {ONLINE} variable to custom join messages
  • c79db98: Add more debug logging in Settings
    • When investigating group chat format issues, if /ess debug is enabled, EssentialsX will output which chat format is being used for each player.
    • When investigating command cooldown issues, if /ess debug is enabled, EssentialsX will output each command cooldown every time they are checked, stating which ones were matched.
  • 81397d9: Make the "internal error" messages and the compass directions translatable
  • f97c5fc: Make /realname's output message translatable
  • 959c788/634d62f9ef8ef30717bb0ffd8877a18b7d28d70d: Add essentials.kickall.exempt permission
    • Makes players exempt from /kickall
  • e642192: When banning by IP with /banip, all connected players with that IP are now kicked
  • 2806156: Add allow-world-in-broadcastworld config option
    • When set to true, players can use the command /broadcastworld [world] <message> to specify what world to broadcast in.
    • This defaults to false.
  • e3c726b: The total amount of items loaded in the item database is now logged when the item database (re)loads.
  • a3eb587: Add essentials.nick.allowunsafe permission
    • If a player has this, they can set their username to any value. Use with caution, as this has the potential to break userdata files.
  • 79bc340: Allow /clearinventory to accept a comma-separated list of item names
  • a2a95ed: Add acacia, birch and dark oak trees to /tree and /bigtree
  • 280d121: Add a UserWarpEvent class for when users teleport to a defined warp
  • 41b2449: /enchant now defaults to level 1 if no enchant is supplied
  • 35a2a4d: Add compatibility warnings in /ess version and on startup
    • The "Vault is not installed" message can now be translated as versionOutputVaultMissing.
    • If running an unsupported version of Bukkit, EssentialsX will now show a warning in /ess version and on startup.
    • If running an unsupported plugin alongside EssentialsX, /ess version will highlight it.
  • 6ee8451: Update the bStats Metrics class
    • /essentials optout has been removed - use the global bStats config instead.
  • 6a63834: Add force-enable-recipe config option
    • This option is not recommended. Do not use it unless you know what you are doing and fully understand the implications.
  • 89d592c: Make item-spawn-blacklist debug messages more readable
  • 050287f: Add 1.13 enchantments

Translation updates

Thanks to several members of the community, we have enhanced translations, including:

Read more

EssentialsX 2.16-pre3 - The 1.13 Prerelease

29 Dec 20:55

Choose a tag to compare

EssentialsX with 1.13 support is finally nearly here!

Important changes since 2.15.0

  • Support is currently only guaranteed for 1.13 and above.
    • The plugin may work on 1.12.2 and below, but 2.16-pre3 has not been extensively tested on these versions.
  • Item IDs have been removed! This means any permissions with item IDs will not be recognised.
    • To be precise, item IDs have been removed from permission checks, command costs and item lookups in /worth, /give, /item, more, /repair, and EssentialsX AntiBuild and Protect
    • On 1.12.2 and below, you can still use item IDs in /give and /item.
    • On 1.13+, you can set allow-old-id-signs: true in your config to allow players to retrieve items stored in [trade] signs that use IDs. You cannot create new signs with IDs, however.
  • On 1.13+, EssentialsX now uses items.json, a new item database format.
    • Plugins can now manually load in additional items into EssentialsX's database.
    • Some plugins that used to rely on EssentialsX's item database may require updates to continue working properly.
    • The items.csv file is ignored on 1.13 and above.
  • EssentialsX now requires Java 8 and will not run on older versions.
  • Deprecated economy plugins are no longer supported - these are BOSEconomy, iConomy 5/6 and MultiCurrency
    • This allows you to finally add EssentialsX as a dependency in your plugin without cloning and building it first.

Bug fixes

  • 16b2c3d: Clear any pending unconfirmed commands when a player logs in
  • de57a8c: EssentialsX Protect now disables emergency mode if Essentials somehow loads after it
  • 8aa764f: Allow /nick off for players who can only change their username's colours
  • a44775c: Prevent usernames being duplicated in the /ignore list
    • This fixes issues with plugins that added users to player's ignore lists without removing them, which meant removing them from the list wouldn't work properly.
  • 52d814f: Playtime is now accurately reported in /whois in 1.13
  • 3ef0f20: Tipped arrows are supported by the old item database
  • 37acdc1: Fix typo in comment above milk-bucket-easter-egg
  • 3c6a869: Only spawn mobs with iron armour if specified
  • f569b89: Round down an account's balancec when converting to a double
    • This works around a money duplication exploit in outdated versions of ChestShop, but you should still update ChestShop as the problem was properly mitigated across all economy plugins
  • bad0272: Allow /eco take to subtract a player's exact balance
  • 935b5cf: Use the Bukkit setUnbreakable method where available instead of the Spigot one
  • 575a11b: createKitSuccess messages now correctly refer to kits.yml instead of config.yml
  • 9576ea2: Use reflection to detect which item pickup listener to use
    • EssentialsX should now start up on Glowstone, though support is not guaranteed - please report any issues with EssentialsX on Glowstone on our issue tracker
  • ba95958: Use internal method for setting/updating the currency format
    • The plugin should now run on Java 9 and above.
  • 7dd52da: Add a Bukkit version utility class
    • This can be used to replace the inconsistent usages of ReflUtil which break on Glowstone.
  • ec83a5f: Add support for newer EntityPickupItemEvent in AntiBuild
  • 7b67b3b: Don't send empty line join/quit messages
    • Finally, you can now set custom-join-message/custom-quit-message to "" and EssentialsX won't send any message at all!
  • a18ce40: Add hide-displayname-in-vanish config option to hide nicknames of vanished users
    • This avoids revealing when players are in vanish rather than offline.
  • 579f554: Fix nickname not being set properly when disabling AFK mode

Other features added since 2.15

  • b29f98c: Add world-specific /back permissions
    • You can revoke essentials.back.into.<world> from players to prevent them using /back to teleport into the specific world.
    • This permission defaults to true, meaning by default all players can teleport into all worlds.
  • 030eb33: Block ignite only for PvP, not for PvE
    • Players in god mode can now ignite mobs with bows, which was not previously possible.
  • 2ff29da: Add a message when trying to jail someone in a jail that doesn't exist
    • This shows the message jailNotExist from your messages.properties or equivalent localised file.
  • 817caf2: When a player uses /setwarp, store the player's UUID as lastowner
    • 967bb44: Expose this in the API as getLastOwner
  • 7298393: Add essentials.msgtoggle.bypass
    • This permission allows you to send private messages to users that have disabled them with /msgtoggle.
  • 4873beb: Add config option to require a permission before updating a player's compass direction
    • If compass-towards-home-perm is enabled in the EssentialsX config, then the permission essentials.home.compass is checked before changing the player's compass target.
  • aa622f8: Teleport safety is disabled in spectator mode
  • 504a7ae: 1.13 mobs are now supported
  • ed72d11: Add {ONLINE} variable to custom join messages
  • c79db98: Add more debug logging in Settings
    • When investigating group chat format issues, if /ess debug is enabled, EssentialsX will output which chat format is being used for each player.
    • When investigating command cooldown issues, if /ess debug is enabled, EssentialsX will output each command cooldown every time they are checked, stating which ones were matched.
  • 81397d9: Make the "internal error" messages and the compass directions translatable
  • f97c5fc: Make /realname's output message translatable
  • 959c788/634d62f9ef8ef30717bb0ffd8877a18b7d28d70d: Add essentials.kickall.exempt permission
    • Makes players exempt from /kickall
  • e642192: When banning by IP with /banip, all connected players with that IP are now kicked
  • 2806156: Add allow-world-in-broadcastworld config option
    • When set to true, players can use the command /broadcastworld [world] <message> to specify what world to broadcast in.
    • This defaults to false.
  • e3c726b: The total amount of items loaded in the item database is now logged when the item database (re)loads.
  • a3eb587: Add essentials.nick.allowunsafe permission
    • If a player has this, they can set their username to any value. Use with caution, as this has the potential to break userdata files.
  • 79bc340: Allow /clearinventory to accept a comma-separated list of item names
  • a2a95ed: Add acacia, birch and dark oak trees to /tree and /bigtree
  • 280d121: Add a UserWarpEvent class for when users teleport to a defined warp
  • 41b2449: /enchant now defaults to level 1 if no enchant is supplied
  • 35a2a4d: Add compatibility warnings in /ess version and on startup
    • The "Vault is not installed" message can now be translated as versionOutputVaultMissing.
    • If running an unsupported version of Bukkit, EssentialsX will now show a warning in /ess version and on startup.
    • If running an unsupported plugin alongside EssentialsX, /ess version will highlight it.
  • 6ee8451: Update the bStats Metrics class
    • /essentials optout has been removed - use the global bStats config instead.
  • 6a63834: Add force-enable-recipe config option
    • This option is not recommended. Do not use it unless you know what you are doing and fully understand the implications.
  • 89d592c: Make item-spawn-blacklist debug messages more readable
  • 050287f: Add 1.13 enchantments

Translation updates

Thanks to several members of the community, we have enhanced translations, including:

Read more

EssentialsX 2.15

29 Mar 17:56

Choose a tag to compare

This version supports Minecraft 1.8.8-1.12.2.

Additions since b488

  • Messages files are now consistent and include updated translations.
  • /clearinventory has an optional confirmation check, similar to /pay. #1309
  • Add notify-player-of-mail-cooldown, a cooldown for how often "You have new mail" messages appear. #1312 11a03bb
  • Show UUID in /whois. #1394 d7685dc
  • Add delay-motd, a delay for sending the MOTD after a user connects. #1396 50f2e7a
  • MCStats Metrics has been replaced with bStats.
  • Socialspy displays chat messages from muted players. #1430 fd63a7d
  • Server list no longer shows vanished players.
  • Kits now support the unbreakable tag. #377 203d656
  • Add allow-direct-hat, allowing players with essentials.hat to click on their helmet slot to put any item there. #960 7958cd0
  • Add configurable messages to send to banned players on join attempts. #420 e5c7ba7
    • This was added to temporary bans later: #1709 a904dab
  • Disable god mode on login when players don't have essentials.god. #1475 91b2622
  • Spawn: Separate respawn and spawn-on-join listener priority options. #1491 ed5aa1f
  • Socialspy messages can now be formatted in the messages file. #1460 (unknown commit)
  • Mails can now be formatted like chat messages with essentials.mail.color etc. #1611 c14d565
  • Players no longer receive /me messages from ignored users. #1768 87c6672
  • ItemFlags are now supported in kits. #795 377c716
  • Chat: Add {PREFIX} and {SUFFIX} plaxeholders. #1663 738efe8
  • Add configurable messages to /jails. #1732 e38b155
  • Add /disposal, a command that opens a disposal inventory like the [Disposal] sign. #1729 d69e3a2
  • Move kits to kits.yml and automatically migrate old kits to the new file. #1774 cd43355
  • Disable pastebin-createkit by default, and switch to Hastebin. #1916 0d5da06
  • Add /ess version command, giving detailed info for support purposes. #1514 4e8e7be
  • Add extra permissions to /whois and /seen. #735 95ac4a4
  • Add colour formatting to /mail sendall. #1867 d3c4c2b
  • cancel-afk-on-move now works independently of cancel-afk-on-interact. #1804 823f1c2

Fixes since b488

  • /condense now works on 1.12. #1298 3831464
  • World is now passed when retrieving Vault prefix and suffix. #1327 341263b
  • Tab complete now includes player names. #1301 12930cf
  • LuckPerms is now supported by default, and is recommended over other permissions plugins. #1356 d5cbfef
  • Players can no longer reply to PMs while muted. #1375 518a43d
  • Tab completion with /warp now requires essentials.warp.list. #1378 301a3a7
  • Arrows shot by people in god mode or who are vanished without the PvP permission no longer set people on fire. #1462 13fbd31
  • Powertools that include {player} no longer run when powertools are disabled. #1474 eb341c0
  • PlayerInteractEvent no longer causes constant stack traces on 1.12.2.
  • Spawners now work correctly. #1536 b346970
  • Logger parent infinite loop fixed on Paper servers. #1570 2c4ff35
  • /tppos now checks for per-world teleport permissions. #1516 cd7e096
  • Send an error when trying to show an invalid page. #1754 ef1e57f
  • Kits parse correctly without unpredictable behaviour. #1757 1f0f77f
  • GeoIP: Rewritten to use the newer MaxMind GeoIP 2 database to avoid breakage. #1748 938f94e
  • Arguments are now passed in the correct order in the construction of GodStatusChangeEvents. #1790 16a496c
  • Vanished players are no longer targeted by entities. #1829 0540042
  • /clearinventory now clears the offhand slot. 983f3a7
  • Don't show error that MOTD is missing on login. #1811 e4a8222
  • Vanished players can leave vanish properly after switching worlds while vanished. (This fixes the infamous hidden unvanished players bug.) #1796 61c1485

2.0.1-b319

10 Mar 23:13

Choose a tag to compare

  • Restores spawn egg data value behavior for 1.9 servers
  • Fixes inventory clear behavior for 1.9 servers