Citizens Permissions
This page lists all permissions used by the Citizens & NPC system.
Admin Permission
| Permission | Description |
|---|---|
citizen.admin | Required for all /kscitizen management commands. Without this permission, a player cannot create, edit, remove, teleport to, respawn, or reload citizens. |
All subcommands of /kscitizen check for citizen.admin before executing. Console commands bypass this check.
Command Permission Matrix
| Command | Permission | Notes |
|---|---|---|
/kscitizen list [group] | citizen.admin | List all registered citizens |
/kscitizen create <id> | citizen.admin | Create a new citizen at the player's position |
/kscitizen remove <id> | citizen.admin | Permanently delete a citizen |
/kscitizen tp <id> | citizen.admin | Teleport to a citizen's position |
/kscitizen respawn <id> | citizen.admin | Despawn and re-spawn a single citizen |
/kscitizen respawnall | citizen.admin | Despawn and re-spawn all citizens |
/kscitizen reload | citizen.admin | Reload citizen configs from disk |
/kscitizen info <id> | citizen.admin | Display detailed citizen information |
/kscitizen marker <id> [type] | citizen.admin | Set or remove a quest marker above a citizen |
/kscitizen viewer | citizen.admin | Open the NPC Viewer admin page |
/kscitizen wprecord <id> | citizen.admin | Start waypoint recording mode |
/kscitizen wpadd [seconds] | citizen.admin | Add a waypoint at the player's current position |
/kscitizen wpundo | citizen.admin | Remove the last recorded waypoint |
/kscitizen wpdone | citizen.admin | Stop recording and save waypoints |
The alias /npc works identically to /kscitizen. Permission checks are the same regardless of which alias is used.
Showcase Mode
When the server is running in read-only showcase mode, write operations are blocked even for players with citizen.admin. The following commands are additionally blocked in showcase mode:
/kscitizen create/kscitizen remove/kscitizen respawnall/kscitizen reload/kscitizen wprecord,wpadd,wpundo,wpdone
Read-only commands (list, tp, info, marker, viewer) remain available in showcase mode.
Per-Citizen Interaction Permissions
Individual citizens can require a custom permission for player interaction. This is configured per-citizen in the JSON config:
{
"id": "vip_merchant",
"permission": "citizen.interact.vip",
"noPermissionMessage": "Only VIP members can talk to this merchant."
}
| Field | Description |
|---|---|
permission | Permission string required to interact with this citizen. Players without it are blocked. |
noPermissionMessage | Message shown to players who lack the required permission. |
Per-citizen permissions are completely optional. If permission is not set (or is null), all players can interact with the NPC.
Setting Up Permissions
Permissions are managed through your Hytale server's permission system. To grant a player the citizen admin permission:
# Grant citizen management access
/permission set <player> citizen.admin true
Do not grant citizen.admin to regular players. It provides full control over all NPCs on the server, including the ability to create, modify, and permanently delete citizens.