zQuestRank | Quest-Based Ranks 1.6.0

Quest-based rank progression: finish per-rank quests, meet requirements, claim the rank and rewards.

1.4.4

0
No ratings yet
Go back

Compatible with Minecraft 1.18 - 26.3

Compatibility

Minecraft Java Edition:
1.18 - 26.3
Platforms:
Spigot Paper Purpur

Changes

zQuestRank v1.4.4
Three new quest types, one quest can target many things at once, ranks can hold as many quests as you like, and TowerTrials is connected.

🧱 Three New Quest Types

PLACE_BLOCK counts blocks put down in the world. Every spot counts once, so breaking a block and placing it back on the same square gives nothing, while a fresh square counts. That is progression.anti-replace-cheese, on by default.

SMELT_ITEM counts cooking in furnaces, blast furnaces, smokers and campfires. Set output for what comes out, and optionally input for what has to go in.

FIND_HEAD is a head treasure hunt. Hide player heads around the world, players right-click them to collect, and each head counts once per player. The heads live in a new heads.yml, named by texture value, URL, hash or a real player's name, and a quest can use the whole file, a chosen few, or any head in the world.

Read more here: greenarrowlol.github.io/zQuestRank


🎯 One Quest, Many Targets

A quest used to name one block or one mob, so "break any log" meant a quest per wood type. Now it takes a list, a game tag, or a modded id:

material: DIRT                        # one, as before
materials: [DIRT, GRASS_BLOCK]        # a list
material: "#minecraft:logs"           # a game tag, every log type
material: itemsadder:myitems:ruby_ore # an ItemsAdder block or item

Any tag the game knows works, like #minecraft:coal_ores or #minecraft:fishes. A wrong tag is skipped with a console line and the rest of the quest still loads.

KILL_MOB does the same with entities: [ZOMBIE, HUSK, DROWNED], and takes custom mobs too: mythicmobs:SkeletonKing or itemsadder:namespace:id.

ItemsAdder blocks only count for an itemsadder: entry. The vanilla block underneath a custom ore never counts for the vanilla material, so custom blocks cannot be farmed as note blocks.


📖 Unlimited Quests Per Rank

A rank used to show only as many quests as there were slots in the menu. Now it pages on its own, with arrows either side of the claim button that appear only when there is more than one page. Delivering and claiming work the same on every page, and the menu stays where you were.

Slots are gui.quest-previous-page-slot and gui.quest-next-page-slot in config.yml, and -1 hides an arrow.


🌍 World Filters

Any quest can be limited to certain worlds with worlds: [island_world], and anything done elsewhere is ignored. Put the list on a rank instead and it covers every quest of that rank that has no list of its own. Filtered quests show a small "Only counts in" line in the menu.


🗼 TowerTrials Support

Tower progress is read straight from TowerTrials now, no placeholders in between.

  • TOWER_FLOOR asks for a given floor of a given tower. The menu shows their highest cleared floor out of it, and a floor cleared before the quest existed already counts
  • TOWER_CLEAR counts floors as they are cleared, across every tower or just one, with first-clear: true so nobody farms the same floor
  • Rank requirements take the same two, alongside money and playtime, and show on the claim button with their current number
  • Floor gates in config.yml close a floor and everything above it until the party leader holds a rank, with your own message



TowerTrials is optional. Without it the plugin runs exactly as before, tower quests just never fill.


🎨 Custom Lore on Rank Icons

Every rank icon showed the same three lines with no way to add your own, so listing a rank's rewards was not possible. Each rank in ranks.yml can now carry its own text, one list per state: lore while it is the current rank, lore-locked while it is locked, and lore-completed once passed.

lore:
  - "{status}"
  - "&7Quests: &e{completed}&7/&e{total}"
  - ""
  - "&dREWARDS"
  - " &7- &f5x Diamond"
  - "&eClick to view your quests!"

{status}, {completed}, {total} and {rank} all work, plus colours, hex and PlaceholderAPI. Your lore replaces the normal lines rather than adding to them, and a rank with no lore looks exactly as it did.


🔧 Fixes

  • An admin with a wildcard permission was thrown onto the highest rank the moment they opened the menu, since the wildcard answers yes to every rank node. Wildcard holders are now left where they are. There is also progression.permission-ranks to ignore rank nodes for everyone
  • Cooking now counts the moment each item finishes, so nobody has to stand at the furnace. Credit goes to whoever loaded the raw items by hand, hopper fed items count for nobody, and items taken back out before they cook are dropped from the tally. progression.smelt-counts-when: collected brings back counting on pickup
  • Items already sitting cooked in a furnace no longer count when picked up, so an old furnace cannot finish a quest in one click
  • Placements that another plugin cancels and redoes itself, common on island and custom block plugins, count now if the block really stayed in the world
  • MythicMobs kills that the mob does not credit, like kills through skills, fall back to whoever landed the hit
  • general.debug: true prints one line for every action that did not count, saying exactly why: wrong rank, wrong world, wrong block, or already done

📦 Upgrading

Stop the server, swap in the new jar, start it again. The new config.yml keys and language lines merge into your files on their own and your values stay, heads.yml is created on first start, and your ranks.yml is never touched.


📋 Version Breakdown

Version Focus
1.4.4 Custom lore per rank icon, with a separate list for current, locked and completed.
1.4.3 Cooking counts as each item finishes rather than on pickup, with a setting to keep the old way.
1.4.2 Already cooked items stop counting, and TowerTrials quests, requirements and floor gates arrive.
1.4.1 Partial furnace take-outs, redone block placements and uncredited MythicMobs kills all count, plus the debug lines.
1.4.0 PLACE_BLOCK, SMELT_ITEM and FIND_HEAD, many targets per quest, world filters, paged quest menus and the wildcard rank fix.

Need help or found a bug? Join the Discord.
Read the documentation | Join the Discord

Enjoying the plugin? A ⭐ review goes a long way!

Files

zQuestRank-1.4.4.jar 665.29 KB
Purchase required
zArrowTan
zArrowTan Author of this product
€16.99 EUR

Purchase a copy now

Add to Wishlist
Product Info
274 Views
1 Purchases
2 Downloads
801.45 KB File size
21.07.2026 Published
25.10.2026 Updated

Share and earn!

Share and earn part of the profits, an estimated €1.4 per product sale.

Log in to get your link