Skip to main content

๐Ÿ—ก๏ธ Objectives

Objectives are tasks the player has to complete in order to finish the Quest. Some objectives are integrations with other plugins and are only available if you have that plugin installed.

First, we'll list the objectives which are always available:

Default Objectivesโ€‹

โ›๏ธ BreakBlocksโ€‹

Description

Completed when: Player breaks a specific amount of blocks.

Command Arguments:

  • <material> The material of the block which the player has to break. Use 'hand' to specify the item which you are currently holding in your hand. Use 'any' so any item counts. You can also specify items made in the NotQuests item system.
  • <amount> - The amount of blocks the player needs to break
  • (flags) - Optional flags
    • --doNotDeductIfBlockIsPlaced - By default, if you place a block which is specified in the BreakBlocks objective, it will be deducted from your progress. Otherwise, players would be able to simply cheat by placing and then breaking the block. Setting this flag will disable that safety mechanism.

Example command: /qa edit questname objectives add BreakBlocks grass_block 4

โฃ๏ธ Breedโ€‹

Description

Completed when: Player breeds a specific mob

Command Arguments:

  • <entityType> The mob type which the player needs to breed. Use 'any' if any mob type should count.
  • <amount> - The amount of mobs the player needs to breed

Example command: /qa edit questname objectives add BreedMobs cow 4

โ“ Conditionโ€‹

Description

Completed when: Player fulfills a certain condition (Created using /qa conditions ). The plugin checks if the condition has been fulfilled every second or if the corresponding action to that condition has been executed (for example the Money action for the Money condition). This basically adds countless more objectives. For example, you can even use PlaceholderAPI Placeholders to create objectives.

Command Arguments:

  • <condition name> This is the name of the condition it should check. Conditions can be created using /qa conditions .
  • (flags) - Optional flags
    • --checkOnlyWhenCorrespondingVariableValueChanged - If you set this flag, the condition will only be checked if the corresponding action for the variable has been executed. (For example the Money action for the Money condition). The plugin will stop checking the condition periodically. Thus, this will also be more performant.

Example command: /qa edit questname objectives add Condition myCondition

๐Ÿฅ— ConsumeItemsโ€‹

Description

Completed when: Player consumes an item. Consuming usually means eating or drinking - for example an apple.

Command Arguments:

  • <material> The material of the item which the player has to consume. Use 'hand' to specify the item which you are currently holding in your hand. Use 'any' so any item counts. You can also specify items made in the NotQuests item system.
  • <amount> - The amount of items the player needs to consume

Example command: /qa edit questname objectives add ConsumeItems apple 5

โš’๏ธ CraftItemsโ€‹

Description

Completed when: Player consumes an item. Consuming usually means eating or drinking - for example an apple.

Command Arguments:

  • <material> The material of the item which the player has to craft. Use 'hand' to specify the item which you are currently holding in your hand. Use 'any' so any item counts. You can also specify items made in the NotQuests item system.
  • <amount> - The amount of items the player needs to craft

Example command: /qa edit questname objectives add CraftItems enchanting_table 1

๐Ÿšš DeliverItemsโ€‹

Description

Completed when: Player delivers an Item to an NPC (Both Citizen NPCs and Armorstands work). Delivering means that the item will be removed from the player's inventory.

Command Arguments:

  • <material> The material of the item which the player has to deliver. Use 'hand' to specify the item which you are currently holding in your hand. Use 'any' so any item counts. You can also specify items made in the NotQuests item system.
  • <amount> - The amount of items the player needs to deliver
  • <NPC ID or Armorstand> - Either enter the Citizens NPC ID, or 'armorstand' to receive an item with which you can easily attach this objective to an armorstand.

Example command: /qa edit questname objectives add DeliverItems coal 20 armorstand

๐Ÿช„ Enchantโ€‹

Description

Completed when: Player enchants an item

Command Arguments:

  • <enchantment> The enchantment the player has to enchant the item with.
  • <materials> The item the player has to enchant. You can use 'any' here if it doesn't matter
  • <amount> - The amount of items the player needs to enchant that item
  • (flags) - Optional flags
    • --min <minimum level> - Specify the minimum enchantment level
    • --max <maximum level> - Specify the maximum enchantment level

Example command: /qa edit enchant1 objectives add Enchant minecraft:efficiency diamond_pickaxe 3.0 --min 2.0 (Enchant diamond pickaxe 3 times with efficiency (minimum enchantment level: 2))

๐ŸŸ FishItemsโ€‹

Description

Completed when: Player fishes a specific item. Only successful fishing attempts are counted.

Command Arguments:

  • <material> The material of the item which the player has to fish. Use 'hand' to specify the item which you are currently holding in your hand. Use 'any' so any item counts. You can also specify items made in the NotQuests item system.
  • <amount> - The amount of items the player needs to fish

Example command: /qa edit questname objectives add FishItems cod 3

๐Ÿ‘‰ Interactโ€‹

Description

Completed when: Player interacts with a specific location by either left-clicking, right-clicking or both.

Command Arguments:

  • <amount> - Amount of times the player needs to interact
  • <world> - World name of the location with which the player has to interact
  • <x> - X-coordinate location with which the player has to interact
  • <y> - Y-coordinate of the location with which the player has to interact
  • <z> - Z-coordinate of the location with which the player has to interact
  • (flags) - Optional flags
    • --leftClick - If you set this flag, then interactions by left-clicking the location will count.
    • --rightClick - If you set this flag, then interactions by right-clicking the location will count.
    • --cancelInteractions - If you set this flag, then the interact event of the interaction will be cancelled. If, for example, the location is a chest and the player has to right-click the chest, the chest will open unless you set this flag. This also prevents breaking blocks.
    • --taskDescription <task description> - With this flag you can specify the description of what the player has to do. It will be displayed in the objective.
    • --maxDistance <radius in blocks> - This is the maximum radius in blocks around the specified location in which the interaction will count.

Example command: /qa edit questname objectives add Interact 2 world 1453 71 -2451 --rightClick --maxDistance 2 --cancelInteraction --taskDescription "Find Trents fishing rod"

๐Ÿคธ Jumpโ€‹

Description

Completed when: Player jumps a certain amount of times

Command Arguments:

  • <amount> - The amount of items the player has to jump

Example command: /qa edit questname objectives add Jump 10

๐Ÿฉธ KillMobsโ€‹

Description

Completed when: Player kills a mobs.

Command Arguments:

  • <entityType> - The type of mob which the player has to kill. Use 'any' so any mob counts. Use 'player' to kill a player. If you have MythicMobs or EcoBosses installed, you can also use mobs from those mods or target entire factions in mythicmobs using mmfaction:yourfactionname.
  • <amount> - Amount of kills needed
  • (flags) - Optional flags
    • --nametag_containsany <what the nametag can contain> - If you set this flag, it will check if the nametag of the mob contains any of the strings specified here
    • --nametag_equals <what the nametag should be> - If you set this flag, it will check if the nametag of the mob is equal to the nametag specified here
    • ProjectKorra integration:
      • --withProjectKorraAbility <ability> - This flag makes it so you need to kill the mob with a specific ProjectKorra ability.

Example command: /qa edit questname objectives add KillMobs zombie 10

๐Ÿ”ข NumberVariableโ€‹

Description

Completed when: NumberVariable conditions you can specify here is fulfilled. This allows you to use variables in objectives relatively!

Command Arguments:

TODO

Example command: /qa edit questname objectives add NumberVariable PlaytimeMinutes moreOrEqualThan PlaytimeMinutes+2 - This objective makes it, so the player needs to play 2 MORE minutes.

๐Ÿ”ข Objectiveโ€‹

Description

Completed when: This is a holder for sub-objectives. If you add sub-objectives to an "Objective" objective, it's completed once all its sub-objectives have been completed.

Command Arguments:

  • <Objective Holder Name> - This will be displayed when taking the quest

Example command: /qa edit questname objectives add Objective "Crafting Objectives"

๐Ÿดโ€โ˜ ๏ธ OpenBuriedTreasureโ€‹

Description

Completed when: Player opens any x amount of buried treasures (buried treasures are a vanilla minecraft feature)

Command Arguments:

  • <amount> - The amount of buried treasures the player needs to open (right-click)

Example command: /qa edit questname objectives add OpenBuriedTreasure 3

๐Ÿ“• OtherQuestโ€‹

Description

Completed when: Player completes another Quest

Command Arguments:

  • <other quest name> - The name of the other Quest which the player needs to complete
  • <amount> - The amount of times the player needs to complete the other Quest
  • (flags) - Optional flags
    • --countPreviouslyCompletedQuests - If you set this flag, all previous Quest completions before the player unlocks this objective will count towards its progress as well. Otherwise, only new Quest completions will count.

Example command: /qa edit questname objectives add OtherQuest otherQuestName 2 --countPreviouslyCompletedQuests

๐Ÿšฎ PickupItemsโ€‹

Description

Completed when: Player picks up a specific item by picking it up from the ground into his inventory.

Command Arguments:

  • <material> The material of the block which the player has to break. Use 'hand' to specify the item which you are currently holding in your hand. Use 'any' so any item counts. You can also specify items made in the NotQuests item system.
  • <amount> - The amount of items the player needs to pick up
  • (flags) - Optional flags
    • --doNotDeductIfItemIsDropped - By default, if you drop an item which is specified in the PickupItems objective, it will be deducted from your progress. Otherwise, players would be able to simply cheat by dropping and then picking up the item over and m. Setting this flag will disable that safety mechanism.
    • --doNotDeductIfItemIsPlaced - By default, if you place an item which is specified in the PickupItems objective, it will be deducted from your progress. Otherwise, players would be able to simply cheat by placing and then picking up the item over and over. Setting this flag will disable that safety mechanism.
    • --doNotDeductIfItemIsRemovedFromInventory - By default, if you remove an item from your inventory (e.g. put in a chest) which is specified in the PickupItems objective, it will be deducted from your progress. Otherwise, players would be able to simply cheat by, e.g., putting an item in a chest and destroying the chest. Setting this flag will disable that safety mechanism.

Example command: /qa edit questname objectives add PickupItems dirt 12

๐Ÿชง PlaceBlocksโ€‹

Description

Completed when: Player breaks a specific amount of blocks.

Command Arguments:

  • <material> The material of the block which the player has to place. Use 'hand' to specify the item which you are currently holding in your hand. Use 'any' so any item counts. You can also specify items made in the NotQuests item system.
  • <amount> - The amount of blocks the player needs to place
  • (flags) - Optional flags
    • --doNotDeductIfBlockIsBroken - By default, if you break a block which is specified in the PlaceBlocks objective, it will be deducted from your progress. Otherwise, players would be able to simply cheat by breaking and then placing the block. Setting this flag will disable that safety mechanism.

Example command: /qa edit questname objectives add PlaceBlocks acacia_planks 20

๐Ÿ›ฌ ReachLocationโ€‹

Description

Completed when: Player reaches a certain location

Command Arguments:

  • <selection type> - Currently, the only selection type is worldeditselection. This takes your current worldedit selection as the location the player needs to reach. Thus, worldedit is currently required to create this objective. Please make a worldedit selection (via //wand or //pos1 and //pos2 ) before running this command.
  • <Location Name> - Name of the location the player has to reach. It will be displayed in the objective task description.

Example command: /qa edit questname objectives add ReachLocation worldeditselection Luthers Church

๐Ÿง‘โ€๐Ÿ’ป RunCommandโ€‹

Description

Completed when: Player runs a certain command

Command Arguments:

  • <amount> - Amount of times the player needs to run the command
  • <Command> - Command which the player needs to run. Put it between "" if you need to use spaces. A / at the beginning is not required.
  • (flags) - Optional flags
    • --ignoreCase - If you set this flag, it accepts every captitalization. Both /warp spawn and /wArP sPaWn will work
    • --cancelCommand - If you set this flag, the command isn't run while the objective is active. Instead, its execution is cancelled. Basically, nothing would happen if they run the command (apart from the progress of this objective increasing, of course)

Example command: /qa edit questname objectives add RunCommand 2 "warp spawn" --ignoreCase

๐Ÿง‘โ€๐Ÿ’ป ShearSheepโ€‹

Description

Completed when: Player shears a certain amount of sheep

Command Arguments:

  • <amount> - Amount of times the player needs to shear the sheep
  • (flags) - Optional flags
    • --cancelShearing - If you set this flag, the actual shearing of the sheep will be cancelled while this objective is active

Example command: /qa edit questname objectives add ShearSheep 4 --cancelShearing

๐Ÿ”ฅ SmeltItemsโ€‹

Description

Completed when: Player takes a smelted item out of a furnace. So yeah, they'll have to smelt it, and then take it out. The output item counts, not the item which you put in the furnace.

Command Arguments:

  • <material> - The material of the block which the player has to get our of smelting. Use 'hand' to specify the item which you are currently holding in your hand. Use 'any' so any item counts. You can also specify items made in the NotQuests item system.
  • <amount> - Amount of times the player has to get this item from smelting

Example command: /qa edit questname objectives add SmeltItems coal 4

๐ŸงŸ Sneakโ€‹

Description

Completed when: Player sneaks

Command Arguments:

  • <amount> - Amount of times the player needs to sneak

Example command: /qa edit questname objectives add Sneak 4

๐Ÿ—ฏ๏ธ TalkToNPCโ€‹

Description

Completed when: Player talks to (right-clicks) an NPC (Both Citizen NPCs and Armorstands work).

Command Arguments:

  • <NPC ID or Armorstand> - Either enter the Citizens NPC ID, or 'armorstand' to receive an item with which you can easily attach this objective to an armorstand.

Example command: /qa edit questname objectives add TalkToNPC armorstand

โ— TriggerCommandโ€‹

Description

Completed when: A special command is run from someone with enough permissions (can be a command block or a player with op permissions. Usually, the console is used.)

This can be used to integrate NotQuests with many different plugins.

Example use-caseโ€‹

An objective โ€œvote for usโ€ which should be completed once the player votes. In your vote plugin, you could then add the trigger command to the vote reward.

Then, once that command is run from the console by the vote plugin (so once the player votes), the TriggerCommand Objective for that player is completed.

This is also very useful if you want to make special quests integrated with the โ€œInteractionsโ€ plugin. That plugin can be used if you want to make more detailed, scripted conversations with NPCs. Be warned: that plugin has a steep learning curve. Also note: Newer versions of NotQuests now have an integrated conversation system.

Example on how to add a trigger command to fictional quest named โ€œ1โ€โ€‹

For that, the trigger command would be /qa triggerObjective playervoted NoeX - NoeX being my username.

In our vote example, if you set that command as a vote reward (in your vote plugin) and the player votes, it would complete the objective.

Command Arguments:

  • <Trigger Name> - Name of the trigger. That name will have to be put into the trigger command ( /qa triggerObjective <Trigger Name> )
  • <amount> - Amount of time the trigger/command needs to be triggered/ran, for the objective to be completed

Example command: /qa edit questname objectives add TriggerCommand trigger1 1

Command to "trigger"/finish that objective: /qa triggerObjective trigger1 {PLAYER} - {PLAYER} needs to be replaced with the players username.

Citizens Integration Objectivesโ€‹

โ„น๏ธ EscortNPCโ€‹

Description

Completed when: You escort an NPC to another NPC. When the objective is unlocked, the NPC you need to escort spawns at your location (or a specified spawn location) and starts following you. You will need to get close to the destination NPC and then right-click the destination NPC while the escort NPC is close to you.

Command Arguments:

  • <NPC to escort> - ID of the Citizens NPC the player has to escort
  • <Destination NPC> - ID of the destination Citizens NPC to whom the player has to escort the NPC to
  • (flags) - Optional flags
    • --spawnLocation <Location X, Y, Z> - If you set this flag, the NPC you need to escort will always spawn at this location. Otherwise, it will always spawn at the player's current location

Example command: /qa edit questname objectives add EscortNPC 1 2

EliteMobs Integration Objectivesโ€‹

โ„น๏ธ KillEliteMobsโ€‹

Jobs Reborn Integration Objectivesโ€‹

โ„น๏ธ JobsRebornReachJobLevelโ€‹

Project Korra Integration Objectivesโ€‹

โ„น๏ธ ProjectKorraUseAbilityโ€‹

Slimefun Integration Objectivesโ€‹

โ„น๏ธ SlimefunResearchโ€‹

Towny Integration Objectivesโ€‹

โ„น๏ธ TownyNationReachTownCountโ€‹

โ„น๏ธ TownyReachResidentCountโ€‹

BetonQuest Integration Objectivesโ€‹

โ„น๏ธ BetonQuestObjectiveStateChangeโ€‹

UltimateJobs Integration Objectivesโ€‹

โ„น๏ธ UltimateJobsReachJobLevelโ€‹