Compatibility
Minecraft: Java Edition
1.21.5
1.21.1
Platforms
Supported environments
Links
Creators
Details
Licensed MIT
Published 8 months ago
Updated 7 months ago
Henny Essentials
A server utility / community administration tool
Server-side Only: This mod is only required on the server side. Clients can connect without having the mod installed.
📌 Join the Discord for support 🔔 As of Version 1.0.1, Henny Essentials no longer requires Architecury API to be installed.
✨ Features
🧠 Conditions (New)
- Define conditions in
config/HennyEssentials/Conditions.jsonto run commands based on player actions. - Currently supports
playtimetype conditions — more types to come in future versions. - Useful for automating rewards like auto-ranking players after X minutes of play.
triggerValueis in seconds (e.g., 300 for 5 minutes).- Commands support
%pplaceholder for the player name. - Example:
{ "type": "playtime", "triggerValue": 300.0, "commands": [ "say hi %p!", "give %p minecraft:diamond" ], "conditionID": "admin-rank" } - Commands:
/he condition reloadconfig– Reloads the Conditions config file./he condition manualredeem <player> <conditionID>– Manually trigger a condition reward./he condition unredeem <player> <conditionID>– Reset a condition so a player can earn it again.
📄 Pages (New)
- Define custom pages in
config/HennyEssentials/Pages.json. - Pages display in-game readable content.
- Use
/he pageto access custom pages. - Permissions for page access coming soon.
{
"pages": [
{
"linesPerPage": 5,
"content": [
"§aA line on a page.",
"§bAnother line!",
"§aThis is the third line!",
"§bLine number 4!",
"§aTHE LAST LINE OF THE PAGE!",
"§bTHE FIRST LINE OF A NEW PAGE!",
"§aHello <3"
],
"header": "§bDefault §aPage",
"pageID": "default",
"padding": "§8~"
}
]
}
🎨 Chat Colors (New Enhancements)
- If chat formatting and colors are enabled in config, players can use Minecraft-style chat colors using a configurable symbol (default:
&). - Permissions can restrict access to specific colors using:
he.chat.format.COLORNAME- Example:
he.chat.format.dark_grayfor dark gray text. - Use
he.format.*to allow all formats.
- When using LP integration, check permissions using
lp verbose on. - Without LP, use
/he permission verbose.
🍀 LuckPerms Integration
- Henny Essentials now supports LP integration in config.
- All HE permission checks will be performed by LP instead.
- If chat formatting enabled in config, HE will read LuckPerms meta for prefix/suffix
- Use the
lp verbosecommand to check permission nodes for commands - Recommended LP version: 5.4.150
🔨 Moderation
Provides various utilities to moderate a server:
- Commands to mute / ban players (supports temporary bans and mutes).
- Scheduled server restarts with warnings broadcast to all online players.
- Auto-restart system that can be toggled via config.
- Confirmation and error messages for mute/ban actions.
- Audit log now records mutes, bans, unbans, and banned item usage attempts.
- New commands to manage offline player permissions by UUID.
🔐 Permissions
- Enable the permissions module in
config/HennyEssentials/HennyEssentials.json. - Basic LuckPerms integration is available. Set both
permissionsEnabledandluckPermsIntegrationtotruein config. - Assign permissions to users and groups to control access to commands and dimensions (if enabled).
- Dimension-based permissions:
- Restrict access to dimensions or TPA access based on permission nodes like
dimension.minecraft:the_nether. - Automatically enforced if enabled in config.
- Restrict access to dimensions or TPA access based on permission nodes like
- Supports home limits defined via permission node
home.limit.NUMBER. - Players/groups can bypass cooldowns using nodes like
he.home.nocooldown,he.tpa.nocooldown, etc.
💬 Chat Formatting
- Supports prefixes and suffixes for users and groups.
- Uses the permission format
weight.numberto determine priority. - Queries LuckPerms meta if LP override is enabled in config.
- Example:
If a user hasweight.100and their group hasweight.99, the user's prefix will be displayed first. - Prefixes and suffixes support the TELLRAW JSON format.
🏰 Announcements
- Create announcements in
config/HennyEssentials/Announcements.jsonthat are broadcast at regular intervals. - Supports plain text or full TELLRAW JSON messages.
- Reloadable with
/he reloadAnnouncements.
🏷️ Kits
- Create kits that players can redeem.
- Kits can have cooldowns.
- Kits can be organized by category.
/he kit setCategoryassigns a kit to a category.- If permissions are enabled, players require the permission
kit.kitnameto redeem. - Inventory-based kit creation UI via
/he createkit kitname cooldown. - Kits can be edited (
/he editkit) or deleted (/he deletekit). - Kits display in an inventory GUI (configurable).
- Display icons can be assigned with
/he kit setDisplayIcon.
⌘ Warps
- Warps can be organized by category.
/he warp setCategoryassigns a warp to a category.- Warp list (
/he warps) adapts to whether categories exist. - Interactive GUI or text-based fallback listing.
- Permission-based warp access via
warp.warpname(optional, from config). - You can set access to a whole category of warps with permission:
warpcategory.category - Warp display icons configurable with
/he warp setDisplayIcon.
🔢 Homes
- Players can set, delete, and list homes.
- Cooldowns and limits defined in config.
- Limits can also be defined via
home.limit.NUMBERpermission nodes. - Permissions can allow skipping cooldowns (
he.home.nocooldown).
🚪 Back Command
/he backteleports players to their last death location.- Death location persists across restarts.
- Configurable cooldowns.
🌚 AFK System
- Tracks AFK status of players.
- Can automatically kick AFK players after configurable time.
- Configurable messages and timeouts.
- Permission
he.afk.nokickexempts players from being kicked.
🛈 Teleport System
- Reliable teleportation for
/warp,/home,/back,/tpa, etc. - Warmups and cooldowns configurable in TeleportConfigs.
- Permissions available to bypass cooldowns:
he.warp.nocooldownhe.tpa.nocooldownhe.home.nocooldownhe.back.nocooldown
🔀 Item Banning
- Ban specific items via
/he banItem itemID reasonor/he banHeldItem reason. - Prevents pickup, crafting, and use of banned items.
- Players are notified with ban reason.
- Audit log entries record banned item use.
- Background task can remove banned items from inventories on interval.
⌘ Command Aliases
- Define aliases in config.
- Example:
A config entry of"he warps": "warps"creates/warpscommand that mirrors/he warps. - Aliases retain all functionality and get their own permission nodes.
🎫 Command Tokens
- Configure tokens in
config/HennyEssentials/CommandTokens.json. - Tokens run commands when right-clicked.
- Tokens can be locked to a player.
- Reload with
/he token reloadConfig.
📚 Commands
🔨 Moderation Commands
/he tempmute <player> <duration> <reason>
/he tempban <player> <duration> <reason>
/he mute <player> <reason>
/he ban <player> <reason>
/he banuuid <uuid> <reason>
/he unban <player>
/he unbanUUID <uuid>
/he unmute <player>
/he viewechest <player> ~ view player ender chest contents
/he invsee <player> ~ view player inventory
Duration format:
1M1w6d5m10s= 1 month, 1 week, 6 days, 5 minutes, 10 seconds
🏷️ Kit Commands
/he createkit kitname cooldown
/he editkit kitname
/he deletekit kitname
/he kits
/he kit <kitname>
🔐 Permission Commands
/he permission
/he permission verbose
/he permission user add/remove "command.permission.node"
/he permission group add/remove "command.permission.node
/he permission user addByUUID playerUUID permission.node
/he permission user removeByUUID playerUUID permission.node"
🎫 CommandToken Commands
/he token give <player> <tokenname> [true/false]
/he token reloadConfig
👤 Player Commands
/he heal
/he vanish
/he feed
/he fly
/he repair
/he tpa <player>
/he tpahere <player>
/he home homename
/he sethome homename
/he delhome homename
/he homes
/he back
/he spawn
/he echest ~ ender chest menu
/he ctable ~ crafting table menu
/he stonecutter ~ stonecutter menu
/he anvil ~ anvil menu
⚙️ Config Reload Commands
/he reloadConfig [false]
/he reloadAnnouncements
🧬 Permissions TL;DR
- Enable in
config/HennyEssentials/HennyEssentials.json - Enable both
permissionsEnabledandluckPermsIntegrationfor LuckPerms support. - Assign groups using:
group.groupname - Players inherit permissions from all assigned groups.
- Wildcards like
command.*work, but can bypass cooldowns.
🛠️ Kit Creation Instructions
- Run:
/he createkit <KITNAME> <COOLDOWN_SECONDS>
- Use the inventory UI to place items in the kit.
- Close the menu to finalize kit creation.
⚙️ More on Permissions
- Enable with
permissionsEnabled: truein config. - Use
luckPermsIntegration: truefor LuckPerms support. - Use permission nodes like
home.limit.5to control home limits. - Nodes like
he.afk.nokickorhe.vanishonloginallow for deeper control. - Vanished players no longer show in tab list or broadcast advancements.
💚 Support the dev
- If my mods have helped you at all, please consider throwing a tip my way at my KoFi 💚


