# Objectives

Job objectives defined in the job's config files located in the /jobs/ directory under the Objectives section.

# Definition

Example configuration
Objectives:
  block_drop:
    Currency: vault
    Type: gathering
    SourceTable:
      BlockDrops:
        minecraft:obsidian: 150.0;250.0 37.5;62.5 100.0
        minecraft:raw_copper: 45.0;75.0 11.25;18.75 100.0
        minecraft:coal: 52.5;87.5 13.125;21.875 100.0
  block_break:
    Currency: vault
    Type: mining
    SourceTable:
      Blocks:
        minecraft:netherrack: 15.0;25.0 3.75;6.25 100.0
        minecraft:sandstone: 15.0;25.0 3.75;6.25 100.0

Let's break down the example shown above:

  • The block_drop and block_break are objective sections. They defined 2 job objectives with different types: gathering and mining ones. Their names does not really matter, just keep them unique.
  • The Currency setting defines an ID of the currency used to pay players.
  • The Type setting defines objective's type. See Types ↓ for details.
  • The SourceTable section defines exact objects (such as blocks, mobs, items, etc) related to this objective that produces job's XP and Income. See Objects ↓ and Types ↓ for details.

# Objects

Object format for the SourceTable section is the following:

provider:name: XP[min;max] INCOME[min;max] CHANCE

Example:

minecraft:wither_skeleton: 5;10 1;2 100.0 # 5-10 XP and $1-2 Income with 100% chance for Wither Skeleton mob.
mythicmobs:SkeletonKing: 5;10 1;2 100.0 # 5-10 XP and $1-2 Income with 100% chance for SkeletonKing Mythic Mob.

You can use the default keyword to define XP and Income rewards for all objects available but not listed in the table:

default: 5;10 1;2 100.0 # 5-10 XP and $1-2 Income with 100% chance for everything but Stone.
minecraft:stone: 10;20; 5;10 100.0 # Overrides default, 10-20 XP and $5-10 Income with 100% chance for Stone.
minecraft:netherrack: 0;0; 0;0 0.0 # Overrides default, disables any rewards for the Netherrack.

Available providers:

  • minecraft - For all vanilla blocks, items, mobs, etc.
  • excellentenchants - For enchantments provided by the ExcellentEnchants plugin if custom namespace is enabled, minecraft otherwise.
  • mythicmobs - For mobs provided by the MythicMobs plugin.
  • evenmorefish - For custom fish provided by the EvenMoreFish plugin. Format is eventmorefish:rarity:name.
  • customcrops - For custom crop blocks provided by the CustomCrops plugin.
  • customfishing - For custom fishing loot provided by the CustomFishing plugin.

# Types

Objective type defines an action a player have to do to gain job's XP and Income.

# Crafting

Type: crafting

Rewards players for crafting specific items.

SourceTable example
SourceTable:
  Items:
    minecraft:tnt: 10.0;15.0 3;5 100.0

# Forging

Type: forging

Rewards players for forging in anvil (repairing, renaming, enchanting) specific items.

SourceTable example
SourceTable:
  Items:
    minecraft:iron_sword: 10.0;15.0 3;5 100.0

# Grindstone

Type: grindstone

Rewards players for grindstoning specific items.

SourceTable example
SourceTable:
  Items:
    minecraft:iron_sword: 10.0;15.0 3;5 100.0

# Killing

Type: killing

Rewards players for killing specific mobs.

SourceTable example
SourceTable:
  SpawnerMobBonus: -90.0 # XP and Income bonus (in %) for killing spawner mobs. Default is -90%.
  Mobs:
    minecraft:zombie: 10.0;15.0 3;5 100.0
    mythicmobs:SkeletonKing: 10.0;15.0 3;5 100.0

# Breeding

Type: breeding

Rewards players for breeding specific mobs.

SourceTable example
SourceTable:
  Mobs:
    minecraft:cow: 10.0;15.0 3;5 100.0

# Milking

Type: milking

Rewards players for milking specific mobs.

SourceTable example
SourceTable:
  Mobs:
    minecraft:cow: 10.0;15.0 3;5 100.0

# Shearing

Type: shearing

Rewards players for shearing specific mobs.

SourceTable example
SourceTable:
  Mobs:
    minecraft:mooshroom: 10.0;15.0 3;5 100.0

# Taming

Type: taming

Rewards players for taming specific mobs.

SourceTable example
SourceTable:
  Mobs:
    minecraft:wolf: 10.0;15.0 3;5 100.0

# Builidng

Type: building

Rewards players for placing specific blocks.

SourceTable example
SourceTable:
  Blocks:
    default: 10.0;15.0 3;5 100.0

# Fertilizing

Type: fertilizing

Rewards players for fertilizing specific plants.

SourceTable example
SourceTable:
  Blocks:
    minecraft:potatoes: 10.0;15.0 3;5 100.0

# Brewing

Type: brewing

Rewards players for brewing potions using specific ingredients.

SourceTable example
SourceTable:
  PerPotionBonus: 25.0  # XP and Income bonus (in %) per potion brewed. Default is +25%.
  AutomatedBrewBonus: -80.0 # XP and Income bonus (in %) for brewing potions automatically (using hoppers). Default is -80%.
  ManualBrewBonus: 50.0 # XP and Income bonus (in %) for brewing potions manually. Default is +50%.
  Ingredients:
    minecraft:sugar: 10.0;15.0 3;5 100.0

# Cooking

Type: cooking

Rewards players for cooking or smelting specific items.

SourceTable example
SourceTable:
  AutomatedSmeltBonus: -80.0 # XP and Income bonus (in %) for smelting/cooking automatically (using hoppers). Default is -80%.
  ManualSmeltBonus: 50.0 # XP and Income bonus (in %) for smelting/cooking manually. Default is +50%.
  Ingredients:
    minecraft:raw_iron: 10.0;15.0 3;5 100.0
    minecraft:porkchop: 10.0;15.0 3;5 100.0

# Enchanting

Type: enchanting

Rewards players for enchanting items with specific enchantments using enchanting table.

SourceTable example
SourceTable:
  LevelBonus: 25.0 # XP and Income bonus (in %) per enchantment level. Default is +25%.
  Enchantments:
    minecraft:sharpness: 10.0;15.0 3;5 100.0
    excellentenchants:wither: 10.0;15.0 3;5 100.0

# Fishing

Type: fishing

Rewards players for fishing specific items or entities.

SourceTable example
SourceTable:
  Items:
    minecraft:cod: 10.0;15.0 3;5 100.0
    evenmorefish:rare:tuna: 10.0;15.0 3;5 100.0
  Entities:
    minecraft:drowned: 10.0;15.0 3;5 100.0

# Gathering

Type: gathering

Rewards players for obtaining specific items from blocks or mobs.

SourceTable example
SourceTable:
  BlockDrops:
    minecraft:diamond: 10.0;15.0 3;5 100.0 # Diamond from diamond ore (usually)
  MobDrops:
    minecraft:string: 10.0;15.0 3;5 100.0 # Strings from spiders (usually)

# Mining

Type: mining

Rewards players for mining specific blocks.

SourceTable example
SourceTable:
  Blocks:
    minecraft:stone: 10.0;15.0 3;5 100.0