◈ RPG
QuestForge
Quests you write in a file, played through a GUI

QuestForge gives your server quests that you write in a file and your players play through a GUI, on Paper 1.21.x. Six objective types, chains that gate one quest behind another, rewards in money, XP, items or commands, and progress that survives a restart.






WHY QUESTFORGE
- A quest is a file you can read. Objectives, rewards and the text the player sees all live in the same place, so a quest can go into version control with the rest of your server and a second admin can edit it without asking you how
- Chains are declared, not scripted. One line lists the quests that must be finished first, so a whole storyline is a list of dependencies instead of a pile of conditions spread across files
- The player always knows what they are doing. A BossBar tracks the current objective at all times, and clicking another quest in the log moves the tracker onto it
- They can look before they commit. A preview window shows the objectives and the rewards of a quest before it is accepted, so nobody fills their log with quests they did not want
- Progress comes back after a crash. A player who was two zombies away from finishing is two zombies away when the server returns
- NPCs are optional, not required. Citizens quest givers work if you have them installed; without Citizens every quest is still fully playable
WHAT YOU GET
- Quest packs in YAML — drop files into the
quests/folder and reload in place. Any number of quests, any number of files - 6 objective types — KILL, COLLECT, CRAFT, REACH, TALK and DELIVER, mixed in any order inside one quest
- Sequential objectives — a quest runs its objectives in the order you wrote them, so "chop wood, then craft the pickaxe, then kill the zombie" happens in that order
- Quest chains —
prerequisites:holds one or several quest ids; branching storylines work, not only straight lines - Four kinds of reward, combinable — money through Vault, vanilla XP, item stacks, and any console command you want to run, including broadcasts and rank grants
- Quest log GUI — six rows with a paginator for servers with a lot of quests, a preview window before accepting and a confirmation step so nothing is accepted by a stray click
- BossBar tracker — always-visible progress on the tracked quest, switchable from the log
- Citizens quest givers — select an NPC, type
/quest admin npc welcome bounty_hunter, and right-clicking it opens a quest log with only those quests in it - MythicMobs targets — a KILL objective can name a custom mob instead of a vanilla entity
- Location objectives — REACH takes a world, coordinates and a radius, so exploration and "go and see this place" quests work without an NPC
- Delivery objectives — DELIVER asks the player to hand a set number of items to a specific NPC, and takes them
- Admin hand-outs — staff can start a quest on a player directly, useful for events and for fixing a broken run
- PlaceholderAPI — active quest count, completed count, current quest name and current objective, for your scoreboard, TAB or chat
- English and Spanish included, and every string a player reads lives in
messages.ymlin MiniMessage format, colours and all
THE SIX OBJECTIVE TYPES
- KILL — a vanilla entity or a MythicMob id, times N
- COLLECT — pick up N of a material, however they get it
- CRAFT — craft N of an item
- REACH — walk within a radius of a point in a world
- TALK — right-click a specific NPC
- DELIVER — hand a specific NPC a specific number of items
WRITING A QUEST
This is a complete, working quest. There is nothing else to learn:
HOW IT PLAYS
A player right-clicks the NPC standing in your spawn and sees a log with the quests that NPC offers. They preview one, see that it pays a hundred coins and eight bread, and accept it. The BossBar appears and counts logs as they chop. When the last objective is done, the reward lands, the broadcast fires, and the next quest in the chain appears in their log on its own. If the server restarts in the middle of all that, they come back to the same bar at the same number.
CONFIGURATION
quests/— one YAML file per quest. Reloadable with players onlineconfig.yml— language, licence key, BossBar colour and style, the action bar, and how often location objectives are checked, every key with a comment beside itlang/en.ymlandlang/es.yml— every string a player reads, so you can reword or re-colour the whole plugin without touching anything else
COMMANDS AND PERMISSIONS
/questopens the log ·/quest list·/quest preview <id>·/quest track <id>·/quest abandon <id>/quest admin start <player> <id>hands a quest to somebody ·/quest admin npc <id> [id...]sets the quests of the selected Citizens NPC ·/quest reloadre-reads every filequestforge.usedefaults to everyone;questforge.admindefaults to operators- Every node is declared in
plugin.yml, so your permissions plugin lists them all without you writing them by hand
Commands
| Command | What it does |
|---|---|
/quest | Quest commands |

