Rewards - PyvesB/advanced-achievements GitHub Wiki

A number of rewards can be set for each achievement. Simply list them within an achievement with a unique Reward parent section:

Crafts:
  diamond_sword:
    1:
      Message: The first time you crafted a blade!
      Name: craft_1_blade
      DisplayName: Blacksmith Apprentice
      Reward:
        Money: 2
        Experience: 100
        Command:
          Execute: give PLAYER 158 10

You can also give rewards when a player has received all achievements! Use the AllAchievementsReceivedRewards configuration section like this:

AllAchievementsReceivedRewards:
  IncreaseMaxOxygen: 30
  Experience: 100

Money

If you have Vault and an economy plugin, you can specify:

Money: 1

Experience

Simply:

Experience: 100

Max oxygen

30 corresponds to one bubble added to the oxygen bar:

IncreaseMaxOxygen: 30

Max health

Simply add 1 heart to the player's health:

IncreaseMaxHealth: 1

Custom command(s)

Put the command in Execute. Display will be the displayed description of the command:

Command:
  Execute: "say §7ALERT: §4PLAYER§7 has become the §4STONE GOD§7!"
  Display: Become the Stone God!

You can specify a list of messages to display:

Command:
  Execute: tp PLAYER 552 565 25
  Display:
    - Teleportation to the Paradise Isle!
    - Discover a whole new unexplored realm!

Similarly, you specify a list of commands to execute:

Command:
  Display: Special gifts!
  Execute:
    - give PLAYER 158 10
    - give PLAYER 126 5

As you may have guessed, PLAYER is a variable for the player's name. You can also use PLAYER_WORLD, PLAYER_X, PLAYER_Y, PLAYER_Z, which will translate to the name of the world the player is currently in, or his X, Y or Z coordinate.

Item

Use a Material name:

Item: diamond 1

If you want a custom name for your item, add it at the end:

Item: stone 5 Tombstone

You can award multiple items by using a list:

Item:
  - diamond 8
  - cake 1

The PLAYER, PLAYER_WORLD, PLAYER_X, PLAYER_Y, PLAYER_Z are also supported here.