-
-
Notifications
You must be signed in to change notification settings - Fork 88
Task configuration layout
This shows you how to lay out the task types in the config. This should be under the tasks
section in the quest. Make sure indentation is correct with the YAML file!
Note: This list will not contain task types which were written by someone else. Click here to see the task types which come with the plugin.
Place a set amount of blocks.
building:
type: "blockplace"
amount: 10 # amount of blocks to be placed
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Place a set amount of a specific block.
buildingstone:
type: "blockplacecertain"
amount: 10 # amount of blocks to be placed
block: STONE # name of block (minecraft name)
data: 1 # (OPTIONAL) data code
reverse-if-broken: false # (OPTIONAL) if true, blocks of same type broken will reverse progression (prevents silk-touch exploit)
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
The data
field may not work on newer Spigot versions. Please see this list (1.13+) or this list (1.8-1.12) for item names.
The reverse-if-broken
field will subtract from the progress if the block of the same type is broken, rather than placed, which prevents players from breaking then placing the blocks.
Alternative layout
The alternative layout allows multiple blocks to be specified, which all count towards the progress.
buildingmultiple:
type: "blockplacecertain"
amount: 10 # amount of blocks to be placed
blocks: # name of blocks which will count towards progress
- STONE
- GOLD_ORE
reverse-if-broken: false # (OPTIONAL) if true, blocks of same type broken will reverse progression (prevents silk-touch exploit)
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Break a set amount of blocks.
mining:
type: "blockbreak"
amount: 10 # amount of blocks to be broken
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Break a set amount of a specific block.
miningstone:
type: "blockbreakcertain"
amount: 10 # amount of blocks to be brkoen
block: STONE # name of block (can be id or minecraft name)
data: 1 # (OPTIONAL) data code
reverse-if-placed: false # (OPTIONAL) if true, blocks of same type placed will reverse progression (prevents silk-touch exploit)
check-coreprotect: false # (OPTIONAL) if true and CoreProtect is present, the plugin will check its logs for player placed blocks
check-coreprotect-time: 3600 # (OPTIONAL) time in seconds for the maximum logging period to check
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
The data
field may not work on newer Spigot versions. Please see this list (1.13+) or this list (1.8-1.12) for item names.
The reverse-if-broken
field will subtract from the progress if the block of the same type is broken, rather than placed, which prevents players from breaking then placing the blocks.
Using check-coreprotect
requires the CoreProtect plugin installed, and requires check-coreprotect-time
to also be specified. Quests will query CoreProtect when a block is broken to see if any other player has placed a block there. There is a short delay when a player places a block and when it is recorded in CoreProtect, so this may not function as expected in creative mode, where block breaking is instant.
Alternative layout
The alternative layout allows multiple blocks to be specified, which all count towards the progress.
miningmultiple:
type: "blockbreakcertain"
amount: 10 # amount of blocks to be placed
blocks: # name of blocks which will count towards progress
- STONE
- GOLD_ORE
reverse-if-broken: false # (OPTIONAL) if true, blocks of same type broken will reverse progression (prevents silk-touch exploit)
check-coreprotect: false # (OPTIONAL) if true and CoreProtect is present, the plugin will check its logs for player placed blocks
check-coreprotect-time: 3600 # (OPTIONAL) time in seconds for the maximum logging period to check
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Kill a set amount of entities.
mobkilling:
type: "mobkilling"
amount: 10 # amount of mobs to be killed
hostile: true # (OPTIONAL) whether or not the mob is hostile - default: both
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Not specifying the hostile
field will result in both hostile and non-hostile mobs counting towards progress.
Kill a set amount of a specific entity type.
mobkillingblaze:
type: "mobkillingcertain"
amount: 10 # amount of mobs to be killed
mob: BLAZE # name of mob
name: &cInferno # (OPTIONAL) this only allows blazes called "&cInferno" - default: any name
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Ensure any colour codes in the name
of the entity are specified, otherwise the match will not work. For a list of entities, click here.
Alternative layout
The alternative layout allows multiple names to be specified, which all count towards the progress.
mobkillingblazemultiple:
type: "mobkillingcertain"
amount: 10 # amount of mobs to be killed
mob: BLAZE # name of mob
names: # (OPTIONAL) this only allows blazes called "&cInferno" OR "&6Furnace" - default: any name
- "&cInferno"
- "&6Furnace"
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Deal a certain amount of damage.
dealdamage:
type: "dealdamage"
amount: 100 # amount of damage inflicted (HP)
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Damage is measured in HP, 1 heart = 2 HP. A player has 20 HP by default, with no status effects applied.
Catch a set amount of items from the sea.
fishing:
type: "fishing"
amount: 10 # amount of fish caught
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Catch a set amount of a specific item from the sea.
fishingcertain:
type: "fishingcertain"
item: PUFFERFISH # type of item caught
amount: 10 # amount of item caught
data: 3 # (OPTIONAL) data code of item caught
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Please see this list (1.13+) or this list (1.8-1.12) for item names.
Kill a set amount of players.
playerkilling:
type: "playerkilling"
amount: 10 # amount of players killed
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Walk a set distance.
walking:
type: "walking"
distance: 1000 # distance in blocks travelled
mode: walking # (OPTIONAL) specific mode of transport
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
The accepted values for mode
are: boat
, horse
, pig
, sneaking
, walking
, running
, swimming
. If mode
is not specified, any mode of transport will count towards the task.
Obtain a set of items.
beef:
type: "inventory"
item: RAW_BEEF # name of item (can be id or minecraft name)
amount: 8 # amount of item needed
data: 0 # (OPTIONAL) data code
remove-items-when-complete: false # (OPTIONAL) take the items away from the player on completion - default: false
accept-partial-completion: false # (OPTIONAL) allow partial deliveries - default: false
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
The data
field may not work on newer Spigot versions. Please see this list (1.13+) or this list (1.8-1.12) for item names.
accept-partial-completion
will remove any matching items from the player at any given point. This will have no effect if remove-items-when-complete
is false. Turning this on may cause players to become confused as to why their items are disappearing if they are unaware of the active quest.
First alternative layout
This alternative layout allows for more exact item specification, with a certain name, lore, enchantments etc.
beef:
type: "inventory"
item: # SPECIFIC item with name and lore
name: "&cSpecial Beef"
type: "RAW_BEEF"
lore:
- "&7This is a special type of beef"
amount: 8 # amount of item needed
remove-items-when-complete: false # (OPTIONAL) take the items away from the player on completion - default: false
accept-partial-completion: false # (OPTIONAL) allow partial deliveries - default: false
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Please see Defining items for more information on specifying items within Quests, and for instructions on how to add different attributes such as unbreakable or hidden enchantments.
Second alternative layout
This alternative layout allows for referencing quest items.
beef:
type: "inventory"
item: # USING quest-item
quest-item: "specialbeef"
amount: 8 # amount of item needed
remove-items-when-complete: false # (OPTIONAL) take the items away from the player on completion - default: false
accept-partial-completion: false # (OPTIONAL) allow partial deliveries - default: false
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Please see Defining items § Quest items for more information on using quest items.
Craft a specific item.
compass:
type: "crafting"
item: COMPASS # name of item (can be id or minecraft name)
amount: 5 # amount of item needed
data: 0 # (OPTIONAL) data code
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
The data
field may not work on newer Spigot versions. Please see this list (1.13+) or this list (1.8-1.12) for item names.
First alternative layout
The alternative layout allows for more exact item specification, with a certain name, lore, enchantments etc.
compass:
type: "crafting"
item: # SPECIFIC item with name and lore
name: "&cSuper Compass"
type: "COMPASS"
lore:
- "&7This is special compass with a fancy name"
amount: 5 # amount of item needed
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Please see Defining items for more information on specifying items within Quests, and for instructions on how to add different attributes such as unbreakable or hidden enchantments.
Second alternative layout
This alternative layout allows for referencing quest items.
beef:
type: "crafting"
item: # USING quest-item
quest-item: "supercompass"
amount: 5 # amount of item needed
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Please see Defining items § Quest items for more information on using quest items.
Consume a specific item.
beef:
type: "consume"
item: RAW_BEEF # name of item (can be id or minecraft name)
amount: 8 # amount of item consumed
data: 0 # (OPTIONAL) data code
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
The data
field may not work on newer Spigot versions. Please see this list (1.13+) or this list (1.8-1.12) for item names.
First alternative layout
This alternative layout allows for more exact item specification, with a certain name, lore, enchantments etc.
beef:
type: "consume"
item: # SPECIFIC item with name and lore
name: "&cSpecial Beef"
type: "RAW_BEEF"
lore:
- "&7This is a special type of beef"
amount: 8 # amount of item consumed
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Please see Defining items for more information on specifying items within Quests, and for instructions on how to add different attributes such as unbreakable or hidden enchantments.
Second alternative layout
This alternative layout allows for referencing quest items.
beef:
type: "inventory"
item: # USING quest-item
quest-item: "specialbeef"
amount: 8 # amount of item needed
remove-items-when-complete: false # (OPTIONAL) take the items away from the player on completion - default: false
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Please see Defining items § Quest items for more information on using quest items.
Fill a bucket a certain amount of times.
bucketfill:
type: "bucketfill"
bucket: LAVA_BUCKET # bucket to fill
amount: 8 # amount of times to fill
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Empty a bucket a certain amount of times.
bucketempty:
type: "bucketempty"
bucket: LAVA_BUCKET # bucket to empty
amount: 8 # amount of times to empty
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Enchant a certain amount of items.
enchanting:
type: "enchanting"
amount: 5 # amount of items enchanted
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Earn a set amount of exp after starting the quest.
expearn:
type: "expearn"
amount: 20 # amount of experience earned
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Reach a set of co-ordinates.
position:
type: "position"
x: 0 # x position
y: 0 # y position
z: 0 # z position
world: world # name of world
distance-padding: 10 # (OPTIONAL) padding zone in meters/blocks - this will allow within 10 blocks of 0, 0, 0 - default = 0
The distance-padding
option allows players to not have to stand in the exact position. It is recommended to have it set to at least 1.
Be a set distance away from certain co-ordinates.
distancefrom:
type: "distancefrom"
x: 0 # x position
y: 0 # y position
z: 0 # z position
world: world # name of world
distance: 10 # required distance from coordinates
The distance
is measured in a circle around the co-ordinates.
Play for a certain amount of time.
playtime:
type: "playtime"
minutes: 10 # amount of minutes played
ignore-afk: false # (OPTIONAL) ignore players marked as AFK by essentials
Breed a set amount of animals.
breeding:
type: "breeding"
amount: 5 # amount of animals bred
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Requires 1.13+
Farm a set amount of any crop. For versions under 1.13, use blockbreakcertain with data codes.
farming:
type: "farming"
amount: 10 # amount of blocks to be broken
mode: "break" # (OPTIONAL) the specific mode of farming
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
mode
accepts either "break" or "harvest". A harvest is where a block drops an item (usually a crop) but does not change state. If mode
is not defined, both will be accepted.
Requires 1.13+
Farm a set amount of a specific crop. For versions under 1.13, use blockbreakcertain with data codes.
farming:
type: "farmingcertain"
amount: 10 # amount of blocks to be brkoen
block: WHEAT # name of block (can be id or minecraft name)
mode: "break" # (OPTIONAL) the specific mode of farming
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Please see this list (1.13+) for item names.
mode
accepts either "break" or "harvest". A harvest is where a block drops an item (usually a crop) but does not change state. If mode
is not defined, both will be accepted.
Alternative layout
The alternative layout allows multiple blocks to be specified, which all count towards the progress.
farmingmultiple:
type: "farmingcertain"
amount: 10 # amount of blocks to be placed
blocks: # name of blocks which will count towards progress
- WHEAT
- BEETROOT
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Brew a set amount of potions.
brewing:
type: "brewing"
amount: 10 # amount of potions brewed
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Milk a set amount of cows.
milking:
type: "milking"
amount: 10 # amount of cows milked
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Shear a set amount of sheep.
shearing:
type: "shearing"
amount: 10 # amount of sheep sheared
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Tame a set amount of animals.
taming:
type: "taming"
amount: 10 # amount of mobs tamed
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Test if a player has a permission.
permission:
type: "permission"
permission: "some.permission.name" # permission required to be marked as complete
Execute a specific command.
command:
type: "command"
command: "help" # command to execute
ignore-case: true # (OPTIONAL) ignore capitalisation - default: false
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
This task may not work for commands not registered (i.e commands made with plugins like DeluxeMenu).
Deliver a set of items to a NPC.
citizensdeliver:
type: "citizens_deliver"
npc-name: "Gerald" # name of NPC
# OR npc-id: "npc1" ID of NPC (mutally exclusive with npc-name)
item: RAW_BEEF # name of item (can be id or minecraft name)
amount: 8 # amount of item needed
data: 0 # (OPTIONAL) data code
remove-items-when-complete: false # (OPTIONAL) take the items away from the player on completion - default: false
accept-partial-completion: false # (OPTIONAL) allow partial deliveries - default: false
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
npc-name
and npc-id
are mutally exclusive. Specify one or the other.
The data
field may not work on newer Spigot versions. Please see this list (1.13+) or this list (1.8-1.12) for item names.
accept-partial-completion
will remove any matching items when the player interacts with the NPS. This will have no effect if remove-items-when-complete
is false.
First alternative layout
The alternative layout allows for more exact item specification, with a certain name, lore, enchantments etc.
beef:
type: "citizens_deliver"
npc-name: "Gerald" # name of NPC
item: # SPECIFIC item with name and lore
name: "&cSpecial Beef"
type: "RAW_BEEF"
lore:
- "&7This is a special type of beef"
amount: 8 # amount of item needed
remove-items-when-complete: false # (OPTIONAL) take the items away from the player on completion - default: false
accept-partial-completion: false # (OPTIONAL) allow partial deliveries - default: false
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Please see Defining items for more information on specifying items within Quests, and for instructions on how to add different attributes such as unbreakable or hidden enchantments.
Second alternative layout
This alternative layout allows for referencing quest items.
beef:
type: "citizens_deliver"
npc-name: "Gerald" # name of NPC
# OR npc-id: "npc1" ID of NPC (mutally exclusive with npc-name)
item: # USING quest-item
quest-item: "specialbeef"
amount: 8 # amount of item needed
remove-items-when-complete: false # (OPTIONAL) take the items away from the player on completion - default: false
accept-partial-completion: false # (OPTIONAL) allow partial deliveries - default: false
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Please see Defining items § Quest items for more information on using quest items.
Interact with (right-click) an NPC.
citizensinteract:
type: "citizens_interact"
npc-name: "Gerald" # name of NPC
# OR npc-id: "npc1" ID of NPC (mutally exclusive with npc-name)
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
npc-name
and npc-id
are mutally exclusive. Specify one or the other.
Reach a certain island level using ASkyBlock.
askyblock:
type: "askyblock_level"
level: 10 # island level needed
Reach a certain island level using uSkyBlock.
uskyblock:
type: "uskyblock_level"
level: 10 # island level needed
Kill a set amount of a MythicMobs entity.
mythicmobs:
type: "mythicmobs_killing"
amount: 1 # amount of mobs to be killed
name: "SkeletalKnight" # internal name of mob (name in config - NOT display name)
level: 1 # (OPTIONAL) the exact level the mob must be for it to count
min-level: 1 # (OPTIONAL) the minimum level the mob must be for it to count
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
The level
and min-level
fields should not be specified together. The name
field is the name of the mob in the configuration (i.e the name you use to spawn the mob).
Reach a certain island level in the level addon for BentoBox.
bentobox:
type: "bentobox_level"
level: 20 # minimum island level needed
Reach a certain island value for IridiumSkyblock.
iridiumskyblock:
type: "iridiumskyblock_value"
value: 20 # minimum island value needed
Parse any placeholder and evaluate its result.
papieval:
type: "placeholderapi_evaluate"
placeholder: "%player_name%" # placeholder string
evaluates: "fatpigsarefat" # what it should evaluate as to be marked as complete
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
Alternative layout
The alternative layout allows mathematical comparisons to be done on the placeholder result.
papieval:
type: "placeholderapi_evaluate"
placeholder: "%player_empty_slots%" # placeholder string
evaluates: "20" # number to compare to
operator: "GREATER_THAN" # (OPTIONAL) numerical operator, "evaluates" MUST be an integer
worlds: # (OPTIONAL) restrict to certain worlds
- "world"
The following values for operator
are allowed: GREATER_THAN
(>), LESS_THAN
(<), GREATER_THAN_OR_EQUAL_TO
(>=), LESS_THAN_OR_EQUAL_TO
(<=). Ensure the outcome of placeholder
is an integer.
Reach a certain balance.
essentialsbalance:
type: "essentials_balance"
amount: 1000 # amount of money to reach
Earn a certain amount of money.
essentialsbalance:
type: "essentials_moneyearn"
amount: 1000 # amount of money to earn
Buy something from a ShopGUI+ shop.
shopguiplusbuy:
type: "shopguiplus_buycertain"
shop-id: "shop_id" # shopgui+ id of the shop that contains the item.
item-id: "item_id" # shopgui+ id of item to buy
amount: 1000 # amount of thing to buy
Sell something to a ShopGUI+ shop.
shopguiplussell:
type: "shopguiplus_sellcertain"
shop-id: "shop_id" # shopgui+ id of the shop that contains the item.
item-id: "item_id" # shopgui+ id of item to sell
amount: 1000 # amount of thing to sell
Reach a certain island level for FabledSkyblock.
fabledskyblock:
type: "fabledskyblock_level"
level: 20 # minimum island level needed
Reach a certain island level for SuperiorSkyblock.
superiorskyblock:
type: "superiorskyblock_level"
level: 20 # minimum island level needed
Reach a certain island worth for SuperiorSkyblock.
superiorskyblock:
type: "superiorskyblock_worth"
worth: 20000 # minimum island worth needed
Vote a certain amount of times.
votingplugin:
type: "votingplugin_vote"
amount: 5 # minimum votes needed
This wiki serves as a manual for Quests, however there is no guarantee that the information is up-to-date or complete. As per the license, this software provides absolutely no warranty, nor are the maintainers liable for any damages. Please see the license text for more information.
🏠 Home page ~ 💻 Source code ~ 🤝 Contributing to the wiki ~ 📜 Full license text
- Basic options
- Creating a quest
- Creating a category
- Global configurations
- GUI configuration
- Custom GUI items
- Configuration problems
- Storage providers
- Defining items
- Colour (color) codes
- Default configuration
-
Task types
- blockplace
- blockbreak
- breeding
- brewing
- bucketempty
- bucketfill
- command
- consume
- crafting
- dealdamage
- distancefrom
- enchanting
- expearn
- farming
- fishing
- inventory
- milking
- mobkilling
- permission
- playerkilling
- playtime
- position
- shearing
- taming
- walking
- smelting
- askyblock_level
- bentobox_level
- citizens_deliver
- citizens_interact
- essentials_balance
- essentials_moneyearn
- fabledskyblock_level
- iridiumskyblock_value
- mythicmobs_killing
- placeholderapi_evaluate
- shopguiplus_buy
- shopguiplus_sell
- superiorskyblock_level
- superiorskyblock_worth
- votingplugin_vote
- uskyblock_level