Omnisight docs

Permissions

Home

Permissions

Permission modes, nodes, and legacy migration behavior.

Permissions

OmniSight uses a flexible permission system controlled by the permissionMode field in config.json.

Permission Modes

ModeBehavior
"none"No restrictions. All players can use all commands. (default)
"op"Only server operators can use OmniSight commands
"custom"Uses Hytale's PermissionsModule for per-node permission checks

Permission Nodes

NodeRequired ForDescription
omnisight.use/omni on, /omni offBasic HUD toggle access
omnisight.settings/omni settingsAccess to the settings GUI
omnisight.profiler/omni profilerAccess to the performance profiler

How Each Mode Works

"none" (default)

All players have unrestricted access to all OmniSight commands. No permission checks are performed.

{
  "permissionMode": "none"
}

"op"

Only operators can use OmniSight. Since Hytale 0.6 the operator group is hytale:Admin; OmniSight checks for the root permission (*) that this group grants, so it also works with permission plugins such as LuckPerms whose admin groups have other names.

{
  "permissionMode": "op"
}

"custom"

Each command checks its specific permission node against Hytale's PermissionsModule. This allows granular control, for example: all players can toggle the HUD (omnisight.use) but only admins can open the profiler (omnisight.profiler).

{
  "permissionMode": "custom"
}

To assign permissions in custom mode, use Hytale's built-in permission system (or your permission plugin) to grant nodes to players or groups.

Permission Check Flow

  1. Player runs /omni <subcommand>
  2. The subcommand's node is checked (omnisight.use, omnisight.settings or omnisight.profiler)
  3. If the check fails, the player sees: [Omnisight] No permission.

/omni on its own (the help message) is always available.

Migration from requiresOp

If config.json still contains legacy requiresOp:

  • requiresOp: true is automatically converted to permissionMode: "op"
  • requiresOp: false is ignored (current permissionMode is kept)
  • requiresOp is removed from the file

No manual action is needed. Migration happens automatically on server start.