permissions.json
Stores user permissions, group memberships, and group permission sets. Created automatically on first launch.
File: permissions.json
Provider: HytalePermissionsProvider
Format
Section titled “Format”{ "users": { "550e8400-e29b-41d4-a716-446655440000": { "permissions": ["mymod.vip", "mymod.fly"], "groups": ["VIP"] } }, "groups": { "OP": ["*"], "Default": [], "VIP": ["mymod.vip.feature", "mymod.vip.chat"] }}Each entry is keyed by player UUID and contains:
| Field | Type | Description |
|---|---|---|
permissions | String[] | Direct permission nodes granted to this player |
groups | String[] | Groups this player belongs to |
Groups
Section titled “Groups”Each entry is keyed by group name and contains an array of permission nodes. Two groups exist by default:
| Group | Default Permissions | Description |
|---|---|---|
OP | * (wildcard — grants everything) | Operators |
Default | (empty) | All players without an explicit group |
Players without any group assignment are treated as members of Default.
Permission Nodes
Section titled “Permission Nodes”Permissions use dot-notation (mymod.command.teleport). Prefix with - to deny (e.g. -mymod.admin). Wildcards like * and prefix.* grant entire subtrees. See Wildcards for the full resolution rules.
Use PermissionsModule at runtime to add/remove permissions, manage groups, and listen for changes. See Player Permissions for the full API reference.
Commands
Section titled “Commands”| Command | Description |
|---|---|
/perm user <uuid> add <permissions...> | Grant permissions to a user |
/perm user <uuid> remove <permissions...> | Revoke permissions from a user |
/perm user <uuid> list | List a user’s direct permissions |
/perm user <uuid> group add <group> | Add a user to a group |
/perm user <uuid> group remove <group> | Remove a user from a group |
/perm user <uuid> group list | List a user’s groups |
/perm group <group> add <permissions...> | Grant permissions to a group |
/perm group <group> remove <permissions...> | Revoke permissions from a group |
/perm group <group> list | List a group’s permissions |
/perm test <permissions...> | Test if you have specific permission nodes |
/op add <player> | Grant operator |
/op remove <player> | Revoke operator |
/op self | Toggle operator for yourself (owner-only in singleplayer, requires --allow-op in multiplayer) |
See Access Control Commands for details.