AuroraLevels
  • AuroraLevels
  • Configuration
    • Main config
    • Level menu
    • Milestones menu
  • Commands
  • Rewards
  • Permissions
  • Placeholders
  • API
  • Compatible plugins
Powered by GitBook
On this page
  • Base options
  • Formula placeholders
  • Command aliases
  • Display components
  • Level up actions
  • Message
  • Title
  • Sound
  • XP gain action bar
  • Level matchers
  • Example setup
  • Custom level matchers
  • Icon generator
  1. Configuration

Main config

config.yml configuration guide

The main config file is config.yml. You can configure your levels and level matchers, custom command aliases, language, rewards, and leveling XP curve.

Base options

debug - If enabled (true), then the plugin will log additional information about what it is doing and what is happening. Only allow this if the developer asks you.

language - This will determine what language the plugin will use for command messages. If the file doesn't exist, a new one will be generated from the default English file.

xp-formula - The main leveling curve formula. level placeholder can be used here. The result must be a number. Boolean operations are not supported.

max-level - Maximum level for a player to reach. Set it to -1 to disable the maximum level.

Formula placeholders

You can use custom number values in your rewards. For this to work, you have to define named custom formulas under the formula-placeholders section. level is supported as a placeholder.

formula-placeholders:
  money: "1000 + 1000 * (level - 1) * 20 / 100"

You can reference this formula money in rewards, menus, messages, etc. with the {money} placeholder. You will have access to 2 additional placeholders: {money_int} and {money_formatted}. int is a whole number instead of a decimal. formatted is mainly for messages and menus.

Command aliases

You can override the base commands and every subcommand to fit your language.

command-aliases:
  level: ["level", "levels", "lvl"]
  milestones: ["milestones", "milestone"]
  setraw: ["setraw"]
  set: ["set"]
  addxp: ["addxp"]

Make sure to keep at least one alias always otherwise the plugin will break.

Display components

This is for more advanced templating. Currently, only rewards are supported for this.

display-components:
  rewards:
    title: "  &7Rewards:&r"
    line: "    {reward}"

The title will be the first line in the item lore or level-up message. Every reward will be placed on the {reward} in its new line.

Level up actions

In every action, you will have access to every reward formula placeholder and {prev_level} placeholder, which is the previous level. ({prev_level_int} and {prev_level_formatted} are also available) Every action can be disabled if you set the enabled field to false. PlaceholderAPI placeholders are also supported in every action.

Message

The rewards display component is available here. If you have multiple rewards for the level it will show something like this:

...your message top... Rewards: some reward 1 some reward 2 ...your message bottom...

level-up-message:
  enabled: true
  message:
    - "&3&m----------------------------------------&r"
    - ' '
    - "  &f&lYou levelled up &8[ &r&7{prev_level} -> &6&l{level} &8]&r"
    - ' '
    - "component:rewards"
    - ' '
    - "&3&m----------------------------------------"

Title

NOTE: you don't have access the rewards component here, since it wouldn't make sense. Every other placeholder is still available.

level-up-title:
  enabled: true
  title: "&6Level up!"
  subtitle: "&7You are now level &6{level}"

Sound

level-up-sound:
  enabled: true
  sound: "ENTITY_PLAYER_LEVELUP"
  volume: 1
  pitch: 1

XP gain action bar

This is triggered every time the player gets XP. There is an extra {amount} placeholder which is the formatted value of the XP that you get. You don't have access to formula placeholders here, since it doesn't make sense. PlaceholderAPI placeholders are available though.

xp-gain-action-bar:
  enabled: true
  message: "&fYou gained &6{amount} &fplayer level XP"

Level matchers

In the level-matchers section you can define custom rewards for levels based on an interval.

Do not delete or modify the default matcher interval and priority.

The matcher named default in the config by default will match every level, since it has an interval of 1, meaning every level, since every level can be divided by 1.

The priority system ensures, that if you have a matcher for example that matches every fifth level, then if it has higher priority than the default, it will be selected instead of the default. This way you can define matchers for every 5, 10, 20 etc levels. This is useful since levels are designed to be infinite.

You can read about how to define rewards at Rewards. The name of the rewards can be anything valid YAML.

Example setup

level-matchers:
  default:
    interval: 1
    priority: 0
    rewards:
      my-money-reward:
        type: money
        formula: "{money}"
        display: "&8+&a{value_formatted}"
  every5:
    interval: 5
    # Optional - start from this level and count up with interval
    start: 5
    # Optional - stop when this level + 1 reached
    stop: 100
    priority: 1
    # This is optional
    inherits-from: [ default ]
    # You can optionally override here the default menu items from the level menu
    # only that part of the item wil be overriden that are specified.
    # (in this case, material)
    item:
      locked-level:
        material: red_stained_glass
      completed-level:
        material: lime_stained_glass
      next-level:
        material: yellow_stained_glass
    rewards:
      my-command-reward:
        type: command
        command: "[console] eco give {player} {money}"
        display: "&8+&a{money_formatted}"

We have 2 matchers here. Default which will match every level and one named every5 which will match every 5th level. Since every5 has higher priority than default it will always be selected in every level that is divisible by 5 instead of the default one. (eg.: 5, 10, 15, 20, 25, 30, 35, 40, and so on). This way you can define a flexible system, that gives more and bigger rewards at certain intervals.

Because every5 is inherits from default it means that on every 5 levels you will also get the default matchers rewards.

Custom level matchers

If you only want to change a specific levels rewards, then you have to define the level in the custom-levels sections.

custom-levels:
  my-custom-level:
    level: 25
    # This is optional
    inherits-from: [ every5 ]
    # You can optionally override here the default menu items from the level menu
    # only that part of the item wil be overriden that are specified.
    # (in this case, material)
    item:
      locked-level:
        material: red_stained_glass
      completed-level:
        material: lime_stained_glass
      next-level:
        material: yellow_stained_glass
    rewards:
      stat-reward:
        type: auraskills_stat
        stat: strength
        amount: 3
        display: "&8+&43 {symbol} {stat}"

The key should be the level you want to override. Then you write your rewards as usual. You can name them whatever you want.

Because this custom level is inherits from every5 which inherits from default You will both get their rewards if they are also matches for the level.

Icon generator

icon-generator:
  0: "%any_placeholder_here%"
  1: "%oraxen_number1%"
  2: "any character, text here"
  50: "same"

This can generate custom texture icons for the placeholder %aurora_level_icon% to display on chat/tab and other places. You can use any placeholders here.

Icons will be built with the following order:

  1. If the level is present in the generator config, it will use only that

  2. If the level is not present in the generator config, it will try to build using the single digit values. For example, level 120 in this example will be constructed as 1 + 2 + 0. So basically if you define the number from 0 to 9 and make your textures accordingly, you have created every possible level.

PreviousConfigurationNextLevel menu

Last updated 1 month ago

The sound has to be vanilla Minecraft as of now.

sound