Essentials GG configuration
The files
| File | What is in it |
|---|---|
config/essentialsgg.json | Module switches, the settings of each module, and the colors. |
config/essentialsgg/commands.json | One line per command: on or off, its aliases, and a cooldown. |
config/essentialsgg/lang/<code>.json | Every message, one file per language. |
<world>/data/essentialsgg/players.json | Players: homes, money, nicknames, mutes, warnings, permissions. |
<world>/data/essentialsgg/server.json | Spawn, warps, kits and permission groups. |
Modules
The modules section of config/essentialsgg.json has one switch per module: teleport, homes, warps, spawn, rtp, kits, economy, moderation, chat, messaging, nicknames, afk, utility, workbenches, info, sidebar, tablist, permissions and discord. All are on except sidebar and discord.
Settings
| Key | Default | What it does |
|---|---|---|
teleport.warmupSeconds | 3 | Seconds to stand still before a teleport. 0 teleports at once. |
teleport.cancelOnMove | true | Moving during the wait cancels the teleport. |
teleport.requestSeconds | 120 | How long a /tpa request stays open. |
teleport.backOnDeath | true | /back returns to where you died. |
homes.defaultLimit | 3 | Homes a player may set without a limit permission. |
homes.limitTiers | 1, 3, 5, 10, 25, 50, 100 | Numbers usable in essentialsgg.homes.limit.<n>. |
spawn.newPlayersAtSpawn | true | New players start at the spawn. |
spawn.everyJoinAtSpawn | false | Every join starts at the spawn. |
rtp.radius, rtp.minRadius | 5000, 300 | How far from the world spawn random teleports land. |
rtp.cooldownSeconds | 300 | Seconds between two /rtp per player. |
rtp.overworld, rtp.nether, rtp.end | true, false, false | Where /rtp may go. |
economy.startingBalance | 0 | Money a new player starts with. |
economy.symbol, economy.symbolAfter | $, false | The currency: $10 or 10 €. |
chat.formatChat | true | Build every chat line from chat.format. Off leaves chat to the game (mutes still work). |
chat.format | {group_prefix}{name}{group_suffix} <muted>»</muted> <text>{message} | The chat line. Also {account} (real name) and {world}. |
chat.mentions | true | @name highlights and pings. |
chat.slowModeSeconds | 0 | Seconds between two messages per player. |
nicknames.minLength, maxLength | 2, 16 | Nickname length without colors. |
nicknames.prefix | empty | Put in front of every nickname, like ~. |
afk.autoSeconds, afk.kickSeconds | 300, 0 | Idle time before AFK, and before a kick (0 never kicks). |
info.motdOnJoin, info.welcomeNewPlayers | true, true | The MOTD on join, and a welcome line for new players. |
sidebar.refreshSeconds | 1 | How often the sidebar and tab list update. |
discord.webhookUrl | empty | The channel webhook; joins, chat, deaths and punishments switch each kind. |
Commands
config/essentialsgg/commands.json has a line for every command:
"home": {
"enabled": true,
"aliases": ["h"],
"cooldown": 0
}
cooldown is in seconds per player; staff with essentialsgg.bypass.cooldown skip it. If another mod or the game already uses a name, Essentials GG leaves it alone and the command moves under /ess <name>.
Messages, colors and languages
Every message is in config/essentialsgg/lang/<code>.json. A file you never edited updates itself with the mod; once you edit it, it is yours. Missing lines fall back to the shipped text. Drop in a new file (say it_it.json) to add a language.
Messages take & codes and tags: <red>, <#ff8800>, <gradient:red:gold>, <rainbow>, <b>, <hover:show_text:'text'>, <click:run_command:'/spawn'>, <newline>. The theme colors <text>, <val>, <ok>, <err>, <warn>, <muted>, <accent> and <brand> are set once in the theme section of config/essentialsgg.json. An empty message is never sent.
Permissions
Every permission is essentialsgg.<something>. Without any setup, players get the everyday commands and operators get the staff ones. Change that with /perm, with LuckPerms, or both: /perm is checked first, then LuckPerms, then the operator level.
/perm group vip create
/perm group vip add essentialsgg.command.fly
/perm group vip add essentialsgg.homes.limit.10
/perm group vip prefix <gold>[VIP]
/perm user Steve group add vip
/perm user Steve check essentialsgg.command.fly
/perm user <player> add|remove <node>and/perm group <group> add|remove <node>. Addfalseto deny instead.- Wildcards:
"essentialsgg.kit.*","essentialsgg.*"(quotes needed for*). The most specific entry wins, and a player's own entries beat their groups. - The group
defaultapplies to everyone.weightdecides between groups and whose prefix shows. /perm nodes [filter]lists every permission with its default.
| Permission | Gives |
|---|---|
essentialsgg.command.<name> | A command, like essentialsgg.command.home. |
essentialsgg.<name>.others | Using it on someone else (fly, heal, spawn, homes, kit, nick, ...). |
essentialsgg.homes.limit.<n>, .unlimited | How many homes. |
essentialsgg.kit.<name>, essentialsgg.warp.<name> | Restricted kits and warps. |
essentialsgg.chat.color, .hex, .gradient, .format | Formatting in chat and private messages. |
essentialsgg.nick.color, .hex, .gradient, .format | Formatting in nicknames. |
essentialsgg.bypass.cooldown, essentialsgg.bypass.warmup | No cooldowns, no teleport wait. |
essentialsgg.notify.punish, essentialsgg.punish.exempt | See punishments; cannot be punished. |
With LuckPerms, chat and tab prefixes also come from the meta keys essentialsgg.prefix and essentialsgg.suffix.