Tags
Creators
Details
Licensed MIT
Published last year
Updated 2 weeks ago
All versions
✨
1.0.3
Release
NeoEssentials 1.0.33 months ago 1,382
Uploaded by
Compatibility
Minecraft: Java Edition
1.21.1–1.21.10
Platform
NeoForge
Supported environments
Dedicated servers only
Changes
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 theneoessentials.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 handsometimes 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
/sellwith 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
commandslist 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 pairor/apikey createinstead (see below).
1.0.3+build.23 — 2026-07-18
✨ Economy Now Supports Third-Party Economy Mods
- Added support for SG Economy API
as an optional alternative to NeoEssentials' own economy — enable with
economy.useExternalEconomy: truein 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 mod developers.
1.0.3+build.22 — 2026-07-18
🧹 Dashboard Command Cleanup
- Fixed
/dashboard pairnot being able to accept a server URL at all — it now works correctly (the URL needs quotes:/dashboard pair "http://host:port" <code>). - Removed
/dashboard update/check/force— leftovers from an old bundled dashboard UI that no longer ships with the mod, so these commands never actually did anything useful.
1.0.3+build.21 — 2026-07-17
✨ One-Command External Dashboard Pairing
- Connecting an external dashboard app to your server is now a single command:
/dashboard pair "<dashboardUrl>" <code>(get the code from the dashboard's own setup page). Both sides connect to each other automatically — no more manually copying keys between two config files. /dashboard unpairdisconnects cleanly.
1.0.3+build.20 — 2026-07-17
🐛 Bug Fix — LuckPerms Group Now Affects Chat & Tablist
- Fixed: a player's LuckPerms group wasn't being used for
group:<name>chat formats or per-group tablist styling — both always fell back to the default, even though permission nodes from LuckPerms worked fine. Now the player's real LuckPerms primary group is used correctly for both.
1.0.3+build.19 — 2026-07-17
✨ API Keys, Locked-Down Admin Settings, and Dashboard Account Sync
- New: API keys for external dashboard apps — a proper, revocable login credential
separate from human dashboard accounts. Create one with
/apikey create <label>. - Security fix: MOTD, rules, shops, holograms, and warps could previously be edited by any logged-in dashboard account, including read-only ones. Editing these now correctly requires an admin-level account; viewing them still doesn't.
- Dashboard user accounts can now sync automatically between the mod and an external dashboard app in both directions.
1.0.3+build.18 — 2026-07-17
🐛 Bans and Kicks Weren't Actually Being Tracked
- Fixed:
/banand/kick(and related commands) were silently being intercepted by vanilla Minecraft's own built-in versions instead of NeoEssentials' — meaning bans and kicks never showed up in the mod's own history or the dashboard, even though the ban/kick itself still worked. Now correctly tracked. - Fixed
/ban's reason text sometimes getting merged into the player name field. - Added
/modhistory <player>(alias/history) to view a player's full moderation record in-game. - Fixed the dashboard's Discord "send test message" button, which previously always reported success without actually sending anything.
- Fixed deleting a permission group silently doing nothing.
1.0.3+build.17 — 2026-07-16
🐛 Storage Fix + 9 Bugs From a Full Command Audit
- Fixed: the SQLite storage option could silently fail to save/load data in some setups.
- Also fixed:
/baltopoccasionally showing stale balances,/setworthrejecting some item IDs,/invseeeditcrashing, jail auto-ban thresholds never actually triggering,/chatformatnot being a registered command,/mutecommands failing from console/RCON, and a couple of command-name conflicts (/gc,/me).
1.0.3+build.16 — 2026-07-16
✨ /sudo Improvements
/sudo <player> c:<message>makes a player say something in real chat (going through normal chat formatting/filters), instead of just running a command as them./sudo *runs a command as every online player at once;/sudo **includes yourself too.
1.0.3+build.15 — 2026-07-15
✨ Discord Integration Rewrite
- Rebuilt the Discord chat-relay integrations for Simple Discord Link, Mc2Discord, and DCIntegration against their real, official APIs (previously used guesswork that could break on updates). Dropped DiscordSRV support — it doesn't run on NeoForge servers.
- Dashboard's "Login with Discord" now only works by reading an account link you've already set up in-game via one of the above mods — the mod itself never talks to Discord directly.
1.0.3+build.14 — 2026-07-14
✨ Module Toggles Fixed, Public Moderation Lookup, Dashboard Commands Fixed
- Fixed: many of the on/off switches in
config.json'smodules/commandssections didn't actually do anything for a lot of commands. They all work correctly now — note that toggling any of these still needs a server restart, not just/neoe reload. - Added new toggles for holograms, shops, the auction house, and a few other systems that previously couldn't be disabled at all.
- Fixed:
/dashboardand/dashboardregisterwere completely non-functional commands — typing them did nothing. Both now work. - Added a public, no-login player moderation lookup page/API for transparency, similar to other ban-management plugins.
1.0.3+build.10 — 2026-07-12
✨ Storage Backends Now Cover the Whole Mod
- Extended the pluggable JSON/YAML/SQLite/MySQL storage system to every remaining
manager: economy, kits, homes,
/back, warps, spawn, jail, freeze, vanish, AFK, ignore lists, chat formats, holograms, chest/NPC shops, permissions (groups, users, aliases), dashboard accounts, custom-language overrides, resource-pack metadata, and the Auction House. - The Auction House no longer uses its own separate SQLite database — it now shares the same backend as everything else, including MySQL for cross-server listings.
- All existing data imports automatically and losslessly the first time you switch backends, same as the moderation system did in the previous release.
- Fixed a bug where
/warp's per-player warps were read/written from a hard-coded path instead of the configured data directory.
1.0.3+build.9 — 2026-07-12
✨ Pluggable Storage Backends (JSON / YAML / SQLite / MySQL)
- New
storagesection inconfig.jsonlets you pick JSON (default), YAML, SQLite, or MySQL as the backend for supported data. MySQL enables true multi-server shared data — point every server in your network at the same database and they share bans/mutes/etc. in real time. - This release migrates the moderation system (bans, mutes, kicks, warns, notes, reports) onto the new system. Existing data is imported automatically and losslessly the first time you switch backends.
- Economy, homes, warps, kits, permissions, and the rest of the mod's data are unaffected for now — still plain JSON, with the same treatment planned for a future update.
1.0.3+build.8 — 2026-07-12
✨ Moderation System Overhaul
- Fixed: dashboard bans didn't actually ban anyone. Two disconnected ban
stores existed —
/banenforced one, the dashboard wrote to the other, and they never talked to each other. Consolidated onto one canonical, UUID+IP-aware store with ban IDs, full history, and an unban audit trail (who/when). - Mutes now track reason, staff attribution, full history, and an unmute audit trail (previously just a bare name→expiry map), plus new IP-mute support.
- Kicks are now recorded with a queryable history (previously fire-and-forget).
- New: staff notes (
/note,/notes) and player reports (/report,/reports,/reviewreport) — players can report others even while staff are offline, and staff can leave freeform notes on a player's record. - The dashboard's moderation API now exposes all of the above, including new IP-ban/IP-mute/kick/note/report routes that didn't exist before.
1.0.3+build.7 — 2026-07-11
🐛 Bug Fixes
- Dashboard account login history reset on every restart: last-login time,
last-login IP, failed-attempt count, and lockout state were tracked correctly
in memory but never actually saved to
dashboard_users.json— a server restart silently wiped all of it. Now persisted and restored correctly. - Locale-dependent number formatting corrupted dashboard API data: TPS,
tick time, memory/CPU percentages, and backup size fields used the server's
default locale for decimal formatting, producing
"19,5"instead of"19.5"on comma-decimal locales — external dashboard clients parsing these as numbers would silently get truncated/wrong values. Now always formatted with a fixed locale regardless of server language settings. - Dashboard API 500'd on empty POST bodies from non-PHP clients: routes like
reload permissions, backup create/restore, and cloud-storage config crashed
whenever the caller sent an empty JSON array
[]instead of an empty object{}for a parameterless action (which is how PHP/Laravel serializes an empty parameter list) — a real issue for the standalone dashboard app. These now treat an empty array the same as no parameters at all instead of erroring.
1.0.3+build.6 — 2026-07-11
🐛 Bug Fixes
- Tablist
playerFormatspacing had no effect: editingplayerFormatintablist.json— including adding spaces between{prefix}/{player}/{suffix}— never actually changed anything, since the setting was loaded but never applied. Now the literal text around each token is correctly folded into the prefix/suffix sent to the client, so spacing (and other literal text in the template) actually renders. Note: the default template's&f/&rcolor codes now also apply, which they never did before — a visible change for servers that never touched this setting.
1.0.3+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|movecould never be used on admin shops (the ownership check required a player-owner UUID that admin shops don't have). Now authorized vianeoessentials.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.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:yiaK4SZh:vmFvkhJV"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:yiaK4SZh:vmFvkhJV"
}

