Objectives

Page is updated to match version 0.6.2.

This page describes what each quest objective does and how to use it.

Adding objective

General command to add objective is /q objective add <objective type> <additional arguments>, where additional arguments differ with each objective type and are described below on this page. Order in which objectives are added also defines completion order for ordered quests.

Swapping objectives

Modifying objective order is useful when building more advanced objective structure. It is done by /q objective swap <ID 1> <ID 2>, where ID 1 and 2 are IDs of objectives to swap.

Moving objectives

To make ordered quests easier to maintain, it is possible to swap them freely. It is done by /q objective move <FROM> <TO>, where FROM is ID of objective you want to move and TO is ID you want that objective to have.

Objective description

Each objective has it's own default verbal description shown in /q show or /q progress. It is shown only when custom description is empty. This can be easily changed by /q objective desc add <ID> <description>, just replace <ID> with objective you want to modify. In that case custom description is added to current custom description. Custom description can contain variables, which will be replaced with appropriate values in progress or user info. To remove it, type /q objective desc remove <ID>, where <ID> is id of objective you want to remove custom description from.

Description variables

  • %r = remaining amount (total in info, remaining in progress)
  • %t = total amount needed

Objective prerequisites

Objective prerequisites provide possibility to specify which objectives have to be completed before some other. To create pseudo-ordered quest, one would have to set prerequisite of each objective to its predecessor. If objectives 0 and 1 have to be completed in specified order, prerequisite of objective 1 must be set to 0. This way, player must first complete objective 0 and then he will be able to complete objective 1. But each objective can have more prerequisites, which allows for more complex objective structures. Prerequisites are added to objective by using /q objective prereq add <obj_id> <prerequisite1>... command, which can contain multiple prerequisites separated by space. Removing prerequisites is as easy as typing /q objective prereq remove <obj_id> <prerequisite1>.... Command for prerequisite removal works the same as command for addition.

Objective types

Item

Command: /q objective add item {<item>} [amount] {[enchants]}
Requires player to have certain items in his inventory on completion. If quest contains more item objectives, player has to have items for all objectives. Objective is checked when player types /quest done, or completes previous objective. Default amount is 1. Matches any data value if omitted or -1.
Config:

type: 'ITEM'
# item is MANDATORY
item: '36:5'
# amount is optional - default is 1
amount: 1
# enchants are optional - default is none
enchants: '32:1,33:1'

Experience

Command: /q objective exp <amount>
Requires player to have certain amount of experience on completion. If quest contains more experience objectives, player has to have sum of those amounts. Objective is checked when player types /quest done, or completes previous objective.
Config:

type: 'EXP'
# amount is MANDATORY
amount: 500

Break

Command: /q objective add add break {<block>} <amount> {[hand]}
Requires player to break given amount of specified block type. Hand specifies item that must be in hand when block is broken, 0 for empty, omit for any item. When more break objectives contain same block type, those added first are completed first. {[enchants]} in this case DOES NOT take item durability/data into account.
Config:

type: 'BREAK'
# block is optional - any block if omitted
block: 'stone'
# amount is optional - default is 1
amount: 1
# inhand is optional - 0 for empty hand - any if omitted (only item ID, data does not matter)
inhand: 278

Location

Command: /q objective add loc {<location>} [range]
Requires player to reach certain destination. Range is optional, but must be more than 0, default range is 3 blocks.
Config:

type: 'LOCATION'
# location is MANDATORY
location: '100.00;70;100.30;world_nether;0.00;0.00'
# range is optional - default is 3
range: 5;

World

Command: /q objective add world {<world>}
Requires player to visit specified world. This objective will be merged with location objective eventually.
Config:

type: 'WORLD'
# world is MANDATORY
world: 'world'

Death

Command: /q objective add death <amount> {[location]} [range]
Requires player to die certain amount of times near specified location or anywhere if location is ommited. Range is optional, but must be more than 0, default range is 5 blocks.
Config:

type: 'DEATH'
# location is optional - any if omitted
location: '100.00;70;100.30;world_nether;0.00;0.00'
# amount is optional - default is 1
amount: 3
# range is optional - default is 5
range: 10

Mob Kill

Command: /q objective add mobkill <amount> {[entity]}
Requires player to kill specified amount of certain or any mod type. Any mob type includes ALL mobs (even chickens).
Config:

type: 'MOBKILL'
# entity is optional - any if omitted
entity: 'SHEEP'
# amount is optional - default is 1
amount: 5

Player Kill

Command: /q objective add kill <amount> [player_name] (or [p:<permission>])
Requires player to kill specified or any other player given amount of times. Names are case insensitive.
Config:

type: 'PLAYERKILL'
# name is optional - any if omitted
name: 'Notch'
# amount is optional - default is 1
amount: 5
# perm is optional - default is false
# if perm is true, name is permission node the victim has to have
perm: false

Place

Command: /q objective add place {<item>} <amount>
Requires player to place given amount of blocks.
Config:

type: 'PLACE'
# block is optional - any if omitted
block: 'stone'
# amount is optional - default is 1
amount: 100

Collect

Command: /q objective add collect {<item>} <amount>
Requires player to collect given amount of specified items. Removing items on pickup and subtracting progress on item drop options are configurable in main config.
Config:

type: 'COLLECT'
# item is optional - any if omitted
item: 39
# amount is optional - default is 1
amount: 60

Craft

Command: /q objective add craft {<item>} <amount>
Requires player to craft given amount of items.
Config:

type: 'CRAFT'
# item is optional - any if omitted
item: 'BOOKSHELF'
# amount is optional - default is 1
amount: 10

Smelt

Command: /q objective add smelt {<item>} <amount>
Requires player to smelt given amount of items. Item specified must be the product of smelting.
Config:

type: 'SMELT'
# item is optional - any if omitted
item: 'COOKED_CHICKEN'
# amount is optional - default is 1
amount: 15

Enchant

Command: /q objective add ench {<item>} [amount] {[enchants]}
Requires player to enchant specfied item given amount of times. Enchanted item must have all specified enchantments, with specified level or higher.{[item]} in this case DOES NOT take durability/data into account.
Config:

type: 'ENCHANT'
# item is optional - any if omitted
item: 278
# amount is optional - default is 1
amount: 1
# enchants are optional - any if omitted
enchants: '32:3,35:1'

Milk

Command: /q objective add milk <amount>
Requires player to obtain specified amount of milk buckets by milking cows.
Config:

type: 'MILK'
# amount is optional - default is 1
amount: 5

Fish

Command: /q objective add fish <amount>
Requires player to catch specified amount of fish.
Config:

type: 'FISH'
# amount is optional - default is 1
amount: 15

Shear

Command: /q objective add shear <amount> {[color]}
Requires player to shear specified amount of sheeps, optionally with specified color.
Config:

type: 'SHEAR'
# color is optional - any if omitted (throws error in 0.6.1 if unknown color is specified)
color: 'BLUE'
# amount is optional - default is 1
amount: 20

Tame

Command: /q objective add tame <amount> {[entity]}
Requires player to tame specified amount of mobs, optionnally of specified type.
Config:

type: 'TAME'
# entity is optional - any if omitted
entity: 'wolf'
# amount is optional - default is 1
amount: 5

Money

Command: /q objective add money <amount>
Requires player to have specified amount of money to complete this objective.
Config:

type: 'MONEY'
# amount is MANDATORY
amount: 120.5

Action

Command: /q objective add action {<click>} {[block]} {[item]} {[location]} [range]
Requires player to interact with the world in a specified way. Click defines wheter player has to right click, left click or push pressure plate. Block is the block clicked and item is the item player has to hold while doing so. Location can specify exact block clicked or certain area of blocks if range is specified. If click is type 'PUSH', clicked block has to be some kind of pressure plate.
Config:

type: 'ACTION'
# block is optional - any if omitted
block: stone
# hand is optional - any if omitted (0 for empty hand)
hand: 0
# click is optional - any if omitted (0-any, 1-left, 2-right, 3-pressure)
click: 2
# location is optional - any if omitted
location: '100;70;100;world'
# range is optional - default is 0
range: 0

Npc

Command: /q objective add npc <ID> [cancel]
Requires player to rightclick specified NPC. <ID> is the ID of the NPC. Cancel can be TRUE or FALSE and specifies whether or not to cancel interaction event. (In case that NPC does another action on right click and you don't want it to perform the action when right click is part of the quest.)
Config:

type: 'NPC'
# index is MANDATORY (NPC ID)
index: 3
# cancel is optional - dafeult is false
cancel: 'true'

Dye

Command: /q objective add dye <amount> {[color]}
Requires player to dye certain amount of sheep. Dyeing counts only when sheep change it's color.
Config:

type: 'DYE'
# amount is optional - default is 1
amount: 5
# color is optional - any if omitted
color: 'GREEN'

Boss

Command: /q objective add boss <name> [amount]
REQUIRES EpicBoss plugin to work. Player needs to kill specified boss given amount of times. If boss name is "ANY" (yes, capitalized letters), any boss kills count. (boss name "ANY" does not work in 0.6.1)
Config:

type: 'BOSS'
# boss name is optional - any if omitted
boss: 'SkeletonKing'
# amount is optional - default is 1
amount: 3

Npckill

Command: /q objective add npckill <name> [amount]
Player needs to kill specified NPC given amount of times. If NPC name is "ANY", any npc kills count.
Config:

type: 'NPCKILL'
# npc name is optional - any if omitted
name: 'Awesome npc'
# amount is optional - default is 1
amount: 5

Removing objective

To remove objective, type /q objective remove <ID>, where <ID> is ID of objective you want to remove.