Skip to main content

Commands

QuestsTracker provides player commands for the menu and tracking, and administrator commands for management, diagnostics, and maintenance.

Player commands

/quests

Opens the quest menu.

/quests

Aliases: /quetes, /quete, /quest, /q

Displays the GUI menu with quest categories. The player can navigate between categories, view their quest statuses, and track/untrack quests.

/quests [player]

Opens another player's quest menu.

/quests PlayerName

Required permission: kginfoservs_quetes.admin

The menu title displays "Quests - PlayerName".

/quests track

Starts tracking a quest in the scoreboard.

/quests track <quest_id>

The player can track up to 3 simultaneous quests. Tracked quests are displayed in the in-game scoreboard with their objectives in real time.

Tracking limit

If the player is already tracking 3 quests, they must remove one before adding a new one.


Administrator commands

/kgquests

Main administration command.

/kgquests <subcommand>

Aliases: /kgquetes, /kgq

Required permission: kginfoservs_quetes.admin


/kgquests purgepackage

Deletes all player data for a quest package. Supports wildcard patterns (%).

/kgquests purgepackage <pattern> [confirm|--force]

Examples:

# Purge a specific package
/kgquests purgepackage MyPackage

# Purge all packages starting with "Daily-" (wildcard)
/kgquests purgepackage Daily-%

# Purge without confirmation (force)
/kgquests purgepackage MyPackage --force

Process:

  1. The command displays a preview of the data that will be deleted
  2. Run again with confirm to validate
  3. Or use --force to skip confirmation

Deleted data:

  • Quest progress (player_quest_progress)
  • Tracked quests (player_tracked_quest)
  • Associated BetonQuest tags and points
  • Local and Redis cache for all online players
Irreversible action

This command permanently deletes data. Back up your database before running this command.

Daily quests

The wildcard pattern is useful for recurring quests:

/kgquests purgepackage Daily-%

/kgquests refresh

Forces a reload of a player's data from the database.

/kgquests refresh <player>

Invalidates the local and Redis cache for this player, reloads data from the database, and updates the scoreboard. Useful when cached data does not match the actual state.


/kgquests scoreboard

Controls the quest scoreboard.

/kgquests scoreboard <on|off|toggle>
OptionEffect
onEnables the scoreboard
offDisables the scoreboard
toggleToggles the current state
Global scoreboard

If the scoreboard is disabled globally (scoreboard.enabled: false in config.yml), this command has no effect.


/kgquests stats

Displays cache performance statistics.

/kgquests stats

Information displayed:

  • Hit rate per cache (QuestStatus, QuestProgress, QuestTracked, PlaceholderAPI)
  • Number of hits/misses and loads
  • Analysis of hit rate (excellent: above 95%, good: above 85%, needs attention: below 85%)

/kgquests redis

Displays Redis diagnostics.

/kgquests redis [player]

Without argument -- Global view:

  • Number of quest:progress:*, quest:tracked:*, quest:status:* keys
  • Total cached keys

With player -- Specific view:

  • Existence and TTL of the progress key
  • Existence and TTL of the tracking key
  • Number of status keys
  • Alert if keys are missing

/kgquests health

Complete system health check.

/kgquests health

Checks all components:

  • Database (connection + latency)
  • Redis (availability + latency)
  • BetonQuest (loaded)
  • PlaceholderAPI (active)
  • Virtual Threads (count)
  • JVM Memory
  • Overall health verdict

/kgquests memory

Detailed memory usage report.

/kgquests memory

Information displayed:

  • Number of entries per cache and estimated size in KB
  • Open GUI menus
  • JVM memory (total, used, max)
  • Optimization recommendations

/kgquests benchmark

Performance tests with latency measurements.

/kgquests benchmark [player_count]

Tests performed:

  • Cold start: read with empty cache
  • Warm cache: read with loaded cache
  • DB stress: sequential queries
  • Results: latency, throughput, hit rate
  • Capacity recommendations

/kgquests analytics

Quest adoption and completion statistics.

/kgquests analytics [package]

Without argument -- Global view:

  • Total players with data
  • Number of active and completed quests
  • Top 5 active quests
  • Top 5 completed quests (with completion rate)
  • Top 5 tracked quests

With package -- Specific view:

  • Detailed statistics for a quest package

/kgquests update

Checks for and downloads plugin updates.

/kgquests update

Checks if a new version is available and downloads it if so. The JAR is placed in plugins/update/ and will be applied on the next restart.


/questsreload

Reloads the plugin configuration.

/questsreload

Alias: /quetesreload

Required permission: kginfoservs_quetes.reload

Reloads:

  • config.yml (categories, translations, scoreboard, etc.)
  • quests_config.yml (quest texts and steps)

Command summary

CommandDescriptionPermission
/questsOpens the quest menuNone
/quests [player]Opens another player's menukginfoservs_quetes.admin
/quests track <id>Track a questNone
/kgquests purgepackage <pattern>Purge package datakginfoservs_quetes.admin
/kgquests refresh <player>Reload a player's datakginfoservs_quetes.admin
/kgquests scoreboardScoreboard control (on/off/toggle)kginfoservs_quetes.admin
/kgquests statsCache statisticskginfoservs_quetes.admin
/kgquests redis [player]Redis diagnosticskginfoservs_quetes.admin
/kgquests healthSystem healthkginfoservs_quetes.admin
/kgquests memoryMemory reportkginfoservs_quetes.admin
/kgquests benchmark [n]Performance testskginfoservs_quetes.admin
/kgquests analytics [pkg]Quest statisticskginfoservs_quetes.admin
/kgquests updateCheck for updateskginfoservs_quetes.admin
/questsreloadReload configurationkginfoservs_quetes.reload

Tab completion

Tab auto-completion is available for all /kgquests subcommands, including player names and quest packages.