Rewards

You can configure the automatic distribution (or assignment) of rewards to players upon reaching certain job levels. "Reward pools" are used for this.

Reward Pools

Reward pools are a list of rewards grouped by the levels they are intended for.

You can specify multiple reward pools for a job at the same time; however, if there are multiple rewards for a single level from different pools, the reward from the pool with the highest priority will be selected.

Thus, you can combine rewards from a "general" pool with rewards for specific jobs, without the need to duplicate general rewards for each job.

Global Configuration

Global reward settings are located in the main module file in the Rewards section.

Parameters:

  • Claim-Required - If enabled, the player must manually claim the reward from the levels GUI. Otherwise, it is given automatically.
leveling.yml
Rewards:
  Claim-Required: true

Reward Pool Configuration

Pool configurations are stored in the level_rewards folder.

The pool ID is determined by its file name. For example, the pool ID for common.yml will be common. Use them for job settings.

Parameters:

  • Priority - Pool priority. See Reward Pools for details.
  • Levels - Reward definitions per specific level(s). You can specify multiple levels at once.
pool_example.yml
Priority: 0
Levels:
  '1,5,10,15,20,25,30,35,40,45,50':
    Name: $%amount%
    Description: []
    Commands:
    - money give %player_name% %amount%
    Values:
      amount: Base 500.0 ; Step 50.0
    Requirements:
      contract: basic,vip
      permission: some.perm
      rank: vip,premium
  '2':
    Name: x1 Jobs Crate Key
    Description: []
    Commands:
    - crates key give %player_name% jobs 1
    Requirements:
      contract: basic,vip
      permission: some.perm
      rank: vip,premium

Reward Configuration

  • Name - Display name of the reward. Can be displayed via a placeholder.
  • Description - Reward description. Can be displayed via a placeholder.
  • Commands - Reward commands.
  • Values - Automatically scaling values.
  • Requirements - Requirements for claiming the reward.

Reward Values

Specified as name: options.

Parameters:

  • Base - Initial value.
  • Step - "Step" for each job level.

Format: Base [value] ; Step [value]

Formula: X = A + (B \times C), where A is Base, B is level, C is Step.

Example:

Values:
  amount: Base 500.0 ; Step 50.0
  your_custom_value: Base 5 ; Step 1

Reward Requirements

The reward is available only to players who meet all the specified requirements.

The following types of requirements are supported by default:

Permission

The player must have the specified permission.

Name: permission

Format: some.permission.name

Example:

Requirements:
  permission: my.permission.name

Rank

The player must be in any of the specified groups.

Name: rank

Format: rank1,rank2,rank3

Example:

Requirements:
  rank: vip,elite,admin