Requirements
Before installing, make sure your server meets the minimum requirements. EssentialsC is built for modern server software and will not run on legacy versions.
- Java 21 or newer (required for Minecraft 1.21+)
- Paper 1.21+, Purpur 1.21+, Spigot 1.21+, or Folia 1.21+ — compatible forks (Leaf, Leaves, Youer) also supported
- No hard dependencies — all required libraries are bundled
Optional Dependencies
EssentialsC works out of the box, but these plugins unlock additional features:
- Vault — Required for the economy system (
/balance,/pay,/eco,/baltop, shop transactions, auction house). EssentialsC registers itself as a Vault economy provider automatically. - PlaceholderAPI — Enables placeholders in scoreboards, chat, and tab formatting. On first run, EssentialsC recommends installing the
Vault,Player,Server,Statistic, andLuckPermsexpansions. - LuckPerms — Required for chat formatting, tab list prefixes, and per-group chat formats. Also used for home-limit permissions (
essentialsc.sethome.<number>). - DiscordSRV — Relays punishment events (ban, kick, mute), kit claims, home creation/deletion, and IP bans to Discord channels.
- Floodgate — Enables Bedrock/Geyser player support via the
BedrockUtilintegration. - TAB — Compatibility layer for tab list formatting when LuckPerms tab integration is enabled.
- SkinRestorer — Compatibility for nickname and skin systems.
.setup-complete marker file is created so this only happens once.
Download
EssentialsC is distributed through Modrinth and GitHub Releases. Both sources are identical — use whichever you prefer.
Install
Stop your server
Always install plugins while the server is offline to prevent file locks or corruption.
Drop the jar into /plugins
Move EssentialsC-<version>.jar into your server's plugins/ folder. No additional libraries are required — everything is bundled.
Start the server
Launch Paper, Purpur, Spigot, or Folia. EssentialsC will generate its configuration files, language files, shop categories, GUI templates, and SQLite databases automatically on first run. The startup banner and phase timings are logged to console.
Configure
Edit plugins/EssentialsC/config.yml to match your server setup. When finished, run /essc reload or restart the server to apply changes. Individual commands can also be toggled or aliased in commands.yml.
First-Time Setup
After the first start, EssentialsC creates the following structure inside plugins/EssentialsC/:
plugins/EssentialsC/
├── config.yml # Main configuration (economy, teleport, chat, etc.)
├── commands.yml # Per-command enable/disable, priority, and aliases
├── kits.yml # Kit definitions (starter, tools, member, etc.)
├── schedules.yml # Automated tasks (broadcasts, backups, restart warnings)
├── spawn.yml # Stores the server spawn location
├── motd.txt # Message of the day (MiniMessage supported)
├── rules.txt # Server rules display
├── .setup-complete # Marker file for first-run detection
├── backups/ # Timestamped zip archives of plugin data
│ └── backup-<time>.zip
├── lang/ # Translation files (30+ locales)
│ ├── en_US.json
│ ├── de_DE.json
│ ├── es_ES.json
│ ├── fr_FR.json
│ ├── ja_JP.json
│ ├── ko_KR.json
│ ├── zh_CN.json
│ └── ... (25+ more)
├── lang/help/ # Per-language help command outputs
├── shop/ # Shop category configuration files
│ ├── main.yml # Shop GUI layout and categories
│ ├── blocks.yml
│ ├── combat.yml
│ ├── enchanted_books.yml
│ ├── farming.yml
│ ├── mining.yml
│ ├── misc.yml
│ ├── redstone.yml
│ ├── spawners.yml
│ └── tools.yml
├── guis/ # GUI template files
│ ├── auction_main.yml
│ ├── auction_listings.yml
│ ├── auction_expired.yml
│ ├── auction_buy_history.yml
│ ├── auction_sell_history.yml
│ ├── auction_history_type.yml
│ ├── shop_main.yml
│ └── shop_category.yml
└── database/ # SQLite storage (auto-managed)
├── homes.db
├── auction.db
├── economy.db
├── kits.db
├── nicks.db
└── shop.db
config-version is checked and outdated settings are migrated automatically. Never change config-version manually.
What Gets Enabled by Default
EssentialsC uses a modular architecture — every major feature can be toggled in config.yml. Here is what loads on a fresh install:
- Economy — Enabled by default. Requires Vault. Starting balance: $100.00. Currency: Dollar/Dollars.
- TPA System — Enabled. 60s cooldown, 3s warmup, 60s timeout, max 5 pending requests.
- Homes — Enabled. Command mode (GUI mode available), default max 3 homes, default name "home".
- Spawn — Enabled. Teleport on first join and respawn. Beds can override.
- Back — Enabled. Returns to previous location after teleport or death.
- Kits — Enabled. Starter, Tools, and Member kits pre-configured.
- Warps — Enabled. Category grouping, per-player creation limits (5 max).
- RTP — Enabled. Overworld and End enabled by default; Nether disabled.
- Shop — Enabled. 9 categories with buy/sell GUI.
- Auction House — Enabled. Max 5 listings per player, 48h duration.
- Sell System — Enabled.
/sellGUI,/worth, and/quicksell. - Chat — Enabled. LuckPerms formatting, slow mode, caps lock filter, mentions, link filtering.
- Nicknames — Enabled. Colors and formats allowed, unique check, ~ indicator.
- AFK — Enabled. 5-minute timeout, 30-minute kick, tab placeholder, damage prevention.
- Vanish — Enabled. Tab hide, night vision, mob target prevention, collision disable.
- Scoreboard — Disabled by default. Enable in config. Not available on Folia.
- MOTD — Enabled. Reads from
motd.txt. - Backup — Enabled. Auto-backup on shutdown, keeps last 10 archives.
- DiscordSRV — Enabled in config, but only activates if DiscordSRV plugin is present.
Verify Installation
Once the server is running, run these commands to confirm everything is working:
/essc version— Check the installed version and build number (should show 4.1.7)/essc reload— Reload configuration without restarting/essc backup— Trigger a manual backup to test the backup system/essc dump— Generate a diagnostic dump (admin only)/help essentialsc— List all registered commands via the help system
If you see the EssentialsC version output and the startup banner in console, the plugin is installed correctly.
debug: true in config.yml to see millisecond breakdowns.
Troubleshooting
Plugin fails to enable
EssentialsC includes a crash handler that catches startup exceptions, prints a formatted error block to console, notifies online admins, and disables the plugin gracefully. Check the console for the exact exception class and message.
Commands not appearing
Every command can be individually disabled in commands.yml. Check that the command's enabled field is true and its priority is set correctly if competing with another plugin.
Economy not working
Ensure Vault is installed. EssentialsC registers as a Vault provider during onLoad(). If Vault is missing, economy commands will not register and a warning is logged.
Scoreboard not showing on Folia
This is expected — the scoreboard module is automatically skipped on Folia with a console warning. Use Paper or Purpur for scoreboard support.
Database locked errors
Never edit .db files while the server is running. EssentialsC uses SQLite with async writes. If corruption occurs, restore from the backups/ folder.