This documentation is no longer updated. Please visit https://pikamug.gitbook.io/quests/
When Quests is first run, configuration files will be created in the /plugins/Quests directory. If this is your first time using Quests, just make sure the settings in config.yml are to your liking. Don't worry about any of the other files or folders for the time being.
Pro-tip: Opening a .yml file that contains non-English characters on an English computer may not display those characters correctly. In the case of Windows, this is because Windows in English uses the ANSI character set, while the preferred format is UTF-8. Unfortunately, Windows makes this difficult to change, so we recommend an editing program that supports UTF-8. Notepad++ is a free and popular choice.
config.yml
This file contains all settings relating to how Quests should perform once loaded. As such, changes made to this file must be configured and saved before the server is started.
Click here to view the default config.yml file.
Key | Data Type | Description |
---|---|---|
accept-timeout | number | How long (in seconds) a player should be able to accept/deny a quest before the prompt cancels automatically. |
allow-command-questing | true/false | Whether or not players are allowed to accept and manage quests via command (e.g. /quests take SomeQuest). |
allow-command-quests-with-npcs | true/false | Whether players can accept/manage NPC quests via command (e.g. /quests take SomeQuest). |
allow-pranks | true/false | Whether or not to permit clicking Portals with the Quests Journal. |
allow-quitting | true/false | Whether or not to permit quitting of taken quests |
ask-confirmation | true/false | Whether or not players must type Yes/No to accept/deny a quest. |
console-logging | number | 0 = disabled, 1 = track editing, 2 = and start/quit quests, 3 = and rewards, 4 = and debug information. |
disable-command-feedback | true/false | Whether or not to disable Minecraft's sendCommandFeedback gamerule at startup. |
generate-files-on-join | true/false | Either generate a player data file when that player first joins the server or only when they first use Quests. |
ignore-locked-quests | true/false | Ignore locked quests when checking if a player has a quest. |
kill-delay | number | How long (in seconds) a player should have to wait after they kill a player for a quest before they can kill that player again. |
language | string | Which file from the /lang/ folder will be used. For example, a value of "FR-fr" will result in "/lang/FR-fr/strings.yml" being loaded. |
max-quests | number | Maximum number of quests a given player can have at any time. |
npc-effects.enabled | true/false | Whether to enable particle effects. Note that the client must have particles enabled. |
npc-effects.new-quest | string | The particle effect to be played for a new quest (ex. note, enchant, crit, spell, portal). |
npc-effects.redo-quest | string | The particle effect to be played for a repeatable quest (ex. note, enchant, crit, spell, portal). |
show-requirements | true/false | Allow players to see requirements in /quest [quest] |
show-titles | true/false | Display titles to players when accepting/completing quests. |
strict-player-movement | number | Seconds between advanced player movement tracking. |
storage-data.address | string | The IP address for optional storage |
storage-data.database | string | The table name for optional storage |
storage-data.username | string | The login username for optional storage |
storage-data.password | string | The login password for optional storage |
storage-data.pool-settings.max-pool-size | number | Advanced HikariCP setting |
storage-data.pool-settings.min-idle | number | Advanced HikariCP setting |
storage-data.pool-settings.max-lifetime | number | Advanced HikariCP setting |
storage-data.pool-settings.connection-timeout | number | Advanced HikariCP setting |
storage-method.player-data | string | yaml = file storage, mysql = remote storage, custom = developer storage |
top-limit | number | Maximum number of quests that can be displayed by /quests top [number] |
translate-names | true/false | Translate item name to client's game language. |
translate-subcommands | true/false | Translate subcommands to server's plugin language. |
actions.yml
Manually editing this file is not advised. No support will be given to those whom choose not to use the in-game editor.
This file holds custom actions which execute certain tasks and effects. Except for the included examples, actions are created prior to use in a Quest. This is best accomplished with the /quests actions command.
Click here to view the default actions.yml file.
Click here to see the advanced breakdown.
Key | Data Type | Description |
---|---|---|
message | string | Chat message to send to the player. |
items | itemstack | Give item to player. |
hunger | number | Set player hunger to specified level. |
saturation | number | Set player hunger saturation to specified level. |
health | number | Set player health to specified level. |
teleport-location | string | Teleport player to specified location. |
potion-effect-types | list | Type of Potion that will be applied. |
potion-effect-durations | list | How long each potion will last in seconds. |
potion-effect-amplifiers | list | Level at which each potion will be amplified. |
commands | list | Run commands for the player. |
timer | number | Number of seconds until quest is failed. |
cancel-timer | true/false | Whether completing quest cancels the timer. |
effects | string | Play a (sound) effect at listed locations. |
explosions | list | Cause an explosion at listed locations. |
storm-world | string | World to cause a rainstorm in. |
storm-duration | number | How many seconds the rainstorm should last. |
thunder-world | list | World to cause a thunderstorm in. |
thunder-duration | number | How many seconds the thunderstorm should last. |
lightning-strikes | list | Locations to cause lightning at. |
denizen-script | string | Denizens script to run. |
fail-quest | true/false | Whether this action forces the player to quit the quest. |
conditions.yml
Manually editing this file is not advised. No support will be given to those whom choose not to use the in-game editor.
This file holds custom conditions which are checked during gameplay. Except for the included examples, conditions are created prior to use in a Quest. This is best accomplished with the /quests conditions command.
Click here to view the default conditions.yml file.
Click here to see the advanced breakdown.
Key | Data Type | Description |
---|---|---|
ride-entity | list | Must continue riding a listed entity. |
ride-npc | list | Must continue riding a listed Citizens NPC. |
permission | list | Permission that player must own during gameplay. |
hold-main-hand | itemstack | Must play while holding item in main hand. |
stay-within-biome | list | Must remain within the listed biomes. |
stay-within-world | list | Must remain within the listed worlds. |
stay-within-region | list | Must remain within the listed WorldGuard regions. |
check-placeholder-id | list | Checked against its corresponding PlaceholderAPI value. |
check-placeholder-value | list | Checked against its corresponding PlaceholderAPI identifier. |
fail-quest | true/false | Whether failing condition forces the player to quit the quest. |
quests.yml
Manually editing this file is not advised. No support will be given to those whom choose not to use the in-game editor.
This file contains all saved quests. A few example quests are included which you may delete at any time. This is best accomplished with the /quests editor command.
Click here to view the default quests.yml file.
Click here to see the advanced breakdown.
Key | Data Type | Description |
---|---|---|
name | string | A name for the quest. This is what the player will see. |
ask-message | string | Prompt sent to the player when he/she attempts to take the quest. |
finish-message | string | A message sent to the player upon completing the quest. |
npc-giver-id | number | The ID of the Citizens NPC that will hand out this quest. |
redo-delay | number | Time (in seconds) that a player must wait before taking the quest again. |
gui-display | itemstack | Item to be displayed as the quest's GUI item. Will show the ask-message as lore if no lore is set. |
block-start | location | A block that the player can right-click on to take the quest. Format is "worldName x y z". |
region | string | Name of a WorldGuard region that a player must be inside in order to accept the quest (via command). |
requirements | list | Items and such required to being the quest. See "Requirements" below. |
stages | ordered list | Data for each stage including items to deliver, string messages, et al. See "Stages" below. |
rewards | list | Money, items, quest points, and other prizes to give the player upon completing the quest. See "Rewards" below. |
Requirements
Key | Data Type | Description |
---|---|---|
items | itemstack | Items required to begin the quest. |
remove-items | true/false | Whether the required items should be removed from the quester's inventory. |
money | number | Amount of currency required to start the quest. |
quest-points | number | Amount of Quest Points required to start the quest. |
permissions | list | Permissions needed to be able to begin the quest. May not work with SuperPerms. |
quests | list | Quests that must have been already completed to take the quest. |
quest-blocks | list | Quests that, once completed, disable the player's ability to take the quest. |
mcmmo-skills | list | Requires mcMMO Classic. List of mcMMO skills to check in order to launch the quest. |
mcmmo-amounts | number | Requires mcMMO Classic. Amount of levels required. |
heroes-primary-class | string | Requires Heroes. Primary Heroes class needed to accept the quest. |
heroes-secondary-class | string | Requires Heroes. Secondary Heroes class needed to accept the quest. |
fail-requirement-message | string | Message to send to the player if the requirements are not met. This is necessary if a quest has any requirements. |
Planner
Key | Data Type | Description |
---|---|---|
start | date/time | Begin time formatted DD:MM:YYYY:HH:mm:SS:TimeZone |
end | date/time | Finish time formatted DD:MM:YYYY:HH:mm:SS:TimeZone |
repeat | number | Seconds since start time to for quest to become available again |
cooldown | number | Seconds player must wait after completion to retake quest |
override | true/false | Whether to ignore player cooldown upon quest repeat |
Stages
Key | Data Type | Description |
---|---|---|
break-block-names | list | Material names of blocks for the quester to break. |
break-block-amounts | list | Amounts of blocks that need to be broken. |
break-block-durability | list | Durability of blocks that need to be broken. |
damage-block-names | list | Material named of blocks for the quester to damage. |
damage-block-amounts | list | Amounts of blocks that need to be damaged. |
damage-block-durability | list | Durability of blocks that need to be damaged. |
place-block-names | list | Material names of blocks for the quester to place. |
place-block-amounts | list | Amounts of blocks that need to be placed. |
place-block-durability | list | Durability of blocks that need to be placed. |
use-block-names | list | Material names of blocks for the quester to use. For example, levers and doors. |
use-block-amounts | list | Amounts of blocks that need to be used. |
use-block-durability | list | Durability of blocks that need to be used. |
cut-block-names | list | Material names of blocks for the quester to cut by right-clicking with shears. |
cut-block-amounts | list | Amounts of blocks that need to be cut. |
cut-block-durability | list | Durability of blocks that need to be cut. |
fish-to-catch | number | Number of fish for the quester to catch via Fishing Rod. |
players-to-kill | number | Number of players that need to be killed. |
enchantments | string | Names of enchantments for the quester to enchant. |
enchantment-item-names | list | Material names that the enchantments need to be applied to. |
enchantment-amounts | list | Number of times the enchantments need to be enchanted on the items. |
items-to-deliver | itemstack | Requires Citizens 2. Items for the quester to deliver to an NPC. |
npc-delivery-ids | list | Requires Citizens 2. IDs of NPCs for whom the items must be delivered to. |
delivery-messages | string | Requires Citizens 2. List of random messages to send to the player when they deliver a required item(s) to the NPC. |
npc-ids-to-talk-to | list | Requires Citizens 2. IDs of NPCs that the quester must interact with by right-clicking. |
npc-ids-to-kill | list | Requires Citizens 2. IDs of NPCs that need to be killed. |
npc-kill-amounts | number | Requires Citizens 2. Number of times the NPCs need to be killed. |
mobs-to-kill | list | Names of mobs that the quester must kill. |
mob-amounts | number | Amounts of mobs that need to be killed. |
locations-to-kill | list | World and coordinates that the mobs need to be killed at. Format is "worldName x y z". |
kill-location-radii | number | The radius from which mobs can be killed. For example, a value of '10' would be 10 blocks around the location. Required if 'locations-to-kill' is present. |
kill-location-names | list | Names of the locations (e.g. Cave). Required if 'locations-to-kill' is present. |
locations-to-reach | list | Locations for the quester to reach, following this format. Format is "worldName x y z". |
reach-location-radii | number | The redius from which the player can walk in and be considered at the location to reach. or example, a value of '10' would be 10 blocks around the location. |
reach-location-names | list | Names of locations (e.g. Cave). Required if 'locations-to-reach' is present. |
mobs-to-tame | list | Names of mobs for the quester to tame. |
mob-tame-amounts | number | Amounts of mobs that need to be tamed. |
sheep-to-shear | list | Colors of sheep for the quester to shear. Available colors can be found here. |
sheep-amounts | number | Amounts of sheep that need to be sheared. |
password-displays | list | List of questions to ask the player that they must answer. |
password-phrases | list | List of answers that the player must type in chat. |
script-to-run | string | Requires Denizen. Name of Denizen task script to be executed after the Stage is completed. |
objective-override | string | This will be shown to the player as their current objective, rather than what the objectives would normally show. |
start-event | string | Name of Event to fire when the Stage has begun. |
finish-event | string | Name of Event to fire when the Stage is completed. |
disconnect-event | string | Name of Event to fire when the player disconnects while on the Stage. |
death-event | string | Name of Event to fire when the player dies while on the Stage. |
chat-events | list | List of Events to fire when the player types respective chat triggers. |
chat-event-triggers | list | List of chat messages that fire respective events when the player types them in. |
delay | number | Amount of time (in seconds) that the player must wait after completing this Stage, before advancing to the next quest. |
delay-message | string | Message sent to the player when the delay begins. This is not required to configure a delay. |
start-message | string | Message displayed at start of a Stage. |
finish-message | string | Message displayed at the completion of a Stage. |
Rewards
Key | Data Type | Description |
---|---|---|
items | list | Item rewards for completing the quest. |
money | number | Economy currency given as a reward to the player. |
exp | number | Experience given as a reward to the player. |
quest-points | number | Quest Points given as a reward to the player. |
commands | list | List of commands to be executed by the server (You may use "<player>" to refer to the player who completed the quest; e.g. "money give <player> 20") |
permissions | list | List of permissions to be given to the player. The server must have a permissions plugin installed - SuperPerms will NOT work. |
phat-loots | list | Requires PhatLoots. Names of PhatLoots that the quester must loot. |
mcmmo-skills | list | Requires mcMMO Classic. List of mcMMO skills to level up. For example, "Acrobatics", "Mining", or "All" to level all skills. |
mcmmo-levels | number | Requires mcMMO Classic. Amount of levels to level up. |
Options
TODO