In short: download the main EssentialsX.jar and the modules you need in the same version, put them in plugins/ together with Vault and LuckPerms, and restart the server. Out of the box only operators have EssentialsX permissions, so regular players need them granted: essentials.home, essentials.tpa, essentials.warp and so on. Settings live in plugins/Essentials/config.yml.
What EssentialsX gives you
The developers describe it as over 160 commands for servers of every size: teleportation, moderation tools and gameplay conveniences. It's open source and free, funded by donations. The parts people use most:
| Task | Commands |
|---|---|
| Homes | /sethome, /home, /delhome |
| Warps | /setwarp, /warp |
| Teleport requests | /tpa, /tpahere, /tpaccept, /tpdeny, /back |
| Spawn (Spawn module) | /setspawn, /spawn |
| Kits | /kit, /createkit; kits themselves live in kits.yml |
| Economy | /balance, /pay, /baltop, /eco |
| Chat between players | /msg, /r, /mail, /nick |
| Moderation | /ban, /tempban, /mute, /vanish |
Modules: what to install
The main jar is required: no module works without it. The rest depends on what you need. On Modrinth each module is its own project, marked as requiring the main one.
| Module | What it does | Do you need it |
|---|---|---|
| EssentialsX | Commands, signs, kits, economy | Always |
| Chat | Chat format: prefixes, suffixes, colours, per-group formats | If you style the chat |
| Spawn | Spawn point on first join and after death, /setspawn per group | Almost always |
| Discord | A lightweight Discord bridge: two-way chat, joins, leaves, deaths, console | Optional |
| Discord Link | Links Minecraft and Discord accounts, syncs roles with groups | Together with Discord |
| GeoIP | A player's approximate country or city from their IP, on join and in /whois | Optional |
| Protect | Simple world rules: creeper damage, fire spread, specific mob spawns | Optional |
| AntiBuild | Permissions to build, interact and craft per block and item | Optional |
| XMPP | A legacy Jabber/XMPP bridge | No, unless you know what it is |
Installation
- 1
Check the server software and version
EssentialsX runs on CraftBukkit, Spigot and Paper; the developers recommend Paper. As of October 2026, the 2.22.0 release on Modrinth is marked for versions up to 26.1.2, while the README on the development branch already lists 1.21.11, 26.1.2, 26.2 and 26.3 — for the newest versions check the downloads page.
- 2
Download the main jar and modules
Releases are on Modrinth, SpigotMC and GitHub releases; development builds are on the site's downloads page. Unzip the SpigotMC archive first. Take every module in the same version as the main jar.
- 3
Install Vault and LuckPerms
Without Vault, prefixes, suffixes and everything group-related won't work. For permissions the developers recommend LuckPerms — see LuckPerms in 10 minutes.
- 4
Restart the server
A restart, not
/reload. On first start EssentialsX createsconfig.yml,kits.ymland the rest inplugins/Essentials/. General rules are in how to install a plugin.
Permissions with LuckPerms
In EssentialsX's plugin.yml, essentials.* is granted to operators, and most permissions have no default set — which under Bukkit's rules also means "operators only". So right after installing, regular players can't even use /home. Give the default group a basic set, and extended permissions to paid or trusted groups:
lp group default permission set essentials.home true
lp group default permission set essentials.sethome true
lp group default permission set essentials.delhome true
lp group default permission set essentials.tpa true
lp group default permission set essentials.tpaccept true
lp group default permission set essentials.tpdeny true
lp group default permission set essentials.back true
lp group default permission set essentials.warp true
lp group default permission set essentials.spawn true
lp group default permission set essentials.balance true
lp group default permission set essentials.pay true
lp group default permission set essentials.msg true
lp group default permission set essentials.kit true
lp group default permission set essentials.kits.tools true
lp group vip permission set essentials.sethome.multiple true
lp group vip permission set essentials.sethome.multiple.vip true- Several homes. The number of homes is set by
sethome-multiplein config.yml (default ranks:default: 3,vip: 5,staff: 10). A player needs both permissions:essentials.sethome.multipleandessentials.sethome.multiple.<rank>. No limit:essentials.sethome.multiple.unlimited. - Kits. The
/kitpermission unlocks the command, and each kit is a separate permission,essentials.kits.<kit>. - Warps. By default
essentials.warpopens every warp. To grant them one by one, setper-warp-permission: true. - Back to the death point.
/backafter death only works withessentials.back.ondeath— nobody has it by default.
What to set in config.yml
| Key | Default | Why change it |
|---|---|---|
teleport-delay | 0 | Delay before a teleport in seconds; moving or taking damage cancels it. Stops escaping a fight with /home and /tpa |
teleport-cooldown | 0 | A pause between /home, /tp and other teleports |
teleport-invulnerability | 4 | Seconds of invulnerability after a command teleport; the player can't attack during them either |
starting-balance | 0 | Starting money for a new player |
currency-symbol | '$' | The currency symbol |
spawn-on-join | false | Send everyone to spawn on join (Spawn module) |
chat.radius | 0 | Chat range in blocks; 0 means global chat (Chat module) |
update-check | true | Check for EssentialsX updates on startup |
Chat format is set by chat.format, per-group formats by chat.group-formats (Chat module). The name, message, prefix and group go in as placeholders in curly braces; the list is right in the config.yml comments. Prefixes come from your permissions plugin through Vault — for example, from meta setprefix in LuckPerms.
Colours. Colour codes in chat, nicknames and private messages are unlocked by essentials.chat.color, essentials.nick.color and essentials.msg.color. Since 2.18.0, hex colours are supported as &#RRGGBB — they're controlled by permissions ending in .rgb, such as essentials.chat.rgb and essentials.nick.rgb. A gradient nickname is easy to build with the gradient text generator.
EssentialsX and the anticheat
Some EssentialsX commands change how a player moves and survives: /fly, /speed, /god, /tp. Give them to staff only, through LuckPerms: a player with /fly flies legitimately, and handing such permissions to everyone cancels your own server rules. And teleport-delay closes the teleport escape from a fight, which no anticheat will flag — it's a server mechanic, not a cheat.
EssentialsX has /ban, /tempban and /mute, but they won't tell you who is cheating. That's the anticheat's job. DGuard — the best anticheat for a modern Minecraft server — watches combat, movement, packets, inventory, building and the world at once, gathers evidence without rushing to a verdict, and you set how strict punishments are. Turn on punishment-log in DGuard's config and every ban lands in the panel's log with a report, which moderators on your team can see without OP or console access. DGuard runs on Paper and Leaf 1.21–26.3 and is free up to 30 players online.
FAQ
Why can't players use /home and /tpa?
Out of the box only operators have EssentialsX permissions. Grant the default group essentials.home, essentials.sethome, essentials.tpa, essentials.tpaccept and whatever else you need through LuckPerms.
Does EssentialsX need Vault?
Yes, if you want prefixes, suffixes and per-group chat formats: without Vault EssentialsX can't see your permissions plugin's groups. The developers recommend LuckPerms as the permissions plugin.
How do I give a player several homes?
Define ranks in sethome-multiple in config.yml and give the player both permissions: essentials.sethome.multiple and essentials.sethome.multiple.<rank>. No limit: essentials.sethome.multiple.unlimited.
Does EssentialsX work on Folia?
No. The developers warn that current versions on Folia and its forks can lose user data. Use Paper.
Does EssentialsX Protect replace a region plugin?
No. Protect and AntiBuild set simple world rules and building permissions; for protecting areas the EssentialsX developers recommend WorldGuard.
Sources
- EssentialsX: official site
- EssentialsX on GitHub (README)
- EssentialsX: installing
- EssentialsX: module breakdown
- EssentialsX: downloads and unsupported platforms
- EssentialsX: colour permissions
- EssentialsX: common issues
- EssentialsX: default config.yml
- EssentialsX on Modrinth
- DGuard, the best anticheat for a modern Minecraft server: checks compared with GrimAC, Vulcan, Polar, Intave and Matrix
- DGuard: installation, requirements and troubleshooting
- DGuard: supported Paper and Leaf versions