Skip to main content

Permissions

The Quest System uses a single permission node for all administrative operations. Player-facing commands require no permissions.

Permission Nodes

PermissionDescriptionDefault
questbook.adminGrants access to all admin commands and the admin panelOP only

Command Permissions

No Permission Required

These commands are available to all players without any permission check:

CommandAliasesDescription
/ksquestksquests, ksquestbook, kqb, questbook, qbOpens the Quest Book UI
/ksquest settingsOpens the Quest Tracker settings page
/ksquestsettingsOpens the Quest Tracker settings directly

Requires questbook.admin

These admin subcommands require the questbook.admin permission when executed by a player. Console execution bypasses permission checks where noted.

CommandConsoleDescription
/ksquestadmin reloadYesReloads quest configuration from disk
/ksquestadmin panelNoOpens the admin panel UI
/ksquestadmin start <player> <questId>YesStarts a quest for a player
/ksquestadmin complete <player> <questId>YesForce-completes a quest
/ksquestadmin reset <player> <questId>YesResets a quest for a player
/ksquestadmin setstreak <player> <days>YesSets a player's streak
/ksquestadmin resetdailyYesForces a daily quest reset
/ksquestadmin resetweeklyYesForces a weekly quest reset
/ksquestadmin spawnmerchant [npcType]NoSpawns an NPC at your location
/ksquestadmin spawntemplemerchant [npcType]NoSpawns NPC at the Forgotten Temple
/ksquestadmin tokens [amount]NoGives quest tokens to yourself
/ksquestadmin debugmodeNoToggles live debug output
/ksquestadmin export <type> [id]YesExports quest data as JSON
/ksquestadmin import <file> [overwrite]YesImports quest data from JSON
/ksquestadmin test <questId> [player]NoStarts a quest in test mode

No Explicit Permission Check

The following subcommands under /ksquestadmin do not check questbook.admin individually. They are still sub-commands of the admin command and are intended for development and testing only. On production servers, access is controlled by the server's command permission system.

CommandDescription
/ksquestadmin debugShows quest debug info for yourself
/ksquestadmin testfirstjoinSimulates first-join trigger
/ksquestadmin teststartStarts tutorial_welcome for yourself
/ksquestadmin testzone <zone>Simulates entering a zone
/ksquestadmin testnpc <npcId>Simulates NPC interaction
/ksquestadmin resetmeResets all your quest data
warning

These commands lack explicit questbook.admin checks. If your server allows command access based on command names rather than permission nodes, any player who can run /ksquestadmin subcommands could execute these. Configure your server's permission system to restrict access to /ksquestadmin if needed.

Showcase Mode

Several admin commands additionally check for Showcase Mode via ShowcaseCompat. When a player's account is flagged as a showcase account, the following commands are blocked even if the player has questbook.admin:

  • /ksquestadmin reload
  • /ksquestadmin start
  • /ksquestadmin complete
  • /ksquestadmin reset
  • /ksquestadmin setstreak
  • /ksquestadmin resetdaily
  • /ksquestadmin resetweekly
  • /ksquestadmin spawnmerchant
  • /ksquestadmin spawntemplemerchant
  • /ksquestadmin tokens
  • /ksquestadmin debugmode
  • /ksquestadmin resetme
  • /ksquestadmin export
  • /ksquestadmin import

This prevents accidental data modification on showcase/demo servers.

Console vs Player Execution

Some admin commands support execution from the server console without any permission check. This is especially useful for:

  • NPC dialog macros -- NPCs can start quests for players via console commands (e.g., /ksquestadmin start PlayerName quest_id)
  • Automated scripts -- Scheduled tasks or external tools can manage quests via console
  • Bulk operations -- Exporting/importing quest data from the command line

Commands that support console execution are marked with "Yes" in the Console column of the table above.

Setting Up Permissions

Since the Quest System uses a single permission node, setup is straightforward:

# Grant admin access to a player or group
questbook.admin: true
tip

Player commands (/ksquest, /ksquestsettings) work for everyone out of the box with no configuration needed. Only grant questbook.admin to trusted staff members who need to manage quest content, debug player data, or access the admin panel.