Skip to content

permissions.json

Stores user permissions, group memberships, and group permission sets. Created automatically on first launch.

File: permissions.json
Provider: HytalePermissionsProvider

{
"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:

FieldTypeDescription
permissionsString[]Direct permission nodes granted to this player
groupsString[]Groups this player belongs to

Each entry is keyed by group name and contains an array of permission nodes. Two groups exist by default:

GroupDefault PermissionsDescription
OP* (wildcard — grants everything)Operators
Default(empty)All players without an explicit group

Players without any group assignment are treated as members of Default.

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.

CommandDescription
/perm user <uuid> add <permissions...>Grant permissions to a user
/perm user <uuid> remove <permissions...>Revoke permissions from a user
/perm user <uuid> listList 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 listList 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> listList 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 selfToggle operator for yourself (owner-only in singleplayer, requires --allow-op in multiplayer)

See Access Control Commands for details.