All Mods Resource Packs Data Packs Shaders Modpacks Plugins
NeoEssentials

NeoEssentials

by Unknown • Downloads: 0 • Followers: 0
Description
Gallery
Changelog
Versions

NeoEssentials

Minecraft NeoForge License Version > NeoEssentials is a comprehensive, config-driven essentials mod for Minecraft NeoForge 1.21.1 - 1.21.11 servers. It provides 50+ commands, GUI tools, advanced administration, and a real-time web dashboard—all managed by modular JSON config files and standardized documentation.

🌟 Overview

NeoEssentials brings essential server management, player utilities, and advanced admin features to NeoForge servers. All features are strictly documented and driven by config files for reliability and transparency.

Server-Side Only: No client install required—works with vanilla clients. 50+ Commands: Covers all major server functions, utilities, and moderation. Modern UI: GUI commands, color code support, and web dashboard.

✨ Core Systems & Features

  • Economy System: Player balances, payments, kits, and shop support.
  • Chat & Messaging: Private messages, mail, ignore/socialspy, AFK system.
  • Moderation: Ban, kick, mute, jail, vanish, freeze, sudo, player data.
  • Teleportation: Homes, warps, spawn, teleport requests, back system.
  • Kit Management: Configurable item kits with cooldowns and preview.
  • Web Dashboard: Real-time server monitoring, config editing, API endpoints.
  • Permission System: LuckPerms, FTB Ranks, and built-in support.
  • Item Management: Item spawning, repair, enchant, clearinventory, powertool.
  • Utility Systems: Nicknames, MOTD, near, ping, depth, helpop, rules, suicide, etc.
  • API & Placeholder System: PlaceholderAPI integration, custom placeholders, REST API endpoints.

📖 Documentation

Start at Home for a complete, config-driven documentation hub. All major systems are documented and standardized to match the codebase and config files:

See APISystem for API & Placeholder System details, including:

  • PlaceholderAPI integration for dynamic text
  • Custom and expansion placeholders
  • Web Dashboard REST API endpoints for server status, player info, logs, config, events, and statistics
  • Permissions and config options for API features

🚀 Quick Start

Installation

  1. Download the latest release Version
  2. Place the JAR file in your server's mods folder
  3. Start your server to generate configuration files in config/neoessentials/
  4. Configure permissions and features as needed
  5. Restart the server to apply changes

Essential Configuration Files

config/neoessentials/
├── config.json           # Main configuration settings
├── permissions.json      # Permission system setup
├── language/            # Language files directory
├── shops.json           # Shop system configuration
└── settings.json        # Additional mod settings

Quick Permission Setup

For LuckPerms users:

/lp group admin permission set neoessentials.admin true
/lp group moderator permission set neoessentials.moderator true
/lp group default permission set neoessentials.player true

🎮 Command Reference

See Home and individual system docs above for full command lists and config options.

🔧 Configuration Examples

All features are managed by modular JSON config files. See Home and system docs above for details.

🔗 API Integration for Modders

See APISystem for full API and PlaceholderAPI documentation, including:

  • Registering custom placeholders
  • Using REST API endpoints for server data
  • Economy API for mod integration

🔗 Integration & Compatibility

  • LuckPerms and FTB Ranks supported
  • Server-Side Only (no client mods required)
  • Vanilla Client Support
  • Performance Optimized

🛠️ Development

IDE Setup

This project uses IntelliJ IDEA Community Edition with Gradle.

Setup Instructions:

  1. Clone the repository
  2. Open the project in IntelliJ IDEA
  3. Import as a Gradle project
  4. Wait for Gradle to sync and download dependencies
  5. The IDE is configured to automatically download sources and javadocs

Running the Mod:

  • Use Gradle run configurations provided by NeoForge ModDev
  • runClient - Test in client mode
  • runServer - Test in server mode
  • runData - Generate data resources

Building:

./gradlew build

Output JAR: build/libs/neoessentials-VERSION+build.XXX.jar

Project Structure

  • Java 21 - Target JDK version
  • Gradle - Build system with auto-incrementing build numbers
  • NeoForge ModDev 2.0.107 - Modern mod development plugin
  • Parchment Mappings - Better parameter names and javadocs

🤝 Support & Community

  • Discord: Join our Discord server for support and community discussion
  • Bug Reports: Report issues and bugs through GitHub or Discord
  • Feature Requests: Suggest new features and improvements
  • Documentation: See Home and system docs above

📄 License

NeoEssentials is licensed under the MIT License. See the LICENSE file for details.


🌟 Ready to enhance your server? Download NeoEssentials and give your players the essential tools they need!

Made with ❤️ for the Minecraft community

How to Install NeoEssentials (Mod)

NeoEssentials by Unknown is verified for Neoforge across Minecraft versions 1.21.1, 1.21.10, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7 (latest release: 1.0.6, file size: 3.6 MB). Follow the steps below to install it safely from ModCraft.tv:

  1. Click the Download button above and select your Minecraft version (1.21.1, 1.21.10, 1.21.2, 1.21.3, 1.21.4, 1.21.5, 1.21.6, 1.21.7) and platform (Neoforge).
  2. Make sure you have the compatible loader or environment installed for Neoforge.
  3. Move the downloaded NeoEssentials file into your Minecraft .minecraft/mods folder and launch the game.

All Versions

+ Add Version
Name Game version Platforms Published Downloads Actions
26.2
Neoforge
16d ago 1
26.1.x
Neoforge
16d ago 1
1.21.x
Neoforge
16d ago 1
26.2
Neoforge
2mo ago 1
26.1.x
Neoforge
2mo ago 1
1.21.x
Neoforge
2mo ago 1
1.21.x
Neoforge
2mo ago 1
26.1.x
Neoforge
2mo ago 1
1.21.x
Neoforge
3mo ago 1
26.1.x
Neoforge
3mo ago 1
1.21.x
Neoforge
4mo ago 1
26.1.x
Neoforge
4mo ago 1
1.21.x
Neoforge
8mo ago 1
1.21.x
Neoforge
10mo ago 1
1.21.x
Neoforge
10mo ago 1
1.21.x
Neoforge
last yr. 1
1.21.1
Neoforge
last yr. 1
1.21.1
Neoforge
last yr. 1
1.21.1
Neoforge
last yr. 1
1.21.1
Neoforge
last yr. 1
[1.0.6] NeoEssentials 1.0.6 by Unknown on Oct 13, 2026
Download
# NeoEssentials — Changelog (26.2.x branch)

  • Minecraft 26.2 · NeoForge 26.2.0.63+**

All notable changes to this branch are documented here, starting from
  • v1.0.6** — earlier history (v1.0.5.x and before, including the port's own
migration history) is not carried over.


## [1.0.6] — 2026-08-27

### Added
...
[1.0.6] NeoEssentials 1.0.6 by Unknown on Oct 13, 2026
Download
# NeoEssentials — Changelog (26.1.x branch)

  • Minecraft 26.1–26.1.2 · NeoForge 26.1.2.76+**

All notable changes to this branch are documented here, starting from
  • v1.0.6** — earlier history (v1.0.5.x and before, including the port's own
migration history) is not carried over.


## [1.0.6] — 2026-08-27

### Added
...
[1.0.6] NeoEssentials 1.0.6 by Unknown on Oct 13, 2026
Download
# NeoEssentials — Changelog

Starting from **v1.0.6** — earlier history (v1.0.5.x and before) is not carried over.

  • Minecraft 1.21.1 – 1.21.10 · NeoForge 21.1.179+**


## [1.0.6] — 2026-08-27

### Added
...
[1.0.5] NeoEssentials 1.0.5 by Unknown on Aug 25, 2026
Download
# NeoEssentials — Changelog (26.2.x branch)

  • Minecraft 26.2 · NeoForge 26.2.0.63+**

All notable changes to this branch are documented here, starting from
  • v1.0.5** — earlier history (v1.0.4.x and before, including the port's own
migration history) is not carried over.

## 1.0.5+build.54 — 2026-08-25

### 🐛 Resource Pack Uploads, Login Lockout, and Warp Limits — Three Race-Condition Fixes

  • Uploading a resource pack through the web dashboard could silently corrupt the file — the upload parser was decoding the raw zip bytes as text. Fixed with a proper binary-safe parser.
  • The dashboard's login lockout (locking an account after repeated failed attempts) could be dodged by firing several login attempts at once — some of the failed-attempt count got lost in the race. Now correctly counted no matter how many attempts land at the same time.
  • Creating warps from multiple sources at the same moment could push the total warp count past your configured limit. The limit is now enforced atomically.


## 1.0.5+build.53 — 2026-08-25

### 🐛 Kit Items With Enchantments/Custom Names Were Silently Dropped on Every Boot

  • If a kit item had saved enchantments, a custom name, or any other item data, it failed to load every single time the server started (you'd see "Failed to deserialize item entry in kit" in the log) — because kits were being loaded before the game's item systems were fully ready. Kits are now re-loaded once the server has actually finished starting, so this data isn't lost anymore.


## 1.0.5+build.52 — 2026-08-25

### 🐛 /pay Could Lose Money on a Very Unlucky Double Failure

  • In the rare case where /pay failed to credit the receiver AND the automatic refund back to the sender also failed, the sender's money vanished into nowhere. The refund now guarantees it lands back in the sender's account no matter what.


## 1.0.5+build.51 — 2026-08-25

### 🐛 /tpa Timeout Wasn't Thread-Safe

  • Internal fix: the background timer that expires a /tpa request after it times out could run into the same off-main-thread issue as several dashboard fixes below. No visible behavior change — just safer under real player load.


## 1.0.5+build.50 — 2026-08-25

### 🐛 /mail sendall, Config Saves, and Three More Dashboard Endpoints Made Thread-Safe

  • /mail sendall/sendtempall ran on a background thread that could corrupt the shared mailbox if players were sending/reading mail at the same time. It now runs safely on the main thread.
  • Config files and mail data could be left truncated or corrupted if the server crashed mid-save. Saves are now atomic (write-then-rename) everywhere, matching how moderation data already worked.
  • The dashboard's Statistics, Permissions, and Discord integration pages were reading live server state directly from the HTTP request thread instead of the main thread — same bug class as the vanish/jail/ban fixes further down, now fixed here too.


## 1.0.5+build.49 — 2026-08-25

### 🐛 AFK Detection and Discord Role
...
[1.0.5] NeoEssentials 1.0.5 by Unknown on Aug 25, 2026
Download
# NeoEssentials — Changelog (26.1.x branch)

  • Minecraft 26.1–26.1.2 · NeoForge 26.1.2.76+**

All notable changes to this branch are documented here, starting from
  • v1.0.5** — earlier history (v1.0.4.x and before, including the port's own
migration history) is not carried over.

## 1.0.5+build.54 — 2026-08-25

### 🐛 Resource Pack Uploads, Login Lockout, and Warp Limits — Three Race-Condition Fixes

  • Uploading a resource pack through the web dashboard could silently corrupt the file — the upload parser was decoding the raw zip bytes as text. Fixed with a proper binary-safe parser.
  • The dashboard's login lockout (locking an account after repeated failed attempts) could be dodged by firing several login attempts at once — some of the failed-attempt count got lost in the race. Now correctly counted no matter how many attempts land at the same time.
  • Creating warps from multiple sources at the same moment could push the total warp count past your configured limit. The limit is now enforced atomically.


## 1.0.5+build.53 — 2026-08-25

### 🐛 Kit Items With Enchantments/Custom Names Were Silently Dropped on Every Boot

  • If a kit item had saved enchantments, a custom name, or any other item data, it failed to load every single time the server started (you'd see "Failed to deserialize item entry in kit" in the log) — because kits were being loaded before the game's item systems were fully ready. Kits are now re-loaded once the server has actually finished starting, so this data isn't lost anymore.


## 1.0.5+build.52 — 2026-08-25

### 🐛 /pay Could Lose Money on a Very Unlucky Double Failure

  • In the rare case where /pay failed to credit the receiver AND the automatic refund back to the sender also failed, the sender's money vanished into nowhere. The refund now guarantees it lands back in the sender's account no matter what.


## 1.0.5+build.51 — 2026-08-25

### 🐛 /tpa Timeout Wasn't Thread-Safe

  • Internal fix: the background timer that expires a /tpa request after it times out could run into the same off-main-thread issue as several dashboard fixes below. No visible behavior change — just safer under real player load.


## 1.0.5+build.50 — 2026-08-25

### 🐛 /mail sendall, Config Saves, and Three More Dashboard Endpoints Made Thread-Safe

  • /mail sendall/sendtempall ran on a background thread that could corrupt the shared mailbox if players were sending/reading mail at the same time. It now runs safely on the main thread.
  • Config files and mail data could be left truncated or corrupted if the server crashed mid-save. Saves are now atomic (write-then-rename) everywhere, matching how moderation data already worked.
  • The dashboard's Statistics, Permissions, and Discord integration pages were reading live server state directly from the HTTP request thread instead of the main thread — same bug class as the vanish/jail/ban fixes further down, now fixed here too.


## 1.0.5+build.49 — 2026-08-25

### 🐛 AFK Detection and Disco
...
[1.0.5] NeoEssentials 1.0.5 by Unknown on Aug 25, 2026
Download
# NeoEssentials — Changelog

Starting from **v1.0.5** — earlier history (v1.0.4.x and before) is not carried over.

  • Minecraft 1.21.1 – 1.21.11 · NeoForge 21.1.179+**


## 1.0.5+build.54 — 2026-08-25

### 🐛 Resource Pack Uploads, Login Lockout, and Warp Limits — Three Race-Condition Fixes

  • Uploading a resource pack through the web dashboard could silently corrupt the file — the upload parser was decoding the raw zip bytes as text. Fixed with a proper binary-safe parser.
  • The dashboard's login lockout (locking an account after repeated failed attempts) could be dodged by firing several login attempts at once — some of the failed-attempt count got lost in the race. Now correctly counted no matter how many attempts land at the same time.
  • Creating warps from multiple sources at the same moment could push the total warp count past your configured limit. The limit is now enforced atomically.


## 1.0.5+build.53 — 2026-08-25

### 🐛 Kit Items With Enchantments/Custom Names Were Silently Dropped on Every Boot

  • If a kit item had saved enchantments, a custom name, or any other item data, it failed to load every single time the server started (you'd see "Failed to deserialize item entry in kit" in the log) — because kits were being loaded before the game's item systems were fully ready. Kits are now re-loaded once the server has actually finished starting, so this data isn't lost anymore.


## 1.0.5+build.52 — 2026-08-25

### 🐛 /pay Could Lose Money on a Very Unlucky Double Failure

  • In the rare case where /pay failed to credit the receiver AND the automatic refund back to the sender also failed, the sender's money vanished into nowhere. The refund now guarantees it lands back in the sender's account no matter what.


## 1.0.5+build.51 — 2026-08-25

### 🐛 /tpa Timeout Wasn't Thread-Safe

  • Internal fix: the background timer that expires a /tpa request after it times out could run into the same off-main-thread issue as several dashboard fixes below. No visible behavior change — just safer under real player load.


## 1.0.5+build.50 — 2026-08-25

### 🐛 /mail sendall, Config Saves, and Three More Dashboard Endpoints Made Thread-Safe

  • /mail sendall/sendtempall ran on a background thread that could corrupt the shared mailbox if players were sending/reading mail at the same time. It now runs safely on the main thread.
  • Config files and mail data could be left truncated or corrupted if the server crashed mid-save. Saves are now atomic (write-then-rename) everywhere, matching how moderation data already worked.
  • The dashboard's Statistics, Permissions, and Discord integration pages were reading live server state directly from the HTTP request thread instead of the main thread — same bug class as the vanish/jail/ban fixes further down, now fixed here too.


## 1.0.5+build.49 — 2026-08-25

### 🐛 AFK Detection and Discord Role-Sync Messages Made Thread-Safe

  • The AFK system's movement-detection timer, and the chat message s
...
[1.0.4] NeoEssentials 1.0.4 by Unknown on Aug 17, 2026
Download
# NeoEssentials — Changelog

Starting from **v1.0.4** — earlier history (v1.0.3.x and before) is not carried over.

  • Minecraft 1.21.1 – 1.21.11 · NeoForge 21.1.179+**


## 1.0.4+build.61 — 2026-08-17

### 🐛 Commands Now Logged to Console

  • Every player command now gets logged to console/latest.log (e.g. "PlayerName issued command:
/home") — this wasn't happening in general before, only for a handful of specific commands.
Controlled by logging.categories.commands.normal (on by default) — turn it off there if you'd
rather not see it.


## 1.0.4+build.60 — 2026-08-17

### 🐛 Clickable Player Names Were Ignoring Your Chat Colors

  • If you had chat.clickablePlayerNames enabled (the default) and put a color code before
{neoessentials_username}/{neoessentials_displayname} in your chat format, the name itself
still rendered white — the color simply wasn't being applied to it. Fixed; the name now picks
up whatever color comes before it in your template, same as any other part of the line.


## 1.0.4+build.59 — 2026-08-17

### 🐛 SDLink Discord Duplicates Actually Fixed Now

  • Last update only warned you about SDLink's own native join/leave/chat/advancement messages
conflicting with NeoEssentials — you still had to manually edit SDLink's config to stop the
duplicates. Now NeoEssentials detects it automatically and stays quiet on its side, so a normal
SDLink install just works with no duplicate posts and no config editing needed.
  • This only affects Discord messages — in-game chat is unaffected.


## 1.0.4+build.45 — 2026-08-17

### 🐛 Doubled Rank Prefix in Chat, Duplicate SDLink Join/Leave Messages

  • Fixed a bug where players' rank prefix could show up twice in chat, e.g.
<[Owner] [Owner] PlayerName>. This happened when your permissions plugin (LuckPerms in
particular) formats names using Minecraft's own team system — the display name already had the
prefix in it, and the chat template added it again on top. No config changes needed.
  • Fixed duplicate join/leave (and advancement) messages showing up in Discord for servers using
Simple Discord Link (SDLink) — SDLink has its own built-in join/leave announcer that runs
independently of NeoEssentials, and both were firing at once. You'll now get a clear warning in
your server log telling you exactly which SDLink setting to turn off if this affects you.


## 1.0.4+build.44 — 2026-08-13

### ✨ Per-Category Logging Configuration

  • You can now control logging per-subsystem instead of all-or-nothing. New logging.categories
section in config.json — 12 categories (chat, economy, permissions, teleportation,
moderation, auction house, kits, web dashboard, Discord, config, commands, general), each with
its own normal (routine messages) and debug (verbose troubleshooting output) switch.
debug output goes to logs/debug.log, keeping your normal console/log clean.
  • If you had the old debug toggle on, it carries over automatically — every ca
...
[1.0.4] NeoEssentials 1.0.4 by Unknown on Aug 17, 2026
Download
# NeoEssentials — Changelog (mc-26.1-port branch)

  • Minecraft 26.1.2 · NeoForge 26.1.2.76+**

All notable changes to this branch are documented here, starting from
  • v1.0.4** — earlier history (v1.0.3.x and before, including the port's own
migration history) is not carried over.


## 1.0.4-mc26.1.2+build.61 — 2026-08-17

### 🐛 Commands Now Logged to Console

  • Every player command now gets logged to console/latest.log (e.g. "PlayerName issued command:
/home") — this wasn't happening in general before, only for a handful of specific commands.
Controlled by logging.categories.commands.normal (on by default) — turn it off there if you'd
rather not see it.


## 1.0.4-mc26.1.2+build.60 — 2026-08-17

### 🐛 Clickable Player Names Were Ignoring Your Chat Colors

  • If you had chat.clickablePlayerNames enabled (the default) and put a color code before
{neoessentials_username}/{neoessentials_displayname} in your chat format, the name itself
still rendered white — the color simply wasn't being applied to it. Fixed; the name now picks
up whatever color comes before it in your template, same as any other part of the line.


## 1.0.4-mc26.1.2+build.59 — 2026-08-17

### 🐛 SDLink Discord Duplicates Actually Fixed Now

  • Last update only warned you about SDLink's own native join/leave/chat/advancement messages
conflicting with NeoEssentials — you still had to manually edit SDLink's config to stop the
duplicates. Now NeoEssentials detects it automatically and stays quiet on its side, so a normal
SDLink install just works with no duplicate posts and no config editing needed.
  • This only affects Discord messages — in-game chat is unaffected.


## 1.0.4-mc26.1.2+build.46 — 2026-08-17

### 🐛 Doubled Rank Prefix in Chat, Duplicate SDLink Join/Leave Messages

  • Fixed a bug where players' rank prefix could show up twice in chat, e.g.
<[Owner] [Owner] PlayerName>. This happened when your permissions plugin (LuckPerms in
particular) formats names using Minecraft's own team system — the display name already had the
prefix in it, and the chat template added it again on top. No config changes needed.
  • Fixed duplicate join/leave (and advancement) messages showing up in Discord for servers using
Simple Discord Link (SDLink) — SDLink has its own built-in join/leave announcer that runs
independently of NeoEssentials, and both were firing at once. You'll now get a clear warning in
your server log telling you exactly which SDLink setting to turn off if this affects you.


## 1.0.4-mc26.1.2+build.45 — 2026-08-13

### ✨ Per-Category Logging Configuration

  • You can now control logging per-subsystem instead of all-or-nothing. New logging.categories
section in config.json — 12 categories (chat, economy, permissions, teleportation,
moderation, auction house, kits, web dashboard, Discord, config, commands, general), each with
its own normal (routine messages) and debug (verbose troubleshooting output) switch.

...
[1.0.3] NeoEssentials 1.0.3 by Unknown on Jul 21, 2026
Download
# NeoEssentials — Changelog

Starting from **v1.0.3** — earlier history (v1.0.2.x and before) is not carried over.

  • Minecraft 1.21.1 – 1.21.11 · NeoForge 21.1.179+**


## 1.0.3+build.78 — 2026-07-21

### 🐛 Vanish No Longer Makes Noise or Gets Noticed by Mobs

  • Fixed vanished players still being audible — footsteps, splashes, etc. no longer play for
other players while you're vanished.
  • Fixed hostile mobs still targeting and attacking vanished players — they're now ignored
by mob AI too, not just invisible to other players.
  • Vanished players can no longer hurt other players, interact with anything, or break/place
blocks by default — these each now need a specific permission
(neoessentials.vanish.hurt/.interact/.build, or the neoessentials.vanish.* wildcard
for all three) rather than being tied to the "can see vanished players" permission.
  • The "who can see who" rank system for vanish now uses proper permission nodes
(neoessentials.vanish.priority.<number> — higher number wins, equal numbers can see each
other too) instead of a fixed list of group names, so it works with any permission setup,
not just the specific group names the mod used to expect.


## 1.0.3+build.77 — 2026-07-21

### 🐛 Fixed /sell Selling the Wrong Item at the Wrong Price

  • Fixed /sell hand sometimes showing "minecraft:air" in the sale message and overcharging
up to 3x the price you set for the item.
  • Server admins (OPs) and permission groups with a broad wildcard permission no longer
automatically get the highest sell-price bonus, free tax exemption, or no pay cooldown —
those now have to be granted on purpose. (Configurable if you actually want the old
behavior back.)
  • Typing /sell with no arguments now sells whatever's in your hand, same as /sell hand.
  • Fixed a config file typo that could break Discord-login syncing on server start.


## 1.0.3+build.24 — 2026-07-18

### 🧹 Config Cleanup — Kit Commands Now Actually Run

  • Removed a handful of dead/duplicate config settings that either did nothing or were
always overridden by another file, so the config files are less confusing to edit.
  • Fixed:** the commands list on a kit (run when it's claimed, e.g. a welcome message)
was silently ignored — it now actually runs.
  • The service-account login option for external dashboards has been removed — use
/dashboard pair or /apikey create instead (see below).


## 1.0.3+build.23 — 2026-07-18

### ✨ Economy Now Supports Third-Party Economy Mods

as an optional alternative to NeoEssentials' own economy — enable with
economy.useExternalEconomy: true in config.json if you'd rather players' balances live
in that mod instead. Off by default.
  • The mod's internal economy/permission interop system (used for advanced mod-to-mod
integrations) was also split into its own publicly-installable component for other mo
...
[1.0.3] NeoEssentials 1.0.3 by Unknown on Jul 21, 2026
Download
# NeoEssentials — Changelog (mc-26.1-port branch)

  • Minecraft 26.1.2 · NeoForge 26.1.2.76+**

All notable changes to this branch are documented here, starting from
  • v1.0.3** — earlier history (v1.0.2.x and before, including the port's own
migration history) is not carried over.


## 1.0.3-mc26.1.2+build.78 — 2026-07-21

### 🐛 Vanish No Longer Makes Noise or Gets Noticed by Mobs

  • Fixed vanished players still being audible — footsteps, splashes, etc. no longer play for
other players while you're vanished.
  • Fixed hostile mobs still targeting and attacking vanished players — they're now ignored
by mob AI too, not just invisible to other players.
  • Vanished players can no longer hurt other players, interact with anything, or break/place
blocks by default — these each now need a specific permission
(neoessentials.vanish.hurt/.interact/.build, or the neoessentials.vanish.* wildcard
for all three) rather than being tied to the "can see vanished players" permission.
  • The "who can see who" rank system for vanish now uses proper permission nodes
(neoessentials.vanish.priority.<number> — higher number wins, equal numbers can see each
other too) instead of a fixed list of group names, so it works with any permission setup,
not just the specific group names the mod used to expect.


## 1.0.3-mc26.1.2+build.77 — 2026-07-21

### 🐛 Fixed /sell Selling the Wrong Item at the Wrong Price

  • Fixed /sell hand sometimes showing "minecraft:air" in the sale message and overcharging
up to 3x the price you set for the item.
  • Server admins (OPs) and permission groups with a broad wildcard permission no longer
automatically get the highest sell-price bonus, free tax exemption, or no pay cooldown —
those now have to be granted on purpose. (Configurable if you actually want the old
behavior back.)
  • Typing /sell with no arguments now sells whatever's in your hand, same as /sell hand.
  • Fixed a config file typo that could break Discord-login syncing on server start.


## 1.0.3-mc26.1.2+build.24 — 2026-07-18

### 🧹 Config Cleanup — Kit Commands Now Actually Run

  • Removed a handful of dead/duplicate config settings that either did nothing or were
always overridden by another file, so the config files are less confusing to edit.
  • Fixed:** the commands list on a kit (run when it's claimed, e.g. a welcome message)
was silently ignored — it now actually runs.
  • The service-account login option for external dashboards has been removed — use
/dashboard pair or /apikey create instead (see below).


## 1.0.3-mc26.1.2+build.23 — 2026-07-18

### ✨ Economy Now Supports Third-Party Economy Mods

as an optional alternative to NeoEssentials' own economy — enable with
economy.useExternalEconomy: true in config.json if you'd rather players' balances live
in that mod instead. Off by default.
  • The mod's internal ec
...
# NeoEssentials — Changelog

  • Minecraft 1.21.1 – 1.21.11 · NeoForge 21.1.179+**


## 1.0.2.6+build.480 — 2026-07-10

### 🐛 Bug Fixes

  • ChestShop double chests:** Buy/sell, stock checks, and dynamic pricing only read
one half of a double chest, so filling/emptying one side could block transactions
even with space/stock free on the other side. Now reads the full combined 54-slot
inventory.
  • ChestShop admin shop holograms:** /chestshop hologram enable|disable|move
could never be used on admin shops (the ownership check required a player-owner
UUID that admin shops don't have). Now authorized via
neoessentials.shop.create.admin.

### ✨ Improvements

  • Command feedback messages** now show a small [NE] tag and use softer,
vanilla-matching colors instead of harsh neon ones, so they're both more
recognizable and easier on the eyes.
  • NPC Shops:** Selling now actually works (previously configuring a sell price did
nothing — only buying was implemented). Added a permission check
(neoessentials.shop.use) before opening the shop menu. Added
/npcshop respawn <shopId> to re-summon a shop's NPC if it's ever lost (e.g. void
damage) without losing its configured listings.

### 🔧 Maintenance
  • Build version string now includes the target Minecraft version
(1.0.2.6-mc1.21.1+build.N), matching the 26.1.x port branch.


> The entries below (build.~225 – build.~460) reconstruct work done between
> build.214 and build.480 that was never logged at the time. Build numbers are
> **approximate** — dates and content are accurate to the commit history.

## 1.0.2.6+build.~460 — 2026-07-08

### 🐛 Bug Fixes

  • /invseeedit, /ecedit:** Fixed the edit lock never releasing — the first use
against any target permanently locked it out for every future editor (including
yourself) until a server restart. Now releases on GUI close or disconnect.
  • /pay:** Fixed the amount and player name showing in swapped positions (e.g.
"Paid <player>$ to 1000.0" instead of "Paid 1000.00$ to <player>"), plus a
decimal-formatting mismatch between the amount and fee/net values in the same
message.
  • /eco give|take|set|reset:** The admin's own confirmation message was missing
the currency symbol. /eco take also never notified the target player that money
was taken — now it does, matching give/set/reset.
  • Localization:** fixed a localize() overload ambiguity that silently shifted
{n} message placeholders across jail/ban/freeze/etc. messages. Also fixed
swapped/missing arguments in several moderation messages, and a duplicate-broadcast
bug where staff saw every moderation action twice.
  • /jail was completely broken** — every attempt threw an internal error before
jailing the player, due to a null being passed where it wasn't allowed. Fixed.
  • Tablist:** fixed prefix/suffix silently reverting to blank after the first
refresh cycle following a reload.

### ✨ Features
  • Added cuboid/sp
...
# NeoEssentials — Changelog (mc-26.1-port branch)

  • Minecraft 26.1.2 · NeoForge 26.1.2.76+**

All notable changes to this branch are documented here, starting from where it
forked off Dev-Builds to begin the Minecraft 26.1.2 port.

> Build numbers below are approximate except build.482 (the real build counter
> isn't tracked in git for historical commits).
>
> **Known gap:** this branch hasn't yet merged several Dev-Builds fixes from
> 07-06/07-08 (after this branch had already forked) — including a
> /jail-breaking NPE, permission precedence, kit and Auction House
> duplication fixes, dashboard security hardening, and /invseeedit//pay/
> /eco fixes. These need porting over separately.


## 1.0.2.6+build.~330 — 2026-07-04

### 🎉 Port Started: Minecraft 26.1.2 / NeoForge 26.1.2.76

This branch forks from Dev-Builds here to begin porting NeoEssentials to
Minecraft 26.1.2. Mojang introduced a new versioning scheme with 26.1.2 and
NeoForge 26.1.2.76 carries substantial breaking API changes over 1.21.1 —
this is not a drop-in recompile.

### 🔀 Initial API Migration
Five commits mechanically migrating the codebase toward NeoForge 26.1.2.76 /
Minecraft 26.1.2 compatibility (reduced compile errors from 645 to 103):
ResourceLocation→Identifier renames, permission-level API changes,
GameProfileCache replacement, teleportTo signature changes, ClickType→
ContainerInput, the new WorldClock time API, inventory
armor/offhand restructuring, registry/CompoundTag Optional-wrapping
changes, and several other mechanical renames.


## 1.0.2.6-mc26.1.2+build.~460 — 2026-07-09

### 🚀 Milestone
The full Minecraft/NeoForge 26.1 API migration is complete — the mod compiles
and boots to "Done" with no exceptions on Minecraft 26.1.2 / NeoForge
26.1.2.76.

### 🔧 Maintenance
  • Build version string now tags the target Minecraft version
(1.0.2.6-mc26.1.2+build.N).


## 1.0.2.6-mc26.1.2+build.482 — 2026-07-10

### 🐛 Bug Fixes

  • ChestShop double chests:** Buy/sell, stock checks, and dynamic pricing only
read one half of a double chest. Now reads the full combined 54-slot
inventory.
  • ChestShop admin shop holograms:** /chestshop hologram enable|disable|move
could never be used on admin shops. Now authorized via
neoessentials.shop.create.admin.

### ✨ Improvements

  • Command feedback messages** now show a small [NE] tag and use softer,
vanilla-matching colors.
  • NPC Shops:** Selling now actually works (previously only buying was
implemented). Added a permission check before opening the shop menu. Added
/npcshop respawn <shopId> to re-summon a lost shop NPC without losing its
listings.

# NeoEssentials — Changelog

  • Minecraft 1.21.1 – 1.21.11 · NeoForge 21.1.179+**


## 1.0.2.5+build.1072 — 2026-03-06

### 🐛 Fixed: PowerTool System

  • Powertools now fire on block right-clicks** — previously only worked when clicking in empty air; now fires on any right-click (air, block, mob)
  • /powertooltoggle now actually works** — was checking a dead legacy class instead of the real per-player toggle
  • Dead PowertoolToggleCommand class replaced with a compatibility shim to prevent double command registration


## 1.0.2.5+build.1065 — 2026-03-05

### 📋 Tablist Config File

Tablist settings moved to **config/neoessentials/tablist.json** — a dedicated, fully-documented file separate from the main config.

  • Auto-deployed on first start, backwards compatible with existing config.json tablist sections
  • New groupColors — colour player names by permission group in the header/footer
  • & colour codes work everywhere in the file
  • New /tablist config command shows a live settings summary
  • /tablist info now shows the full file path
  • Reload anytime with /tablist reload

### 🌍 Lang File Key Audit

  • ~120 missing translation keys added covering Whois, Helpop, List, ChestShop, Vault, and moderation systems
  • Server lang files now **auto-merge new keys** on startup — admin edits are never overwritten

### 🐛 Fixes

  • Duplicate translation keys in en_us.json removed
  • /tablist reload resets animation frames immediately


## 1.0.2.5+build.1057 — 2026-03-05

### ✨ ChestShop System

Sign-based shops — the classic essentials shop experience, natively in NeoForge.

  • Sign format (all 4 lines):**
``
[blank or name] ← auto-assigns your name if left blank
[quantity] ← e.g. 5
[B buy:S sell] ← e.g. B 10:S 5 / B FREE / S 2.50
[item or ?] ← e.g. diamond — or ? to right-click-assign
`

  • Right-click sign = **BUY**, left-click sign = **SELL**
  • Blank line 1 auto-assigns the creating player's name
  • Write ? on line 4, then right-click the sign holding an item to fill it in
  • Admin Shops** — Admin Shop on line 1 = unlimited stock, no chest required
  • Shops persist across restarts in neoessentials/shops.json
  • Full economy integration — uses EconomyManager with rollback safety
  • Permission-gated creation and usage
  • /chestshop command suite: list, info, convert, remove, reload

### ✨ Vault API

  • Economy, Chat, and Permission Vault providers
  • Chat prefix/suffix now uses LuckPerms or FTB Ranks when installed
  • Deposit/withdraw events fire for all Vault-originated transactions

### 🐛 Fixes

  • NeoForge 1.21.1 API compatibility fixes across multiple commands
  • config.json` duplicate keys and JSON syntax error fixed
  • Vault economy currency format now reads live from config
  • Vault chat prefix/suffix now correctly uses external permission adapters


## 1.0.2.5+build.908 — 2026-03-03

### ✨ 50+ New Commands

Player info, world interaction, teleportation, item customisation, admin tools, eco
...
# NeoEssentials v1.0.2.4

## 🚨 CRITICAL UPDATE - Module Conflict Resolution + Teleportation Fix

  • Build #750** | January 13, 2026 | MC 1.21.1 - 1.21.11 | NeoForge 21.1.179+ / 21.11.24-beta

This release fixes critical compatibility issues AND teleportation safety bugs!


## 🐛 Critical Fixes

### Unsafe Teleportation System - FIXED ✅
  • The Problem:**
  • Safety config options (enableHomeTeleportSafety: false) didn't work
  • Mod blocked teleportation to "unsafe" locations even when safety was disabled
  • Couldn't teleport to Nether ceiling, lava bases, intentional unsafe builds
  • All teleportation types affected (homes, warps, spawn, TPA)

  • The Solution:**
  • ✅ Fixed safety check logic in HomeManager, WarpManager, SpawnManager
  • ✅ When safety true: Finds safe alternatives or blocks if none exist
  • ✅ When safety false: Allows teleportation ANYWHERE (even dangerous spots)
  • ✅ Updated all config comments to clearly explain behavior
  • ✅ Tested with Nether ceiling, void platforms, lava builds

  • The Result:**
  • 🎉 Full control over teleportation safety!
  • 🎉 Advanced players can disable safety for legitimate use cases!
  • 🎉 Nether ceiling farms work when safety is disabled!
  • 🎉 Default behavior unchanged (safe by default for casual players)!

  • Affected Config Options:**
``json
"enableHomeTeleportSafety": false // Now works! Allows homes in lava, void, etc.
"enableWarpSafety": false // Now works! Allows warps at dangerous locations
"enableSpawnSafety": false // Now works! Allows spawn anywhere
"enableTeleportSafety": false // Now works! Allows TPA to unsafe locations
`

### Module Export Conflicts - RESOLVED ✅
  • The Problem:**
  • Server crashes with "Module neoessentials exports package..." errors
  • Conflicts with: JadeAddons, SmoothChunk, SDLink, LetMeDespawn, and others
  • Incompatible with Arclight/hybrid server platforms
  • "Module neoforge reads more than one module named com.google.gson"

  • The Solution:**
  • ✅ Migrated from Shadow plugin to NeoForge's native JarJar system
  • ✅ Removed Gson dependency (NeoForge already provides it)
  • ✅ Properly isolated Java-WebSocket library
  • ✅ Eliminated module-info.class conflicts
  • ✅ No longer exports Minecraft/NeoForge packages

  • The Result:**
  • 🎉 Works with ALL tested mod combinations!
  • 🎉 Compatible with Arclight & hybrid platforms!
  • 🎉 Clean server startup every time!
  • 🎉 No more module resolution errors!

  • Technical Changes:**
  • Build system: Shadow → JarJar
  • Dependencies: Gson removed, Java-WebSocket isolated
  • JAR structure: Optimized for NeoForge module system
  • Module metadata: Cleaned up, no package exports


## 🎉 Previous Updates (v1.0.2.4)

### Chat Channels System
  • FIXED:** Channels were configured but commands didn't exist!
  • /l, /g, /staff commands now work
  • Prefix support: !message (global), @message` (staff)
  • Local = proximity chat, Global = server-wide, Staff = permission-based
  • Fully functional and documented

### Config Auto-Update System
  • FIXE
...
# NeoEssentials v1.0.2.3 - Quality & Performance Update

  • Build #698+** | January 6, 2026 | Minecraft 1.21.1 - 1.21.11 | NeoForge 21.1.179+ / 21.11.24-beta


## 🎯 Build #698 - Documentation & Final Polish


### 🛠️ Perfect Code Quality! ✨

  • Achievement: ZERO Warnings! 🏆**

  • Final fixes:**
  • ✅ Performance: StringBuffer → StringBuilder
  • ✅ Modern Java: .length() > 0 → !isEmpty()
  • ✅ Clean code: Removed redundant suppressions
  • ✅ Type safety: Fixed @Nullable annotations
  • ✅ Simplification: Cleaner if statements

  • Result:**
  • 100% clean compilation
  • Professional code standards
  • Production-ready quality

### 🔇 Clean Logs Verified

Debug logging properly controlled by config - clean logs in production!


## 🎯 Build #680+ - LuckPerms & Quality Improvements

### 🏷️ LuckPerms Placeholders - Now Working! 🎉

All LuckPerms placeholders fixed and working perfectly:

  • Available Placeholders:**
  • {luckperms_prefix} - Player's prefix
  • {luckperms_suffix} - Player's suffix
  • {luckperms_group} - Primary group name
  • {luckperms_displayname} - Full formatted name

  • Example Usage:**
``json
{
"chat-format": "{luckperms_prefix}{neoessentials_name}: {MESSAGE}"
}
`
  • Result:** [Admin] PlayerName: Hello!

  • What was fixed:**
  • Placeholders now properly query LuckPerms API
  • Enhanced debug logging for troubleshooting
  • Full support for weighted prefixes/suffixes

### 🔇 Clean Logs - No More Console Spam! 🧹

  • Removed 70+ lines of debug output per chat message!**

  • New config option:**
`json
{
"logging": {
"enableDebugLogging": false
}
}
`

Set to
true only when debugging issues, otherwise enjoy clean logs!

  • What was cleaned:**
  • Chat formatting debug (40+ lines → 0)
  • Placeholder resolution (6 lines → 0)
  • Permission queries (7 lines → 0)
  • LuckPerms integration (20+ lines → 0)

### 🛠️ Code Quality - 31+ Fixes! ✨

  • Professional, production-ready code:**
  • ✅ 8 critical errors fixed
  • ✅ 23+ warnings resolved
  • ✅ Zero compilation errors
  • ✅ Clean, maintainable codebase

  • Major fixes:**
  • Constructor issues
  • File corruption repairs
  • NPE protection
  • Duplicate methods removed
  • Resource handling improved


## 🎯 Build #627 - Critical Shutdown Fix

### 🔧 Server Shutdown Hang RESOLVED 🎉

  • The Problem:**
Server would freeze forever when stopping/restarting:
`
[INFO] ThreadedAnvilChunkStorage: All dimensions are saved
[HANGS HERE - Never exits, requires force-kill]
`

  • The Solution:**
Complete thread pool shutdown - server now exits cleanly in 10-30 seconds!

  • What Was Fixed:**
  • ✅ Economy system executors (balances, transactions, toggles)
  • ✅ AFK detection schedulers (manager + movement detector)
  • ✅ Ban cleanup scheduler
  • ✅ Teleport request timeouts
  • ✅ Dashboard HTTP server (5-second graceful shutdown)

  • Result:**
  • Server exits cleanly every time
  • No more hanging on /stop
  • All resources properly released
  • Detailed shutdown logging

### 🛠️ New: Thread Diagnostics

  • Automatic monitoring:**
``
[INFO] Running thre
...
NeoEssentials Icon
Download NeoEssentials
Select game version
Select platform