/Essentials

The modern Essentials suite for Spigot and Paper.

Primary LanguageJavaGNU General Public License v3.0GPL-3.0

EssentialsX

Dev Builds

Discord

Patreon

This is a fork of Essentials called EssentialsX.

If you are using this, do NOT ask Essentials for support.

The official upstream repository for the original Essentials project is at https://github.com/Essentials/Essentials.

Why use EssentialsX?

EssentialsX is a continuation of the Essentials plugin suite, updated to support modern Minecraft and Spigot versions.

It provides countless new features, performance enhancements and fixes that are not available in the original Essentials or Spigot-Essentials. For more details, see the wiki.

If you're coming from the original Essentials plugin, EssentialsX is a drop-in replacement for Essentials. It does, however, have some new requirements:

  • EssentialsX requires CraftBukkit, Spigot or Paper to run. Other server software may work, but these are not tested by the team and we may not be able to help with any issues that occur.
  • EssentialsX currently supports Minecraft 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, 1.18.2, 1.19.4, 1.20.6, and 1.21.1.
  • EssentialsX currently requires Java 8 or higher. We recommend using the latest Java version supported by your server software.
  • EssentialsX requires Vault to enable using chat prefix/suffixes and group support from supported permissions plugins.
    • We recommend using LuckPerms for permissions and groups.
    • If you have an unsupported permissions plugin but still want to use wildcards, enable use-bukkit-permissions in the configuration. Otherwise, the plugin will fall back to config-based permissions.

Support

Need help with using EssentialsX? Join the MOSS Discord community to ask for help and discuss EssentialsX.

If you need to report a bug or want to suggest a new feature, you can open an issue on GitHub.

Building

To build EssentialsX, you need JDK 8 or higher installed on your system.

Clone this repository, then run the following command:

  • On Linux or macOS: ./gradlew build
  • On Windows: gradlew build

You can then find builds of EssentialsX modules in the jars/ directory.

Running a test server

You can also run a test server from your development environment using the following command:

  • On Linux or macOS: ./gradlew build :runServer
  • On Windows: gradlew build :runServer

Note the : - without it, you will run several servers at once, which will likely crash Gradle.

Using EssentialsX in your plugin

Do you want to integrate with EssentialsX in your plugin? You can build your plugin against the EssentialsX API, available from the EssentialsX Maven repo.

Releases are hosted on the Maven repo at https://repo.essentialsx.net/releases/, while snapshots (including dev builds) are hosted at https://repo.essentialsx.net/snapshots/.

To add EssentialsX to your build system, you should use the following artifacts:

Type Group ID Artifact ID Version
Latest release net.essentialsx EssentialsX 2.20.1
Snapshots net.essentialsx EssentialsX 2.21.0-SNAPSHOT
Older releases net.ess3 EssentialsX 2.18.2

Note: until version 2.18.2, EssentialsX used the net.ess3 group ID.
From 2.19.0 onwards, EssentialsX uses the net.essentialsx group ID.
When updating your plugin, make sure you use the correct group ID.

You can find more information, including Maven and Gradle examples, at the wiki.

Support the EssentialsX project

Want to help improve EssentialsX? There are several ways you can support and contribute to the project.

Donate to EssentialsX

Donations allow us to cover the costs of our infrastructure, and also enable us to keep updating EssentialsX with new features and for new Minecraft versions.

You can support us with a one-off or monthly donation via GitHub Sponsors, and you'll get a badge on GitHub for supporting the project through this.

Alternatively, you can also donate monthly to the EssentialsX project on Patreon, or you can make a one-off donation on our Ko-fi page.

If you can't make a donation, don't worry! There are lots of other ways to contribute:

Contributing directly to EssentialsX

  • Are you a developer? We're always happy to receive bug fixes and feature additions as pull requests.
  • Do you speak multiple languages? If so, we always welcome contributions to our community translations. Crowdin project.

See CONTRIBUTING.md to find out more.

Providing support to other users

  • Do you run a server? Take a look at our "help wanted" and "bug: unconfirmed" issues, where you can find issues that need extra testing and investigation.
  • Do you want to help others set up EssentialsX? You can contribute to the EssentialsX docs. You can also join the MOSS Discord community and provide direct community support to other EssentialsX users.