Create a quest
All you need to know about how to create quests.
Quests must be created in dedicated files.
If you have selected mode 1, they must all be created in the "globalQuests.yml" file.
If you have selected mode 2, they must be created in the files "easyQuests.yml", "mediumQuests.yml" and "hardQuests.yml".
The name and description of a quest will be displayed in the menus and messages.
The type of the quest represents the action the player has to perform, for which an item is specified just below and an amount. You can see all the quest types and what they correspond to on this page.
For some types of quests, you don't need to specify an item or an entity. These quests will be "global" quests, which will take into account all items and entities.
Note that for GET
quests, you must indicate a required item.
To create a global quest, simply delete the required_item
or entity_type
line in your quest configuration.
For each quest a reward is specified, with a type and amount or associated actions. You can see all the types of rewards and what they stand for on this page.
Whatever the file, the creation of a quest always follows the same pattern.
For colours, you can use the ampersand (&) followed by the colour code you want. Quests also supports HEX colour codes
Please pay attention to the indentation on all YAML files. The slightest mismatch may cause errors.
Placeholders
Quest name and description supports all placeholders with PlaceholderAPI.
To enable placeholders, you just need to add the use_placeholders: true
option in the quest configuration.
Oraxen, ItemsAdder, MMOItems items
You can specify for the menu item or in the required items an item from Oraxen or ItemsAdder. It's really simple, you just need to add oraxen:,
itemsadder:
or mmoitems:
before the name of the item.
For Oraxen, you need to set use_oraxen
to true
in the configuration file.
For ItemsAdder, you need to specify the namespace before the name of the item, like the example below. You also need to set use_itemsadder
to true
in the configuration file.
For MMOItems, you need to specify the category and the id of the item.
Don't forget to enclose the item names in inverted commas ("..."
), otherwise the file will be formatted incorrectly and the plugin will crash!
Custom head textures
You can also use custom head textures, from this website.
You just need to add a texture
field in the item
section. The value to put here is the Minecraft-URL
at the bottom of the head page. Be sure to use the Minecraft-URL
and NOT the Value
that is just before!
The syntax is the same as for Oraxen and ItemsAdder items.
Custom Model Data
You can specify for the menu item or in the required items a custom model data.
You need to add custommodeldata:
before the type of the item, and then add the corresponding number just after, as the following example.
Custom items
For quests that require an item, you can specify a custom item.
You must then specify in required_item
the type CUSTOM_ITEM
.
Then, below, you must specify the name of the item and its description.
For a complete example, you can take a look at the quest number 4 just below.
Required worlds
For each quest, you can specify the worlds where the player have to be in order to complete the objective. Here is an example:
Required regions
You can also specify the regions in which a quest can progress. Only compatible with WorldGuard.
Protection bypass
By default, progress is only made in an authorized region if WorldGuard or Towny are present on the server, notably by checking the BLOCK_PLACE and BLOCK_BREAK flags. If for some reason you want the quest to progress even when the player doesn't have permission, you can add the protection_bypass parameter. This parameter can be combined with the required regions. For example :
Multiple requirements
Since version 2.0, it is possible to assign multiple items/entities to a same quest. Thus, all items/entities in the list will count towards the quest's progress. However, it is not possible to specify a required number for each attribute in the list.
To add multiple items/entities to a quest, the syntax is as follows:
For example, a "collect 10 ores" quest would look like this:
The syntax is the same for queries that require entities:
NBT Tags
It's currently not possible to require an NBT tag. Otherwise, if your quest require items that can have differents NBT tags, such as fish seals, which store the life of the fish and a unique ID in an NBT tag, you can add the option ignore_nbt: true
in your quest configuration.
This means that when you attempt to complete the quest, only the type of item will be checked and not the NBT tags. For example:
Last updated