Setting Up Hytale Server Administration (permissions.json)
How to configure admin ranks and assign player permissions on your Hytale server using permissions.json.
Setting Up Hytale Server Administration (permissions.json)
Hytale server administration is managed through a single file: permissions.json, located in your server root directory. This file defines permission ranks and assigns players to those ranks by UUID.
File Location
/opt/hytale-server/permissions.json
Structure Overview
permissions.json has two top-level sections:
ranks— defines named permission levels and what they can doplayers— maps player UUIDs to a rank
{
"ranks": {
"admin": {
"permissions": ["*"]
},
"moderator": {
"permissions": [
"server.kick",
"server.ban",
"server.mute",
"world.teleport"
]
},
"builder": {
"permissions": [
"world.build",
"world.gamemode.creative"
]
}
},
"players": {
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx": {
"rank": "admin"
},
"yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy": {
"rank": "moderator"
}
}
}
The Wildcard Permission
Assigning "*" to a rank grants all permissions. This is typically used for the admin rank. Be careful — any player with * has full server control including the ability to stop the server and delete worlds.
Common Permission Nodes
| Permission | Description |
|---|---|
* |
All permissions |
server.kick |
Kick players |
server.ban |
Ban and unban players |
server.mute |
Mute players in chat |
server.stop |
Stop the server |
server.op |
Grant/revoke admin status |
world.build |
Place and break blocks |
world.teleport |
Teleport to locations or players |
world.gamemode.* |
All game mode changes |
world.gamemode.creative |
Switch to creative mode |
world.time |
Change in-game time |
world.weather |
Change weather |
Finding a Player's UUID
Player UUIDs are stored in universe/players/. Each player has a file named <uuid>.json. You can also look up a player's UUID from the server console after they have connected:
[INFO] Player JaneDoe connected (uuid: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)
Adding an Admin
- Find the player's UUID (see above).
- Open
permissions.json. - Add an entry under
"players":
"players": {
"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx": {
"rank": "admin"
}
}
- Save the file. Changes to
permissions.jsontake effect after a server restart.
Revoking Admin
Remove the player's entry from the "players" section, or change their rank to a lower-privileged rank. Then restart the server.
Default Permissions
Players not listed in permissions.json have standard player permissions — they can join, play, and chat, but cannot execute admin commands.