zDailyQuests | Per-Player Quests v1.1.0
Every player gets 5 random daily quests on their own 24-hour timer, with rewards and an all-5 bonus.
Every player gets 5 random daily quests on their own 24-hour timer, with rewards and an all-5 bonus.
By @zArrowTan, part of Arrow Plugins.



๐ Overview
zDailyQuests gives every player their own rotating daily quest board. Each player is handed 5 random quests from your pool, tracks them through normal gameplay, and earns a reward for each one, plus a bonus for finishing all five. The 24-hour timer is per player and starts when their set is assigned, so there's no global midnight reset, everyone gets a fair full day no matter when they log in. Quests are plain YAML files you drop into a folder, so building your own quest pool needs no coding at all.

The daily quest menu, /dq
๐งฉ Dependencies
- TheAPI (required) must be installed separately, or the plugin will not enable. Get it here
- PlaceholderAPI (optional) for placeholder support. Get it here
๐ How It Works
- 5 random quests per player: each player gets their own set drawn from your pool, with no duplicates in a set
- Per-player 24-hour timer: it starts when the set is assigned, not at a global midnight, so login time never matters
- Live progress: quests advance through normal play, killing, mining, fishing, crafting, and so on
- Per-quest rewards + an all-5 bonus: finishing a quest pays its own reward, and clearing all five pays a one-time bonus
- Fresh set on reset: when the timer runs out, unfinished quests clear and a new random five is dealt, avoiding an exact repeat of the last set where the pool allows

The time left before the next reset

The all-5 completion bonus
๐ฏ Build Any Quest You Want
Every quest is a YAML file with its own name, icon, lore, objective, target, and reward. Drop a file into the quests folder and it's live, no code, no restart beyond a reload. The engine supports a huge range of objective types:
- Blocks & items: break, place, craft, pick up, consume, cook, enchant, fish, farm, launch projectiles, or hold a set amount in your inventory
- Entities: kill (mobs, animals, or players for PvP), breed, tame, or shear (with an optional wool-colour lock)
- Activity: earn XP points or levels, deal damage, walk a distance, stay online for a playtime goal, milk a cow, carve a pumpkin, or even die (a fun troll option)
- Locations & trades: reach a spot in the world, or trade with a villager (lockable to a profession and level)
Each objective can target a specific type, a list of types (any one counts), or "any" of that action, so a Break quest can want diamond ore specifically or any block at all.

Bruiser, deal damage

Scavenger, break blocks

Tourist, place blocks

Hard Luck, fishing

Gone Fishing, catch fish

Diamond Hands, mine diamonds

Well Fed, consume food

Chef, cook items
โ Selection & Claim Modes
- Global or Rarity selection: draw the 5 from one flat pool, or split your quests into easy / normal / hard folders and pick a set number from each (for example 2 easy, 2 normal, 1 hard, fully configurable)
- Auto or Manual claim: rewards fire the instant a quest is done, or wait in the menu for the player to click and claim
- Repeatable quests: set a max-completions above 1 and a quest resets after each claim until it's been done that many times or the day resets
- Per-phase display: each quest can show one clean look, or a different icon, name, and lore for not-started, in-progress, unclaimed, and completed
๐ Flexible Rewards
- Each quest pays out any mix of console commands and items
- The all-5 bonus is its own separate reward, handed out once per set
- Run economy payouts, give items, grant ranks or perks, anything a command can do
โจ๏ธ Commands
/dailyquests(alias/dq) open your quest menu/dq reset <player>reset a player's quest set (admin)/dq reloadreload config, language, and the quest pool (admin)

Resetting a player's quests

Reloading the plugin
๐ Configurable & Localized
- The reset window, quests-per-set, selection mode, claim mode, and rarity split are all config-driven
- Every player-facing message lives in the language file, with full hex color support
- Add a new quest by dropping a YAML file in the right folder and running
/dq reload
๐งช Requirements
- Minecraft: 1.21 to 1.21.11
- Server software: Spigot or Paper
- Java: 21 or higher
- Storage: SQLite out of the box (zero setup) or MySQL
- Required: TheAPI (see Dependencies above)
๐ฌ Support & Docs
Full setup and configuration guides are in the documentation. Need help, found a bug, or want to suggest a feature? Join the Discord.
Statistics
Views
Purchases
Downloads
File size
Published
Updated
Info
Share & Earn
Share and earn part of the profits, an estimated €0.4 per product sale.