Skip to main content

HyperPerms Integration

ArenaPvP integrates with HyperPerms for permission management. This integration is optional — if HyperPerms is not installed, ArenaPvP uses LuckPerms (if available) or the server's default permission system.

How It Works​

When HyperPerms is detected at startup, ArenaPvP automatically uses it for all permission checks. No configuration is needed — the integration is seamless.

Priority Order

If both HyperPerms and LuckPerms are installed, ArenaPvP will use HyperPerms as the permission provider. The priority is:

  1. HyperPerms (highest priority)
  2. LuckPerms
  3. Native server permissions (fallback)

The HyperPermsService provides the following capabilities:

MethodDescription
hasPermission(uuid, permission)Check if a player has a specific permission node
getGroups(uuid)Get all permission groups a player belongs to
isInGroup(uuid, group)Check if a player is in a specific permission group
addToGroup(uuid, group)Add a player to a permission group
removeFromGroup(uuid, group)Remove a player from a permission group
getPrimaryGroup(uuid)Get the player's primary group
getPrefix(uuid)Get the player's prefix (for display)
getSuffix(uuid)Get the player's suffix (for display)

Setup​

  1. Install HyperPerms on your Hytale server.
  2. Start the server — ArenaPvP detects HyperPerms automatically.
  3. You'll see this log message on startup:
    [HyperPerms] HyperPerms detected - will connect when needed

If HyperPerms is not found, you'll see:

[HyperPerms] HyperPerms not found - integration disabled

This is normal — ArenaPvP will fall back to LuckPerms or the default permission provider.

Permission Nodes​

See the Permissions Reference for all ArenaPvP permission nodes. All of them work with HyperPerms out of the box.

Arena Permission Groups​

The DisableGroupPermission config setting works with HyperPerms groups. When you list group names in this setting, players will be temporarily removed from those HyperPerms groups while inside an arena:

{
"DisableGroupPermission": ["fly-users", "creative-mode"]
}

This ensures abilities tied to those groups (like flying) are disabled during matches. Players are automatically restored to their groups when the match ends.