Marketplace/Gameplay/QLEVELS

QLEVELS

minecraftFreev1.0.0

Description

Plugin Name: QLevels
Author: Diplomat

Plugin Commands (All commands are console/chat only, NO GUI):

The plugin must provide the following commands with corresponding permission nodes:

/qlevels add <player> <amount> — Adds points to the specified player (permission: qlevels.admin).

/qlevels remove <player> <amount> — Removes points from the specified player (permission: qlevels.admin).

/qlevels set <player> <amount> — Sets the exact point amount for the specified player (permission: qlevels.admin).

/qlevels reset <player> — Completely resets both points and level of the specified player (permission: qlevels.admin).

/qlevels addlevel <player> <amount> — Increases the player's level (points should either remain unchanged or be recalculated automatically to match the new level) (permission: qlevels.admin).

/qlevels removelevel <player> <amount> — Decreases the player's level (permission: qlevels.admin).

/qlevels bonus x2 — Activates the x2 points multiplier mode for a configurable duration (e.g., 24 hours). When active, ALL point earnings (including hourly and action-based) are multiplied by 2 (permission: qlevels.admin).

/qlevels bonus x3 — Activates the x3 points multiplier mode for a configurable duration (e.g., 24 hours). When active, ALL point earnings (including hourly and action-based) are multiplied by 3 (permission: qlevels.admin).

/qlevels bonus stop — Manually stops the currently active bonus mode before its duration expires (permission: qlevels.admin).

/qlevels reload — Reloads all configuration files (permission: qlevels.admin).

Player command:

/level or /qlevels — Displays the player's current level, points, and progress percentage to the next level.

Point Earning System:

The primary and most important source of points is the time a player spends actively playing on the server. Points must only be awarded for active, non-AFK time. The plugin must detect AFK players — if a player shows no movement, no camera rotation, or no interaction for a configurable period of time (e.g., 5 minutes), point accumulation stops until the player becomes active again. Each hour of active playtime awards 1 point. The accumulation should happen in the background, with a configurable check interval (e.g., awarding 1/60 of a point every minute) to prevent loss when players log out.

Additional points are awarded for specific in-game actions that are considered "challenging" or significant. These actions include, but are not limited to: mining diamond ore or ancient debris, killing specific bosses (Ender Dragon, Wither, etc.), completing advancements, and killing other players (if on a PvP server). The list of actions and the amount of points awarded for each must be fully configurable in the configuration file, allowing administrators to customize rewards as they see fit.

Bonus System (x2 and x3):

The plugin must include a fully functional points multiplier system with two modes: x2 and x3. When activated by an administrator via /qlevels bonus x2 or /qlevels bonus x3, all point earnings for all players are multiplied by the corresponding factor for the duration specified in the config (e.g., 24 hours). These multipliers must apply to:

Hourly playtime points

Action-based points (mining, kills, etc.)

Any points added via admin commands (if configured to do so)

Important rules:

Only one bonus mode can be active at a time. Activating x2 while x3 is active should either replace it or be blocked with a configurable option.

The bonus status must persist through server restarts.

The plugin should provide PlaceholderAPI placeholders to show whether a bonus is active, which multiplier (2 or 3), and how much time remains.

Level System and Rewards:

When a player accumulates enough points, their level increases automatically. The point requirements for each level must be configurable in the configuration file — either through a formula (e.g., points_needed = base * level^2) or through a manual list specifying exact point thresholds for each level.

When a player reaches a specific level, rewards must be granted. The reward system must support multiple types:

Items — with support for custom names, lore, enchantments, and amounts

Economy — in-game currency via Vault or similar economy API

Commands — console-executed commands (e.g., give, eco, or custom commands)

Permissions — granting permission nodes via LuckPerms or similar permission system

Rewards must be fully configurable in the configuration file on a per-level basis. Each reward should only be granted once when the player first reaches that level, not every time the player logs in.

Messages Configuration (Separate File):

All messages sent by the plugin must be stored in a separate configuration file (e.g., messages.yml), completely independent from the main config.yml. This file must include all plugin messages such as:

Level-up messages (both player-only and broadcast variants)

Command feedback messages (success, error, insufficient permissions, player not found, etc.)

Info command output format

Bonus activation and expiration notifications

All messages must support HEX color codes (format: &#RRGGBB or &x&R&R&G&G&B&B) in addition to standard Minecraft color codes (&a, &c, etc.). Administrators should be able to customize every message without touching the main configuration.

Level-Up Messages:

When a player reaches a new level, a customizable message must be displayed. The message format must be fully configurable in messages.yml, with support for placeholders such as {player}, {level}, {points}, {next_level_points}, etc. Administrators should be able to:

Customize the message for each level individually

Set whether the message is shown only to the player or broadcast to the whole server

Toggle messages on or off per level

Use different messages for different level ranges

Use HEX colors for rich, gradient-styled messages

PlaceholderAPI Integration:

The plugin must have full PlaceholderAPI support. The following placeholders must be implemented:

%qlevels_level% — The player's current level.

%qlevels_points% — The player's current points.

%qlevels_points_next% — Points required to reach the next level.

%qlevels_progress% — Percentage progress to the next level (0.00 to 100.00).

%qlevels_bonus_active% — Returns true or false indicating whether any bonus is active.

%qlevels_bonus_multiplier% — Returns the current multiplier (e.g., "2" or "3") or "1" if none active.

%qlevels_bonus_time% — Returns the remaining time of the active bonus (e.g., "2h 15m") or "Not active".

Important Requirements:

The plugin must NOT contain any graphical user interfaces (GUIs). All management is done through commands and configuration files.

The plugin must be optimized for performance with large player counts.

Database support must be configurable: SQLite for smaller servers and MySQL for larger networks, selectable in the configuration file.

All messages must be in a separate messages.yml file with full HEX color support.

All point values, level thresholds, rewards, AFK detection settings, and bonus durations must be customizable in config.yml.

The plugin name in all commands, permissions, and placeholders should consistently use qlevels (lowercase).

The author name Diplomat should appear in the plugin metadata (plugin.yml) and in the console startup message. Beautiful console startup message.

Reviews (0)

No reviews yet

Be the first to leave a review!

Владислав Хахель

Seller

Владислав Хахель

0

downloads

Versionv1.0.0
Platformminecraft
Typepurpur
Minecraft VersionMC 1.21
CategoryMinecraft Plugins > Gameplay
Published on22/03/2026
Last update21/04/2026
Free