QuestPath
Guide your players with custom main and side quests
Quick challenge
How far can you run before the mobs catch you?
Minecraft check
Confirm your run
Complete the quick check to get your code.
QuestPath
Overview QuestPath lets you create a main quest line and optional side quests entirely through config.yml. Players track their progress through a simple GUI, while you stay in full control of the quest content and rewards.
Features Main quest path Linear progression: each quest unlocks the next.
Supports a custom number of steps; you design the whole path. Side quests Randomly assigned from a configurable pool.
/getsidequest to get or reroll a side quest. Quest types (out of the box) Mine blocks (with support for ANY_LOG)
Craft items
Kill entities
Visit dimensions (Overworld / Nether / End)
Obtain items (pickup, crafting, furnace extract)
Travel distance (blocks walked) GUI-based interface /quest opens a clean menu.
View current main quest.
View current side quest.
Paginated list of completed main quests. Economy integration (optional) Vault support for money rewards.
Global default rewards in config.yml.
Per-quest reward-money overrides for fine-tuned payouts. Admin tools /questreset <player> to wipe a player’s quest progress.
Player data stored in a simple players.yml file.
Example quests are provided but fully commented out, so servers start with a blank slate and can design their own quests from scratch. Commands & Permissions /quest Opens the quest GUI.
Permission: none (default: everyone). /getsidequest Assigns or rerolls a side quest.
Permission: none (configurable via your permissions plugin). /questreset <player> Resets a player’s quest progress.
Permission: questpath.admin. Supported Versions Minecraft: Designed and tested for 1.20.x and 1.21.x (latest Paper/Spigot). Server software: Paper and Spigot (and forks that are API compatible). Java: Java 21+ (recommended for modern server versions). Configuration On first start, QuestPath generates a minimal config.yml:
economy section for enabling/disabling money rewards and default amounts.
quests.main and quests.side start empty.
A fully commented example quest section is included at the bottom as a template; server owners can copy and adapt these examples to build their own quest lines. Each quest supports:
id – unique identifier.
type – quest type (e.g., MINE_BLOCK, KILL_ENTITY, TRAVEL_DISTANCE, etc.).
display / description – shown in the GUI and messages.
Target fields depending on type (target-block, target-item, target-entity, target-world).
amount – required progress to complete.
reward-money – optional per-quest reward; falls back to global defaults if omitted.
For “any log”, use target-block: ANY_LOG.
For a specific block, use its Bukkit material name, for example: target-block: OAK_LOG, target-block: DIAMOND_ORE, etc.