Permissions
Complete reference for all permissions used by the Achievement & Title System.
Overview
The Achievement & Title System uses a minimal permission model. All player-facing commands are available to every player by default (no permission required). Only administrative commands require an explicit permission node.
Permissions are checked via Hytale's built-in player.hasPermission() system. If you use LuckPerms, you can manage the achievements.admin permission through LuckPerms groups.
Permission Table
| Permission | Description | Default | Used By |
|---|---|---|---|
achievements.admin | Access to all admin commands and the admin panel | OP only | /ksachievementadmin and all subcommands |
Player Commands (No Permission Required)
The following commands are available to all players by default. They explicitly disable automatic permission generation (canGeneratePermission() = false), so no permission node is needed.
| Command | Aliases | Description |
|---|---|---|
/ksachievements | /achievement, /ac | Opens the Achievement Gallery UI |
/kstitles | /title | Opens the Title Selection UI |
/ksrewards | /reward, /rw | Opens the Rewards Inventory |
/kslootbags | /lootbag, /lb | Opens the Lootbag Inventory |
/kslang | -- | Set preferred language (provided by KyuubiSoft Core) |
These commands cannot be restricted with permissions. If you need to prevent access, use a command blocker plugin or modify the source.
Admin Commands
All admin subcommands share the single achievements.admin permission. There are no separate permissions for individual subcommands.
| Command | Requires | Description |
|---|---|---|
/ksachievementadmin panel | achievements.admin | Opens the admin configuration panel |
/ksachievementadmin list <player> | achievements.admin | Lists a player's unlocked achievements |
/ksachievementadmin grant <player> <id> | achievements.admin | Grants an achievement to a player |
/ksachievementadmin revoke <player> <id> | achievements.admin | Revokes an achievement from a player |
/ksachievementadmin simulate <type> [count] | achievements.admin | Simulates trigger events for testing |
Admin commands can also be executed from the server console without any permission check. The achievements.admin permission is only enforced when the sender is a player.
Showcase Guard
When the KyuubiSoft Core plugin's Showcase mode is active, admin commands are blocked even for players who have the achievements.admin permission. This prevents accidental data modification during showcase/demo sessions.
Showcase mode is managed by the Core plugin and is not configurable within the Achievement System itself.
LuckPerms Setup
To grant admin access via LuckPerms:
# Grant to a specific player
/lp user <player> permission set achievements.admin true
# Grant to a group
/lp group admin permission set achievements.admin true
The permission node is achievements.admin (without a ks. prefix). This is the exact string checked in the source code.
FAQ
Can I restrict which players can use /ksachievements?
No. Player commands intentionally have no permission requirement so that all players can access the achievement system. If you need to restrict access, consider using a third-party command blocker.
Are there wildcard permissions?
No. The plugin uses only one permission node (achievements.admin). There are no child permissions or wildcards.
Do I need to set up permissions for basic functionality?
No. The plugin works out of the box with no permission configuration. Only set up achievements.admin if you want non-OP players to have admin access.