QuestForge
Quests you write in a file, played through a GUI
QuestForge is a quest plugin for Paper and Spigot, 1.17 to 26.x. You write each quest in a YAML file and players browse, accept and track them from a menu. It supports six objective types, quest chains, daily and weekly repeats, and rewards in money, XP, items and commands. 253 example quests are copied onto your server the first time it starts.
How it works in play
- Quest log:
/questopens a menu with the player's active, available and completed quests, with pages for large lists. Hovering a quest shows its description, status and rewards. - Accepting: clicking an available quest asks for a confirmation.
/quest preview <id>shows the objectives and rewards first. - Tracking: the tracked quest shows its current objective in a boss bar and in the action bar.
/quest track <id>switches to another quest. - Objectives in order: a quest's objectives run one after another, in the order you wrote them. Progress is saved, so a restart doesn't lose it.
- Quest givers: assign quests to a Citizens NPC with
/quest admin npcand right-clicking it shows only the quests it offers.
The six objective types
- KILL: a number of a vanilla mob, or a MythicMobs mob with
mythic_mob. - COLLECT: pick up a number of an item.
- CRAFT: craft a number of an item.
- REACH: get within a radius of a point in a world.
- TALK: right-click a Citizens NPC, with an optional line of dialogue.
- DELIVER: hand a Citizens NPC a number of items, which are taken from the player.
Writing a quest
This is a complete quest file. Put it in plugins/QuestForge/quests/ and run /quest reload:
id: welcome
name: "<yellow>Welcome to the Server"
description: "Gather wood, craft a pickaxe, slay a zombie."
prerequisites: [] # quest ids that must be finished first
repeatable: none # none, daily or weekly
objectives:
- type: COLLECT
material: OAK_LOG
amount: 8
- type: CRAFT
material: WOODEN_PICKAXE
amount: 1
- type: KILL
entity: ZOMBIE
amount: 1
rewards:
money: 100.0 # needs Vault and an economy plugin
xp: 30
items:
- { material: BREAD, amount: 8 }
commands:
- "broadcast %player% finished the welcome quest!"The example quests
253 quests are copied into quests/ on first start: starter tasks, daily and weekly quests, five-tier profession lines (miner, farmer, fisher, lumberjack, adventurer), seasonal events, multi-part sagas, branching storylines and boss hunts. Edit them, delete the ones you don't want, or use them as templates. Deleted examples aren't copied back.
How to use it
- Install: drop the jar into
/plugins, restart once and paste your licence key intoconfig.yml. English is the default; setlanguage: esfor Spanish. - Review the examples in
plugins/QuestForge/quests/. Themythic_quests need MythicMobs, and the rank quests run permission commands you may want to change. - Write your own quests, one YAML file each, and run
/quest reload. No restart needed. - Set up NPCs (optional): select a Citizens NPC with
/npc selectand run/quest admin npc welcome bounty_hunterwith the quest ids it should offer./quest admin npcon its own lists them, and/quest admin npc clearremoves them.
Commands and permissions
- Everyone (
questforge.use):/quest,/quest preview <id>,/quest track <id>,/quest abandon <id>. - Operators (
questforge.admin):/quest reload,/quest admin start <player> <id>and/quest admin npc <ids>.
Placeholders
With PlaceholderAPI installed: %questforge_active_count%, %questforge_completed_count%, %questforge_current_quest_name% and %questforge_current_objective%.
Requirements
- Paper or Spigot from 1.17 to 26.x, forks like Purpur included, on the Java version your server already uses.
- Optional: Vault (money rewards), Citizens (quest givers, TALK and DELIVER), MythicMobs (custom mob targets), PlaceholderAPI (placeholders) and ParticleForge (effects).
None of them is required. Quests that don't use them work without them. The plugin never refuses to start because an optional plugin is missing.
FAQ
Can one quest unlock another?
Yes. List the earlier quest ids under prerequisites. A quest can need several, so storylines can branch and join again.
Can quests be done every day?
Yes. repeatable: daily or repeatable: weekly lets a player take the quest again once the cooldown ends.
Do I need Citizens?
Only for quest-giver NPCs and the TALK and DELIVER objectives. Every other quest works from /quest.
Can I translate the messages?
Yes. English and Spanish are included in lang/, in MiniMessage, and missing keys fall back to English.
For questions or bug reports, use the discussion tab on this page or our Discord.