1.x/Quester

From Citizens Wiki

< 1.x

Description here.

Configuration Nodes

Commands

Quests

Basics

Quests are defined in the quests.yml file located in plugins/Citizens. Each root node in that file is a quest name - below, the two example quest names in quest.yml are 'example' and 'example2'. This is what you will use ingame to identify each quest. Inside this, there are text nodes - pretty self-explanatory. Note that you can use
to denote a line break.

The repeatable option allows a quest to be repeated. Set it to false for once-off quests.

Objectives

Thus far, objectives have a set structure - a number of different 'steps' and a number of objectives within each step. This allows for more free-form quest design. Note that each step should be marked by an ascending number with single quotes around it. Each objective within a step is incremented concurrently.

The message variable is sent to the player on completion of each objective.

Objective Types

To aid with generic objective design, each objective can use one of a common set of variables:

  • amount
  • string
  • materialid
  • location
  • item
  • npcdestination (destination NPC ID)

Each objective type may use one or more of these variables - a reference is provided below.

- Specifying item and locations - Item nodes have three sub-nodes, two that must be included and one optional. The id sub-node designates the item/block ID. The amount sub-node specifies the item amount. The optional data sub-node specifies the item data value to be used.

Location nodes have 4 required sub-nodes, two optional. The world node specifies the world name of the location. The x, y, and z nodes specifies the x, y, and z values. The optional pitch/yaw nodes specify the rotation (think aeroplanes) of the location.

Quest Types

Build quest (build) - place a certain number of blocks Uses: materialid - the block ID to place. amount - the amount that must be placed.

Location quest (move location)- be within a certain range of a location. Uses: location - the base location to move to. amount - the amount in blocks that the player can be away from the location before finishing.

Hunt quest (hunt) - kill a certain number of monsters. Uses:

  • amount - the number of monsters to kill.
  • string - which monsters should be killed. Using '-' as the first character makes a whitelist. '*' represents all.

Distance quest (move distance)- walk a certain number of blocks. Uses:

  • amount - the amount of blocks to walk.

Block destroy quest (destroy block) - break a certain amount of blocks. Uses:

  • amount - the amount of blocks to break.
  • materialid - the block ID to break.

Delivery quest (delivery)- deliver an item to an npc. Uses:

  • npcdestination - the NPC ID to deliver to.
  • materialid - the material that must be in hand.
  • amount - the amount of the material that must be in hand.

Combat quest (player combat) - kill a certain number of players. Uses:

  • amount - the amount of players to kill.
  • string - which players should be killed. Using '-' as the first character makes a whitelist. '*' represents all. g:group represents groups.

Collect quest (collect) - pick up a certain number of items. Uses:

  • amount - the number of items to pick up.
  • materialid - the ID to pick up.

Rewards

These can be used as both rewards *and* requirements to start a quest. As rewards, they can be either give rewards, or take rewards. As requirements, they can only be used to take from a player.

Rank reward (rank) - grants a group ('rank') to a player. Specified by the rank: node.

Permission reward (permission) - grants a permission to a player. Specified by the permission: node.

Quest reward (quest) - grants a quest to a player. Note that it cannot be taken away from a player. Specified by the quest: node.

Item reward (item) - gives an item to a player. Loaded from the item: nodes.

Health reward (health) - gives health to a player. Loaded from the amount: node.

Money reward (money) - gives money to a player. Loaded from the money: node.