Leveling

Overview

The leveling system allows you to create custom progression tracks for players. Each leveling track is defined by a YAML file in the leveling/ folder, where the filename (without .yml) becomes the level ID. Players can progress through multiple different leveling tracks simultaneously.


Basic Level Settings

display-name

  • Value: 'Sword Level'

  • Description: The display name shown to players for this leveling track

  • Supports: Color codes with &

starting-level

  • Value: 1

  • Description: The level new players start at for this track

automatic-leveling

  • Value: true or false

  • Description: Whether players automatically level up when they have enough currency, or need to manually level up


Reward System

The reward system offers three types of rewards that can be combined:

For-Each Rewards

rewards.for-each

  • Description: Rewards given every time a player levels up

  • Format: List of actions to execute

for-each:
  - "[message] &aYou have reached &fSword Level %eddungeons_notation_{level}%&a."

Specific Level Rewards

rewards.specific

  • Description: Rewards given when reaching specific levels

  • Format: Level number as key, list of actions as value

specific:
  4:
    - "[message] level 4"
  10:
    - "[console] give {player} diamond 1"
    - "[message] &6Congratulations on reaching level 10!"

Interval Rewards

rewards.interval

  • Description: Rewards given at regular level intervals

  • Format: Interval number as key, list of actions as value

interval:
  5: # every 5 levels
    - "[console] crate givekey {player} common 1"
  10: # every 10 levels
    - "[console] give {player} emerald 5"

Reward Action Types

Message Actions

  • Format: [message] text

  • Description: Sends a message to the player

  • Example: [message] &aCongratulations!

Console Commands

  • Format: [console] command

  • Description: Executes a command from console

  • Example: [console] give {player} diamond 1

Available Placeholders

  • {player} - Player name

  • {level} - Current level

  • %eddungeons_notation_{level}% - Formatted level number


Cost System

cost.currency

  • Value: sword-xp

  • Description: The currency required to level up (must match your economy setup)

cost.starting-cost

  • Value: 100

  • Description: Cost to reach level 2 from level 1

cost.increase-cost-by

  • Value: 50

  • Description: Amount to increase the cost by each level

  • Example: Level 2 = 100, Level 3 = 150, Level 4 = 200, etc.

cost.remove-currency

  • Value: true or false

  • Description: Whether to remove the currency when leveling up, or just require having it


Progress Bar Display

bar.amount

  • Value: 20

  • Description: Number of characters in the progress bar

bar.completed

  • Value: "&e┃"

  • Description: Character/color used for completed portions of the progress bar

bar.uncompleted

  • Value: "&c┃"

  • Description: Character/color used for uncompleted portions of the progress bar

Example Output: &e┃┃┃┃┃┃┃&c┃┃┃┃┃┃┃┃┃┃┃┃┃


Command Configuration

Main Command

commands.main.permission

  • Value: '' (empty = no permission required)

  • Description: Permission required to use the main level command

commands.main.command

  • Value: swordlevel

  • Description: The main command name for this leveling track

commands.main.aliases

  • Value: [] (empty array)

  • Description: Alternative command names

  • Example: ['slevel', 'sl']

Balance Commands

commands.balance.permission

  • Description: Permission to check own currency balance

commands.balance.balance-other-permission

  • Value: 'eddungeons.balance.others'

  • Description: Permission to check other players' currency balance

Administrative Commands

commands.give.permission

  • Value: 'eddungeons.balance.give'

  • Description: Permission to give currency to players

commands.set.permission

  • Value: 'eddungeons.balance.set'

  • Description: Permission to set a player's currency amount

commands.remove.permission

  • Value: 'eddungeons.balance.remove'

  • Description: Permission to remove currency from players


Usage Examples

Player Commands

Main Level Command:

  • /swordlevel - View current sword level and progress

  • /swordlevel balance - Check sword XP balance

  • /swordlevel balance <player> - Check another player's balance (with permission)

Administrative Commands:

  • /swordlevel give <player> <amount> - Give sword XP to a player

  • /swordlevel set <player> <amount> - Set a player's sword XP

  • /swordlevel remove <player> <amount> - Remove sword XP from a player

Last updated

Was this helpful?